scalable deniable group key establishment
play

Scalable deniable group key establishment Kashi Neupane - PowerPoint PPT Presentation

Scalable deniable group key establishment Kashi Neupane Rainer Steinwandt Adriana Surez Corona FPS 2012, Montreal, 25 October 2012 Outline IntroducDon


  1. Scalable ¡deniable ¡group ¡key ¡ establishment ¡ Kashi ¡Neupane ¡ Rainer ¡Steinwandt ¡ Adriana ¡Suárez ¡Corona ¡ FPS ¡2012, ¡Montreal, ¡25 ¡October ¡2012 ¡

  2. Outline ¡ • IntroducDon ¡ • Security ¡definiDons. ¡Deniability ¡ • Compiler ¡to ¡get ¡authenDcaDon ¡and ¡deniability ¡ • Conclusion ¡

  3. Group ¡Key ¡Establishment ¡ • Establishment ¡of ¡a ¡common ¡key ¡among ¡a ¡set ¡ of ¡users ¡ • Key ¡used ¡for ¡symmetric ¡key ¡encrypDon ¡ scheme, ¡MAC… ¡

  4. Compiler ¡ • Generic ¡soluDon ¡ • Can ¡be ¡applied ¡to ¡independently ¡designed ¡ protocols ¡ • Add ¡extra ¡features ¡ • Allows ¡modular ¡design ¡

  5. Compiler( ¡ ¡ ¡ ¡) ¡=P’ ¡ ¡ ¡ ¡P ¡

  6. Compiler: ¡Examples ¡ • Katz ¡& ¡Yung ¡2003: ¡ ¡ ¡ ¡ ¡unauthenDcated ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡authenDcated ¡ ¡ • Abdalla ¡et ¡al. ¡2007: ¡ ¡ ¡ ¡ ¡ ¡ ¡2-­‑party ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡n-­‑party ¡

  7. Security ¡Goals: ¡SemanDc ¡Security ¡ • The ¡adversary ¡cannot ¡disDnguish ¡the ¡established ¡key ¡from ¡a ¡random ¡key ¡with ¡ more ¡than ¡negligible ¡probability ¡ ¡ ¡ • Under ¡which ¡circumstances? ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Security ¡model ¡ ¡ ¡ ¡ ¡ ¡ ¡We ¡follow ¡Katz ¡and ¡Yung ¡03 ¡security ¡model ¡ • Secure ¡against ¡passive ¡adversaries ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡unauthenDcated ¡ ¡protocol ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ e ¡ • Secure ¡against ¡acDve ¡adversaries ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡authenDcated ¡protocol ¡ e ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡

  8. Deniability ¡in ¡the ¡group ¡se`ng ¡ • Protocol ¡transcript ¡cannot ¡be ¡used ¡to ¡ evidence ¡involvement ¡of ¡a ¡user ¡in ¡the ¡protocol ¡ • Formalized ¡by ¡Bohli ¡and ¡Steinwandt ¡for ¡the ¡ group ¡se`ng ¡ ¡ • ExisDng ¡protocols: ¡ – BS06: ¡4-­‑round ¡soluDon ¡in ¡RO ¡model ¡ – Zhang ¡et ¡al.10: ¡3-­‑round ¡soluDon ¡in ¡standard ¡ model ¡(slightly ¡different ¡deniability ¡definiDon) ¡ ¡

  9. Deniability ¡ ¡ ¡ ¡A ¡group ¡key ¡establishment ¡protocol ¡is ¡ ¡ ¡ ¡deniable ¡if ¡for ¡every ¡ppt ¡adversary ¡A ¡(with ¡access ¡ to ¡Corrupt, ¡Send ¡and ¡Reveal) ¡there ¡exists ¡a ¡ppt ¡ simulator ¡S ¡(with ¡access ¡to ¡Corrupt) ¡such ¡that ¡: ¡ • # ¡of ¡Corrupt-­‑queries ¡of ¡S ¡ ≤ # ¡Corrupt-­‑queries ¡of ¡A. ¡ • For ¡each ¡ppt ¡disDnguisher ¡X, ¡the ¡advantage ¡in ¡ disDnguishing ¡the ¡author ¡of ¡a ¡transcript ¡is ¡ negligible. ¡

  10. Compiler ¡to ¡get ¡authenDcaDon: ¡ Katz&Yung ¡(Sketch) ¡ • IniDalizaDon: ¡GeneraDon ¡of ¡(pk,sk) ¡of ¡SUF-­‑CMA ¡ signature ¡scheme ¡ ¡ Σ ¡ Deniable? ¡ • Round ¡0: ¡users ¡broadcast ¡nonces ¡ ¡ • Round ¡j: ¡users ¡sign ¡message ¡and ¡nonces ¡with ¡ Σ and ¡send ¡the ¡message ¡& ¡signature. ¡ ¡ ¡ ¡ ¡Users ¡verify ¡the ¡signatures ¡of ¡messages ¡received ¡

  11. Compiler ¡to ¡get ¡authenDcaDon ¡and ¡ deniability ¡ • Can ¡we ¡modify ¡Katz&Yung ¡to ¡get ¡deniability ¡ Unforgeable ¡ Anonymous ¡ along ¡with ¡authenDcaDon? ¡ ¡ ¡ ¡ ¡ Signature ¡that ¡can ¡be ¡ verified ¡by ¡several ¡ Macs? ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡How ¡to ¡exchange ¡the ¡key ¡used? ¡ verificaDon ¡keys ¡ Bender ¡et ¡al ¡06 ¡ ¡ ¡ ¡ • User ¡choose ¡the ¡Key ¡and ¡sign ¡it ¡with ¡a ¡ring ¡ signature ¡and ¡encrypt ¡it ¡to ¡the ¡other ¡users ¡ IND-­‑CCA ¡ (mulD ¡key ¡encapsulaDon-­‑symmetric ¡ ¡ ¡ encrypDon) ¡ Key ¡EncapsulaDon ¡with ¡ mulDple ¡recipients ¡ ¡ Smart ¡04 ¡ ¡

  12. IniDalizaDon ¡Phase ¡ModificaDon ¡ • U i ¡runs ¡mKeyGen ¡and ¡RKeyGen ¡and ¡make ¡the ¡ public ¡keys ¡ek i ¡ and ¡vk i ¡ available ¡

  13. Compiler: ¡Round ¡0 ¡ U 1 U 2 U || 0 || r U i i i k r ∈ {0,1} i Initiator

  14. Compiler: ¡Round ¡0 ¡ U k K MKeyGen(1 ) 0 ← U U || 0 || (C, E) || tag Initiator 0 0 σ RSig (K || pid || U || 0 || r , pid ) = sk 0 0 0 0 0 0 (K, C) mEncaps(pi d ) ← U 0 E Enc (K || pid || U || 0 || r || σ ) = K 0 0 0 0 tag Tag (C, E) 0 = K 0

  15. Compiler: ¡Aker ¡Round ¡0 ¡ nonces ((U , r ),..., (U , r )) U i = 1 1 n n K mDecaps (C) ← dk i K || pid || U || 0 || r || σ Dec (E) ← 0 0 0 0 K RVerify(K || pid || U || 0 || r , σ , pid ) 0 0 0 0 0 Use ¡K 0 ¡ for ¡ ¡ Verify (tag , (C, E)) authenDcaDon ¡ ¡ ¡ ¡ ¡ K 0 0 pid pid ? 0 = i

  16. ModificaDon ¡of ¡Round ¡j ¡ • User ¡i ¡sends ¡m i,j ¡ in ¡protocol ¡P ¡ tag Tag (m || nonces ) i, = j K i, j U 0 i • ¡User ¡i ¡sends ¡ m || tag i, j i, j ¡

  17. Check ¡aker ¡Round ¡j ¡ • User ¡i ¡receives ¡m l,j ¡ from ¡U l ¡ Sid=concatenaDon ¡ ¡ U ∈ pid of ¡all ¡messages ¡ l 0 Verify(tag , K ) sk = sk l, j 0 P' P

  18. Protocol ¡security ¡ Theorem ¡ P ¡unauthenDcated ¡protocol ¡ Compiled ¡protocol ¡is ¡ ¡ mKEM ¡is ¡IND-­‑CCA ¡ authenDcated ¡ ¡ Symmetric ¡encrypDon ¡is ¡ROR-­‑CCA ¡ semanDcally ¡secure ¡ Ring ¡signature ¡is ¡UF ¡ MAC ¡ ¡is ¡SUF-­‑CMA ¡ ¡ ¡ ¡

  19. Protocol ¡security ¡ Theorem ¡ P ¡unauthenDcated ¡ ¡ ¡ P ¡does ¡not ¡involve ¡ Compiled ¡protocol ¡is ¡ ¡ ¡long-­‑term ¡secret ¡keys ¡ deniable ¡ ¡ Ring ¡Signature ¡is ¡anonymous ¡ ¡ Symmetric ¡encrypDon ¡is ¡ROR-­‑CCA ¡ ¡

  20. Example ¡ P=Burmester&Desmedt ¡94 ¡modified ¡ protocol ¡(2 ¡rounds) ¡ ¡ ¡ ¡ P Compilador( ¡ ¡ ¡ ¡) ¡ =P’ ¡ P’ ¡=3-­‑round ¡deniable ¡authenDcated ¡protocol ¡

  21. ¡ Conclusions ¡ ¡ • Compiler ¡adding ¡authenDcaDon ¡and ¡ deniability ¡ • AlternaDve ¡to ¡Katz&Yung ¡compiler ¡when ¡ privacy ¡mamers ¡ • Provides ¡a ¡3-­‑round ¡deniable ¡authenDcated ¡ soluDon ¡

  22. Thank ¡you! ¡

Recommend


More recommend