Verifiable Side-Channel Security of Cryptographic Implementations: Constant-Time MEE-CBC

dc.contributor.author José Bacelar Almeida en
dc.contributor.author Manuel Barbosa en
dc.contributor.author Barthe,G en
dc.contributor.author Dupressoir,F en
dc.date.accessioned 2017-12-22T10:02:36Z
dc.date.available 2017-12-22T10:02:36Z
dc.date.issued 2016 en
dc.description.abstract We provide further evidence that implementing software countermeasures against timing attacks is a non-trivial task and requires domain-specific software development processes: we report an implementation bug in the s2n library, recently released by AWS Labs. This bug (now fixed) allowed bypassing the balancing countermeasures against timing attacks deployed in the implementation of the MAC-then- Encode-then-CBC-Encrypt (MEE-CBC) component, creating a timing side-channel similar to that exploited by Lucky 13. Although such an attack could only be launched when the MEE-CBC component is used in isolation – Albrecht and Paterson recently confirmed in independent work that s2n’s second line of defence, once reinforced, provides adequate mitigation against current adversary capabilities – its existence serves as further evidence to the fact that conventional software validation processes are not effective in the study and validation of security properties. To solve this problem, we define a methodology for proving security of implementations in the presence of timing attackers: first, prove black-box security of an algorithmic description of a cryptographic construction; then, establish functional correctness of an implementation with respect to the algorithmic description; and finally, prove that the implementation is leakage secure. We present a proof-of-concept application of our methodology to MEE-CBC, bringing together three different formal verification tools to produce an assembly implementation of this construction that is verifiably secure against adversaries with access to some timing leakage. Our methodology subsumes previous work connecting provable security and side-channel analysis at the implementation level, and supports the verification of a much larger case study. Our case study itself provides the first provable security validation of complex timing countermeasures deployed, for example, in OpenSSL. © International Association for Cryptologic Research 2016. en
dc.identifier.uri http://repositorio.inesctec.pt/handle/123456789/4743
dc.identifier.uri http://dx.doi.org/10.1007/978-3-662-52993-5_9 en
dc.language eng en
dc.relation 5598 en
dc.relation 5604 en
dc.rights info:eu-repo/semantics/openAccess en
dc.title Verifiable Side-Channel Security of Cryptographic Implementations: Constant-Time MEE-CBC en
dc.type conferenceObject en
dc.type Publication en
Files
Original bundle
Now showing 1 - 1 of 1
Thumbnail Image
Name:
P-00K-NJ6.pdf
Size:
564.52 KB
Format:
Adobe Portable Document Format
Description: