Introduction to Authenticated Encryption
Tom Shrimpton
Summer School on Real-World Crypto and Privacy June 11, 2018
Introduction to Authenticated Encryption Tom Shrimpton Summer - - PowerPoint PPT Presentation
(A brief, incomplete) Introduction to Authenticated Encryption Tom Shrimpton Summer School on Real-World Crypto and Privacy June 11, 2018 Authenticated Encryption M M Its complicated Probabilistic or deterministic AE? Nonce based AE?
Summer School on Real-World Crypto and Privacy June 11, 2018
Is it safe to provide multiple, descriptive exceptions/error messages?
Safe to release plaintext data “early”? What happens if a nonce repeats?
Stop all future processing, or just for this message? encryption + MAC? (tweakable) wide-block cip sponges? ...
Classically, randomized or stateful Always deterministic
$
(note: logically equivalent to C 6= ? = ) DK(C) = M
<latexit sha1_base64="d06cPaO1cAKqiNUPKrR/PoRc/6Q=">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</latexit><latexit sha1_base64="d06cPaO1cAKqiNUPKrR/PoRc/6Q=">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</latexit><latexit sha1_base64="d06cPaO1cAKqiNUPKrR/PoRc/6Q=">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</latexit><latexit sha1_base64="d06cPaO1cAKqiNUPKrR/PoRc/6Q=">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</latexit>)
Π
Π
Π
$
$
$
$
$
$
(If M isn’t block aligned, then return )
(the set of all functions ) f : {0, 1}n → {0, 1}n
<latexit sha1_base64="hYE9w36ZQ9xfB0JT3hlOVILQxdE=">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</latexit><latexit sha1_base64="hYE9w36ZQ9xfB0JT3hlOVILQxdE=">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</latexit><latexit sha1_base64="hYE9w36ZQ9xfB0JT3hlOVILQxdE=">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</latexit><latexit sha1_base64="hYE9w36ZQ9xfB0JT3hlOVILQxdE=">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</latexit>Might alter the ciphertext
To prevent “trivial wins” of the game, adversary is forbidden to ask C of the right oracle if C was returned by the left oracle (Bellare, Namprempre AC’00) (Bellare, Rogaway AC’ 00) (Katz, Yung FSE’ 00) random bit b
EK(·)
(b=1) (b=0)
append a block of all zeros to every message
(An, Bellare EC’01)
(Bellare, Namprempre AC’ 00)
(Bellare, Namprempre AC’ 00)
IV
IND$-CPA secure encryption scheme secure MAC (e.g. PRF, like HMAC)
IND$-CPA secure encryption scheme secure MAC (e.g. PRF, like HMAC)
IND$-CPA secure encryption scheme secure MAC (e.g. PRF, like HMAC)
But… [BN] says… ???
IV
(IV =) N M A (deterministic) C
(IV =) N M A (deterministic) C
(Rogaway CCS’02)
(Rogaway, Namprempre, S. EC’14)
Π (A) = 2 Pr[ Expae Π (A) = 1 ] − 1
<latexit sha1_base64="01hHna6eElbPWGYO+fjLMKUnQv8=">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</latexit><latexit sha1_base64="01hHna6eElbPWGYO+fjLMKUnQv8=">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</latexit><latexit sha1_base64="01hHna6eElbPWGYO+fjLMKUnQv8=">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</latexit><latexit sha1_base64="01hHna6eElbPWGYO+fjLMKUnQv8=">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</latexit>Π (A):
$
$
$
K
$
K
(Rogaway, S. EC’06)
(Namprempre, Rogaway, S. EC’ 14) (Bellare, Namprempre AC’ 00)
L
L
L
L
iv inputs:
tag inputs: (N or , A or , M or )
iv inputs: (N or , A or , M or )
tag inputs: (N or , A or , M or )
X C IV EK2 FK1 IV’ if = Hm X C IV DK2 H1 ... ... FK1 Hm H1 ... ...
plaintext AD components (Rogaway, S. EC’06) N
nonce IV
Many AE schemes (CCM, OCB, IAPM, CWC, GCM,…) fail catastrophically if the nonce/IV repeats, so this is a really nice feature. (RFC 5297)
(Bellare, Rogaway AC’ 00)
nonce or (sufficiently long) random string
K ≈ π−1)
<latexit sha1_base64="KgeTML2DCM6um65s4S+S4DLsPmc=">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</latexit><latexit sha1_base64="KgeTML2DCM6um65s4S+S4DLsPmc=">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</latexit><latexit sha1_base64="KgeTML2DCM6um65s4S+S4DLsPmc=">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</latexit><latexit sha1_base64="KgeTML2DCM6um65s4S+S4DLsPmc=">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</latexit>K
<latexit sha1_base64="xIjkMsHOtjUoDCMcuQbJFCst0B4=">AgmXic3RnZduO2VUnTNnW3SfuYhyKVZs6kx6NjyZ7lzNMoXmLPYnu8zHgiKj4gCUk85hYQlK1wmJ/oa/Nh+ZtegKRIAtBip0/VObLJu98L4C6QGbpOxDY2fvnk0989tvf/f7zP6z98U9/stf73xt3dREFOLnFuBG9ALE0fEdXxyzhzmkouQEuyZLnlvXm1z/PsJoZET+GdsGpKBh0e+M3QszAD0Yf75FEnvXyFLu81N9ob4oPUh07+0Gzkn+PL/7xo2EHVuwRn1kujqJ+ZyNkgwRT5lguSdeMOCIhtq7wiPTh0ceiQaJsDhF9wFio2FA4eszJKBVjgR7UT1TKD0MBtHMo4Ddbh+zIbPBonjhzEjvpUpGsYuYgHi7iPbocRi7hQesEUdsBVZY0yxSBINS2UuJHzI3fEJ9dW4HnYtxPDCmzCTU7nUFiMHLDGEsMsMd1m51UIo6sMfEkcj+gQJyzEIoEMBomnFtiH7p4dGfmAHxy76472AlO4+0BbyqkxNM61ocpqGy6DRkQV2eOdQ+gHfmHWJcZgR1il3YX2rMU4QJK2QyQaDkgVOSF1vLS/ORAvl1zZ90mzmz5sbn6tCiyJ4Umvo8OhQOR5L6F06pvyfZ2TwlRKNMcCxpKqlSY1Il6u7Icx7cVUQeHO4ZnBjfJo1ToUVmolqe1hEvxq6bIUliC62Gd/uj9nrKw2zydlNuEeolx7ECQjTf4irwOrgm1IOPluxYi3rMn2GdwZqWgAzyTUm6+hMPmSJ5wRW+Sv3uQLzO/BVLnjxsdr+ew3QsM4XLmU4ULrqUDZa+5IB9USOGuHzLU60129CJSQctkpIgK4aEnhdISQ507HMtNC3jOlE4VoSEiArQiI4NCGBUEGex9SRA0NjnzkeqScLAZGUYIh7mkAsYuUIwzIbwrkNxrkdoHc1iB3CuROZuRyOCSna9PjtJqck9enyg5b3dbotEkPVkMvMvRPJTFaPLrcW9HIgKITHT64fCsdyHRnXKF3M03cMQloTQwxS7lj8Y4gopMoE0JWoAM+sb63xVjXWDOqMxG8jqRs6E+KBs/aOxDgm5jiMsojzOzxMhC1MaXCe5jn8ljza5EoqdiPAc1n76GN6TFuwJ6oQs/8umLjFaLTgfxnNFN5dvCwVGxKCTgC4iSVR+VLi10e4SLzVaX6Upqpg0T/QdJC8VDm2lmzVmgwIB5zi/5MDJREdwsY1rok9knuloxNATIgMPjw6y/QFcBZ536rRGPtQIDbikOl6PBODXq4nADLBMQL2XQi6n5RPV5DP2wrtegwpzDN5FCpxdjdTsuRzmuANyt4JUaDMCzCv5Mg+9V8Bca/F4Fv6fBH1TwyqIA8GUF/1KDP6rglcMPwLcV/FsN/qSCV3IQAE8r+FMNfqeCV1IGAF9V8K80+P0iXe5rkG8qzG80+POC+VyDvFiyMh8K5g8a5HcF8rsi58y6vgjKYubDotASbKx3jEUGYEPwxnPX4ZIYOrmjhNRd9Nwshx4RhIrTugxflysT+ChNDsIEhp/BHGIQRJHEYDsQRwigS5rXrEm4CriAI3TiSZJtTRoTwfpFmeFpudqpvA94F93Z7OygrpZLv2MYMVyKsLN/BOyGrQvJOJSlP94GC5br5KvDRIREvSrUl2K6X+oysTmUTy6rWZKkQp7PZRxRhiO0ezLMwHjo+hBSB4xH0pAjGhQm2pmLY5Vrac1qz8CqI+bIXU1+SAeScKipotr6xb+cJVLgK41SOzTpwlKp5FYwg2BqL8YUb1OKbg1cW1Oy2+JDcam62kB2onX5aVslnoWKWVWxJYTl/UyRMsCuKiMuLNo+QMtrsp7W+VNkYIywaNOJHMSV89RPjW2XAiBmM/vxwnXA9Wc1DdZofYgINoF2N9Q+KwdgMqJBTVTejz7F6JjzCjr+Y86eMRpm6iVC5XpILCKQBfnLbozYSna3p4nGKBDUyTGxL85Mf81pcrleH3CgzVqDfRyENLKE3xyNem5+n2Y1BdOXIxZbTExu8nC+JPxRy5nFPVmOfawbO2/rpfDklid6WGX6St56LhcyC24XgFhJlke4oA4bewvcA5ql3pGbEDYsv2ibL2e3pEG64a2UscAYRUjVJCmROCNKhnfyLPNnjOChfwJjvTsPglS4axgwXmXShbHRrE1ZmPMr9Ceo4/Qmq7dX/qZkSCREoJxHSkyQUm9wQ8jU2eRokpHjJx7kcAEDX0RyvXZsfuPY7CI41naJl/NrKWhIwToemVuLlGM9FlKj7M4pf4nEYCu+XfhuzmPiFylPBskayj+5MQybsYshZ1svyjzRfgwDQ6qBpCX7XK/6bCA7tqXEqhDzYFWB3ZrAx79e4GZN4JO5AgW8iJKAKgEW8XWzVZGj+tFKb7vs6AFaxrIpsdSMTHXmcfu2VrNPs4CyPo2JmlWSl325lfoYrmTiClFcwbEVAqmP4wo2wpa7dRCbW7e2zxbn/E4LvaqFnUWGg8MY80Y84qytpz78R0PqnzrK0QlEryU5cuT2t3SGR5urlDxlrEuTg1rSlZaY7L4POz/4HPt7G8u9Dy1X1+qvVZx7dV43u2Qqz0wXIXbJCP/PD8f2RYSWX3aYluGMDIKfZX90AzO8o5NVWB436T4qz3x5G3rqePwqdYjgIZWvjLPLkIujE7mjFhcp825a6rR7sV/cR0bDRLzJF+mEeiWFeJNlwLiX5jeDl/eaHfm3efXhXbfd2Wh3m41X3Tz3+0/b3zZ+GfjYaPTeNp40dhvHDfOG1bDa/y78Z/Gz+hL1EP76GVG+uknOc/fG7UPOv0v6jM6QA=</latexit><latexit sha1_base64="xIjkMsHOtjUoDCMcuQbJFCst0B4=">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</latexit><latexit sha1_base64="xIjkMsHOtjUoDCMcuQbJFCst0B4=">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</latexit><latexit sha1_base64="xIjkMsHOtjUoDCMcuQbJFCst0B4=">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</latexit>“mask”
(Halevi, Rogaway C’03)
(same for EAX, CCM, GCM-SIV, GCM (sort of), all SPRP-based schemes and many other ”named” schemes…)
(Rogaway, Bellare, Black, Krovetz CCS’01) (Rogaway AC’04) (Krovetz, Rogaway FSE’11) (Krovetz, Rogaway RFC 7253)
C1 C2 C3 C0 EK EK EK IV 128 80 100 + + = 308 bits
C1 C2 C3 C0 EK EK EK IV 128 80 100 + + = 308 bits
padding
e.g. PKCS #7
C1 C2 C3 C0 EK EK EK IV
PKCS#7
(what “halt” means depends a lot on the use-case, too…)
C1 C2 C3 C0 EK EK EK IV
PKCS#7
C1 C2 C3 C0 EK EK EK IV
PKCS#7
C1 C2 C3 C0 EK EK EK IV
PKCS#7
(Boldyreva, Degabriele, Paterson, Stam FSE’13) (Boldyreva, Degabriele, Paterson, Stam EC’12) (Andreeva, Bogdanov, Luykz, Mennink, Mouha, Yasuda AC’14) (Barwell, Martin, Oswald, Stam AC’17)
(Hoang, Krovetz, Rogaway EC’15)
(Hoang, Reyhanitabar, Rogaway, Vizar EC’15) (And don’t forget constructions of AEAD from other primitives, e.g., wide permutations/sponges)
Summer School on Real-World Crypto and Privacy June 11, 2018