Locked History Actions

Quantum Computer resistant cryptography

Žodis angliškai:

Quantum computer resistant cryptography

Santrumpa:

QCR cryptography

Žodis lietuviškai:

Kvantiniams kompiuteriams atspari kriptografija

Apibrėžimas:

Atsirandant kvantiniams kompiuteriams, jie gali būti panaudoti duomenų iššifravimui labai didele sparta, kadangi kvantiniai kompiuteriai gali atlikti labai dideli kiekį operacijų per turimą laiko vienetą. Šitaip kodų nulaužimas, kuris būtų trukęs kelis metus gali būti nulaužiamas mėnesių ar dienų bėgyje. Tai sudaro didelę saugumo problemą, kurią reikėtų spręsti ieškant kodavimo būdų atsparių kvantiniams kompiuteriams. Kvantiniai kompiuteriai gali nesunkiai ir greitai įveikti kodavimą pasiremiantį pirminių skaičių sandauga. Taip pat nesunkiai išbandyti visus trumpo rakto variantus. Stipriausias kvantinio kompiuterio ginklas- Shoro algoritmas. Norint sukurti kvantiniams kompiuteriams neįveikiamą kodavimą, manoma, kad reikėtų naudoti kitokius kodavimo principus/

Galimi kodavimo principai:

Gardelių pagrindo kriptografija

Ši kriptografija naudojai gardelių pagrindo kriptografijos primityvais. Tai yra stiprų periodiškumą turinčių taškų visumą Euklido erdvėje.

  • Kodo sudarymui naudojamos matematinės problemos: trumpiausio vektoriaus radimas gardelėje, artimiausio vektoriaus gardelėje radimas.
    • Taip pat naudojama mokymosi su klaidomis sistema bei jos variantai. Visoms šioms problemoms nebuvo rasta lengvų spendimo būdų.

Daugiamatė kriptografija

Šiuo atveju naudojami nesimetriški kriptografijos primityvai su daugiamačių polinomų pagrindu. Šifravimui naudojamos sistemos: vaivorykštės.

  • Tokio pagrindo algoritmai dar nebuvo pritaikyti naudojimui, tačiau jie būtų sunkiai nulaužiami kvantiniais kompiuteriais.

Hash pagrindo kriptografija

Šis kodavimas yra paremtas vienpusio matematinio algoritmo naudojimu. Naudojant šį algoritmą yra ribotas kiekis hash kodų, kurie gali būti

  • nulaužiami ir saugomi bibliotekose, tačiau naudojant pakankamai ilgą hash, tokių bibliotekų sudarymas ir laikymas gali tapti nepraktiškas.

Kodo pagrindo kriptografija

Įgyvendinti šiai kriptografijai naudojamas klaidų taisymo algoritmas galintis ištaisyti tam tikrą kiekį klaidų tiesiniame kode.

  • Norint naudoti tokį algoritmą prieš kvantinius kompiuterius, reikėtų ženkliai padidinti rakto ilgį. Jis galėtų siekti apie 512 Kb, todėl ši kriptografija nėra labai populiari.

Simetrinio rakto kriptografija

Tai yra kriptografija, kuri naudoja tą patį raktą atviro teksto šifravimui ir dešifravimui. Net ir dabar naudojant pakankamai didelį rakto ilgį ši kriptografija

  • gali būti neįveikiama kvantiniams kompiuteriams. Taip pat ši kriptografija yra labai paplitusi todėl galėtų būti nesunkiai patobulinta į kvantiniams kompiuteriams saugią kriptografiją.

CISCO rekomenduojami kodavimo algoritmai:

AES-CBC rėžimu

Šiuo atveju naudojant šifravimo blokų grandinės sudėtingo šifravimo standartą pirmieji turimi duomenys yra koduojami panaudojant XOR loginę operaciją su pradiniu vektoriumi, kuris turi būti visiškai atsitiktinis, ir sandaugą su kodavimo raktu. Tolimesni duomenys koduojami atliekant XOR operaciją tarp pirmųjų duomenų bei antrųjų bei sudauginant iš kodavimo rakto. CISCO rekomenduoja 256 bitų rakto ilgį, norint apsisaugoti nuo kvantinių kompiuterių.

Šifravimas:

2.png

Dešifravimas:

3.png

AES-GCM rėžimu

