|
AES (Advanced Encryption Standard – pažangus šifravimo standartas) – šifravimo algoritmas, 2001 metais JAV paskelbtas standartu. Dar vadinamas Rijndael algoritmu, jo autoriai yra Joan Daemen ir Vincent Rijmen. Rijndael yra blokinis simetrinis algoritmas. Šifravimo raktai gali būti 128, 192, arba 256 bitų ilgio, o blokų ilgis gali būti 128, 192 arba 256 bitų. Etapų raktų sudarymasEtapo rakto sudarymas iš šifro rakto susideda iš dviejų pagrindinių dalių: rakto plėtimas ir etapo rakto pasirinkimas. Etapų raktų sudarymo procesas:
Nb – Bloko ilgis.
Rcon[i] = (RC[i],00,00,00)
kai Nk<6: KeyExpansion(byte Key[4*Nk] word W[Nb*(Nr+1)]) Pirmieji Nk žodžių yra užpildyti šifro raktu. Kiekvienas tolimesnis žodis W[i] yra lygus prieš tai buvusio žodžio W[i–1] ir Nk pozicijų anksčiau buvusio žodžio W[i − Nk] XOR sumai. Kai indeksas i dalinasi iš Nk imodNk = 0 prieš atliekant operacija XOR, žodžiui W[i – 1]> įvykdoma funkcija RotByte, gautam rezultatui įvykdoma SubByte, dar pridedama Etapo konstanta Rcon[i / Nk], ir po šių veiksmų gauta reikšmė sudedama XOR su žodžio W[i − Nk] . Šifravimas
kiekvienas baitas X = [x0,x1,x2,x3,x4,x5,x6,x7] pakeičiamas Y,Y = [y0,y1,y2,y3,y4,y5,y6,y7]. Kuris yra skaičiuojamas taip:
Eilutės pastumiamos cikliškai, nulinė eilutė nekeičiama, pirmoji eilutė pastumiama per viena baitą į kairę, antroje eilutėje per du, trečioje per tris baitus.
Kiekvienas stulpelis A = [a0,a1,a2,a3] padauginamas iš matricos.
Sudedama bloko matrica su etapo rakto (Round key) matrica. |
This article is from Wikipedia. All text is available under the terms of the GNU Free Documentation License.
Mercedes Car
This site monitored by SitePinger.net