Hvilken er mere sikker og mindst mulig at bryde gennem kryptanalyse AES eller 3DES (uanset ydeevne)?
Jeg har brug for kryptering til mine projekter til at gemme og sikre følsomme oplysninger, der inkluderer bankkonti, sorteringskoder og tredjeparts datarelateret bank. Jeg overvejer i øjeblikket at bruge 3DES i CFB-tilstand, men jeg er ikke særlig sikker på, om det er den bedste løsning, og hvad der er andre alternativer.
Jeg ved, at titlen ikke giver meget idé om, hvad spørgsmålet handler om, men jeg kunne ikke tænke på noget bedre.
Svar
Gå til AES.
AES er efterfølgeren til DES som standard symmetrisk krypteringsalgoritme for amerikanske føderale organisationer. AES bruger nøgler på 128, 192 eller 256 bit, selvom , 128 bit nøgler giver tilstrækkelig styrke i dag. Den bruger 128 bit blokke og er effektiv i både software- og hardwareimplementeringer. Den blev valgt gennem en åben konkurrence, der involverede hundredvis af kryptografer i flere år.
DES er den tidligere “datakrypteringsstandard” fra halvfjerdserne. Dens nøglestørrelse er for kort til korrekt sikkerhed. 56 effektive bits kan være br ute-tvunget, og det er gjort for mere end ti år siden. DES bruger 64 bit blokke, hvilket udgør nogle potentielle problemer ved kryptering af flere gigabyte data med den samme nøgle.
3DES er en måde at genbruge DES-implementeringer ved at kæde tre forekomster af DES med forskellige nøgler. 3DES menes stadig at være sikker, fordi det kræver 2 112 operationer, som ikke kan opnås med forudsigelig teknologi. 3DES er meget langsom, især i softwareimplementeringer, fordi DES er designet til ydeevne i hardware.
Ressourcer:
http://www.differencebetween.net/technology/difference-between-aes-and-3des http://www.icommcorp.com/downloads/Comparison%20AES%20vs%203DES.pdf (offline, stadig i webarkivet )
Kommentarer
- AES og andre NIST-standarder aren ' t meget god i software
- @AndreyBotalov: for sagen AES er dette en ret forudindtaget opfattelse. På tidspunktet for AES-udvælgelsesprocessen (jeg var der!), Efter at have samlet masser af analyser om, at 13 af de 15 kandidater så " bundsolid ", der blev foretaget en masse præstationsmålinger, og Rijndael var en af " hurtige " -kodere. Faktisk var det den, der var mest konsekvent hurtig på tværs af mange arkitekturer, og det var meget medvirkende til sit valg. RC6 var hurtigere på en pc men en pc er den sidste platform, der har reelle problemer med krypteringsydelse. AES slår RC6 på smartcards og små ARM / Mips.
- Desuden har vi nu AES-udvidelser i moderne processorer, hvilket kan øge hastigheden på kryptering massivt.
Svar
Hverken 3DES eller AES kan brydes med den nuværende teknologi (og også forudsigelig teknologi). Du kan dog støde på nogle sikkerhedsproblemer med 3DES, hvis du krypterer mere end ca. 32 gigabyte data med en enkelt nøgle, hvorimod grænsen er meget højere med AES (dette skyldes blokstørrelsen; 3DES bruger 64-bit blokke, som kan føre til problemer efter behandling af 2 64/2 blokke, dvs. 32 gigabyte; AES bruger 128-bit blokke til en grænse på 2 128/2 blokke, dvs. 2 68 bytes, også kendt som “en hel del data”).
Da AES også er mærkbart hurtigere end 3DES, er der ringe grund til at bruge 3DES til nye designs.
Kommentarer
- Tak, jeg lærte et nyt teknisk udtryk i dag. " En hel del data "
- +1 til " en hel del data. " Ifølge WolframAlpha er 2 ^ 68 bytes data ca. 20 gange informationsindhold i " al menneskelig viden. "
- @AndreyBotalov: det er 2 ^ 64 blokke , og hver blok er 16 byte (2 ^ 4), deraf 2 ^ 68 byte .
- Kan nogen forklare, hvilken slags " problemer " man løber ind efter 2 ^ (64/2) med en 64-bit blokstørrelse?
- @FahadYousuf På grund af fødselsdagen Problem, når du først krypterer sqrt (2 ^ n) blokke, har du 50% chance for en kollision