NIST har publicerat de kommentarer som inkommit på förslaget att standardisera kryptomoden XTS för AES.
XTS är en variant av kryptomoden XEX skapad av Phillip Rogaway. XTS har tidigare standardiserats av IEEE i P1619 för att skydda i blockorienterad lagringsmedia (exempelvis hårddiskar och FLASH-minnnen).
Matthew Ball, som är ordförande i IEEEs Storage Working Group är i sin kommentar, inte helt överraskande, positiv till NISTs XTS-förslag. Matthew påpekar att XTS, till skillnad från exempelvis CBC är en algoritm som går att parallellisera och därmed skalar bra prestandamässigt.
Mer intressant är att kommentarerna från hårddisk-tillverkaren Seagate är så negativa. Seagate ser inga fördelar med XTS, och tycker att den implementationsmässigt är för kostsam. Seagate skriver bland annat:
The XTS encryption mode is not a good choice for storage encryption. There have been simpler, faster or more secure modes in use.Is XTS a good tradeoff between security and complexity (costs)? NO: There are asymmetric large block encryption modes (e.g. BitLocker of Windows Vista) with similar complexity but better security for storage systems. There are faster, simpler encryption modes used together with access control (e.g. CBC)
Notera att Seagate inte ser ett problem med CBC vad gäller prestanda.
Även övriga kommentarer är på olika sätt negativa till XTS. Inte minst är det intressant att notera att Phillip Rogaway inte ser att XTS säkerhetsmekanismer inte tillför någon egentlig säkerhet.
Ett annat problem, som alla utom Matthew Ball från IEEE påpekar, är att IEEE äger standarden och att den som vill läsa standarden därför måste köpa standarden från IEEE. Som Niels Ferguson och Vijay Bharadwaj från Microsoft skriver i sin kommentar:
The proposal for the approved specification to be available only by purchase from IEEE . We believe that it is highly undesirable to standardize an algorithm whose specification, unlike those of other FIPS approved algorithms, is not freely available.
Ytterligare ett potentiellt problem med XTS är att det finns IP-rättigheter kopplade till standarden. Niels Ferguson och Vijay Bharadwaj återigen:
As stated in the call for comments, the current situation of IP rights with respect to XTS-AES is unclear. We believe that standardizing an algorithm which is so encumbered is undesirable, and that IP issues could inhibit adoption of such a standard.
Det är lite illavarslande att flera duktiga krytopexperter inte ser att XTS mekanismer, med bland annat två olika kryptonycklar tillför någon egentlig säkerhet och att det är oklart vad XTS egentligen är tänkt att lösa för ett säkerhetsproblem.
Men det som gör mig än mer orolig för framtiden är frågan om standardens öppenhet samt IP-problematiken, inte minst i ljuset av den pågående AHS-tävlingen. Finns det en risk att framtidens SHA-algoritm inte kommer att vara öppen, och att implementationer kommer att begränsas av IP-rättigheter? Det skulle inte vara bra för säkerheten.
No related posts.
Related posts brought to you by Yet Another Related Posts Plugin.
Vad är din uppfattning om XTS som “narrow-block” jämfört med “wide-block”? Om jag förstÃ¥tt saken rätt sÃ¥ fungerar narrow-block varianterna som en avancerad IV per block och drar inte nytta av innehÃ¥llet som krypteras utan är i praktiken ECB mode + IV, stämmer det?
Jämfört med wide-block som fungerar som en mixer. Jag tänker pÃ¥ BitLocker (Elephant diffusern) (den enda jag implementerat). En ändrad bit i ett (i mitt fall) multi-kilo block och hela blocket blir “mixat”.
XTS börjar dessutom tappa sin säkerhet efter att 1 TiB data blivit krypterat med samma nyckel. Bara det borde diskvalificera algoritmen…
Aloha!
Först: Ursäkta ett sent svar.
Nu är jag inte kryptolog och hänger i ärlighetens namn inte med i alla ekvationer. Men som jag fattat det är tweakable-delen i XTS med smÃ¥ block i stort sett som en glorifierad ECB. Speciellt illa verkar det vara för partiella block där kommentarerna inte tror pÃ¥ XTS “cipher stealing”-koncept, se ex kommentarerna frÃ¥n Phil Rogaway.
Över huvud taget verkar XTS ha ganska stora brister vad gäller skydd mot modifiering. Kolla ex på Fergusons och Bharadwajs kommentarer. De ser för övrigt precis som du skriver att säkerheten faller över en viss mängd data:
“The proposal appears to miss the effect of temporal effects on the security of XTS. It is possible for an attacker to observe a disk for a period of time and thereby gain a significant advantage in cryptanalysis.
For instance, on a disk with 4 KB blocks where each block is a data unit, an attacker who observes approximately 4000 writes to a given block will have obtained access to 220 cipher blocks with the same tweak and key.
Similarly, an attacker who steals a 500 GB encrypted disk may get access to about 1 TB of ciphertext if they were also able to recover the previous contents of each sector. Thus, it seems that the limits for key reuse given in Section 5 and Appendix D can be reached fairly easily in practice. We believe that the proposal lacks the margin of safety that would be expected of a mode which is to be used for 20-30 years.
...
This shows that large data units significantly weaken the system. The standard should not allow data units larger than the recommended 220 blocks”. Oops
I sina kommentarer till NISTs XTS-förslag skriver Moses Liskov och Kazuhiko Minematsu föreslår de en ny analys av XTS. Kolla i den.
Över huvud taget verkat XTS-förslaget vara slarvigt underbyggt med felaktig tolkning av XEX, hänvisning till fel analyser av XTS, ingen bra underbyggd motivering av att använda två nycklar etc.
BTW: Skall kolla in Elephant.