Model checking and abstraction
ACM Transactions on Programming Languages and Systems (TOPLAS)
Formal methods: state of the art and future directions
ACM Computing Surveys (CSUR) - Special ACM 50th-anniversary issue: strategic directions in computing research
Formal Verification of Algorithm W: The Monomorphic Case
TPHOLs '96 Proceedings of the 9th International Conference on Theorem Proving in Higher Order Logics
Inference Rules for Programming Languages with Side Effects in Expressions
TPHOLs '96 Proceedings of the 9th International Conference on Theorem Proving in Higher Order Logics
Using a PVS Embedding of CSP to Verify Authentication Protocols
TPHOLs '97 Proceedings of the 10th International Conference on Theorem Proving in Higher Order Logics
Monads for Functional Programming
Advanced Functional Programming, First International Spring School on Advanced Functional Programming Techniques-Tutorial Text
Axiomatic semantics verification of a secure web server
Axiomatic semantics verification of a secure web server
AnZenMail: a secure and certified e-mail system
ISSS'02 Proceedings of the 2002 Mext-NSF-JSPS international conference on Software security: theories and systems
A Coq Library for Verification of Concurrent Programs
Electronic Notes in Theoretical Computer Science (ENTCS)
AnZenMail: a secure and certified e-mail system
ISSS'02 Proceedings of the 2002 Mext-NSF-JSPS international conference on Software security: theories and systems
A formal security model of a smart card web server
CARDIS'11 Proceedings of the 10th IFIP WG 8.8/11.2 international conference on Smart Card Research and Advanced Applications
Hi-index | 0.00 |
This paper reports on the formalization and verification of a mail server (SMTP server) in Coq. The correctness of a mail server is very important: bugs of the mail server may be abused for eavesdropping mail contents, spreading virus, sending spam messages, etc. We have verified a part of a mail server written in Java, by manually translating the Java program into a Coq function as faithfully as possible, and verifying properties of the Coq function. The results of this experiment indicate the feasibility and usefulness of verification of middle-sized system softwares in this style. The verification has been carried out in a few months, and a few bugs in the mail server have been indeed found during the verification process.