Kryptosystém Nakasha-Stern

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 10. října 2019; kontroly vyžadují 4 úpravy .

 Kryptosystém Nakasha- Stern je kryptografický algoritmus s veřejným klíčem založený na výpočetní složitosti problému diskrétního logaritmu . Na rozdíl od RSA je homomorfní s ohledem na sčítání a odčítání, nikoli na násobení .

Vyvinuli David Nakache a Jacques Stern v roce 1998 [1] ve dvou verzích: deterministické a pravděpodobnostní. Jde o vylepšení schématu Benalo [2]  - autoři dokázali vybudovat pravděpodobnostní homomorfní kryptosystém se sémantickým zabezpečením a výrazně snížit poměr mezi velikostí šifrového textu a velikostí otevřeného textu .

Existuje implementace (python3) generování klíčů, šifrování a dešifrování algoritmů [3] .

Srovnání s RSA

Podobnosti

Rozdíly

Popis deterministické varianty kryptosystému

Obecně lze deterministickou verzi kryptosystému Nakasha-Stern popsat takto: nechť  je B-hladké (B je malé – obvykle 10bitové číslo), liché číslo bez čtverečků a nechť  je RSA číslo (obvykle se předpokládá, že  je to alespoň 768bitové číslo), které se dělí a je coprime s , kde je Eulerova funkce . Dále nechte objednat . Potom trojice čísel tvoří soukromý klíč. Zpráva menší než je zašifrována jako . Dešifrování je založeno na použití prvočíselných dělitelů čísla [1] .

Generování klíčů

Poté je veřejný klíč tvořen trojicí čísel . A zavřeno - [1]

S narůstajícím počtem se generování klíče stává velmi časově náročnou operací, protože číslo a musí být ve vhodném rozsahu a navíc musí splňovat testy primality spolu s číslem . Aby se tento problém obešel, autoři navrhují nejprve generovat prvočísla a poté výběrem pomocných prvočísel dosáhnout rovnosti a , kde jsou prvočísla [1] .

Šifrování

Šifrování se skládá z jediné operace umocnění modulo : zpráva menší než , je zašifrována jako . A zde se nijak nepoužívají . [jeden]

Dešifrování

Dešifrování je založeno na čínské větě o zbytku . Nechť je  prvočíslo dělitele . Algoritmus vypočítá a poté dešifruje zprávu m pomocí čínské věty o zbytku [1] .

Algoritmus vypočítá m i zadaným šifrovým textem , což je přesně . Vyplývá to z následujících výpočtů - zde : . Porovnáním tohoto výsledku se všemi možnými mocninami , lze najít hodnotu . Formálněji je dešifrovací funkce reprezentována pseudokódem [1] :

pro = 1 až :

pro = 0 až  - 1:

pokud :


= ChineseReminder( , )

Příklad

Generování klíče pro

[cm. "Popis deterministické varianty kryptosystému"]

obsahuje
i=1 i=2 i=3 i=4 i=5 i=6
j = 0 jeden jeden jeden jeden jeden jeden
j = 1 1966 6544 1967 6273 6043 372
j = 2 9560 3339 4968 7876 4792 7757
j = 3 9400 1765 8720 262 3397
j = 4 6488 8651 6291 702
j = 5 2782 4691 677 4586
j = 6 9489 1890 8135
j = 7 8537 6878 3902
j = 8 2312 2571 5930
j = 9 7701 7180 6399
j = 10 8291 9771
j = 11 678 9771
j = 12 609
j = 13 7337
j = 14 6892
j = 15 3370
j = 16 3489

Šifrování

Dešifrování

Dále pomocí výše uvedené tabulky:

a čínskou větou o zbytku dostáváme: [1]

Popis pravděpodobnostní varianty kryptosystému

Pravděpodobnostní varianta kryptosystému je vylepšením předchozích pravděpodobnostních kryptosystémů (například kryptosystému Benalo).

Předchozí kryptosystémy měly velmi podstatnou nevýhodu: pro šifrování malého souboru dat (například hlasy 0, 1 při elektronickém hlasování) nejsou vhodné deterministické kryptosystémy, jako je RSA [1] , protože pro dešifrování bude stačit porovnejte šifrovaný text se zašifrovanými prvky sady . Tato vlastnost kryptosystémů – neschopnost rozlišit šifrové texty různých prvků množiny S, se nazývá sémantická bezpečnost [5] . Ale s kombinací homomorfismu a sémantické síly začaly předchozí kryptosystémy generovat asi kilobajt šifrového textu, aby zašifrovaly otevřený text v několika bitech [1] . V kryptosystému Nakasha-Stern, kromě toho, že má vlastnosti homomorfismu, sémantickou sílu, je poměr mezi velikostí šifrového textu a velikostí otevřeného textu přesně roven . Autoři uvádějí, že je bezpečné užívat [1] .

Generování klíčů

Poté je veřejný klíč tvořen trojicí čísel . A zavřeno - [1]

Šifrování

Pravděpodobnostní šifrování je velmi podobné deterministickému šifrování . „Popis deterministické varianty kryptosystému“] . Jmenovitě nechť je náhodně vybrané kladné číslo z okruhu zbytků modulo : . Pak je algoritmus zapsán jako [1]

