180 likes | 322 Views
Michael Backes, Birgit Pfitzmann, Michael Waidner IBM Research, Zurich. A Reactively Secure Dolev-Yao-style Cryptographic Library. DIMACS, June 2004. Signature. Encryption. Hashfunction. Key establishment. The Big Picture. But can we justify . Idealized Crypto. given. ?.
E N D
Michael Backes, Birgit Pfitzmann, Michael Waidner IBM Research, Zurich A Reactively Secure Dolev-Yao-style Cryptographic Library DIMACS,June 2004
Signature Encryption Hashfunction Key establishment The Big Picture But can we justify Idealized Crypto given ? Designed by CAD Verified by CAV
Limits of Automation • Full arithmetic is out • Probability theory just developing • So how do current tools handle cryptography?
Dolev-Yao Model • Idea [DY81] • Abstraction as term algebras, e.g.,Dx(Ex(Ex(m))) • Cancelation Rules, e.g., DxEx = e • Well-developed proof theories • Abstract data types • Equational 1st-order logic • Important for security proofs • Inequalities! (Everything that cannot be derived.) • Known as “initial model” • Important goal: Justify or replace
sign pk’ E pk ( , ) N m Dolev-Yao Model – Variants [Ours] [EG82, M83, EGS85...] • Operators and equations • sym enc, pub enc, nonce, payload, pairing, sigs, ... • Inequalities assumed across operators! • Untyped or typed • Destructors explicit or implicit • Abstraction from probabilism • Finite selection, counting, multisets • Surrounding protocol language • Special-purpose, CSP, pi-calculus, ... [any]
Overview of Our Approach • Precise system model allowing cryptographic and abstract operations • “As secure as” with composition theorem • Preservation theorems for security properties • Concrete pairs of idealizations and secure realizations • In particular: Dolev-Yao style cryptographic library • Detailed Proofs • Poly-time, cryptographic bisimulations with static information flow analysis, …
Other Work on DY Justification • [AR00, AJ01, L01]: symmetric encryption, passive • [HLM03]: public-key encryption, passive • [MW04]: public-key encryption, much more restricted, slightly more efficient • [L04]: Active symmetric encryption (earlier than ours).
• • H H A’ A M1 M2 TH Real system Ideal system viewreal(H) viewideal(H) Indistinguishability of random variables Reactive Simulatability Idea: Whatever happens with real system could also happen with ideal system. [Y82, GMW87, GM95, LMMS98, HM00, PW00, PW01, C01, …]
³ Ü And transitivity ³ Composition Given: ³ Does this hold? ³
Cryptographic Idealization Layers VSS Certified mail Creden-tials ... Larger abstractions [GM95] [PSW00] [CL01] Securechannels Auth/sigs as statement database ... Small real abstractions [PW00, PW01, CK02, BJP02,...] [BPW03 ...]Related: [SM93,P93] ... Encryption as E(pk, 1len(m)) Real auth/sig’s + integrity lookup Low-level crypto (not abstract) [LMMS98, PW00, C01,...] [LMMS98, C01,...] Normal cryptographic definitions
Dolev-Yao-style Crypto Abstractions • Recall: Term algebra, inequalities • Major tasks: • Represent ideal and real library in the same way to higher protocols • Prevent honest users from stupidity with real crypto objects, but don’t restrict adversary • E.g., sending a bitstring that’s almost a signature • What imperfections are tolerable / must be allowed?
handles handles For U: For V: For A: Tu,1 - - Tu,2 Tv,1 Ta,1 Tu,3 - - Ideal Cryptographic Library U V No crypto outputs! Deterministic! Commands, payloads, terms? Payloads / test results, terms? Term 1 Term 2 Term 3 Not globally known A E E pk pk m pk m TH
received(U, Tv,2) send(V, Tu,4) Ideal Cryptographic Library (2) U V Tu,4encrypt(Tu,1, Tu,3) get_type(Tv,2) Tv,3 := decrypt(...) Term 1 Term 2 Term 3 Term 4 ... For U: For V: For A: Tu,1 - - Tu,2 Tv,1 Ta,1 Tu,3 - - E A E E pk E pk pk m pk m pk m TH
Main Differences to Dolev-Yao • Tolerable imperfections: • Lengths of encrypted messages cannot be kept secret • Adversary may include incorrect messages inside encryptions • Signature schemes can have memory
Real Cryptographic Library U V No crypto outputs! Commands, payloads, handles Payloads / test results, handles pk c1¬ E(pk, m) c2¬ E(pk, m) c1 A Bitstrings Real system
Main Additions to Given Cryptosystems • Standard model, standard assumptions • Type tags • Tagging with keys • Additional randomization (e.g., needed when correct machines use A’s keys)
Reduction proofs for collisions, guesses, forgeries • With error sets (of runs) • With info-flow analysis Proof of Correct Simulation (2) Combined system Probabilistic bisimulations
³ Summary • Needham-Schroeder-Lowe (hand-proved) • sometimes better • TBD: Tool proof; more primitives & variants