ACM Home Page
Please provide us with feedback. Feedback
Verified interoperable implementations of security protocols
Full text PdfPdf (1.55 MB)
Source
ACM Transactions on Programming Languages and Systems (TOPLAS) archive
Volume 31 ,  Issue 1  (December 2008) table of contents
Article No. 5  
Year of Publication: 2008
ISSN:0164-0925
Authors
Karthikeyan Bhargavan  Microsoft Research
Cédric Fournet  Microsoft Research
Andrew D. Gordon  Microsoft Research
Stephen Tse  University of Pennsylvania
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 31,   Downloads (12 Months): 308,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1452044.1452049
What is a DOI?

ABSTRACT

We present an architecture and tools for verifying implementations of security protocols. Our implementations can run with both concrete and symbolic implementations of cryptographic algorithms. The concrete implementation is for production and interoperability testing. The symbolic implementation is for debugging and formal verification. We develop our approach for protocols written in F#, a dialect of ML, and verify them by compilation to ProVerif, a resolution-based theorem prover for cryptographic protocols. We establish the correctness of this compilation scheme, and we illustrate our approach with protocols for Web Services security.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

1
 
2
 
3
Abadi, M. and Rogaway, P. 2002. Reconciling two views of cryptography (the computational soundness of formal encryption). J. Cryptol. 15, 2, 103--127.
 
4
 
5
Apache Software Foundation 2006. Apache WSS4J. Apache Software Foundation. http://ws.apache.org/wss4j/.
 
6
Askarov, A. and Sabelfeld, A. 2005. Security-typed languages for implementation of cryptographic protocols: A case study. In Proceedings of the 10th European Symposium on Research in Computer Security (ESORICS'05). Lecture Notes in Computer Science, vol. 3679. Springer, 197--221.
7
8
9
10
11
 
12
 
13
Bhargavan, K., Fournet, C., and Gordon, A. D. 2006b. Verified reference implementations of WS-Security protocols. In Proceedings of the 3rd International Workshop on Web Services and Formal Methods (WS-FM 2006). Lecture Notes in Computer Science, vol. 4184. Springer, 88--106.
 
14
Bhargavan, K., Fournet, C., Gordon, A. D., and Pucella, R. 2004a. TulaFale: A security tool for Web services. In Proceedings of the International Symposium on Formal Methods for Components and Objects (FMCO'03). Lecture Notes in Computer Science, vol. 3188. Springer, 197--222.
15
 
16
 
17
Bhargavan, K., Fournet, C., Gordon, A. D., and Tse, S. 2007a. Verified interoperable implementations of security protocols. In Software System Reliability and Security. IOS Press, 87--115.
 
18
Bhargavan, K., Fournet, C., Gordon, A. D., and Tse, S. 2007b. Verified interoperable implementations of security protocols. Tech. rep. MSR-TR-2006-46, Microsoft Research.
 
19
 
20
 
21
 
22
 
23
Bodei, C., Buchholtz, M., Degano, P., and Nielson, F. 2003. Automatic validation of protocol narration. In Proceedings of the 16th IEEE Computer Security Foundations Workshop (CSFW'03). 126--140.
 
24
Dolev, D. and Yao, A. 1983. On the security of public key protocols. IEEE Trans. Inform. Theor. IT--29, 2, 198--208.
 
25
Eastlake, D., Reagle, J., Imamura, T., Dillaway, B., and Simon, E. 2002. XML Encryption Syntax and Processing. W3C. W3C Recommendation.
 
26
Eastlake, D., Reagle, J., Solo, D., Bartel, M., Boyer, J., Fox, B., LaMacchia, B., and Simon, E. 2002. XML-Signature Syntax and Processing. W3C. W3C Recommendation.
 
27
Fournet, C. and Gonthier, G. 2005. A hierarchy of equivalences for asynchronous calculi. J. Logic Algeb. Program. 63, 131--173.
 
28
Galois Connections. 2005. Cryptol Reference Manual. Galois Connections.
 
29
30
 
31
Goubault-Larrecq, J. and Parrennes, F. 2005. Cryptographic protocol analysis on real C code. In Proceedings of the 6th International Conference on Verification, Model Checking and Abstract Interpretation (VMCAI'05). Lecture Notes in Computer Science, vol. 3385. Springer, 363--379.
 
32
Guttman, J. D., Herzog, J. C., Ramsdell, J. D., and Sniffen, B. T. 2005. Programming cryptographic protocols. In Proceedings of the Conference Trusted Global Computing (TGC'05). Lecture Notes in Computer Science, vol. 3705. Springer, 116--145.
 
33
IBM Corporation. 2006. IBM WebSphere Application Server. IBM Corporation. http://www.ibm.com/software/websphere/.
 
34
Kleiner, E. and Roscoe, A. W. 2004. Web services security: A preliminary study using Casper and FDR. In Proceedings of the Conference Automated Reasoning for Security Protocol Analysis (ARSPA 04).
 
35
Kleiner, E. and Roscoe, A. W. 2005. On the relationship between Web services security and traditional protocols. In Proceedings of the Conference Mathematical Foundations of Programming Semantics (MFPS).
 
36
Lukell, S., Veldman, C., and Hutchison, A. C. M. 2003. Automated attack analysis and code generation in a multi-dimensional security protocol engineering framework. In Proceedings of the Southern African Telecommunication Networks and Applications Conference (SATNAC).
 
37
 
38
Microsoft Corporation. 2004. Web Services Enhancements (WSE) 2.0. Microsoft Corporation. http://msdn.microsoft.com/webservices/building/wse/default.aspx.
 
39
Microsoft Corporation. 2005. F#. Microsoft Corporation. http://research.microsoft.com/fsharp/.
 
40
Microsoft Corporation. 2006. Windows Communication Foundation (WCF). Microsoft Corporation. http://wcf.netfx3.com/.
 
41
Microsoft Corporation. 2007. FS2PV: A Cryptographic-Protocol Verifier for F#. Microsoft Corporation. http://research.microsoft.com/projects/samoa/.
 
42
Milner, R. 1992. Functions as processes. Math. Struct. Comput. Sci. 2, 2, 119--141.
 
43
 
44
Muller, F. and Millen, J. 2001. Cryptographic protocol generation from CAPSL. Tech. rep. SRI-CSL-01-07, SRI.
45
 
46
OASIS 2004. Web Services Security: SOAP Message Security 1.0 (WS-Security 2004). OASIS Standard.
 
47
O'Shea, N. 2006. Elyjah: A security analyzer for Java implementations of communications protocols. Fourth year project report, Computer Science, Division of Informatics, University of Edinburgh.
48
 
49
 
50
 
51
Sumii, E. and Pierce, B. C. 2001. Logical relations for encryption. In Proceedings of the 14th IEEE Computer Security Foundations Workshop (CSFW'01). 256--269.
52
 
53
W3C 2003. SOAP Version 1.2. W3C. W3C Recommendation.
 
54
W3C 2004. Web Services Addressing (WS-Addressing). W3C. W3C Member Submission.
 
55

Collaborative Colleagues:
Karthikeyan Bhargavan: colleagues
Cédric Fournet: colleagues
Andrew D. Gordon: colleagues
Stephen Tse: colleagues