Abstract
PMAC is a parallelizable message authentication code (MAC) based on a block cipher. PMAC has many desirable features, such as parallelizability and essential optimality in terms of the number of block cipher calls, and the provable security. However, PMAC needs a pre-processing of one block cipher call taking all-zero block to produce the input masks to all subsequent block cipher calls. This incurs an overhead for both time and memory, which is often non-negligible. In particular, this makes PMAC’s state size 3n bits. To address these issues, we propose a new parallelizable MAC as an alternative to PMAC, which we call \(\text {LAPMAC}\). \(\text {LAPMAC}\) enables a high parallelizability, and unlike PMAC, it does not need a pre-processing to create an input mask. This leads to 2n-bit state memory compared to PMAC’s 3n-bit state. Moreover, \(\text {LAPMAC}\) is highly optimized in terms of the number of block cipher calls, for example it requires exactly the same number of block cipher calls as PMAC when one pre-processing call is allowed, and achieves the same number of block cipher calls as the state-of-the-art serial MACs those do not need the pre-processing call.
We prove that \(\text {LAPMAC}\) is secure up to around \(2^{n/2}\) queried blocks, under the standard pseudorandomness assumption of the underlying block cipher.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
- 2.
More precisely, the first \(\mu +1\) blocks can be parallel, and each of the subsequent \(\mu \) blocks can be parallel.
- 3.
It may be possible to reduce the number of parameters which relaxes the minimum size of \(\mathcal{I}_f\) but it can complicate the security analysis.
- 4.
In fact, [28] proposed another rotation-based function using \(\mathsf {p}\)-prime larger than n, however it fails to fulfill our requirements, such as invertibility.
References
CAESAR: Competition for Authenticated Encryption: Security, Applicability, and Robustness. http://competitions.cr.yp.to/caesar.html
Recommendation for Block Cipher Modes of Operation: the CMAC Mode for Authentication. NIST Special Publication 800-38B. National Institute of Standards and Technology (2005)
Beierle, C., et al.: The SKINNY family of block ciphers and its low-latency variant MANTIS. In: Robshaw, M., Katz, J. (eds.) CRYPTO 2016. LNCS, vol. 9815, pp. 123–153. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-53008-5_5
Bellare, M., Desai, A., Jokipii, E., Rogaway, P.: A concrete security treatment of symmetric encryption. In: 38th FOCS, pp. 394–403. IEEE Computer Society Press, October 1997. https://doi.org/10.1109/SFCS.1997.646128
Bellare, M., Guérin, R., Rogaway, P.: XOR MACs: new methods for message authentication using finite pseudorandom functions. In: Coppersmith, D. (ed.) CRYPTO 1995. LNCS, vol. 963, pp. 15–28. Springer, Heidelberg (1995). https://doi.org/10.1007/3-540-44750-4_2
Bernstein, D.J.: How to stretch random functions: the security of protected counter sums. J. Cryptol. 12(3), 185–192 (1999). https://doi.org/10.1007/s001459900051
Bertoni, G., Daemen, J., Hoffert, S., Peeters, M., Assche, G.V., Keer, R.V.: Farfalle: parallel permutation-based cryptography. IACR Trans. Symm. Cryptol. 2017(4), 1–38 (2017). https://doi.org/10.13154/tosc.v2017.i4.1-38
Biham, E.: A fast new DES implementation in software. In: Biham, E. (ed.) FSE 1997. LNCS, vol. 1267, pp. 260–272. Springer, Heidelberg (1997). https://doi.org/10.1007/BFb0052352
Black, J., Rogaway, P.: CBC MACs for arbitrary-length messages: the three-key constructions. In: Bellare, M. (ed.) CRYPTO 2000. LNCS, vol. 1880, pp. 197–215. Springer, Heidelberg (2000). https://doi.org/10.1007/3-540-44598-6_12
Black, J., Rogaway, P.: A block-cipher mode of operation for parallelizable message authentication. In: Knudsen, L.R. (ed.) EUROCRYPT 2002. LNCS, vol. 2332, pp. 384–397. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-46035-7_25
Bosselaers, A., Preneel, B. (eds.): Integrity Primitives for Secure Information Systems. LNCS, vol. 1007. Springer, Heidelberg (1995). https://doi.org/10.1007/3-540-60640-8
Chakraborti, A., Iwata, T., Minematsu, K., Nandi, M.: Blockcipher-based authenticated encryption: how small can we go? In: Fischer, W., Homma, N. (eds.) CHES 2017. LNCS, vol. 10529, pp. 277–298. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-66787-4_14
Chakraborty, D., Sarkar, P.: A general construction of tweakable block ciphers and different modes of operations. IEEE Trans. Inf. Theory 54(5), 1991–2006 (2008)
Chen, S., Steinberger, J.: Tight security bounds for key-alternating ciphers. In: Nguyen, P.Q., Oswald, E. (eds.) EUROCRYPT 2014. LNCS, vol. 8441, pp. 327–350. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-642-55220-5_19
Cogliati, B., Lampe, R., Seurin, Y.: Tweaking even-mansour ciphers. In: Gennaro, R., Robshaw, M. (eds.) CRYPTO 2015. LNCS, vol. 9215, pp. 189–208. Springer, Heidelberg (2015). https://doi.org/10.1007/978-3-662-47989-6_9
Daykin, D.E.: On the rank of the matrix f(A) and the enumeration of certain matrices over a finite field. J. Lond. Math. Soc. s1–35(1), 36–42 (1960)
Fischlin, M., Lehmann, A.: Delayed-key message authentication for streams. In: Micciancio, D. (ed.) TCC 2010. LNCS, vol. 5978, pp. 290–307. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-11799-2_18
Gazi, P., Pietrzak, K., Rybár, M.: The exact security of PMAC. IACR Trans. Symm. Cryptol. 2016(2), 145–161 (2016). https://doi.org/10.13154/tosc.v2016.i2.145-161. http://tosc.iacr.org/index.php/ToSC/article/view/569
Granger, R., Jovanovic, P., Mennink, B., Neves, S.: Improved masking for tweakable blockciphers with applications to authenticated encryption. In: Fischlin, M., Coron, J.-S. (eds.) EUROCRYPT 2016. LNCS, vol. 9665, pp. 263–293. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-49890-3_11
Iwata, T., Kurosawa, K.: OMAC: one-key CBC MAC. In: Johansson, T. (ed.) FSE 2003. LNCS, vol. 2887, pp. 129–153. Springer, Heidelberg (2003). https://doi.org/10.1007/978-3-540-39887-5_11
Iwata, T., Minematsu, K., Guo, J., Morioka, S.: CLOC: authenticated encryption for short input. In: Cid, C., Rechberger, C. (eds.) FSE 2014. LNCS, vol. 8540, pp. 149–167. Springer, Heidelberg (2015). https://doi.org/10.1007/978-3-662-46706-0_8
Käsper, E., Schwabe, P.: Faster and timing-attack resistant AES-GCM. In: Clavier, C., Gaj, K. (eds.) CHES 2009. LNCS, vol. 5747, pp. 1–17. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-04138-9_1
Krovetz, T., Rogaway, P.: The software performance of authenticated-encryption modes. In: Joux, A. (ed.) FSE 2011. LNCS, vol. 6733, pp. 306–327. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-21702-9_18
Luykx, A., Preneel, B., Szepieniec, A., Yasuda, K.: On the influence of message length in PMAC’s security bounds. In: Fischlin, M., Coron, J.-S. (eds.) EUROCRYPT 2016. LNCS, vol. 9665, pp. 596–621. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-49890-3_23
Luykx, A., Preneel, B., Tischhauser, E., Yasuda, K.: A MAC mode for lightweight block ciphers. In: Peyrin, T. (ed.) FSE 2016. LNCS, vol. 9783, pp. 43–59. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-52993-5_3
Matsuda, S., Moriai, S.: Lightweight cryptography for the cloud: exploit the power of bitslice implementation. In: Prouff, E., Schaumont, P. (eds.) CHES 2012. LNCS, vol. 7428, pp. 408–425. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-33027-8_24
Mennink, B.: XPX: generalized tweakable even-mansour with improved security guarantees. In: Robshaw, M., Katz, J. (eds.) CRYPTO 2016. LNCS, vol. 9814, pp. 64–94. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-53018-4_3
Minematsu, K.: A short universal hash function from bit rotation, and applications to blockcipher modes. In: Susilo, W., Reyhanitabar, R. (eds.) ProvSec 2013. LNCS, vol. 8209, pp. 221–238. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-41227-1_13
Minematsu, K., Matsushima, T.: New bounds for PMAC, TMAC, and XCBC. In: Biryukov, A. (ed.) FSE 2007. LNCS, vol. 4593, pp. 434–451. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-74619-5_27
Mouha, N., Mennink, B., Van Herrewege, A., Watanabe, D., Preneel, B., Verbauwhede, I.: Chaskey: an efficient MAC algorithm for 32-bit microcontrollers. In: Joux, A., Youssef, A. (eds.) SAC 2014. LNCS, vol. 8781, pp. 306–323. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-13051-4_19
Naito, Y., Matsui, M., Sugawara, T., Suzuki, D.: SAEB: a lightweight blockcipher-based AEAD mode of operation. IACR TCHES 2018(2), 192–217 (2018). https://doi.org/10.13154/tches.v2018.i2.192-217. https://tches.iacr.org/index.php/TCHES/article/view/885
Nandi, M.: Fast and secure CBC-type MAC algorithms. In: Dunkelman, O. (ed.) FSE 2009. LNCS, vol. 5665, pp. 375–393. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-03317-9_23
Nandi, M.: A unified method for improving PRF bounds for a class of blockcipher based MACs. In: Hong, S., Iwata, T. (eds.) FSE 2010. LNCS, vol. 6147, pp. 212–229. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-13858-4_12
Patarin, J.: New results on pseudorandom permutation generators based on the des scheme. In: Feigenbaum, J. (ed.) CRYPTO 1991. LNCS, vol. 576, pp. 301–312. Springer, Heidelberg (1992). https://doi.org/10.1007/3-540-46766-1_25
Patarin, J.: The “coefficients H” technique. In: Avanzi, R.M., Keliher, L., Sica, F. (eds.) SAC 2008. LNCS, vol. 5381, pp. 328–345. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-04159-4_21
Rogaway, P.: Efficient instantiations of tweakable blockciphers and refinements to modes OCB and PMAC. In: Lee, P.J. (ed.) ASIACRYPT 2004. LNCS, vol. 3329, pp. 16–31. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-30539-2_2
Rogaway, P.: Efficient instantiations of tweakable blockciphers and refinements to modes OCB and PMAC. Full version of [36] (2004). http://www.cs.ucdavis.edu/~rogaway/papers/
Rogaway, P., Shrimpton, T.: A provable-security treatment of the key-wrap problem. In: Vaudenay, S. (ed.) EUROCRYPT 2006. LNCS, vol. 4004, pp. 373–390. Springer, Heidelberg (2006). https://doi.org/10.1007/11761679_23
Zhang, L., Wu, W., Zhang, L., Wang, P.: CBCR: CBC MAC with rotating transformations. Sci. China Inf. Sci. 54(11), 2247–2255 (2011)
Acknowledgements
The author would like to thank Jean Paul Degabriele for shepherding and the anonymous reviewers for their insightful comments.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
A Proof of Lemma 3
A Proof of Lemma 3
In Fig. 7, we build the game to bound the probability of collision of \(\text{ CBC }[{\textsf {R}}_{\mathsf {h},1},{\textsf {R}}_{\mathsf {h},2}]\). The game and the subsequent analysis are essentially the same as the proof of Lemma 4.2 of [20]. First we give some notations for the game, which are mostly taken from [20]. We implement \({\textsf {R}}_{h,1}\) and \({\textsf {R}}_{h,2}\) by lazy sampling, where they are expressed as lists. For \(i=1,2,\) we maintain the lists of input and output to \({\textsf {R}}_{h,i}\) determined in the game. In particular, \(\text {Domain}({\textsf {R}}_{h,i})\) denotes the list of inputs and \({\textsf {R}}_{h,i}(x)\) denotes the output corresponding to input x. Initially \(\text {Domain}({\textsf {R}}_{h,i})\) is set to empty, and \({\textsf {R}}_{h,i}(x)\) is undefined if \(x\not \in \text {Domain}({\textsf {R}}_{h,i})\). We maintain the flags, \(\mathsf {bad}_1\) and \(\mathsf {bad}_2\), which are initialized to \(\mathsf {false}\). We also introduce two sets for chain blocks, \(\mathrm {BAD}_1\) and \(\mathrm {BAD}_2\), to determine whether the flags are set (to \(\mathsf {true}\)) or not. We observe that the output collision of \(\text{ CBC }[{\textsf {R}}_{h,1},{\textsf {R}}_{h,2}]\) only occurs when \(\mathsf {bad}_1\) is set at line 22, or \(\mathsf {bad}_2\) is set at line 44. Thus, (12) is at most the sum of \(\Pr [\mathsf {bad}_1\leftarrow \mathsf {true}]\) and \(\Pr [\mathsf {bad}_2\leftarrow \mathsf {true}]\).
Following [20], for the t-th process of line 13, let \(l_t\) denote the size of \(\mathrm {BAD}_2\) after line 21, assuming \(\mathsf {bad}_1\) is \(\mathsf {false}\) for the first \(t-1\) process of line 13. The probability of \(\mathsf {bad}_1\leftarrow \mathsf {true}\) is bounded as follows. Let V(t) denote the probability of \(\mathsf {bad}_1\leftarrow \mathsf {true}\) at the t-th choice of \(Y_i[1]\) (at line 13) conditioned by the even that \(\mathsf {bad}_1\) is \(\mathsf {false}\) before choosing \(Y_i[1]\). Then
holds since sampling at line 13 is uniform over n bits and \(\mathrm {BAD}_1\) has \((l_1+\dots +l_{t-1})\) points and \(\mathrm {BAD}_2\) has \(l_t\) points. Let s denote the total number of process line 13. Then we have
where \({l'_0}^2=l_1+\dots +l_s\).
The probability of \(\mathsf {bad}_2\leftarrow \mathsf {true}\) is similarly bounded. Let \(l'_{t'}\) denote the size of \(\mathrm {BAD}_2\) after line 43, at the \(t'\)-th process of line 35, assuming \(\mathsf {bad}_2\) is \(\mathsf {false}\) for the first \(t'-1\) process of line 35. Let \(s'\) denote the total number of process line 35 in the game. Here, \(s'\le \sigma \). Let \(V'(t)\) denote the probability of \(\mathsf {bad}_2\leftarrow \mathsf {true}\) at the \(t'\)-th choice of \(Y_i[j]\) (at line 35) conditioned by the event that \(\mathsf {bad}_2\) is \(\mathsf {false}\) before choosing \(Y_i[j]\). Then we have
and
as we have \(\sigma \ge l'_0 + l'_1+\dots +l'_{t'-1}\), \(s'\le \sigma \) which is at most \(2^n/2\) by assumption. From (26) and (27), the proof is concluded as
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this paper
Cite this paper
Minematsu, K. (2020). A Lightweight Alternative to PMAC. In: Paterson, K., Stebila, D. (eds) Selected Areas in Cryptography – SAC 2019. SAC 2019. Lecture Notes in Computer Science(), vol 11959. Springer, Cham. https://doi.org/10.1007/978-3-030-38471-5_16
Download citation
DOI: https://doi.org/10.1007/978-3-030-38471-5_16
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-38470-8
Online ISBN: 978-3-030-38471-5
eBook Packages: Computer ScienceComputer Science (R0)