21.03.2013 Views

Problem - Kevin Tafuro

Problem - Kevin Tafuro

Problem - Kevin Tafuro

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Because of its patent status and the availability of free alternatives with essentially<br />

identical properties (particularly CWC mode), we recommend against using OCB<br />

mode. If you’re interested in using it anyway, see Phil Rogaway’s OCB page at http://<br />

www.cs.ucdavis.edu/~rogaway/ocb/.<br />

CTR plus CBC-MAC (CCM) mode<br />

While OCB mode has appealing properties, its patent status makes it all but useless<br />

for most applications. CCM is another alternative that provides many of the same<br />

properties, without any patent encumbrance. There are some disadvantages of CCM<br />

mode, however:<br />

• While encryption and decryption can be parallelized, the message integrity check<br />

cannot be. OCB and CWC both avoid this limitation.<br />

• In some applications, CCM can be nonoptimal because the length of the message<br />

must be known before processing can begin.<br />

• The required nonce must never be reused (this is easy to avoid).<br />

• It isn’t well suited to 64-bit block ciphers. It does work well with AES, of course.<br />

CCM is also fairly new (more recent than OCB, but a bit older than CWC). It was<br />

introduced by Doug Whiting, Russ Housley, and Niels Fergusen. NIST is currently<br />

considering it for standardization.<br />

The primary advantages of CCM mode are:<br />

• CCM ensures message integrity in addition to performing encryption.<br />

• The message integrity functionality requires minimal message expansion (you<br />

would need to send the same amount of data to perform integrity checking with<br />

any of the previously mentioned cipher modes).<br />

• CCM has provable security properties while using only a single key. This means<br />

that under reasonable assumptions on the underlying block cipher, the mode<br />

provides near-optimal secrecy and message integrity if the required nonce is<br />

always unique.<br />

• CCM leverages most of the good properties of CTR mode, such as being able to<br />

handle messages without padding and being slow to leak information.<br />

• For ciphers where raw encryption and decryption operations require separate<br />

algorithms (particularly AES), only a single algorithm is necessary. In such a<br />

case, the faster of the two algorithms can be used (though you will get incompatible<br />

results if you use decryption where someone else uses encryption).<br />

In this book, we focus on CWC mode instead of CCM mode because CWC mode<br />

offers additional advantages, even though in many environments those advantages<br />

are minor. However, if you wish to use CCM mode, we recommend that you grab an<br />

off-the-shelf implementation of it because the mode is somewhat complex in com-<br />

170 | Chapter 5: Symmetric Encryption<br />

This is the Title of the Book, eMatter Edition<br />

Copyright © 2007 O’Reilly & Associates, Inc. All rights reserved.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!