Galois/Counter Mode yra saugus ir konfidencialus šifravimo būdas naudojantis simetriško rakto 128 bitų blokų šifravimą. Taip pat šis kodas gali būti naudojamas žinučių patvirtinimo rėžimu. Šiuo atveju norint šifruoti duomenis, duomenų blokai yra sužymimi iš eilės kaip ir CBC kodavime, tada šis bloko numeris yra užšifruojamam rezultatui atliekama XOR operacija su paprastu tekstu ir gaunamas šifruotas tekstas, kuriam toliau atliekama XOR operacija su autentifikacijos kodo dalimi.

Šifravimas:

4.png

SHA-384 ir SHA-512

SHA- secure hash algorithm, naudojamas failų autentiškumui patikrinti. Dažniausiai tikrinama iš anksto žinomos/suskaičiuotos hash vertė su ką tik gauta hash verte. Tai leidžia sužinoti ar failas buvo pakeistas, nes net ir mažiausias pakeitimas kode, visiškai pakeis hash vertę. Taip pat tai dažnai naudojama slaptažodžiams saugoti, kadangi galima sakyti, kad nėra dviejų vienodų reikšmių, kurios sugeneruotų tą patį hash kodą, taip pat tai yra tik vienpusė operacija. Nepaisant to, trumpi tekstai bei trumpi hash kodai gali būti nulaužiami naudojant iš anksto sudarytas bibliotekas todėl CISCO rekomenduoja SHA-384 bei SHA-512 koduotes. Jos geresnės nes naudoja 64 bitų žodžius. Šiuo atveju skaičiai 384 ir 512 nurodo funkcijos išeigos plotį bitais, atitinkamai 384 bei 512. Taip pat lyginant su 32 bitų SHA kodavimu maksimalus žinutės ilgis išsiplečia nuo 264 bitų iki 2128 bitų bei hash sudaryti naudojami 80, o ne 64 operacijų raundai. Hash sudaryti naudojamos operacijos: loginė suma, loginė sandauga, išskirtinis arba, sukimas be pernašos, modulio pridėjimą, dešinį loginį poslinkį. Neskaitant to, kad hash skaičiavimas pasudėtingėjo, jo skaičiavimas 64 bitų procesoriuose pagreitėjo.

MAC-SHA-256

HMAC yra žinučių autentifikavimo kodas panaudojantis raktą. Iš pavadinimo matyti, kad jis remiasi SHA-256 kodavimo algoritmu, tačiau prie žinutės taip pat prisegamas užkoduotas raktas. Tai yra nesimetriškas raktas, jį sudaro vieša ir privati rakto dalys, taigi norint patvirtinti žinutę, reikia gauti tą pačią vertę su privačiu raktu kaip ir ir buvo sugeneruota su viešu raktu. Šiuo atveju kitaip nei praeitame kodavime svarbiau yra ne hash vertės gavimas ar jos gavimo nulaužimas, bet rakto saugumas todėl raktas turi būti pakankamai ilgas, norint apsaugoti žinutę ar išlaikyti autentiškumą.

Šifravimas:

6.png

Literatūra:

1. CISCO rekomendacijos [žiūrėta 2016-11-03] Prieiga internete http://www.cisco.com/c/en/us/about/security-center/next-generation-cryptography.html

2. Daniel J. Bernstein. Post quantum cryptography. Sprinter. 2009. 243 psl. [žiūrėta 2016-11-03] Prieiga internete https://books.google.lt/books?id=VB598lO47NAC&pg=PA15&dq=quantum+resistant+cryptography&hl=lt&sa=X&ved=0ahUKEwiX9IqwmY3QAhWNJSwKHV4sAgcQ6AEIKTAA#v=onepage&q=quantum%20resistant%20cryptography&f=false

3. Dworkin, Morris (2007–2011). Recommendation for Block Cipher Modes of Operation: Galois/Counter Mode (GCM) and GMAC. NIST. 800-38D. [žiūrėta 2016-11-03] Prieiga internete http://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-38d.pdf

4. Descriptions of SHA-256, SHA-384, and SHA-512. [žiūrėta 2016-11-03] Prieiga internete https://web.archive.org/web/20130526224224/http://csrc.nist.gov/groups/STM/cavp/documents/shs/sha256-384-512.pdf