Puncte:0

AES și calculul cuantic

drapel za

Încerc să înțeleg algoritmul de criptare AES-256, așa cum ar fi implementat pe un computer cuantic închis (de fapt, un simulator) și întâmpin unele probleme în a înțelege teoria din spatele lui. Lucrările pe care le-am citit încep cu inelul de polinoame dat de $F_2[x]/(1 + x + x^3 + x^6 + x^8)$. Care este semnificația polinomului $1 + x + x^3 + x^6 + x^8$? Și cum se leagă asta $GF(2^8)$?

Robert Singleton avatar
drapel za
Titlul lucrării pe care o citesc este „Reducerea costului implementării standardului avansat de criptare ca circuit cuantic”.
poncho avatar
drapel my
Poate doriți să începeți cu https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.197.pdf - care încearcă să descrie ce este AES, inclusiv operația de înmulțire care vă derutează.
kelalaka avatar
drapel in
[Ghid stick AES](http://www.moserware.com/2009/09/stick-figure-guide-to-advanced.html)
kelalaka avatar
drapel in
Răspunsul nostru canonic [Câmpurile Galois în criptografie](https://crypto.stackexchange.com/q/2700/18298) și [Am nevoie de ajutor pentru înțelegerea matematicii din spatele Rijndael S-Box](https://crypto.stackexchange.com/q /85670/18298) și
Puncte:1
drapel gb

Pentru a răspunde la întrebarea specifică, $F_2[x]/(1 + x + x^3 + x^6 + x^8)$ este izomorfă la $GF(2^8)$. Vedea Aici pentru mai multe informatii.

Polinomul $g(x) = 1 + x + x^3 + x^6 + x^8$ este ireductibil peste $F_2$, deci coeficientul este un câmp. Gradul polinomului este 8, deci este o extensie algebrică de gradul 8 a lui $F_2$. Cu alte cuvinte, este $F_{2^8}$.

Elemente în $F_2[x]/(g(x))$ sunt clase de echivalență de polinoame modulo $g(x)$.

Acesta este un mod standard de a construi extensii de câmp algebric de grade finite.

Apropo, cred că AES chiar a făcut-o $x^4$ în loc de $x^6$ în polinom. Nu sunt sigur dacă a fost o greșeală de tipar în întrebarea dvs. sau dacă ați citit-o undeva.

Robert Singleton avatar
drapel za
Acest lucru a fost foarte util.Am încercat să factorizez polinomul fără succes peste $_2$, așa că este bine de știut că este ireductibil. Cum se demonstrează că un anumit polinom este ireductibil în $F_2$? Am foarte puțină intuiție pentru $_2$. De asemenea: chiar ai dreptate, polinomul are $x^4$ în loc de $x^6$. Există vreun motiv pentru care AES a ales $1 + x + x^3 + x^4 + x^6$ în loc de un alt polinom ireductibil?
meshcollider avatar
drapel gb
@RobertSingleton puteți folosi [testul lui Rabin pentru ireductibilitate](https://en.m.wikipedia.org/wiki/Factorization_of_polynomials_over_finite_fields#Rabin.27s_test_of_ireductability). Alegerea polinomului este doar o parte a standardului.
kelalaka avatar
drapel in
Puteți găsi cum să vedeți că polinoamele AES sunt ireductibile [aici] (https://crypto.stackexchange.com/a/77958/18298). Motivul de selecție al greutății reduse este ireductibil, ceea ce reduce costurile de calcul în Câmpul Finit.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.