Formal Analysis of PKCS#11 and Proprietary Extensions
Stéphanie Delaune, Steve Kremer, and Graham Steel. Formal Analysis of PKCS#11 and Proprietary Extensions. Journal of Computer Security, 18(6):1211–1245, IOS Press, November 2010.
doi:10.3233/JCS-2009-0394
Download
Abstract
PKCS#11 defines an API for cryptographic devices that has been widely adopted in industry. However, it has been shown to be vulnerable to a variety of attacks that could, for example, compromise the sensitive keys stored on the device. In this paper, we set out a formal model of the operation of the API, which diers from previous security API models notably in that it accounts for non-monotonic mutable global state. We give decidability results for our formalism, and describe an implementation of the resulting decision procedure using the model checker NuSMV. We report some new attacks and prove the safety of some congurations of the API in our model. We also analyse proprietary extensions proposed by nCipher (Thales) and Eracom (Safenet), designed to address the shortcomings of PKCS#11.
BibTeX
@article{DKS-jcs09, abstract = {PKCS\#11 defines an API for cryptographic devices that has been widely adopted in industry. However, it has been shown to be vulnerable to a variety of attacks that could, for example, compromise the sensitive keys stored on the device. In this paper, we set out a formal model of the operation of the API, which diers from previous security API models notably in that it accounts for non-monotonic mutable global state. We give decidability results for our formalism, and describe an implementation of the resulting decision procedure using the model checker NuSMV. We report some new attacks and prove the safety of some congurations of the API in our model. We also analyse proprietary extensions proposed by nCipher (Thales) and Eracom (Safenet), designed to address the shortcomings of PKCS\#11.}, author = {Delaune, St{\'e}phanie and Kremer, Steve and Steel, Graham}, DOI = {10.3233/JCS-2009-0394}, journal = {Journal of Computer Security}, month = nov, number = {6}, pages = {1211-1245}, publisher = {{IOS} Press}, title = {Formal Analysis of {PKCS\#11} and Proprietary Extensions}, volume = {18}, year = {2010}, nmonth = {11}, url = {http://www.lsv.ens-cachan.fr/Publis/PAPERS/PDF/DKS-jcs09.pdf}, }