Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

20080330 cryptography hirsch_lecture07

243 vues

Publié le

Publié dans : Technologie, Formation
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

20080330 cryptography hirsch_lecture07

  1. 1. Ñëîæíîñòíàÿ êðèïòîãðàôèÿ Ýäóàðä Àëåêñååâè÷ Ãèðø http://logic.pdmi.ras.ru/~hirsch ÏÎÌÈ ÐÀÍ 30 ìàðòà 2008 ã. 1 / 13
  2. 2. Bit commitment Alice: Bob: α , , 2 / 13
  3. 3. Bit commitment Alice: Bob: α , , −→ α commitment α 2 / 13
  4. 4. Bit commitment Alice: Bob: α , , −→ α commitment α . . . æèçíü. . . 2 / 13
  5. 5. Bit commitment Alice: Bob: α , , −→ α commitment α . . . æèçíü. . . −→ α 2 / 13
  6. 6. Îïðåäåëåíèå (Bit commitment) . . . ýòî ïðîòîêîë îáùåíèÿ äâóõ ïîëèíîìèàëüíî îãðàíè÷åííûõ ó÷àñòíèêîâ, äëÿ êîòîðîãî âõîä ó÷àñòíèêà A áèò α, âõîä îáîèõ ó÷àñòíèêîâ A, B ïàðàìåòð íàä¼æíîñòè 1 ; n ïî îêîí÷àíèè ïðîòîêîëà âûõîä B áèò α ëèáî îøèáêà; ïîñëå íåêîòîðîãî ðàóíäà ïðîòîêîëà ñèòóàöèÿ òàêîâà: èìååòñÿ çíà÷åíèå α, òàêîå, ÷òî A èòîãîâûé îòâåò B áóäåò α = α = α; äëÿ ÷åñòíîãî äëÿ ëþáîãî A A) âåðîÿòíîñòü α = α ìàëà ( 1 ); (âìåñòî k íèêàêîé B (âìåñòî B ) åù¼ íå ìîæåò âûäàòü α ñî ñêîëü-íèáóäü n 1 1 ñóùåñòâåííîé âåðîÿòíîñòüþ ( 2 + k ); n èíôîðìàöèÿ, ïîëó÷åííàÿ B ê ýòîìó ìîìåíòó, íàçûâàåòñÿ ïðèâÿçêîé (commitment). Ïðîòîêîëû: (A, A) íåèíòåðàêòèâíûé, (AB ..., AB ...) èíòåðàêòèâíûé. 3 / 13
  7. 7. Íåèíòåðàêòèâíàÿ ïðèâÿçêà íà îñíîâå owp (A, A)-ïðîòîêîë Ïóñòü f : {0, 1} → {0, 1} n n owp, B å¼ òðóäíûé áèò. Ïðèâÿçêà (f (s ), B (s ) ⊕ α), ãäå ñëó÷àéíîå s ∈ {0, 1} n , íàä¼æíà: ïîñëå å¼ îòïðàâêè Áîá íå ìîæåò óçíàòü α: òàêîãî Áîáà ìîæíî ïðîñèòü íàéòè B (s ); óçíàâ s ïîòîì, Áîá íàéä¼ò α; Àëèñà íå ìîæåò äàòü äðóãîå s , äëÿ êîòîðîãî f (s ) = f (s ) (åãî íåò!). 4 / 13
  8. 8. Íåèíòåðàêòèâíàÿ ïðèâÿçêà íà îñíîâå owp (A, A)-ïðîòîêîë Ïóñòü f : {0, 1} → {0, 1} n n owp, B å¼ òðóäíûé áèò. Ïðèâÿçêà (f (s ), B (s ) ⊕ α), ãäå ñëó÷àéíîå s ∈ {0, 1} n , íàä¼æíà: ïîñëå å¼ îòïðàâêè Áîá íå ìîæåò óçíàòü α: òàêîãî Áîáà ìîæíî ïðîñèòü íàéòè B (s ); óçíàâ s ïîòîì, Áîá íàéä¼ò α; Àëèñà íå ìîæåò äàòü äðóãîå s , äëÿ êîòîðîãî f (s ) = f (s ) (åãî íåò!). Óïðàæíåíèå Ìîæíî áûëî îáîéòèñü è èíúåêòèâíîé owf f , îïðåäåë¼ííîé íå íà {0 , 1 } n , à íà ñòðîêàõ, âûäàâàåìûõ samplerîì. Êàêîå äîïîëíèòåëüíîå ñâîéñòâî îò owf ïîíàäîáèëîñü áû? 4 / 13
  9. 9. Íåèíòåðàêòèâíàÿ ïðèâÿçêà íà îñíîâå owp (A, A)-ïðîòîêîë Ïóñòü f : {0, 1} → {0, 1} n n owp, B å¼ òðóäíûé áèò. Ïðèâÿçêà (f (s ), B (s ) ⊕ α), ãäå ñëó÷àéíîå s ∈ {0, 1} n , íàä¼æíà: ïîñëå å¼ îòïðàâêè Áîá íå ìîæåò óçíàòü α: òàêîãî Áîáà ìîæíî ïðîñèòü íàéòè B (s ); óçíàâ s ïîòîì, Áîá íàéä¼ò α; Àëèñà íå ìîæåò äàòü äðóãîå s , äëÿ êîòîðîãî f (s ) = f (s ) (åãî íåò!). Óïðàæíåíèå Ìîæíî áûëî îáîéòèñü è èíúåêòèâíîé owf f , îïðåäåë¼ííîé íå íà {0 , 1 } n , à íà ñòðîêàõ, âûäàâàåìûõ samplerîì. Êàêîå äîïîëíèòåëüíîå ñâîéñòâî îò owf ïîíàäîáèëîñü áû? Îòâåò: 4 / 13
  10. 10. Íåèíòåðàêòèâíàÿ ïðèâÿçêà íà îñíîâå owp (A, A)-ïðîòîêîë Ïóñòü f : {0, 1} → {0, 1} n n owp, B å¼ òðóäíûé áèò. Ïðèâÿçêà (f (s ), B (s ) ⊕ α), ãäå ñëó÷àéíîå s ∈ {0, 1} n , íàä¼æíà: ïîñëå å¼ îòïðàâêè Áîá íå ìîæåò óçíàòü α: òàêîãî Áîáà ìîæíî ïðîñèòü íàéòè B (s ); óçíàâ s ïîòîì, Áîá íàéä¼ò α; Àëèñà íå ìîæåò äàòü äðóãîå s , äëÿ êîòîðîãî f (s ) = f (s ) (åãî íåò!). Óïðàæíåíèå Ìîæíî áûëî îáîéòèñü è èíúåêòèâíîé owf f , îïðåäåë¼ííîé íå íà {0 , 1 } n , à íà ñòðîêàõ, âûäàâàåìûõ samplerîì. Êàêîå äîïîëíèòåëüíîå ñâîéñòâî îò owf ïîíàäîáèëîñü áû? Îòâåò: ïîëèíîìèàëüíàÿ ðàçðåøèìîñòü îáëàñòè îïðåäåëåíèÿ f. 4 / 13
  11. 11. Èíòåðàêòèâíàÿ ïðèâÿçêà íà îñíîâå PRG (BA, A)-ïðîòîêîë Ïóñòü G 3n ãåíåðàòîð. Alice: Bob: ←− α ñëó÷àéíîå r ∈ {0, 1}3 n r −→ G (s ) ⊕ (r · α) 5 / 13
  12. 12. Èíòåðàêòèâíàÿ ïðèâÿçêà íà îñíîâå PRG (BA, A)-ïðîòîêîë Ïóñòü G 3n ãåíåðàòîð. Alice: Bob: ←− α ñëó÷àéíîå r ∈ {0, 1}3 n r −→ G (s ) ⊕ (r · α) G (s ) ëèáî G (s ) ⊕ r . . . æèçíü. . . 5 / 13
  13. 13. Èíòåðàêòèâíàÿ ïðèâÿçêà íà îñíîâå PRG (BA, A)-ïðîòîêîë Ïóñòü G 3n ãåíåðàòîð. Alice: Bob: ←− α ñëó÷àéíîå r ∈ {0, 1}3 n r −→ G (s ) ⊕ (r · α) G (s ) ëèáî G (s ) ⊕ r . . . æèçíü. . . −→ s α 5 / 13
  14. 14. Èíòåðàêòèâíàÿ ïðèâÿçêà íà îñíîâå PRG Íàä¼æíîñòü (BA, A)-ïðîòîêîëà 1. Áîá (äàæå âûáèðàâøèé r !) íå ìîæåò îòëè÷èòü G (s ) îò G (s ) ⊕ r: G (Un ) ïîõîæå íà U3n ïîõîæå íà U3n ⊕r ïîõîæå íà G (Un ) ⊕ r. 6 / 13
  15. 15. Èíòåðàêòèâíàÿ ïðèâÿçêà íà îñíîâå PRG Íàä¼æíîñòü (BA, A)-ïðîòîêîëà 1. Áîá (äàæå âûáèðàâøèé r !) íå ìîæåò îòëè÷èòü G (s ) îò G (s ) ⊕ r: G (Un ) ïîõîæå íà U3n ïîõîæå íà U3n ⊕r ïîõîæå íà G (Un ) ⊕ r. 2. Àëèñà íå ìîæåò ïîäìåíèòü α: G (s1 ) = G (s2 ) ⊕ r îçíà÷àåò r = G (s1 ) ⊕ G (s2 ). Òàêèõ ïàð (s1 , s2 ) èìååòñÿ 2 2n , è äëÿ êàæäîé èç íèõ îäíî r . 3n À âîçìîæíûõ r èìååòñÿ 2 . 22n 1 Âåðîÿòíîñòü, ÷òî Áîá ïîïàä¼ò â ïëîõîå r ìåíåå = 23n 2n . 6 / 13
  16. 16. 1-out-of-2 Oblivious Transfer Ïåðåäà÷à îäíîãî áèòà èç äâóõ âîçìîæíûõ Àëèñà îòäà¼ò îäèí èç äâóõ ïðåäìåòîâ (ñàìà íå çíàåò, êàêîé!). Áîá ïîëó÷àåò òîëüêî îäèí èç íèõ (íè÷åãî íå çíàåò î äðóãîì!). Ôèçè÷åñêàÿ ðåàëèçàöèÿ: 7 / 13
  17. 17. 1-out-of-2 Oblivious Transfer Ïåðåäà÷à îäíîãî áèòà èç äâóõ âîçìîæíûõ Àëèñà îòäà¼ò îäèí èç äâóõ ïðåäìåòîâ (ñàìà íå çíàåò, êàêîé!). Áîá ïîëó÷àåò òîëüêî îäèí èç íèõ (íè÷åãî íå çíàåò î äðóãîì!). Ôèçè÷åñêàÿ ðåàëèçàöèÿ: Âçÿòü äâà ïðåäìåòà, ïåðåìåøàòü ñ çàêðûòûìè ãëàçàìè.  ëåâîé ðóêå èëè â ïðàâîé? Òîæå ñ çàêðûòûìè ãëàçàìè. Îñòàâøååñÿ âûáðàñûâàåì. Íàä¼æíîñòü, êîíå÷íî, õðîìàåò. . . (êòî ïðîâåðèò Àëèñó?). Ê òîìó æå, Áîá íå ìîæåò âûáðàòü òîãî ïðåäìåòà, êîòîðûé åìó íóæåí, à âûíóæäåí íà ñàìîì äåëå áðàòü ñëó÷àéíûé. 7 / 13
  18. 18. Îïðåäåëåíèå ((1,2)Oblivious Transfer, (1,2)OT) . . . ýòî ïðîòîêîë îáùåíèÿ äâóõ ïîëèíîìèàëüíî îãðàíè÷åííûõ ó÷àñòíèêîâ, äëÿ êîòîðîãî. . . Âõîä ó÷àñòíèêà A äâà áèòà α0 , α1 , âõîä ó÷àñòíèêà B èíäåêñ i ∈ {0, 1}, âõîä îáîèõ ó÷àñòíèêîâ A, B ïàðàìåòð íàä¼æíîñòè 1 . n Âûõîä ïî îêîí÷àíèè ïðîòîêîëà: âûõîä B ïàðà1 áèòîâ (β0 , β1 ); âûõîä A èíäåêñ j . 2 Ôóíêöèîíàëüíîñòü: äëÿ ÷åñòíûõ β0 = α i . Íàä¼æíîñòü: äëÿ ëþáîãî B B ) âåðîÿòíîñòü β1 = α1− ìàëà ( 1 + 1 ); (âìåñòî 2 i k íèêàêîé A (âìåñòî A) åù¼ íå ìîæåò âûäàòü j = i ñî ñêîëü-íèáóäü n 1 1 ñóùåñòâåííîé âåðîÿòíîñòüþ ( 2 + k ). n 1 ×åñòíûé B âûäà¼ò òîëüêî îäèí áèò. 2 ×åñòíûé A íè÷åãî íå âûäà¼ò. 8 / 13
  19. 19. Ïðîòîêîë äëÿ (1,2)OT èç ðàñøèðåííîãî tdpf Ðàñøèðåííîå tdpf (e , s , s , d ) ñ òðóäíûì áèòîì B : åñòü äîïîëíèòåëüíûé sampler s ïî îáðàçó: s (r ) ðàñïðåäåëåíî ïîõîæå íà e (s (r )) äàæå äëÿ òîãî, êòî çíàåò d , 9 / 13
  20. 20. Ïðîòîêîë äëÿ (1,2)OT èç ðàñøèðåííîãî tdpf Ðàñøèðåííîå tdpf (e , s , s , d ) ñ òðóäíûì áèòîì B : åñòü äîïîëíèòåëüíûé sampler s ïî îáðàçó: s (r ) ðàñïðåäåëåíî ïîõîæå íà e (s (r )) äàæå äëÿ òîãî, êòî çíàåò d , íî d (s (r )) òðóäíî íàéòè áåç d , äàæå çíàÿ r . 9 / 13
  21. 21. Ïðîòîêîë äëÿ (1,2)OT èç ðàñøèðåííîãî tdpf Ðàñøèðåííîå tdpf (e , s , s , d ) ñ òðóäíûì áèòîì B : åñòü äîïîëíèòåëüíûé sampler s ïî îáðàçó: s (r ) ðàñïðåäåëåíî ïîõîæå íà e (s (r )) äàæå äëÿ òîãî, êòî çíàåò d , íî d (s (r )) òðóäíî íàéòè áåç d , äàæå çíàÿ r . Ïðåäïîëîæèì, ÷òî ó÷àñòíèêè ïàññèâíî ÷åñòíû (semi-honest): ñëåäóþò ïðîòîêîëó, íî ìîãóò âû÷èñëÿòü ÷òî-òî ëèøíåå íà îñíîâå óâèäåííîãî. Ïðîòîêîë: 1. Àëèñà ãåíåðèðóåò (e , s , s , d ) è ïîñûëàåò (e , s , s ) Áîáó. 2. Áîá âû÷èñëÿåò ai = e (s (r )) è a1−i = s (r ) è îòïðàâëÿåò Àëèñå. 3. Àëèñà âû÷èñëÿåò ∀k ck = b ⊕ B (d (a )), k k ïîñûëàåò Áîáó (c0 , c1 ). 4. Áîá âû÷èñëÿåò bi = B (s (r )) ⊕ c i è âûäàåò åãî. 9 / 13
  22. 22. Óïðàæíåíèÿ Óïðàæíåíèå Íàïèñàòü ôîðìàëüíî äîêàçàòåëüñòâî íàä¼æíîñòè (BA,A)-ïðîòîêîëà. Óêàçàíèå: ñ ïîìîùüþ âîçìîæíîãî ïðîòèâíèêà ìîæíî âçëîìàòü ëèáî òðóäíûé áèò, ëèáî îäíî èç ñâîéñòâ ðàñøèðåííîãî tdpf. Óïðàæíåíèå Èçâëå÷ü owf èç ïðîòîêîëà bit commitment. Óïðàæíåíèå À ÷òî ìîæíî èçâëå÷ü èç ïðîòîêîëà (1,2)-OT? 10 / 13
  23. 23. Secure Function Evaluation (SFE) Àëèñà è Áîá èìåþò ïî ïîëîâèíå àðãóìåíòîâ ôóíêöèè c = f (a1 , . . . , a , b 1 , . . . , b ) m m è õîòÿò å¼ âû÷èñëèòü, ñîõðàíèâ ñâîè àðãóìåíòû â òàéíå. Ïàññèâíî-÷åñòíàÿ Àëèñà íå ìîæåò âû÷èñëèòü íè÷åãî, êðîìå ïîëèíîìèàëüíî âû÷èñëèìîé ôóíêöèè îò a1 , . . . , am è c : ∀g ∀k ∀ ïîëèí. A ∃ ïîëèí. A 1 Pr{A (÷òî âèäåëà Àëèñà) = g (a, b )} ≤ Pr{A (a, f (a, b )) = g (a, b )} + k . n Òî æå è Áîá. 11 / 13
  24. 24. SFE: àëãîðèòì Yao Àëèñà êîäèðóåò ôóíêöèþ f (áóëåâó ñõåìó): òàáëèöà èñòèííîñòè êàæäîãî ãåéòà êîäèðóåòñÿ ñëó÷àéíûìè ñòðî÷êàìè, ðåçóëüòàòû øèôðóþòñÿ: 0 0 1 u0 v0 Eu0 (Ev0 (w1 )) 0 1 1 0 0 1 → u0 u1 v1 v0 Eu0 (Ev1 (w0 )) Eu1 (Ev0 (w1 )) 1 1 0 u1 v1 Eu1 (Ev1 (w0 )) Áîá âñ¼ âû÷èñëÿåò, äëÿ ýòîãî ïîëó÷àåò çàøèôðîâàííóþ ñõåìó, êîäû âõîäîâ Àëèñû, êîäû ñâîèõ âõîäîâ ïðè ïîìîùè (1,2)OT: ÷òî-òî èç v0 è v1 , ïîñëå âû÷èñëåíèÿ êëþ÷ äëÿ ðàñøèôðîâêè îòâåòà. 12 / 13
  25. 25. SFE: àëãîðèòì Yao Àëèñà êîäèðóåò ôóíêöèþ f (áóëåâó ñõåìó): òàáëèöà èñòèííîñòè êàæäîãî ãåéòà êîäèðóåòñÿ ñëó÷àéíûìè ñòðî÷êàìè, ðåçóëüòàòû øèôðóþòñÿ:  0 0 1 Eu0 (Ev0 (w1 ))  →  0 1 0 Eu0 (Ev1 (w0 ))  ïåðåñòàâèòü 1 0 1 Eu1 (Ev0 (w1 ))   Eu1 (Ev1 (w0 ))  1 1 0 Áîá âñ¼ âû÷èñëÿåò, äëÿ ýòîãî ïîëó÷àåò çàøèôðîâàííóþ ñõåìó, êîäû âõîäîâ Àëèñû, êîäû ñâîèõ âõîäîâ ïðè ïîìîùè (1,2)OT: ÷òî-òî èç v0 è v1 , ïîñëå âû÷èñëåíèÿ êëþ÷ äëÿ ðàñøèôðîâêè îòâåòà. 12 / 13
  26. 26. Ãîòîâèìñÿ ê ýêçàìåíó ðåøàåì óïðàæíåíèÿ è êîïèì âîïðîñû! 13 / 13

×