Jag är väl medveten om vad NIST och PCI säger om användningen av 3DES och dess avskrivning / förbjudande och jag vet också att AES är den faktiska rekommenderade standarden för mjukvaru- och hårdvarukryptering.
Jag ser många företag som fortfarande väljer 3DES när de helt enkelt kan välja det mest uppenbara valet: AES. Varför tror du det är? Finns det någon teknisk anledning till att någon kan välja 3DES framför AES?
Kommentarer
- Vanligtvis den mest övertygande orsaken av alla: " Bakåtkompatibilitet ".
- Ja, det låter som det mest logiska svaret. Men borde inte AES vara viktigare att den tekniska skulden för att ändra en produkts eller processens kompatibilitet?
- eftersom det är 1993?
- Av samma anledning använder människor fortfarande SHA-1 eller till och med MD5 för integritet eller till och med lösenord ..
- @franpen: Allt ' en avvägning.
Svar
Enligt min mening finns det ingen anledning att välja 3DES över AES någonsin.
Speciellt om det finns i programvara, eftersom 3DES-föreställningar har alltid varit hemskt. Dessutom levereras de flesta processorer med AES-acceleratorer idag, vilket innebär att AES är ännu snabbare.
Men tyvärr är förändringshantering svårt, vissa smartkort eller hårdvarumoduler stöder inte AES, men stöder 3DES … så om du kan undvika att byta maskinvara kan du bara fortsätta med 3DES, eftersom det inte är praktiskt taget trasigt.
De flesta programvaruutvecklingsteam har inte en kryptografientusiast / en kryptograf och kanske bara fortsätter att använda den goda gamla algoritmen de är vana vid eller som deras system bygger på. Inte nödvändigtvis en bra anledning, men förändring är svår, särskilt när det gäller programvara, så för det mesta föredrar folk att undvika förändringar som förhindrar bakåtkompatibilitet eller andra sådana saker.
Observera att nuförtiden kan du fortfarande hitta tvånyckel 3DES där ute, av exakt samma skäl!
På den teoretiska sidan har 3DES 64 bitars block, så det är inte lämpligt för dagens överföringsdataöverföringsprotokoll, eftersom det kan leda till blockkollisioner, medan AES är säkert på den sidan med sina 128 bitarsblock.
I det ämnet hänvisar jag till en av mina svar för mer information om huruvida 3DES är säkert.
Kommentarer
- Det var ett fantastiskt svar. Tack. En fråga dock: Om det fanns någon hårdvara som inte ' inte stödde AES, som en POS, till exempel, skulle du rekommendera att uppdatera den hårdvaran för att kryptera dess data med AES-128? Skulle kostnaderna för att göra det vara värda även om 3DES inte har ' inte gått sönder ännu?
- Det beror mest på hotmodellen för det POS … Det beror mest på den uppskattade kostnaden för en attack, den uppskattade kostnaden för uppgraderingen och den beräknade förlusten vid en attack … Praktisk säkerhet är tyvärr inte lika elegant som teoretisk kryptografi och baseras i allmänhet på många avvägningar . 3DES kommer inte att brytas ' av bruteforce-attacker under de närmaste decennierna, IMO. Och jag tvivlar på att ett POS genererar en stor mängd trafik. Så om det inte finns ett teoretiskt genombrott (osannolikt) betyder det att du fortfarande har tid …
- Ja, det finns ' s tid, men de flesta applikationer jag ' har sett använda 3DES med TLS som, som jag ' har kommit fram till, kan göra dem sårbara. I ditt svar om huruvida 3DES är säkert eller inte säger du att NIST fortfarande rekommenderar det, men det gäller inte ' idag, eftersom NIST själv har sagt att 3DES kommer att avskaffas. Så med allt detta i åtanke tror jag verkligen att i de flesta fall är kostnaden för att gå till AES helt värt det. Speciellt när jag hanterar konfidentiell information.
- Jag vet inte ' om det är fortfarande sant, men för ungefär fem år sedan, stort delar av kreditkortsnätverket skyddades av singel DES – bankerna bestämde att kostnaden för att byta ut terminalerna var för hög och lämnade den precis som den är (nya POS-terminaler tenderar att stödja AES, men gamla inte ' t).
- @franpen: Varför? De vet hur mycket POS-terminalerna kostar, de vet hur mycket det kommer att kosta att installera dem och de vet hur mycket de förlorar från cyberbedrägeri. Sedan fattar de ett affärsbeslut.