Доведення з нульовим розголошенням (англ. zero-knowledge proof, zero-knowledge protocol) — метод для доведення однією стороною іншій, що твердження (зазвичай — математичне) — істинне, без розкриття будь-якої іншої інформації, окрім достовірності твердження.
Абстрактні приклад
Печера Алі-Баби
Історію, що показує деякі ідеї доведення з нульовим розголошенням, вперше оприлюднили Жан-Жак Квісквотер та ін. в їх роботі «Як пояснити протокол нульового розголошення вашим дітям». На кшталт Аліси й Боба в криптографії в англомовних версіях доведення з нульовим розголошенням використовують Пеґґі (англ. Peggy — мнемоніка для англ. Prover), який доводить твердження, і Віктора (англ. Victor — мнемоніка для англ. Verifier), який перевіряє твердження. У нас — Оксана і Тарас[].
У цій історії Оксана виявила таємне слово, що відкриває секретні двері в печері. Печера утворена у вигляді кола, з входом з одного боку та магічними дверима, що закривають інший бік проходу. Тарас каже, що заплатить за секрет, як впевниться, що Оксана справді знає його. Оксана каже, що скаже секрет лише після оплати. Вони розробили схему, за якої Оксана може довести Тарасові своє знання, не кажучи йому секретного слова.
Спочатку Тарас очікує зовні печери, Оксана входить. Вони позначили лівий та правий проходи як A і B. Тоді Тарас заходить у печеру і вигукує назву проходу, яким має вийти Оксана. Якщо вона справді знає магічне слово, то для неї легко вийти будь-яким проходом. Зауважте, Тарас не знає, яким саме проходом Оксана ввійшла.
Уявімо, що вона не знає слова. Тоді вона зможе вийти лише через той прохід, яким вона увійшла, тобто, ймовірність вийти названим Тарасом проходом у неї 50 відсотків. Якщо повторити, припустимо, 20 разів підряд, шанси Оксани постійно вгадувати назву проходу, що назве Тарас, надзвичайно малі ().
Отже, якщо Оксана впевнено з'являється з того виходу, який обирає Тарас, він може переконатись, що вона, швидше за все, знає таємне слово.
Дві кульки і друг, що не розрізняє кольорів
Уявіть собі друга, який не розрізняє червоний і зелений, а ви розрізняєте і у вас є дві кульки: одна червона і ще одна зелена, однакові за всіма іншими ознаками. Для вашого друга вони видаються геть однаковими і він сумнівається, що їх насправді можна відрізнити. Ви хочете довести йому, що вони мають різний колір, але нічого окрім цього; зокрема, ви не хочете видати яка з них якого кольору.
Ось підхід до доведення. Ви даєте ці кульки другові і він ховає за спиною. Далі, він показує вам одну з кульок. Він знов ховає її за спиною і потім знов показує вам одну кульку, обираючи будь-яку з них з однаковою ймовірністю. Він запитує вас, «Чи поміняв я кульку?» Процедуру можна повторити за необхідності.
Звісно, побачивши її колір ви можете впевнено сказати чи поміняв він їх. З іншого боку, якби вони були однакового кольору, то ви б не могли цього сказати з імовірністю більш ніж 50 %.
Через те, що імовірність випадкового успіху становить 50 %, імовірність випадково правильно відповісти в кількох спробах наближається до нуля.
Це доведення з нульовим розголошенням, бо ваш друг ніколи не з'ясує яка з кульок червона, а яка зелена.
Визначення
Доведення з нульовим розголошенням повинно мати три властивості:
- Повнота (англ. completeness): якщо твердження істинне, той хто чесно доводить (такий, що повністю слідує протоколу) завжди переконає чесного перевіряльника.
- Коректність (англ. soundness) захищає від прийняття хибного твердження: якщо твердження брехливе, то ймовірність обману V в будь-якому випадку має бути дуже низькою.
- — імовірно зловмисний доводжувач.
- Нульове розголошення: якщо твердження істинне, жоден перевіряльник, який грає не за правилами, не може дізнатись нічого, окрім факту істинності.
Зокрема, після того, як перевіряльник переконався в істинності твердження, сам він не зможе довести його істинність третім особам.
Дві перші властивості виконуються для загальної інтерактивної системи доведення. Третя властивість призводить до нульового розголошення.
Доведення з нульовим розголошенням не є доведенням в математичному сенсі, бо існує мала ймовірність (англ. soundness error) того, що нечесний доводжувач зможе переконати перевіряльника в істинності брехливого твердження. Інакше кажучи, доведення швидше ймовірнісне, ніж детерміністичне. Однак, наявні техніки зменшення можливості похибки до нехтовно малої.
Формальне визначення нульового розголошення потребує використання деякої обчислювальної моделі, найпоширеніше використання машини Тюрінга. Нехай , і будуть автоматами Тюрінга. з для мови є з нульовим розголошенням, якщо для будь-якого перевіряльника ймовірнісно поліноміального часу (ІПЧ) (англ. probabilistic polynomial time (PPT)) існує симулятор з очікуваним ІПЧ , такий що
Де :
- Розподіл імовірностей над тобто, над всіма можливими перемовинами, що і можуть мати стосовно
- повідомлення від , випадковість
Доводжувач змодельовано як такий, що має необмежену обчислювальну потужність (на практиці, P зазвичай є імовірнісною машиною Тюрінга). Інтуїтивно, визначення стверджує, що інтерактивна система доведення має нульове розголошення, якщо для будь-якого перевіряльника існує дієвий симулятор , який може відтворити розмову між і на будь-якому вході. Отже, розмова з не може навчити обчисленню чогось, чого він не міг обчислити до того.
Допоміжний рядок відіграє роль «попереднього знання» (англ. prior knowledge). Визначення має на увазі, що не може використати якесь попереднє знання , щоб отримати інформацію з розмови з , бо ми вимагаємо, що якщо також має це знання, тоді він може відтворити перемовини між і як і раніше.
Наведене визначення для ідеального нульового розголошення. Визначення обчислювального нульового розголошення отримаємо з вимогою, що погляди перевіряльника і симулятора обчислювально нерозрізненні, при одному допоміжному рядку.
Приклад з ізоморфізмом графів
Розглянемо приклад системи доведення з нульовим розголошенням для ізоморфізму графів. Маємо два графи і , хоче переконати , що знає перестановку , таку що . може просто відіслати до , але це не буде системою з нульовим розголошенням; треба переконати , що це ізоморфізм, без розкриття будь-яких даних. Маємо наступний протокол:
- випадковим чином обирає перестановку і біт , обчислює , і відсилає до .
- обирає біт і відправляє до .
- відправляє перестановку до , де
- приймає тоді і лише тоді коли .
Це протокол досконалої повноти, бо якщо це справді ізоморфізм, тоді завжди виконуватиметься . Більше того, припустимо, що є чесним перевіряльником, який обирає випадково. Отже, протокол також правильний, якщо не ізоморфізм, тоді лише в випадку , а це стається з імовірністю .
Див. також
- Задача візантійських генералів — задача, вирішення якої призвело до побудови математичної моделі «доведення з нульовим розголошенням».
- Обман, здійсненний мафією — способи зловживання протоколами, в яких застосовується доведення з нульовим розголошенням.
Примітки
- Наведене формальне визначення подане за Goldwasser, Micali і Rackoff, 1985
Джерела
- Quisquater Jean-Jacques. How to Explain Zero-Knowledge Protocols to Your Children. — 1990. — Т. 435. — С. 628–631.
- Кулага, 2011, Основні визначення.
- Igor Gorodezky (26 березня 2009). (PDF). Theory of Computing. Корнелльський університет. Архів оригіналу (PDF) за 18 червня 2012. Процитовано 6 червня 2012.
- Kevin Snow (39.01.2007). (PDF). 600.641 Special Topics in Theoretical Cryptography. Університет Джонса Гопкінса. Архів оригіналу (PDF) за 16 березня 2014. Процитовано 6 червня 2012.
Посилання
- Кулага А. А. Протокол доведення знання розв'язку задачі Діффі–Хеллмана з нульовим розголошенням // НАУКОВІ ЗАПИСКИ НаУКМА. — 2011. — Т. 138 Комп’ютерні науки (15 листопада). — С. 19—24.
- О В Онацький, С М Горохов, О В Жарова. Криптографічний протокол доказу із нульовим розголошенням на еліптичних кривих // Наукові праці ОНАЗ ім. О.С. Попова. — Вип. 2. — С. 66—71.
- S. Goldwasser, S. Micali, and C. Rackoff. The Knowledge Complexity of Interactive Proof Systems // STOC ’85. — 1985. — P. 291—304.
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Dovedennya z nulovim rozgoloshennyam angl zero knowledge proof zero knowledge protocol metod dlya dovedennya odniyeyu storonoyu inshij sho tverdzhennya zazvichaj matematichne istinne bez rozkrittya bud yakoyi inshoyi informaciyi okrim dostovirnosti tverdzhennya Abstraktni prikladPechera Ali Babi Oksana vipadkovim chinom obiraye vhid A chi B todi yak Taras chekaye zovniTaras obiraye vihid cherez yakij maye vijti Oksana i nazivaye jogo OksaniOksana vihodit cherez vihid nazvanij Tarasom Istoriyu sho pokazuye deyaki ideyi dovedennya z nulovim rozgoloshennyam vpershe oprilyudnili Zhan Zhak Kviskvoter ta in v yih roboti Yak poyasniti protokol nulovogo rozgoloshennya vashim dityam Na kshtalt Alisi j Boba v kriptografiyi v anglomovnih versiyah dovedennya z nulovim rozgoloshennyam vikoristovuyut Peggi angl Peggy mnemonika dlya angl Prover yakij dovodit tverdzhennya i Viktora angl Victor mnemonika dlya angl Verifier yakij pereviryaye tverdzhennya U nas Oksana i Taras dzherelo U cij istoriyi Oksana viyavila tayemne slovo sho vidkrivaye sekretni dveri v pecheri Pechera utvorena u viglyadi kola z vhodom z odnogo boku ta magichnimi dverima sho zakrivayut inshij bik prohodu Taras kazhe sho zaplatit za sekret yak vpevnitsya sho Oksana spravdi znaye jogo Oksana kazhe sho skazhe sekret lishe pislya oplati Voni rozrobili shemu za yakoyi Oksana mozhe dovesti Tarasovi svoye znannya ne kazhuchi jomu sekretnogo slova Spochatku Taras ochikuye zovni pecheri Oksana vhodit Voni poznachili livij ta pravij prohodi yak A i B Todi Taras zahodit u pecheru i vigukuye nazvu prohodu yakim maye vijti Oksana Yaksho vona spravdi znaye magichne slovo to dlya neyi legko vijti bud yakim prohodom Zauvazhte Taras ne znaye yakim same prohodom Oksana vvijshla Uyavimo sho vona ne znaye slova Todi vona zmozhe vijti lishe cherez toj prohid yakim vona uvijshla tobto jmovirnist vijti nazvanim Tarasom prohodom u neyi 50 vidsotkiv Yaksho povtoriti pripustimo 20 raziv pidryad shansi Oksani postijno vgaduvati nazvu prohodu sho nazve Taras nadzvichajno mali 1220 11 000 000 displaystyle frac 1 2 20 approx frac 1 1 000 000 Otzhe yaksho Oksana vpevneno z yavlyayetsya z togo vihodu yakij obiraye Taras vin mozhe perekonatis sho vona shvidshe za vse znaye tayemne slovo Dvi kulki i drug sho ne rozriznyaye koloriv Uyavit sobi druga yakij ne rozriznyaye chervonij i zelenij a vi rozriznyayete i u vas ye dvi kulki odna chervona i she odna zelena odnakovi za vsima inshimi oznakami Dlya vashogo druga voni vidayutsya get odnakovimi i vin sumnivayetsya sho yih naspravdi mozhna vidrizniti Vi hochete dovesti jomu sho voni mayut riznij kolir ale nichogo okrim cogo zokrema vi ne hochete vidati yaka z nih yakogo koloru Os pidhid do dovedennya Vi dayete ci kulki drugovi i vin hovaye za spinoyu Dali vin pokazuye vam odnu z kulok Vin znov hovaye yiyi za spinoyu i potim znov pokazuye vam odnu kulku obirayuchi bud yaku z nih z odnakovoyu jmovirnistyu Vin zapituye vas Chi pominyav ya kulku Proceduru mozhna povtoriti za neobhidnosti Zvisno pobachivshi yiyi kolir vi mozhete vpevneno skazati chi pominyav vin yih Z inshogo boku yakbi voni buli odnakovogo koloru to vi b ne mogli cogo skazati z imovirnistyu bilsh nizh 50 Cherez te sho imovirnist vipadkovogo uspihu stanovit 50 imovirnist vipadkovo pravilno vidpovisti v kilkoh sprobah nablizhayetsya do nulya Ce dovedennya z nulovim rozgoloshennyam bo vash drug nikoli ne z yasuye yaka z kulok chervona a yaka zelena ViznachennyaDovedennya z nulovim rozgoloshennyam povinno mati tri vlastivosti Povnota angl completeness yaksho tverdzhennya istinne toj hto chesno dovodit takij sho povnistyu sliduye protokolu zavzhdi perekonaye chesnogo pereviryalnika x L Pr P V x accept 1 negl k displaystyle forall x in L Pr left P V right x accept geq 1 negl left k right Korektnist angl soundness zahishaye vid prijnyattya hibnogo tverdzhennya yaksho tverdzhennya brehlive to jmovirnist obmanu V v bud yakomu vipadku maye buti duzhe nizkoyu L P Pr P V x accept negl k displaystyle forall notin L forall hat P Pr left hat P V right x accept leq negl k P displaystyle hat P imovirno zlovmisnij dovodzhuvach Nulove rozgoloshennya yaksho tverdzhennya istinne zhoden pereviryalnik yakij graye ne za pravilami ne mozhe diznatis nichogo okrim faktu istinnosti Zokrema pislya togo yak pereviryalnik perekonavsya v istinnosti tverdzhennya sam vin ne zmozhe dovesti jogo istinnist tretim osobam Dvi pershi vlastivosti vikonuyutsya dlya zagalnoyi interaktivnoyi sistemi dovedennya Tretya vlastivist prizvodit do nulovogo rozgoloshennya Dovedennya z nulovim rozgoloshennyam ne ye dovedennyam v matematichnomu sensi bo isnuye mala jmovirnist angl soundness error togo sho nechesnij dovodzhuvach zmozhe perekonati pereviryalnika v istinnosti brehlivogo tverdzhennya Inakshe kazhuchi dovedennya shvidshe jmovirnisne nizh deterministichne Odnak nayavni tehniki zmenshennya mozhlivosti pohibki do nehtovno maloyi Formalne viznachennya nulovogo rozgoloshennya potrebuye vikoristannya deyakoyi obchislyuvalnoyi modeli najposhirenishe vikoristannya mashini Tyuringa Nehaj P displaystyle P V displaystyle V i S displaystyle S budut avtomatami Tyuringa z P V displaystyle P V dlya movi L displaystyle L ye z nulovim rozgoloshennyam yaksho dlya bud yakogo pereviryalnika jmovirnisno polinomialnogo chasu IPCh angl probabilistic polynomial time PPT V displaystyle hat V isnuye simulyator z ochikuvanim IPCh S displaystyle S takij sho x L z 0 1 ViewV P x V x z S x z displaystyle forall x in L z in 0 1 View hat V P x leftrightarrow hat V x z S x z De View displaystyle View Rozpodil imovirnostej nad P V x displaystyle P V x tobto nad vsima mozhlivimi peremovinami sho P displaystyle P i V displaystyle V mozhut mati stosovno x displaystyle x ViewV P x V x lt displaystyle View V P x leftrightarrow V x lt povidomlennya vid P displaystyle P vipadkovist V gt displaystyle V gt Dovodzhuvach P displaystyle P zmodelovano yak takij sho maye neobmezhenu obchislyuvalnu potuzhnist na praktici P zazvichaj ye imovirnisnoyu mashinoyu Tyuringa Intuyitivno viznachennya stverdzhuye sho interaktivna sistema dovedennya P V displaystyle P V maye nulove rozgoloshennya yaksho dlya bud yakogo pereviryalnika V displaystyle hat V isnuye diyevij simulyator S displaystyle S yakij mozhe vidtvoriti rozmovu mizh P displaystyle P i V displaystyle hat V na bud yakomu vhodi Otzhe rozmova z P displaystyle P ne mozhe navchiti V displaystyle hat V obchislennyu chogos chogo vin ne mig obchisliti do togo Dopomizhnij ryadok z displaystyle z vidigraye rol poperednogo znannya angl prior knowledge Viznachennya maye na uvazi sho V displaystyle hat V ne mozhe vikoristati yakes poperednye znannya z displaystyle z shob otrimati informaciyu z rozmovi z P displaystyle P bo mi vimagayemo sho yaksho S displaystyle S takozh maye ce znannya todi vin mozhe vidtvoriti peremovini mizh V displaystyle hat V i P displaystyle P yak i ranishe Navedene viznachennya dlya idealnogo nulovogo rozgoloshennya Viznachennya obchislyuvalnogo nulovogo rozgoloshennya otrimayemo z vimogoyu sho poglyadi pereviryalnika V displaystyle hat V i simulyatora obchislyuvalno nerozriznenni pri odnomu dopomizhnomu ryadku Priklad z izomorfizmom grafivRozglyanemo priklad sistemi dovedennya z nulovim rozgoloshennyam dlya izomorfizmu grafiv Mayemo dva grafi G0 displaystyle G 0 i G1 displaystyle G 1 P displaystyle P hoche perekonati V displaystyle V sho znaye perestanovku p displaystyle pi taku sho p G0 G1 displaystyle pi left G 0 right G 1 P displaystyle P mozhe prosto vidislati p displaystyle pi do V displaystyle V ale ce ne bude sistemoyu z nulovim rozgoloshennyam treba perekonati V displaystyle V sho p displaystyle pi ce izomorfizm bez rozkrittya bud yakih danih Mayemo nastupnij protokol P V P displaystyle P to V P vipadkovim chinom obiraye perestanovku s displaystyle sigma i bit b 0 1 displaystyle b in 0 1 obchislyuye H Gb displaystyle H left G b right i vidsilaye H displaystyle H do V displaystyle V V P V displaystyle V to P V obiraye bit b 0 1 displaystyle b in 0 1 i vidpravlyaye do P displaystyle P P V P displaystyle P to V P vidpravlyaye perestanovku t displaystyle tau do V displaystyle V de s if b b sp 1 if b 0 b 1sp if b 1 b 0 displaystyle begin cases sigma amp mbox if b b sigma pi 1 amp mbox if b 0 b 1 sigma pi amp mbox if b 1 b 0 end cases dd dd V displaystyle V prijmaye todi i lishe todi koli H Gb displaystyle H G b Ce protokol doskonaloyi povnoti bo yaksho ce spravdi izomorfizm todi zavzhdi vikonuvatimetsya t Gb s Gb displaystyle tau left G b right sigma left G b right Bilshe togo pripustimo sho V displaystyle V ye chesnim pereviryalnikom yakij obiraye b displaystyle b vipadkovo Otzhe protokol takozh pravilnij yaksho p displaystyle pi ne izomorfizm todi t Gb s Gb displaystyle tau left G b right sigma left G b right lishe v vipadku b b displaystyle b b a ce stayetsya z imovirnistyu 1 2 displaystyle 1 2 Div takozhZadacha vizantijskih generaliv zadacha virishennya yakoyi prizvelo do pobudovi matematichnoyi modeli dovedennya z nulovim rozgoloshennyam Obman zdijsnennij mafiyeyu sposobi zlovzhivannya protokolami v yakih zastosovuyetsya dovedennya z nulovim rozgoloshennyam PrimitkiNavedene formalne viznachennya podane za Goldwasser Micali i Rackoff 1985DzherelaQuisquater Jean Jacques How to Explain Zero Knowledge Protocols to Your Children 1990 T 435 S 628 631 Kulaga 2011 Osnovni viznachennya Igor Gorodezky 26 bereznya 2009 PDF Theory of Computing Kornellskij universitet Arhiv originalu PDF za 18 chervnya 2012 Procitovano 6 chervnya 2012 Kevin Snow 39 01 2007 PDF 600 641 Special Topics in Theoretical Cryptography Universitet Dzhonsa Gopkinsa Arhiv originalu PDF za 16 bereznya 2014 Procitovano 6 chervnya 2012 PosilannyaKulaga A A Protokol dovedennya znannya rozv yazku zadachi Diffi Hellmana z nulovim rozgoloshennyam NAUKOVI ZAPISKI NaUKMA 2011 T 138 Komp yuterni nauki 15 listopada S 19 24 O V Onackij S M Gorohov O V Zharova Kriptografichnij protokol dokazu iz nulovim rozgoloshennyam na eliptichnih krivih Naukovi praci ONAZ im O S Popova Vip 2 S 66 71 S Goldwasser S Micali and C Rackoff The Knowledge Complexity of Interactive Proof Systems STOC 85 1985 P 291 304