Uzlabotais šifrēšanas standarts (AES) ir elektronisko datu šifrēšanas specifikācija, ko 2001. gadā izveidoja ASV Nacionālais standartu un tehnoloģiju institūts (NIST). AES mūsdienās tiek plaši izmantots, jo tas ir daudz spēcīgāks par DES un trīskāršo DES, lai gan ir grūtāks. īstenot.
Punkti, kas jāatceras
- AES ir bloka šifrs.
- Atslēgas izmērs var būt 128/192/256 biti.
- Šifrē datus blokos pa 128 bitiem katrā.
Tas nozīmē, ka tam ir nepieciešami 128 biti kā ievade un 128 biti šifrēta šifrēta teksta izvade. AES balstās uz aizstāšanas-permutācijas tīkla principu, kas nozīmē, ka tas tiek veikts, izmantojot virkni saistītu darbību, kas ietver ievades datu aizstāšanu un jaukšanu.
iskcon pilna forma
Šifra darbība:
AES veic darbības ar datu baitiem, nevis bitiem. Tā kā bloka lielums ir 128 biti, šifrs vienlaikus apstrādā 128 bitus (vai 16 baitus) ievades datu.
Apļu skaits ir atkarīgs no atslēgas garuma šādi:
- 128 bitu atslēga – 10 kārtas
- 192 bitu atslēga – 12 kārtas
- 256 bitu atslēga – 14 kārtas
Apaļo atslēgu izveide:
Key Schedule algoritms tiek izmantots, lai aprēķinātu visas apaļās atslēgas no atslēgas. Tātad sākotnējā atslēga tiek izmantota, lai izveidotu daudzas dažādas apaļas atslēgas, kuras tiks izmantotas attiecīgajā šifrēšanas kārtā.

