formal analysis of imperfect cryptographic protocols
play

Formal Analysis of Imperfect Cryptographic Protocols Long Nguyen - PowerPoint PPT Presentation

Formal Analysis of Imperfect Cryptographic Protocols Long Nguyen Hoang University of Tartu, Institute of Computer Science Agenda Introduction Probabilistic-spi calculus Security protocol verification Conclusion Q&A


  1. Formal Analysis of Imperfect Cryptographic Protocols Long Nguyen Hoang University of Tartu, Institute of Computer Science

  2. Agenda • Introduction • Probabilistic-spi calculus • Security protocol verification • Conclusion • Q&A

  3. Protocol Analysis Techniques • Two view of cryptographic analyzing – Formal model – Computational model Crypto Protocol Analysis Dolev-Yao Formal Model Computational Model (perfect cryptography) Random oracle Probabilistic process calculi … Probabilistic I/O automata Model Checking Protocol Logics Process Calculi … Murphi, AVISPA BAN, PCL Applied Π -calculus

  4. The Best of Both World, can we? Formal Model Computational Model Attacker actions -Fixed set of actions, e.g., + Any probabilistic poly- decryption with known key time computation (ABSTRACTION) Security properties Security properties -Idealized, e.g., secret -Idealized, e.g., secret + Fine-grained, e.g., secret + Fine-grained, e.g., secret message = not possessing message = no partial atomic term representing information about bitstring message representation (ABSTRACTION) Analysis methods + Successful array of tools - Hand-proofs are difficult, and techniques; automation error-prone; no automation

  5. Our Approaches • A “hybrid” model – Semantics for imperfect cryptography – Probabilistic-spi calculus – Intruder model – Intruder model • Related works – Probabilistic Polynomial-time equivalence [Mitchell-Scedrov] – Reconciling Two Views of Cryptography [Abadi-Rogaway] – Soundness and completeness of formal encryption [Adao-Bana- Scedrov] – …

  6. Semantics for imperfect cryptography • pPat grammar P. p , Q. p ::= probabilistic patterns K. p key (for K ∈ Keys) m. p string (for m ∈ String) (P. p , Q. p ). p pair p ∈ [0, 1] • Probability of obtaining m from {m} K without knowing K ∀ A, Pr[m � A({m} K , G)] ≤ p dec ({m} K , G)

  7. Evaluate the Probability

  8. Example • Consider M = (({{(m,K)} K1 } K2 , {(K1,K2)} K ),K’)

  9. Example (3) • Consider M = (({{(m,K)} K1 } K2 , {(K1,K2)} K ),K’)

  10. Example (4)

  11. Security Notion • Indistinguishability M � � N � pP M ~ pP N /\ | pMax M – pMax N | � �

  12. Security Notion (2) • Perfect encryption vs Ideal ecryption M ≅ N ⇔ M � 0 N M ≅ N � M � � N ∀ � ∈ [0,1] M ≅ N � M � � N ∀ � > 1/q( η ) �

  13. Probabilistic-spi Calculus • Work with “imperfect” cryptography • Extended from spi-calculus – Probability to attack encrypted terms without knowing corresponding key knowing corresponding key – Allow statistics analysis, guessing, etc

  14. Probabilistic-spi Grammar • Set of processes • Set of terms P,Q,R ::= processes L;M;N ::= terms M � N � .P output N name M(x).P input ( M;N) pair ( M;N) pair P | Q composition P | Q composition 0 zero ( ν n)P restriction !P replication suc(M) successor [M is N] P match x variable 0 nil {m} K.p let (x, y) =M in P pair splitting case M of 0 : P suc(x) : Q integer case

  15. Result • When the probability of the intruder is zero (i.e. ideal cryptography), probabilistic-spi calculus is restricted to spi-calculus. • Unsafe in probabilistic-spi calculus implies unsafe in computational model computational model • Safe in probabilistic-spi calculus implies safe in computational model

  16. Security Protocol Verification • Probabilistic computational tree

  17. Security Protocol Verification (2) • Given protocol P with set of states S, set of transition rules R and set of rules AR for identifying an attack state qModelCheck(P) Input: Protocol P = (S,R,AR) and probability p Output: 1 if the protocol is secure, 0 otherwise Output: 1 if the protocol is secure, 0 otherwise 1. If (ispAttack AR (S) /\ pAttack AR (S) � p) then Return 0; 2. Compute set pApplicable lhs (S) for each r ∈ R with r = lhs � rhs; 3. Compute pSuccR(S); 4. For each S’ ∈ pSuccR(S); 5. B=qModelCheck(S’,R,AR); 6. If(B==0) then Return 0; 7. Return 1

  18. Conclusion • Advantage – Simple model – Inherit from spi-calculus. Can apply automatic verification tools – Extending Dolev-Yao model. Can relate protocol – Extending Dolev-Yao model. Can relate protocol in formal view to computational view • Drawback – Need further consideration to be sure of compatibility with automatic verification tools – Restricted to spi-calculus. • Work with other model checking methods (e.g. lazy intruder model) ?

  19. Thank you! Q &A

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend