Cryptology ePrint Archive: Report 2019/519

Security in the Presence of Key Reuse: Context-Separable Interfaces and their Applications

Christopher Patton and Thomas Shrimpton

Abstract: Key separation is often difficult to enforce in practice. While key reuse can be catastrophic for security, we know of a number of cryptographic schemes for which it is provably safe. But existing formal models, such as the notions of joint security (Haber-Pinkas, CCS ’01) and agility (Acar et al., EUROCRYPT ’10), do not address the full range of key-reuse attacks—in particular, those that break the abstraction of the scheme, or exploit protocol interactions at a higher level of abstraction. This work attends to these vectors by focusing on two key elements: the game that codifies the scheme under attack, as well as its intended adversarial model; and the underlying interface that exposes secret key operations for use by the game. Our main security experiment considers the implications of using an interface (in practice, the API of a software library or a hardware platform such as TPM) to realize the scheme specified by the game when the interface is shared with other unspecified, insecure, or even malicious applications. After building up a definitional framework, we apply it to the analysis of two real-world schemes: the EdDSA signature algorithm and the Noise protocol framework. Both provide some degree of context separability, a design pattern for interfaces and their applications that aids in the deployment of secure protocols.

Category / Keywords: cryptographic protocols / Key-reuse, APIs, Diffie-Hellman, EdDSA, Noise

Original Publication (with major differences): IACR-CRYPTO-2019

Date: received 17 May 2019, last revised 6 Jun 2019

Contact author: cjpatton at ufl edu

Available format(s): PDF | BibTeX Citation

Note: The latest version fixes various typos.

Version: 20190606:143600 (All versions of this report)

Short URL: ia.cr/2019/519


[ Cryptology ePrint archive ]