CBC MACs for arbitrary-length messages : The three-key constructions

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 ∈ {0,1}* using max{1, ⌈ |M|/n⌉} applications of the underlying n-bit block cipher. Ou...

Full description

Saved in:
Bibliographic Details
Published in:Journal of cryptology Vol. 18; no. 2; pp. 111 - 131
Main Authors: BLACK, John, ROGAWAY, Phillip
Format: Journal Article
Language:English
Published: New York, NY Springer 01-04-2005
Springer Nature B.V
Subjects:
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary: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 ∈ {0,1}* using max{1, ⌈ |M|/n⌉} 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 M’s length to the next multiple of n by appending minimal 10ℓ padding (ℓ ≥ 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 adversary’s 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.
ISSN:0933-2790
1432-1378
DOI:10.1007/s00145-004-0016-3