Protokol Feig - Fiat - Shamir

Protokol Feig-Fiat-Shamir je  identifikační protokol s nulovými znalostmi , zobecnění dřívějšího protokolu Fiat-Shamir , který vyvinuli Uriel Feige , Amos Fiat [ ] a Adi Shamir .  ) v roce 1986. Toto jednoduché implementovatelné a komerčně významné schéma bylo autory patentováno rok po jeho vývoji.   

Protokol umožňuje jedné straně (prověřovatel A) prokázat druhé straně (ověřovateli B), že má tajné informace, aniž by prozradil jediný kousek této informace.

Zabezpečení protokolu je založeno na obtížnosti extrahování modulu druhé odmocniny dostatečně velkého složeného čísla n, jehož faktorizace není známa.

Hlavní verze protokolu obsahuje některá vylepšení, která snižují složitost interakcí mezi účastníky nebo začleňují identity do schématu.

Identifikační schéma Feig-Fiat-Shamir lze navíc snadno převést na schéma podpisu.

Historie

V roce 1986 izraelští vědci z Wyman Institute Uriel Feige, Amos Fiat a Adi Shamir vyvinuli praktické identifikační schéma s nulovými znalostmi, které by bylo možné implementovat i na zařízeních s procesory s nízkou spotřebou, jako jsou čipové karty, osobní počítače, osobní identifikační doklady [ 1] . Z komerčních důvodů autoři požádali o americký patent 9. července 1986 . Americký úřad pro patenty a ochranné známky musel do šesti měsíců rozhodnout o rozhodnutí o vydání příkazu k odstranění režimu utajení [2] [3] .

Jen několik dní před uplynutím určité lhůty vydal patentový úřad příkaz zakazující jakékoli zveřejnění nebo zveřejnění informací o protokolu a vysvětlil to jako ohrožení národní bezpečnosti. Autoři navíc museli upozornit všechny občany USA, kteří znají schéma Feig-Fiat-Shamir, že jejich prozrazení by mohlo vést k vážným sankcím – dvěma letům vězení nebo pokutě deset tisíc dolarů. Dále bylo nutné hlásit všechny cizí státy, kterým byly informace o studii sděleny [2] [3] .

V té době již Feige, Fiat a Shamir přednesli řadu prezentací na univerzitách v Izraeli, Evropě a Spojených státech a přihlásili se na konferenci Asociace pro výpočetní stroje , která se měla konat v New Yorku v květnu 1987 [ 2] [3] .

Přestože tvůrci protokolu doufali, že Weizmannův institut, kde byla studie provedena, se proti příkazu odvolá, přesto zaslali konferenčnímu výboru dopis s vysvětlením situace. Poté se do řešení problému rychle zapojilo mnoho organizací, jako jsou Bell Labs a The New York Times . Největší příspěvek poskytla Národní bezpečnostní agentura (NSA), která původně o vydaném rozkazu nevěděla. Poté, co byl o tom NBÚ informován, byla objednávka do dvou dnů zrušena [2] [3] .

Shamir vystoupil na konferenci Association for Computing Machinery 26. května [4] a o 5 dní později autoři obdrželi patent na vyvinutý protokol [5] .

Identifikační schéma

A dokazuje B v průběhu kol svou znalost tajemství, aniž by prozradil jediný kousek tajemství samotného [1] .

Výběr možností systému

Důvěryhodné centrum T zveřejňuje velké množství , kde a jsou prvočísla, která jsou držena v tajnosti. Vybírají se také celá čísla a - bezpečnostní parametry [6] .

Generování tajemství pro účastníky

Každý účastník si vybere náhodná celá čísla a náhodné bity .

Poté se počítá .

Účastník se identifikuje ostatním pomocí hodnot , které fungují jako jeho veřejný klíč, zatímco tajný klíč zná pouze účastník [6] .

Akce protokolu v rámci jednoho kola

  1. A vybere náhodné celé číslo vypočítá: a pošle straně B .
  2. B pošle A náhodný bitový vektor kde nebo .
  3. A vypočítá a pošle B : .
  4. B vyhodnotí: a zkontroluje to a [7] [6] .

Zabezpečení

Lemma 1: Pokud A a B postupují podle protokolu, pak B vždy přijímá důkazy A : Důkaz: podle definice

– Amos Fiat, Adi Shamir „Jak se prokázat: Praktická řešení problémů s identifikací a podpisem“

Za předpokladu, že faktoring je výpočetně nemožný úkol, je pravděpodobnost úspěšného útoku na protokol . Útočník se může pokusit vydávat za čestného uživatele tím, že uhodne správné hodnoty , připraví se na první krok a poskytne ve třetím kroku. Pak se B o to postará . Pravděpodobnost správného výběru hodnot je ale v jednom kole a tedy v celém protokolu [1] .

K dosažení úrovně zabezpečení tedy například stačí zvolit a . To znamená, že jen jeden z milionu pokusů nepoctivého uživatele oklamat ověřovatele může uspět.

Protokol dokazuje, že A má svůj soukromý klíč, aniž by o něm prozradil jakoukoli znalost, kdy a [1] .

Příklad

  1. Nechte důvěryhodné centrum T vybrat prvočísla a publikovat . Nastavení zabezpečení systému: , .
  2. Pro účastníka A jsou vybrána náhodná čísla: , , a 3 bity: , , . hodnoty se počítají: , , . Veřejný klíč A : , soukromý klíč: .
  3. (a) A vybere náhodné číslo , náhodný bit , vypočítá: a pošle ho B .
(b) B pošle A 3bitový vektor: . (c) A vypočítá a pošle B : . (d) B vypočítá: a přijme důkaz A od a .

Vylepšení a úpravy identifikačního schématu

  1. Můžete odmítnout výběr společného čísla pro všechny účastníky a umožnit každému z nich, aby si zvolil své vlastní. Existence důvěryhodného centra T však bude stále nezbytná, aby bylo možné přidružit každého účastníka k jeho modulu [6] .
  2. Chcete-li snížit složitost interakce mezi A a B , můžete první zprávu odeslanou z A do B nahradit hodnotou hash . Podle toho bude při poslední iteraci protokolu muset fungovat B namísto samotného [6] .
  3. Schéma lze upravit tak, aby bylo založeno na identitě každého účastníka. K tomu je každému uživateli A přiděleno důvěryhodným centrem T jedinečný identifikační řetězec s informacemi o účastníkovi (například jméno, adresa, číslo pasu atd.). Poté centrum vypočítá hodnoty , kde by měly být k nerozeznání od náhodné funkce v polynomiálním čase. Poté, se znalostí faktorizace , důvěryhodné centrum vypočítá a vydá jejich hodnoty A . Hodnoty a stávají se veřejným a soukromým klíčem účastníka A a další akce se provádějí podle schématu popsaného výše [7] [6] [3] .
  4. Popsaný protokol lze provádět paralelně. V tomto případě musí zprávy odeslané z A do B a zpět obsahovat data pro všechna kola současně. Výhodou tohoto přístupu je, že vám umožňuje snížit složitost provádění snížením počtu vyrobených iterací. Takové schéma je bezpečné, ale z technických důvodů ztrácí svou vlastnost nulových znalostí. Faktem je, že paralelní provádění může umožnit nepoctivému ověřovateli B určovat nikoli náhodně, ale jako funkce celé množiny , kterou mu v prvním kroku poslal A. Pokud to B provede pomocí jednosměrné hašovací funkce , bude moci získat informace, které by jinak mohl vypočítat, pouze pokud by znal tajemství A. Má se však za to, že tato informace není „užitečná“ (když ji B zná, nebude se moci vydávat za A nějakému jinému účastníkovi), což nám umožňuje považovat schéma stále za spolehlivé [1] [8] .

Podpis Feig - Fiat - Shamira

Strana B hraje velmi důležitou roli v interaktivním schématu identity – generuje náhodné hodnoty , které zabraňují účastníkovi A podvádět .

Aby bylo možné převést identifikační schéma na schéma podpisu, stačí změnit tuto akci B na použití tajné hašovací funkce pro výpočet [7] [6] [3] .

Podpis zprávy

Nechte A podepsat zprávu .

  1. A vybere náhodné celé číslo a vypočítá: .
  2. A počítá: .
  3. A počítá: .
  4. A odešle B zprávu , podpis a .

Ověření podpisu

Nechť B chce zkontrolovat podpis pod zprávou .

  1. B vypočítá: .
  2. B používá k výpočtu : .
  3. Pokud se vypočítané hodnoty shodují s podpisem přijatým od A , pak B podpis přijme .

Poznámky

  1. 1 2 3 4 5 Feige, Uriel; Fiat, Amos; Shamire, Adi. Doklady totožnosti s nulovými znalostmi  (anglicky)  (nepřístupný odkaz) (1987). Získáno 10. listopadu 2015. Archivováno z originálu 17. listopadu 2015.
  2. 1 2 3 4 Susan Landau. Nulové znalosti a ministerstvo obrany  (anglicky) (1988). Staženo 10. listopadu 2015. Archivováno z originálu 16. ledna 2016.
  3. 1 2 3 4 5 6 Schneier B. Aplikovaná kryptografie. Protokoly, algoritmy, zdrojové kódy C (2002). Získáno 10. listopadu 2015. Archivováno z originálu 20. listopadu 2015.
  4. Alfred V. Aho. STOC'87 19. výroční konference ACM o teorii výpočetní techniky . ACM New York, NY, USA (1987).  
  5. Metoda, zařízení a předmět pro identifikaci a podpis  ( 31. května 1987). Získáno 11. listopadu 2015. Archivováno z originálu 21. listopadu 2015.
  6. 1 2 3 4 5 6 7 A. Menezes, P. van Oorschot a S. Vanstone. Handbook of Applied Cryptography  (anglicky) (1996). Získáno 10. listopadu 2015. Archivováno z originálu 8. prosince 2015.
  7. 1 2 3 Amos Fiat, Adi Shamir. Jak se prokázat: Praktická řešení problémů s identifikací a podpisem  (anglicky)  (odkaz není k dispozici) (1986). Získáno 10. listopadu 2015. Archivováno z originálu 3. března 2016.
  8. Gilles Brassard, Claude Crepeau, Moti Yung. Všechno v NP lze argumentovat v dokonalé nulové znalosti v omezeném počtu kol  (anglicky) (1989). Datum přístupu: 13. listopadu 2015. Archivováno z originálu 17. listopadu 2015.

Literatura