IDÉ
Designer (r) | Xuejia Lai , James Massey |
---|---|
Første publikasjon | 1991 |
Avledet fra | PES |
Kryptering (er) basert på denne algoritmen | FOX , IDEA NXT , Akelarre , MESH |
Blokkstørrelse (r) | 64 bits |
---|---|
Nøkkel lengde (r) | 128 bits |
Struktur | Lai-Massey-diagram |
Antall svinger | 8 runder + ½ siste runde |
Bedre kryptanalyse
Angrip kollisjon med 2 24 klare tekster, kompleksitet 2 126 i 5 runder med IDEA.
IDEA , for I nternational D ata E nCRYPTION A lgorithm er en algoritme for symmetrisk krypterings designet av Xuejia Lai og James Massey , og ble først beskrevet i 1991.
IDEA- algoritmen er patentert av det sveitsiske selskapet Mediacrypt ; patentet utløp i 2011 i Europa, og ijanuar 2012i USA og Japan. Mediacrypt har vært fremhevet sidenMai 2005sin nye kryptering kalt " IDEA NX T" som faktisk er FOX .
IDEA er en symmetrisk blokk krypteringsalgoritme som brukes til å kryptere og dekryptere data. Den manipulerer blokker med 64- biters klar tekst . En 128- bit lang krypteringsnøkkel (som må velges tilfeldig ) brukes til datakryptering. Den samme hemmelige nøkkelen er nødvendig for å dekryptere dem.
Som alle blokkrypter bruker IDEA både forvirring og diffusjon . Algoritmen består i å anvende den samme transformasjonen åtte ganger (eller runde nedenfor) etterfulgt av en endelig transformasjon (kalt halvrunde). I løpet av hver runde brukes en kombinasjon av operasjoner fra forskjellige algebraiske grupper , som enkelt kan utføres både i programvare og maskinvare :
Alle disse operasjonene håndterer 16-biters underblokker. Denne algoritmen er dermed effektiv selv på 16-biters prosessorer.
En 64-biters datablokk som skal krypteres, er delt inn i 4 16-biters underblokker: X 1 , X 2 , X 3 og X 4 . Disse fire underblokkene blir inngangene til den første av de åtte rundene av algoritmen. På hver runde kombineres de 4 underblokkene av eksklusiv ELLER, tilsettes og multipliseres med hverandre, samt med 6 16-biters K 1 ... K 6 undernøkler hentet fra krypteringsnøkkelen. Mellom hver runde byttes andre og tredje underblokk. Til slutt blir de fire underblokkene oppnådd etter den åttende runden behandlet med de fire siste undernøklene i en endelig transformasjon.
Hver runde med 6 distinkte 16-biters undernøkler og den endelige transformasjonen ved hjelp av 4 undernøkler, er det derfor nødvendig med 52 undernøkler. De første 8 undernøklene blir hentet direkte fra 128-biters krypteringsnøkkel, med K 1 tatt fra de minst betydningsfulle 16 bitene. En første 25-bits venstre rotasjon av krypteringsnøkkelen utføres etter at de første 8 undernøklene er ekstrahert. For å trekke ut de 52 nødvendige undernøklene, kreves totalt 6 rotasjoner.
For hver runde er hendelsesrekkefølgen som følger (se operasjonstrinnene i diagrammet motsatt):
Utgangen fra runden består av de fire delblokkene produsert av trinn (11), (13), (12) og (14). Bytt de to indre underblokkene (unntatt i løpet av den siste runden), og dette gir X ' 1 , X' 2 , X ' 3 og X' 4 inngangen til neste runde. Også seks nye K 7 ... K 12 undernøkler er avledet for bruk i neste runde, og så videre.
Etter den åttende runden er det en siste transformasjon på den siste generasjonen av underblokker:
Til slutt samles de fire underblokkene igjen for å danne 64-biters krypteringstekst.