Šifrēšana:
AES katru bloku uzskata par 16 baitu (4 baiti x 4 baiti = 128) režģi kolonnas galvenajā izkārtojumā.
[ b0 | b4 | b8 | b12 | | b1 | b5 | b9 | b13 | | b2 | b6 | b10| b14 | | b3 | b7 | b11| b15 ]>
Katra kārta sastāv no 4 soļiem:
- Apakšbaiti
- ShiftRows
- MixColumns
- Pievienojiet apaļo atslēgu
Pēdējā kārtā nav MixColumns kārtas.
Subbaiti veic aizstāšanu, un ShiftRows un MixColumns veic permutāciju algoritmā.
Apakšbaiti:
Šis solis īsteno aizstāšanu.
Šajā solī katrs baits tiek aizstāts ar citu baitu. To veic, izmantojot uzmeklēšanas tabulu, ko sauc arī par S-box. Šī aizstāšana tiek veikta tādā veidā, ka baits nekad netiek aizstāts pats par sevi un arī netiek aizstāts ar citu baitu, kas ir pašreizējā baita kompliments. Šīs darbības rezultāts ir 16 baitu (4 x 4) matrica, tāpat kā iepriekš.
Nākamās divas darbības īsteno permutāciju.
ShiftRows:
Šis solis ir tieši tāds, kā izklausās. Katra rinda tiek pārvietota noteiktu skaitu reižu.
- Pirmā rinda netiek pārvietota
- Otrā rinda tiek vienu reizi pārvietota pa kreisi.
- Trešā rinda tiek pārvietota divas reizes pa kreisi.
- Ceturtā rinda tiek pārvietota trīs reizes pa kreisi.
(Tiek veikta apļveida nobīde pa kreisi.)
[ b0 | b1 | b2 | b3 ] [ b0 | b1 | b2 | b3 ] | b4 | b5 | b6 | b7 | ->| b5 | b6 | b7 | b4 | | b8 | b9 | b10 | b11 | | b10 | b11 | b8 | b9 | [ b12 | b13 | b14 | b15 ] [ b15 | b12 | b13 | b14 ]>>MixColumns:
Šis solis būtībā ir matricas reizināšana. Katra kolonna tiek reizināta ar noteiktu matricu un tādējādi tiek mainīta katra baita pozīcija kolonnā.Šis solis tiek izlaists pēdējā kārtā.
Pēc visām šīm kārtām kā izvade tiek atdoti 128 biti šifrētu datu. Šis process tiek atkārtots, līdz visi šifrējamie dati tiek pakļauti šim procesam.
Atšifrēšana:
Raundu posmus var viegli atsaukt, jo šiem posmiem ir pretstats, kas, izpildot, maina izmaiņas. Katrs 128 bloks iziet cauri 10, 12 vai 14 kārtām atkarībā no atslēgas izmēra.kā pārvērst veselu skaitli java virknēKatras atšifrēšanas kārtas posmi ir šādi:
- Pievienojiet apaļo atslēgu
- Inverse MixColumns
- ShiftRows
- Apgrieztais apakšbaits
Atšifrēšanas process ir šifrēšanas process, kas tiek veikts apgrieztā secībā, tāpēc es paskaidrošu darbības ar ievērojamām atšķirībām.
Apgrieztās sajaukšanas kolonnas:
Šis solis ir līdzīgs šifrēšanas darbībai MixColumns, taču atšķiras no operācijas veikšanai izmantotās matricas.[ b0 ] [ 14 11 13 9 ] [ c0 ] | b1 | = | 9 14 11 13 | | c1 | | b2 | | 13 9 14 11 | | c2 | [ b3 ] [ 11 13 9 14 ] [ c3 ]>Apgrieztie apakšbaiti:
Apgrieztais S-box tiek izmantots kā uzmeklēšanas tabula, ar kuru atšifrēšanas laikā tiek aizstāti baiti.Lietojumprogrammas:
AES tiek plaši izmantots daudzās lietojumprogrammās, kurām nepieciešama droša datu glabāšana un pārsūtīšana. Daži izplatīti lietošanas gadījumi ietver:
Bezvadu drošība: AES tiek izmantots bezvadu tīklu, piemēram, Wi-Fi tīklu, drošībai, lai nodrošinātu datu konfidencialitāti un novērstu nesankcionētu piekļuvi. Datu bāzes šifrēšana: AES var izmantot, lai šifrētu sensitīvus datus, kas tiek glabāti datu bāzēs. Tas palīdz aizsargāt personas informāciju, finanšu ierakstus un citus konfidenciālus datus no nesankcionētas piekļuves datu pārkāpuma gadījumā. Droša saziņa: AES tiek plaši izmantots tādos protokolos kā interneta sakari, e-pasts, tūlītēja ziņojumapmaiņa un balss/video zvani. Tas nodrošina datu konfidencialitāti. Datu glabāšana: AES tiek izmantots, lai šifrētu sensitīvus datus, kas tiek glabāti cietajos diskos, USB diskos un citos datu nesējos, pasargājot tos no nesankcionētas piekļuves nozaudēšanas vai zādzības gadījumā. Virtuālie privātie tīkli (VPN): AES parasti izmanto VPN protokolos, lai nodrošinātu saziņu starp lietotāja ierīci un attālo serveri. Tas nodrošina, ka caur VPN nosūtītie un saņemtie dati paliek privāti un noklausītāji tos nevar atšifrēt. Droša paroļu glabāšana: paroļu drošai glabāšanai parasti tiek izmantota AES šifrēšana. Tā vietā, lai saglabātu vienkārša teksta paroles, tiek saglabāta šifrētā versija. Tas pievieno papildu drošības līmeni un aizsargā lietotāja akreditācijas datus nesankcionētas piekļuves krātuvei gadījumā. Failu un diska šifrēšana: AES tiek izmantots, lai šifrētu failus un mapes datoros, ārējās atmiņas ierīcēs un mākoņkrātuvē. Tas aizsargā sensitīvus datus, kas tiek glabāti ierīcēs vai datu pārsūtīšanas laikā, lai novērstu nesankcionētu piekļuvi.
Kopsavilkums:
AES instrukciju kopa tagad ir integrēta CPU (piedāvā vairāku GB/s caurlaidspēju), lai uzlabotu lietojumprogrammu ātrumu un drošību, kas izmanto AES šifrēšanai un atšifrēšanai. Lai gan kopš tā ieviešanas ir pagājuši 20 gadi, mums nav izdevies lauzt AES algoritmu, jo tas nav iespējams pat ar pašreizējām tehnoloģijām. Līdz šim vienīgā ievainojamība ir saglabājusies algoritma ieviešanā.