1、第6章 分组密码的工作模式,Multiple Encryption & 3DES,clear a replacement for DES was needed theoretical attacks that can break it demonstrated exhaustive key search attacks AES is a new cipher alternative prior to this alternative was to use multiple encryption with DES implementations Triple DES (3DES) is the
2、chosen form,Why not Double-DES?,could use 2 DES encrypts on each block C = E(K2, E(K1, P) P = D(K1, D(K2, C) issue of reduction to single stage(约化为单次加密), and have “meet-in-the-middle” attack works whenever use a cipher twice since X = E(K1, P) = D(K2, C), attack by encrypting P with all keys and sto
3、re, then decrypt C with keys and match X value can show takes O(256) steps Require know ,Triple-DES with Two-Keys,hence must use 3 encryptions would seem to need 3 distinct keys but can use 2 keys with E-D-E sequence C = EK1(DK2(EK1(P) nb encrypt & decrypt equivalent in security if K1=K2 then can wo
4、rk with single DES standardized in ANSI X9.17 & ISO8732 no current known practical attacks O(2112) 穷举攻击 / 1052 差分密码分析,Triple-DES with Three-Keys,although are no practical attacks on two-key Triple-DES have some indications can use Triple-DES with Three-Keys to avoid even these C = EK3(DK2(EK1(P) has
5、 been adopted by some Internet applications, eg PGP, S/MIME,Modes of Operation,block ciphers encrypt fixed size blocks eg. DES encrypts 64-bit blocks with 56-bit key need some way to en/decrypt arbitrary amounts of data in practise NIST (SP800-38A) Modes of Use defines 5 possible modes defined for A
6、ES & DES have block and stream modes to cover a wide variety of applications can be used with any block cipher,Electronic Codebook Book (ECB),message is broken into independent blocks which are encrypted each block is a value which is substituted, like a codebook, hence name each block is encoded in
7、dependently of the other blocks Ci = DESK1(Pi) uses: secure transmission of single values,Electronic Codebook Book (ECB),Advantages and Limitations of ECB,message repetitions may show in ciphertext if aligned with message block particularly with data such graphics or with messages that change very l
8、ittle, which become a code-book analysis problem weakness is due to the encrypted message blocks being independent main use is sending a few blocks of data,Cipher Block Chaining (CBC),message is broken into blocks linked together in encryption operation each previous cipher blocks is chained with cu
9、rrent plaintext block, hence name use Initial Vector (IV) to start process Ci = DESK1(Pi XOR Ci-1) C-1 = IV uses: bulk data encryption, authentication,Cipher Block Chaining (CBC),Message Padding,at end of message must handle a possible last short block which is not as large as blocksize of cipher, p
10、ad either with known non-data value (eg nulls), or pad last block along with count of pad size eg. b1 b2 b3 0 0 0 0 5, means have 3 data bytes, then 5 bytes pad+count this may require an extra entire block over those in message there are other, more esoteric modes, which avoid the need for an extra
11、block,Ciphertext Stealing,Use to make ciphertext length same as plaintext length Requires more than one block of plaintext,Pn-1,En-1,Pn,En-1,Pn,Head n,T,T,Head n,Advantages and Limitations of CBC,a ciphertext block depends on all blocks before it, any change to a block affects all following cipherte
12、xt blocks (雪崩效应) need Initialization Vector (IV) which must be known to sender & receiver if sent in clear, attacker can change bits of first block, and change IV to compensate hence IV must either be a fixed value (as in EFTPOS) or derived in way hard to manipulate or sent encrypted in ECB mode bef
13、ore rest of message or message integrity must be checked otherwise,Stream Modes of Operation,block modes encrypt entire block may need to operate on smaller units real time data convert block cipher into stream cipher cipher feedback (CFB) mode output feedback (OFB) mode counter (CTR) mode use block
14、 cipher as some form of pseudo-random number generator.,Vernam cipher,Vernam cipher,Vernam cipher,Cipher FeedBack (CFB),message is treated as a stream of bits, added to the output of the block cipher result is feed back for next stage (hence name) standard allows any number of bit (1,8, 64 or 128 et
15、c) to be feed back denoted CFB-1, CFB-8, CFB-64, CFB-128 etc most efficient to use all bits in block (64 or 128) Ci = Pi XOR DESK1(Ci-1) C-1 = IV uses: stream data encryption, authentication,Cipher FeedBack (CFB),Advantages and Limitations of CFB,most common stream mode appropriate when data arrives
16、 in bits/bytes limitation is need to stall while do block encryption after every s-bits note that the block cipher is used in encryption mode at both ends errors propogate for several blocks after the error how many?,Output FeedBack (OFB),message is treated as a stream of bits, output of cipher is a
17、dded to message output is then feed back (hence name) feedback is independent of message can be computed in advance Ci = Pi XOR Oi Oi = DESK1(Oi-1) O-1 = IV uses: stream encryption on noisy channels,?,Output FeedBack (OFB),Advantages and Limitations of OFB,bit errors do not propagate more vulnerable
18、 to message stream modification a variation of a Vernam cipher hence must never reuse the same sequence (key+IV) sender & receiver must remain in sync originally specified with m-bit feedback subsequent research has shown that only full block feedback (ie CFB-64 or CFB-128) should ever be used,Count
19、er (CTR),a “new” mode, though proposed early on similar to OFB but encrypts counter value rather than any feedback value must have a different key & counter value for every plaintext block (never reused) Ci = Pi XOR Oi Oi = DESK1(i) uses: high-speed network encryptions,Counter (CTR),Advantages and L
20、imitations of CTR,efficiency can do parallel encryptions in h/w or s/w can preprocess in advance of need good for bursty high speed links random access to encrypted data blocks provable security (good as other modes) but must ensure never reuse key/counter values, otherwise could break (cf OFB),Feed
21、back Character-istics,XTS-AES Mode,new mode, for block oriented storage use (面向分组的存储设备) in IEEE Std 1619-2007 concept of tweakable block cipher (可微调分组密码) different requirements to transmitted data uses AES twice for each block Tj = EK2(i) j Cj = EK1(Pj Tj) Tj where i is tweak & j is sector no. each
22、sector may have multiple blocks,XTS-AES Mode per block,XTS-AES Mode Overview,Advantages and Limitations of XTS-AES,efficiency can do parallel encryptions in h/w or s/w random access to encrypted data blocks has both nonce & counter addresses security concerns related to stored data,Summary,Multiple Encryption & Triple-DES Modes of Operation ECB, CBC, CFB, OFB, CTR, XTS-AES,
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1