Welcome!
To use the personalized features of this site, please log in or register.
If you have forgotten your username or password, we can help.
My Menu
Saved Items

CBC MACs for Arbitrary-Length Messages: The Three-Key Constructions

John BlackContact Information and Phillip RogawayContact Information

(1) Department of Computer Science, 430 UCB, Boulder, CO 80309, USA
(2) Department of Computer Science, University of California, Davis, CA 95616 USA and Department of Computer Science, Faculty of Science, Chiang Mai University, Chiang Mai 50200, Thailand

Received: 30 May 2000  Revised: 10 August 2004  Published online: 24 February 2005

Abstract  We suggest some simple variants of the CBC MAC that enable the efficient authentication of arbitrary-length messages. Our constructions use three keys, K1, K2, K3, to avoid unnecessary padding and MAC any message M isin {0,1}* using max{1, lceil |M|/nrceil} applications of the underlying n-bit block cipher. Our favorite construction, XCBC, works like this: if |M| is a positive multiple of n then XOR the n-bit key K2 with the last block of M and compute the CBC MAC keyed with K1; otherwise, extend Mrsquos length to the next multiple of n by appending minimal 10ell padding (ell ge 0), XOR the n-bit key K3 with the last block of the padded message, and compute the CBC MAC keyed with K1. We prove the security of this and other constructions, giving concrete bounds on an adversaryrsquos inability to forge in terms of his inability to distinguish the block cipher from a random permutation. Our analysis exploits new ideas which simplify proofs compared with prior work.

CBC MAC - Message authentication codes - Modes of operation - Provable security - Standards


Contact InformationJohn Black
Email: jrblack@cs.colorado.edu

Contact InformationPhillip Rogaway
Email: rogaway@cs.ucdavis.edu
Fulltext Preview (Small, Large)
Image of the first page of the fulltext


Export this article
Export this article as RIS | Text
 
Remote Address: 38.107.191.113 • Server: mpweb02
HTTP User Agent: CCBot/1.0 (+http://www.commoncrawl.org/bot.html)