Nekomutativní kryptografie

Nekomutativní kryptografie  je obor kryptologie , ve kterém jsou šifrovací primitiva , metody a systémy založeny na nekomutativních algebraických strukturách.

Nekomutativní kryptografie je založena na operacích s nekomutativní grupou 𝐺 z (𝐺, ∗), skládající se ze skupin , pologrup nebo kruhů , ve kterých jsou alespoň dva prvky grupy 𝑎 a 𝑏 z 𝐺, pro které je nerovnost 𝑎∗𝑏 ≠ 𝑏∗𝑎 [1] . Protokoly využívající tuto strukturu byly vyvinuty pro řešení různých problémů s šifrováním, příkladem jsou úkoly autentizace , šifrování -dešifrování a vytvoření relace výměny klíčů [1] .

Relevance

Jedním z prvních použití nekomutativní algebraické struktury pro účely šifry bylo použití skupiny opletení s následným vývojem protokolu šifry. Později bylo jako potenciální kandidáti pro šifrovací aplikace identifikováno několik dalších nekomutativních struktur, jako jsou Thompsonovy skupiny , polycyklické skupiny , Grigorchukovy skupiny a maticové skupiny. Na rozdíl od nekomutativní kryptografie jsou v současnosti široce používané kryptosystémy s veřejným klíčem, jako je RSA , protokol Diffie-Hellman a eliptická kryptografie , založeny na teorii čísel, a proto závisí na komutativních algebraických strukturách [1] . Využití kvantového počítače v kryptografii, ke kterému může dojít v blízké budoucnosti, však výrazně urychlí řešení úloh faktorizace a diskrétního logaritmu v cyklické grupě (tyto úlohy budou řešeny v polynomiálním čase) [2] . To znamená, že všechny nejrozšířenější kryptosystémy se stanou nezabezpečenými, protože jejich bezpečnost je založena na superpolynomiální složitosti těchto dvou problémů, když jsou řešeny na aktuálně dostupných počítačích. V tomto případě lze bezpečnosti dosáhnout konstrukcí kryptosystémů založených na nekomutativní skupina.

Základní skupina

Nekomutativní skupina, která se používá v srdci šifrovacího protokolu, se nazývá základní skupina tohoto protokolu. Pouze skupiny, které mají určité vlastnosti, mohou být použity jako základní skupiny pro implementaci v nekomutativních kryptosystémech Nechť G je skupina navržená jako základní skupina pro budování nekomutativního kryptosystému. Níže je uveden seznam vlastností, které musí G splňovat.

  1. Skupina G musí být dobře známá. Jinými slovy, problém nalezení konjugace pro něj byl buď dlouho a neúspěšně studován, nebo může být redukován na jiný dobře známý problém.
  2. Slovní problém rovnosti ve skupině G musí být rychle vyřešen deterministickým algoritmem. Musí existovat efektivně vypočítatelná "normální forma" pro prvky G.
  3. G musí být grupa superpolynomického růstu, to znamená, že počet prvků délky n v G roste rychleji než jakýkoli polynom v n. (Chrání před jednoduchým výčtem)
  4. Vrácení prvků x a y ze součinu xy v G by nemělo být možné.

Příklady základních skupin

Skupina copánků

Nechť n je kladné celé číslo. Pletenou skupinu B n lze definovat pomocí ( n − 1) generátorů a vztahů [3] :

Zejména jakýkoli prvek B 4 lze zapsat jako složení následujících tří prvků (a jejich převrácených hodnot):

        
  σ 1   σ2 _   σ 3

Thompson Group

Thompsonova grupa je nekonečná grupa F, která má následující nekonečné zobrazení [4] :

Grigorčukova skupina

Nechť T označuje nekonečný binární strom . Množina V vrcholů je množina všech konečných binárních posloupností. Nechť A(T) označuje množinu všech automorfismů T. (Automorfismus T permutuje vrcholy při zachování spojení.) Grigorchukova grupa Γ je podgrupa A(T) generovaná automorfismy a, b, c, d definován takto:

Artinova skupina

Artinova grupa A(Γ) je grupa s následujícím zastoupením [5] :

