A generic security API for symmetric key management on cryptographic devices

We present a new symmetric key management API for cryptographic devices intended to implement security protocols in distributed systems. Our API has a formal security policy and proofs of security in the symbolic model, under various threat scenarios. This sets it apart from previous APIs such as RSA PKCS#11, which are under-specified, lack a clear security policy and are often subject to attacks. Our design is based on the principle of explicitness: the security policy for a key must be given at creation time, and this policy is then included in any ciphertext containing the key. Our API also contains novel features such as the possibility of insisting on a freshness check before accepting an encrypted key for import. To show the applicability of our design, we give an algorithm for automatically instantiating the API commands for a given key management protocol and apply it on the Clark-Jacob protocols suite.

[1]  Mike Bond A Chosen Key Difference Attack on Control Vectors , 2000 .

[2]  Jolyon Clulow,et al.  On the Security of PKCS#11 , 2003, CHES.

[3]  Theodore Y. Ts'o,et al.  Kerberos: an authentication service for computer networks , 1994, IEEE Communications Magazine.

[4]  Véronique Cortier,et al.  Automatic Analysis of the Security of XOR-Based Key Management Schemes , 2007, TACAS.

[5]  Ulf Carlsen Optimal privacy and authentication on a portable communications system , 1994, OPSR.

[6]  Graham Steel,et al.  Formal Analysis of PKCS#11 , 2008, 2008 21st IEEE Computer Security Foundations Symposium.

[7]  Mike Bond Attacks on Cryptoprocessor Transaction Sets , 2001, CHES.

[8]  Michaël Rusinowitch,et al.  Protocol insecurity with finite number of sessions is NP-complete , 2001, Proceedings. 14th IEEE Computer Security Foundations Workshop, 2001..

[9]  Zhiyi Fang,et al.  Securing Vehicular Ad Hoc Networks , 2007, 2007 2nd International Conference on Pervasive Computing and Applications.

[10]  R. Zunino Defending the Bank with a Static Analysis ⋆ , 2014 .

[11]  Christian Cachin,et al.  A Secure Cryptographic Token Interface , 2009, 2009 22nd IEEE Computer Security Foundations Symposium.

[12]  J. Courant,et al.  Defending the Bank with a Proof Assistant , 2006 .

[13]  Dennis Longley,et al.  An automatic search for security flaws in key management schemes , 1992, Comput. Secur..

[14]  John A. Clark,et al.  A survey of authentication protocol literature: Version 1.0 , 1997 .

[15]  Martín Abadi,et al.  Prudent engineering practice for cryptographic protocols , 1994, Proceedings of 1994 IEEE Computer Society Symposium on Research in Security and Privacy.

[16]  Véronique Cortier,et al.  A Generic Security API for Symmetric Key Management on Cryptographic Devices , 2009, ESORICS.

[17]  Dawn Xiaodong Song,et al.  Looking for diamonds in the desert - extending automatic protocol generation to three-party authentication and key agreement protocols , 2000, Proceedings 13th IEEE Computer Security Foundations Workshop. CSFW-13.

[18]  Graham Steel,et al.  Attacking and fixing PKCS#11 security tokens , 2010, CCS '10.

[19]  Graham Steel,et al.  Analysing PKCS#11 Key Management APIs with Unbounded Fresh Data , 2009, ARSPA-WITS.