Dešifrování

Dešifrování v pravděpodobnostní verzi algoritmu D. Nakache a J. Sterna zůstává ve srovnání s deterministickou verzí nezměněno [viz. „Popis deterministické varianty kryptosystému“] . Efekt násobení v šifrování je zohledněn, když zvýšíme šifrovaný text na sílu . Udělejme nějaké výpočty, abychom to ověřili.

Nechť je  prvočíslo dělitele . Algoritmus vypočítá a poté dešifruje zprávu pomocí čínské věty o zbytku.

Algoritmus počítá s daným šifrovým textem , což je přesně . Vyplývá to z následujících výpočtů:

Porovnáním tohoto výsledku se všemi možnými mocninami lze najít hodnotu [1]

Aplikace

V převážné většině oblastí použití kryptosystému Nakasha-Stern se využívá vlastnosti homomorfismu tohoto kryptosystému s ohledem na sčítání a odčítání [6] [2] :

Útoky

Široce známé útoky na tento kryptosystém nejsou zdokumentovány. Sami autoři vybízejí k práci na prolomení kryptosystému. Původní článek nabízel [1] 768 $ někomu, kdo by mohl dešifrovat šifrový text a publikovat metodu kryptoanalýzy . Níže jsou uvedena data pro tento úkol.

= 13370fe62d81fde356d1842fd7e5fc1ae5b9b449

bdd00866597e61af4fb0d939283b04d3bb73f91f

0d9d61eb0014690e567ab89aa8df4a9164cd4c63

6df80806c7cdceda5cfda97bf7c42cc702512a49

dd196c8746c0e2f36ca2aee21d4a36a 16


= 0b9cf6a789959ed4f36b701a5065154f7f4f1517

6d731b4897875d26a9e244415e111479050894ba7

c532ada1903c63a84ef7edc29c208a8ddd3fb5f7

d43727b730f20d8e12c17cd5cf9ab4358147cb62

a9fb887bf15204e444ba6ade6132743 16


= 1459b9617b8a9df6bd54341307f1256dafa241bd

65b96ed14078e80dc6116001b83c5f88c7bbcb0b

db237daac2e76df5b415d089baa0fd078516e60e

2cdda7c26b858777604c5fbd19f0711bc75ce00a

5c37e2790b0d9d0ff9625c5ab9c7511d 16

Zde ( — se tvoří z prvních prvočísel, kromě 2) [1] .

Odkazy

  1. ↑ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 Jacques, Stern. Nový kryptosystém s veřejným klíčem založený na vyšších zbytcích   // ACM . - 1998. - S. 59–66 . Archivováno z originálu 6. prosince 2006.
  2. ↑ 1 2 3 A.I. Troubey. Homomorfní šifrování: Zabezpečení cloud computingu a další aplikace (recenze)  (ruština)  // Informatika. - 2015. - leden. Archivováno z originálu 26. listopadu 2018.
  3. Implementace šifrování, dešifrování, algoritmů generování klíčů v kryptosystému Nakashe-Stern . Získáno 16. prosince 2018. Archivováno z originálu dne 28. prosince 2020.
  4. Thomas W. Cusick. Srovnání RSA a kryptosystému veřejného klíče Naccache-Stern  //  Security Protocols. — Berlin, Heidelberg: Springer Berlin Heidelberg, 1997. — S. 111–116 . — ISBN 9783540624943 , 9783540680475 . - doi : 10.1007/3-540-62494-5_10 . Archivováno z originálu 2. prosince 2018.
  5. S. Goldwasser, S. Micali. Pravděpodobnostní šifrování  (anglicky)  // JCSS. - 1984. - Duben. - str. 270-299 .
  6. Stručný přehled homomorfních kryptosystémů a jejich aplikací // International Journal of Computer Applications. — 2015.
  7. R. L. Rivest, L. Adleman, M. L. Dertouzos. O databankách a homomorfismech soukromí // Základy bezpečného počítání.
  8. W. Diffie, M. Hellman. Nové směry v kryptografii // IEEE Trans. inf. teorie.
  9. J. Alwen [et al.] O vztahu mezi funkčním šifrováním, mlžením a plně homomorfním šifrováním // Cryptography and Coding – 14th IMA Intern. Konf., IMACC-2013..
  10. JD Cohen Benaloh. Verifiable Secret-Ballot Elections  (anglicky)  // Yale University: Ph-D disertační práce. — 1988.
  11. B. Pfitzmann, M. Schunter. Asymetrické otisky prstů  (anglicky)  // Spinger-Verlag. - 1996. - S. 84-95 .
  12. Vytvoření bezpečného schématu vodoznaku závislého na obsahu pomocí homomorfního šifrování.
  13. O. Goldreich, S. Micali, A. Wigderson. Důkazy, které nepřinášejí nic jiného než jejich platnost a metodologie návrhu kryptografických  protokolů . - 1986. - S. 174-187 .
  14. G. Brassard, D. Chaum, C. Crepeau. Minimální diskusní důkazy znalostí  // JCSS. - 1988. Archivováno 27. září 2011.