kde

For , označuje střídavý součin of a long , počínaje od . Například,

a

Jestliže , pak (podle konvence) neexistuje žádný vztah mezi a .

Maticové skupiny

Nechť F je konečné těleso. Maticové skupiny nad F byly použity jako základní skupiny pro některé nekomutativní kryptografické protokoly.

Některé nekomutativní kryptografické protokoly

Tyto protokoly předpokládají, že G je neabelovská skupina . Jsou-li w a a prvky grupy G, pak zápis w a bude označovat prvek a −1 wa .

Protokoly výměny klíčů

Protokol Ko, Lee a kol

Následující protokol je podobný protokolu Diffie-Hellman. Založí sdílený tajný klíč K pro Alici a Boba .

  1. Prvek w z G zná každý.
  2. Jsou publikovány dvě podskupiny A a B z G tak, že ab = ba pro všechna a z A a b z B.
  3. Alice vybere prvek a z A a předá w a Bobovi. Alice drží tajemství .
  4. Bob vybere prvek b z B a předá w b Alici. Bob drží b tajemství.
  5. Alice vypočítá K = ( w b ) a = w ba .
  6. Bob vypočítá K' = ( w a ) b = w ab .
  7. Když ab = ba a K = K' , pak Alice a Bob sdílejí sdílený tajný klíč K .
Protokol Anshel-Anshel-Goldfeld

Toto je protokol výměny klíčů využívající neabelovskou skupinu G. To je důležité, protože nevyžaduje dvě přepínací podskupiny A a B z G jako v případě předchozího protokolu.

  1. Prvky a 1 , a 2 , . . . , ak , b 1 , b 2 , . . . , b m z G jsou vybrány a zveřejněny.
  2. Alice vybere tajenku x z G jako slovo skládající se z a 1 , a 2 , . . . , a k ; proto x = x ( ai , a2 , ... , ak ) .
  3. Alice posílá b 1 x , b 2 x , . . . , b m x Bob.
  4. Bob vybere tajenku y od G jako slovo sestávající z b 1 , b 2 , . . . , b m ; proto y = y ( bi , b2 , ... , bm ) .
  5. Bob posílá 1 y , 2 y , . . . , a k y Alice.
  6. Alice a Bob sdílejí sdílený tajný klíč K = x −1 y −1 xy .
  7. Alice vypočítá x ( a 1 y , a 2 y , . . . , a k y ) = y −1 xy . Vynásobením x −1 dostane Alice K .
  8. Bob vypočítá y ( b 1 x , b 2 x , . . . , b m x ) = x −1 yx . Vynásobením y −1 a převzetím inverzního prvku dostane Bob K .
Stickel Key Exchange Protocol

Původní formulace tohoto protokolu používala skupinu invertibilních matic nad konečným polem.

  1. Nechť G je známá neabelovská konečná grupa .
  2. Nechť a , b je známá dvojice prvků z G taková, že: ab ≠ ba . Nechť řád aab odpovídá N a M . _
  3. Alice vybere dvě náhodná čísla n < N a m < M a pošle u = a m b n Bobovi.
  4. Bob vezme dvě náhodná čísla r < N a s < M a pošle v = a r b s Alici.
  5. Společný klíč pro Alice a Boba bude K = a m + r b n + s .
  6. Alice vypočítá klíč pomocí vzorce: K = a m vb n .
  7. Bob vypočítá klíč pomocí vzorce: K = a r ub s .

Šifrovací a dešifrovací protokoly

Tento protokol popisuje, jak zašifrovat tajnou zprávu a poté ji dešifrovat pomocí nekomutativní skupiny. Ať Alice chce poslat Bobovi tajnou zprávu m.

  1. Nechť G je nekomutativní grupa. Nechť také A a B jsou veřejné podgrupy G , pro které ab = ba pro všechna a z A ab z B .
  2. Prvek x z G je vybrán a publikován.
  3. Bob si vybere tajný klíč b z A a zveřejní z = x b jako svůj veřejný klíč.
  4. Alice vybere náhodné r z B a vypočítá t = z r .
  5. Zašifrovaná zpráva je C = ( x r , H ( t ) m ), kde H je nějaká hashovací funkce a označuje operaci XOR . Alice pošle C Bobovi.
  6. Aby Bob dešifroval C , rekonstruuje t pomocí: ( x r ) b = x rb = x br = ( x b ) r = z r = t . Textová zpráva odeslaná Alicí se vypočítá jako P = ( H ( t ) m ) H ( t ) = m .

