Hvordan virker AES arbeid?

Hvordan virker AES arbeid?


Advanced Encryption Standard beskriver en matematisk formel, eller algoritme, for å konvertere elektroniske data i en uforståelig form, kalt krypterte teksten. Kryptogram kan ikke leses av andre enn den tiltenkte mottakeren. AES virker ved å mate en krypteringsnøkkel, i hovedsak en streng av sifre, inn krypteringsalgoritmen og utføre en rekke matematiske operasjoner basert på den krypteringsnøkkel.

grunn~~POS=TRUNC operasjoner

AES kan beskrives som en iterativ, symmetrisk blokk-kodenøkkel. AES bruker en løkke struktur for å gjentatte ganger utføre rearrangements av data, eller permutasjoner. Sløyfen erstatter en dataenhet med en annen for inngangsdata. Krypterings rutinen bruker den samme nøkkel for å kryptere og dekryptere data, og gjelder som nøkkel til fast lengde blokker av data.

Key Schedule

AES-kryptering rutine lagrer sin herre krypteringsnøkkel i en matrise. En matrise er en gruppe av objekter med de samme attributtene som kan løses individuelt. Matrisen består av fire rader, hver med fire, seks eller åtte byter, avhengig av størrelsen av nøkkelen. Bak kulissene, bruker kryptering rutine denne tabellen til å generere en tabell, kjent som en viktig plan, som inneholder flere nøkler. Disse tastene er kalt runde tastene for å skille dem fra den opprinnelige hovednøkkel.

State Matrix

AES benytter en krypteringsnøkkel som kan være 128, 192 eller 256 biter lang, og er påført i enheter av data, kalt blokker, som hver er 128 biter lang. AES-algoritmen starter ved å kopiere hver 16-bit blokk i en todimensjonal matrise kalles staten, for å skape en 4x4 byte matrise. Algoritmen utfører en eksklusiv "OR" operasjon som returnerer true hvis den ene eller den andre av sine operander er sant. Dette er kjent som "AddRoundKey," og dens mellom de første fire rekker av nøkkelplan og staten matrisen.

matematiske operasjoner

Etter den første eksklusive "OR" operasjon, går AES krypteringsalgoritme sin viktigste loop, der det gjentatte ganger utfører fire ulike matematiske operasjoner på statens matrise: "SubBytes", "ShiftRows", "MixColumns" og "AddRoundKey." Disse operasjoner anvende en kombinasjon av addisjon, multiplikasjon, rotasjon og substitusjon for å kryptere hver byte i staten matrisen. Den største sløyfe utfører 10, 12 eller 14 ganger, avhengig av størrelsen av krypteringsnøkkelen. Når kjøringen er ferdig, algoritmen kopier staten matrix til sin produksjon i form av krypterte teksten.