Secure Compilation of Constant-Resource Programs - Archive ouverte HAL
Communication Dans Un Congrès Année : 2021

Secure Compilation of Constant-Resource Programs

Résumé

Observational non-interference (ONI) is a generic information-flow policy for side-channel leakage. Informally, a program is ONI-secure if observing program leakage during execution does not reveal any information about secrets. Formally, ONI is parametrized by a leakage function ℓ, and different instances of ONI can be recovered through different instantiations of ℓ. One popular instance of ONI is the cryptographic constant-time (CCT) policy, which is widely used in cryptographic libraries to protect against timing and cache attacks. Informally, a program is CCT-secure if it does not branch on secrets and does not perform secret-dependent memory accesses. Another instance of ONI is the constant-resource (CR) policy, a relaxation of the CCT policy which is used in Amazon's s2n implementation of TLS and in several other security applications. Informally, a program is CR-secure if its cost (modelled by a tick operator over an arbitrary semi-group) does not depend on secrets. In this paper, we consider the problem of preserving ONI by compilation. Prior work on the preservation of the CCT policy develops proof techniques for showing that main compiler optimisations preserve the CCT policy. However, these proof techniques critically rely on the fact that the semi-group used for modelling leakage satisfies the property: ℓ1 + ℓ1' = ℓ2 + ℓ2' ⇒ ℓ1 = ℓ2 ∧ ℓ1' = ℓ2'. Unfortunately, this non-cancelling property fails for the CR policy, because its underlying semi-group is (ℕ,+) and it is currently not known how to extend existing techniques to policies that do not satisfy non-cancellation. We propose a methodology for proving the preservation of the CR policy during a program transformation. We present an implementation of some elementary compiler passes, and apply the methodology to prove the preservation of these passes. Our results have been mechanically verified using the Coq proof assistant
Fichier principal
Vignette du fichier
Secure Compilation of Constant-Resource Programs.pdf (261.16 Ko) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)

Dates et versions

hal-03221440 , version 1 (08-05-2021)

Identifiants

  • HAL Id : hal-03221440 , version 1

Citer

Gilles Barthe, Sandrine Blazy, Rémi Hutin, David Pichardie. Secure Compilation of Constant-Resource Programs. CSF 2021 - 34th IEEE Computer Security Foundations Symposium, Jun 2021, Dubrovnik, Croatia. pp.1-12. ⟨hal-03221440⟩
275 Consultations
354 Téléchargements

Partager

More