Autentizační protokoly

Bob chce zkontrolovat, zda odesílatel zprávy je Alice.

  1. Nechť G je nekomutativní grupa. Nechť také A a B jsou podgrupy G , pro které ab = ba pro všechna a z A ab z B .
  2. Prvek w z G je vybrán a publikován.
  3. Alice vybere tajemství s od A a zveřejní pár ( w , t ), kde t = w s .
  4. Bob vybere r z B a pošle zprávu w ' = w r Alici.
  5. Alice odešle odpověď w ' ' = ( w ') s Bobovi.
  6. Bob kontroluje rovnost w ' ' = t r . Pokud platí rovnost, pak je Alicina identita potvrzena.

Základy zabezpečení protokolu

Základem bezpečnosti a síly různých výše uvedených protokolů je obtížnost řešení následujících dvou problémů:

  • Problém existence konjugace  : Jsou dány dva prvkyuavze skupinyG. Určete, zda existuje prvekxzGtakový, žev=u x , tedy takový, žev=x−1 ux.
  • Problém konjugace : Jsou dány dva prvky u a v ze skupiny G. Najděte prvek x z G takový, že v = u x , tedy takový, že v = x −1 ux

Jestliže algoritmus pro řešení problému konjugace není znám, pak lze funkci x → u x považovat za jednosměrnou funkci .

Poznámky

  1. ↑ 1 2 3 Kumar, Saini. Nové schéma nekomutativní kryptografie využívající zvláštní speciální  skupinu . - 2017. - leden. - str. 1-3 . Archivováno z originálu 26. prosince 2018.
  2. D.N. Moldavsko. Primitiva kryptosystémů s veřejným klíčem: Konečné nekomutativní grupy čtyřrozměrných vektorů  (ruština) . — 2010. Archivováno 26. března 2020.
  3. David Garber. BRAID GROUP CRYPTOGRAPHY PŘEDBĚŽNÝ  NÁVRH . - 2007. - Prosinec. Archivováno z originálu 26. prosince 2018.
  4. Vladimir Shpilrain, Alexander Ushakov. Thompsonova skupina a  kryptografie veřejného klíče . - 2007. - Prosinec. Archivováno z originálu 9. dubna 2019.
  5. K.I.Appel, PESchupp. Artinovy ​​skupiny a nekonečné Coxeterovy skupiny  . - 1983. - Červen. Archivováno z originálu 26. prosince 2018.

Literatura

  1. Alexej G. Myasnikov, Vladimir Shpilrain, Alexander Ushakov. Nekomutativní kryptografie a složitost grupových teoretických problémů. — ISBN 9780821853603 .
  2. Alexej Myasnikov, Vladimir Shpilrain, Alexander Ushakov. Skupinová kryptografie.
  3. Benjamin Fine, et. al. Aspekty nenabelovské skupinové kryptografie: Průzkum a otevřené problémy .

Odkazy

  1. Alexey Myasnikov; Vladimír Shpilrain; Alexandr Ušakov. Skupinová kryptografie  (neopr.) . Berlín: Birkhauser Verlag, 2008.
  2. Zhenfu Cao. Nové směry moderní kryptografie  (neopr.) . - Boca Raton: CRC Press, Taylor & Francis Group, 2012. - ISBN 978-1-4665-0140-9 .
  3. Benjamin Fine, et. al., Aspects of Nonabelian Group Based Cryptography: A Survey and Open Problems, arΧiv : 1103.4093 . 
  4. Alexej G. Myasnikov; Vladimír Shpilrain; Alexandr Ušakov. Nekomutativní kryptografie a složitost skupinově teoretických problémů  (anglicky) . - Americká matematická společnost, 2011. - ISBN 9780821853603 .