1
Tight Private Circuits: Achieving Probing Security with the Least Refreshing
Sonia Belaid, Dahmun Goudarzi, and Matthieu Rivain dahmun.goudarzi@pqshield.com
Tight Private Circuits: Achieving Probing Security with the Least - - PowerPoint PPT Presentation
Tight Private Circuits: Achieving Probing Security with the Least Refreshing Sonia Belaid, Dahmun Goudarzi, and Matthieu Rivain dahmun.goudarzi@pqshield.com 1 Side-Channel Attacks and Higher-Order Masking in 1 in 2 in 3
1
Tight Private Circuits: Achieving Probing Security with the Least Refreshing
Sonia Belaid, Dahmun Goudarzi, and Matthieu Rivain dahmun.goudarzi@pqshield.com
Side-Channel Attacks and Higher-Order Masking
2
in1 in2 in3 ⊕ ⊗ ⊗ ⊕
For each in, in = m1 + m2 + … + md
2
Implementation Transformation
3
x y z
⊕ ⊗ ⊗ ⊕
[x] [y] [z] ⊗ [ ] ⊕ [ ] ⊗ [ ] ⊗ [ ] ⊗ [ ] R
⊕ [ ]
[x] d-sharing addition gadget : :
⊗ [ ] R
multiplication gadget refresh gadget : :
3
Secure Gadgets
4 4
[x] [y] [z] = [x + y] ⊕ [ ] R ⊗ [ ] [x] [y] [z] = [x ⋅ y] [x] [z] = [x]
Addition gadget Multiplication gadget Refresh gadget
[x] + [y] = (x1 + y1, x2 + y2, …, xd + yd) Ref([x]) = [x] [1]
⊗ [ ]
5 5
ISW Multiplication
to avoir security flaws d2 d
c1 c2 . . . cd = a1b1 a1b2 . . . a1bd a2b1 a2b2 . . . . . . . . . . . . ... . . . adb1 adb2 . . . adbd + r1,2 . . . r1,d r1,2 . . . . . . ... rd,d−1 r1,d rd,d−1
<latexit sha1_base64="JiY7sU4veOIJlTH5NLjyieyRkY=">AGj3ictVRdb9MwFM1WKN8beORF4uJCokxYrdZkgfQgBd4GxLbkJoqchynteZ8yHamli/iJ/CL+Df4KTt1qR94QFLkU6Oz73Bs7QcaZVKb5Z2e3c+9+98Hew96jx0+ePts/OLyUaS4IvSApT8WPAEvKWUIvFOc/sgExXHA6Vw/bnav7qhQrI0+a7mGR3HeJKwiBGsNOUf7P7yAjphSZHFWAk2K3vEh57X87IpTlQaF95NmCpZEh9VbP0CNCJ+2PNoEt7Fve+1M4Hlwj4MfAj6C4A08Oo0SyKs8t1p0UqLmtq72ivtkumvgbAC27TYD1d5w7YHTbSbebOlGVOLC68e+UhMgnFhnrhoYA7dY/PEGgxcG2qATMuETin8Ah6jsgRrhdrBEDomQjrGrJcGrusgaC2Cw7Ks7f9zxX5tdNvU+uB2RFvsIMt0aheWbdl2BYust1BlTk8Dt/C7Ygsk6hudGFc9vFomy72NC2Xasqdupq+xoMHGS61lqxqpHWV/H3j1Z1wCaAS3BkLNe5Pt6/9SBIHtNEY6lHEzU+MC8UIp2XPyXNMLnGEzrSMExleOitlqCV5oJQZQK/SQK1Ox6RIFjKedxoJXa4VS29ypy294oV5EzLliS5YomZFEoyjlQKajuKAiZoETxuQaYCKa9AjLFAhOlb3KjSpVbyEiW2s3yCkVdENW2/PGXPBm4Sa0lTQuBUqBJ6XoMFNBM6mjMxatGLXP1tUNokyXv2narYScBYILOZFhpWeWiI3u1RpyqUePoh4mop3hDKuv3Ec4yRsaKWKdSIRtprAQc6xmDXZYK5oxCjX4gYvUqV/uMmkRQdxq4/Z4ug1uJpSAS/18Yftw74JLtEJ1Nfy2/DozF1ehD3jhfHSeG1AwzbOjC/GuXFhkM5hx+l87HzqHnTt7ofu2UK6u7OMeW40VvfrX18FG4M=</latexit><latexit sha1_base64="JiY7sU4veOIJlTH5NLjyieyRkY=">AGj3ictVRdb9MwFM1WKN8beORF4uJCokxYrdZkgfQgBd4GxLbkJoqchynteZ8yHamli/iJ/CL+Df4KTt1qR94QFLkU6Oz73Bs7QcaZVKb5Z2e3c+9+98Hew96jx0+ePts/OLyUaS4IvSApT8WPAEvKWUIvFOc/sgExXHA6Vw/bnav7qhQrI0+a7mGR3HeJKwiBGsNOUf7P7yAjphSZHFWAk2K3vEh57X87IpTlQaF95NmCpZEh9VbP0CNCJ+2PNoEt7Fve+1M4Hlwj4MfAj6C4A08Oo0SyKs8t1p0UqLmtq72ivtkumvgbAC27TYD1d5w7YHTbSbebOlGVOLC68e+UhMgnFhnrhoYA7dY/PEGgxcG2qATMuETin8Ah6jsgRrhdrBEDomQjrGrJcGrusgaC2Cw7Ks7f9zxX5tdNvU+uB2RFvsIMt0aheWbdl2BYust1BlTk8Dt/C7Ygsk6hudGFc9vFomy72NC2Xasqdupq+xoMHGS61lqxqpHWV/H3j1Z1wCaAS3BkLNe5Pt6/9SBIHtNEY6lHEzU+MC8UIp2XPyXNMLnGEzrSMExleOitlqCV5oJQZQK/SQK1Ox6RIFjKedxoJXa4VS29ypy294oV5EzLliS5YomZFEoyjlQKajuKAiZoETxuQaYCKa9AjLFAhOlb3KjSpVbyEiW2s3yCkVdENW2/PGXPBm4Sa0lTQuBUqBJ6XoMFNBM6mjMxatGLXP1tUNokyXv2narYScBYILOZFhpWeWiI3u1RpyqUePoh4mop3hDKuv3Ec4yRsaKWKdSIRtprAQc6xmDXZYK5oxCjX4gYvUqV/uMmkRQdxq4/Z4ug1uJpSAS/18Yftw74JLtEJ1Nfy2/DozF1ehD3jhfHSeG1AwzbOjC/GuXFhkM5hx+l87HzqHnTt7ofu2UK6u7OMeW40VvfrX18FG4M=</latexit><latexit sha1_base64="JiY7sU4veOIJlTH5NLjyieyRkY=">AGj3ictVRdb9MwFM1WKN8beORF4uJCokxYrdZkgfQgBd4GxLbkJoqchynteZ8yHamli/iJ/CL+Df4KTt1qR94QFLkU6Oz73Bs7QcaZVKb5Z2e3c+9+98Hew96jx0+ePts/OLyUaS4IvSApT8WPAEvKWUIvFOc/sgExXHA6Vw/bnav7qhQrI0+a7mGR3HeJKwiBGsNOUf7P7yAjphSZHFWAk2K3vEh57X87IpTlQaF95NmCpZEh9VbP0CNCJ+2PNoEt7Fve+1M4Hlwj4MfAj6C4A08Oo0SyKs8t1p0UqLmtq72ivtkumvgbAC27TYD1d5w7YHTbSbebOlGVOLC68e+UhMgnFhnrhoYA7dY/PEGgxcG2qATMuETin8Ah6jsgRrhdrBEDomQjrGrJcGrusgaC2Cw7Ks7f9zxX5tdNvU+uB2RFvsIMt0aheWbdl2BYust1BlTk8Dt/C7Ygsk6hudGFc9vFomy72NC2Xasqdupq+xoMHGS61lqxqpHWV/H3j1Z1wCaAS3BkLNe5Pt6/9SBIHtNEY6lHEzU+MC8UIp2XPyXNMLnGEzrSMExleOitlqCV5oJQZQK/SQK1Ox6RIFjKedxoJXa4VS29ypy294oV5EzLliS5YomZFEoyjlQKajuKAiZoETxuQaYCKa9AjLFAhOlb3KjSpVbyEiW2s3yCkVdENW2/PGXPBm4Sa0lTQuBUqBJ6XoMFNBM6mjMxatGLXP1tUNokyXv2narYScBYILOZFhpWeWiI3u1RpyqUePoh4mop3hDKuv3Ec4yRsaKWKdSIRtprAQc6xmDXZYK5oxCjX4gYvUqV/uMmkRQdxq4/Z4ug1uJpSAS/18Yftw74JLtEJ1Nfy2/DozF1ehD3jhfHSeG1AwzbOjC/GuXFhkM5hx+l87HzqHnTt7ofu2UK6u7OMeW40VvfrX18FG4M=</latexit><latexit sha1_base64="KWKBug961RQMDzCtU06Rjo89n0Y=">AD03ictZNLb9NAEIC3CY8SCrRnLhYVEqdgc4EjEheORSJtpTSqZtfjZJV9WLNjFGP5jrgxM/iF/Bv2Dg5YKdXRlp9M3svHZWlkYHTtM/R6PxvfsPHh4/mjw+mTx5+uz05DL4ihTOlDeriUENrhjDUbvC4JwUqDV3L9YWu/+oIUtHefuS5xYWHpdKEVcEQXt6fn6TtJDlUsr1yLvZyezb6fZN7Vl0rAyEM/SkhcNEGtlsJ3cVAFLUGtY4jyqDiyGRdPV2SYvI8mTwlM8jpO/nujARtCbWX0tMCrMLRt4V2ecXFu0WjXVkxOrVLVFQmYZ9sm05yTajY1FEBRTrWmqgVECiOo+l2camUIT2ztw9uELCA7eu/P8csSLTB7xCT2gHV4mgbpMeWxKUK602A8x6/XWAymVRGs/7qrcORksCqpsSOE7NhcMu2XsT4vCTwnhPrxVqE9/YWnB5zewjYEoHzQBsjJAmz6VNWOh0UTnHifPcYPdcoClHfSx2a1ej3WIpWnj9mfDXT9ULt9Ms3SafUrFsXguXohXIhNvxXvxUVyImVAiF9/Fr7Ecfxv/2P2S0dH+u5yJnox/gWn1K</latexit><latexit sha1_base64="WQkmL3e4vs7hIfA4vQ1lzS30Ckg=">AGhHictVRdb9MwFM1WKM2PbKi8VEhcQYsbsyQNowAuPQ2IfUlNFjuO0Vp0P2c7UEuUX8VP4BfwbnLTdmrQvPGAp0snxvfece2MnyDiTyjT/7Ox2Hj3uPtl72nu2/zFy4PD/WuZ5oLQK5LyVNwGWFLOEnqlmOL0NhMUxwGnN8H0a7V/c0eFZGnyQ80zOorxOGERI1hpyj/c/eUFdMySIouxEmxW9ogPa/nZROcqDQuvLswVbIkPqrY+gVoRPyw59EkfMj72GtXAsuFfRj4EPQXAGng1WRFjVe4hFq1jUjH3QXsUumf4aCuwLRb74apu2PagiXYz7Y0Y+rgwqtHPhTjYFSYpy4amGfuiXlqDQauDTVApmVCpxR+AU9QWYI1oXYyhI6JkM4x6WB6zoIWovksCxr+/+s2K+NbptaH9yPaIsdZJlO7cKyLduwJmLbHdQVQ5PwvdwuyGIrHNobnTh3HexkG2Lndm2a1Vi562r8HAQaZrYlVjbS+in9wvNIBmwAuwbGxXJf6eP/WgyB5TBNFOJZyCM1MjQosFCOclj0vlzTDZIrHdKhgmMqR0VtQRvNBOCKBX6SRSo2fWMAsdSzuNAR2qHE9neq8hte8NcRc6oYEmWK5qQhVCUc6BSUN1REDJBieJzDTARTHsFZIFJkrf5IZKVvISJZbtRvkhAq6EVb/8Vc8GbhJrQVNC4lSoEnpegwY0FziaMzFq0YtOfLSobRxmv/lM1WwVwFgs5kWGlZ5aIje7VGnKpR4+iHiaig+EMq6/cRzjJGzEShXrQiJsNYGDnGMxa7LBXNGIUa6DG7xIlf7hJuMWHcStPmaLo9fgakoFvNTH7YP+ya4RqdQX8vprFnvDJeG28NaNjGhfHNuDSuDNI56jidz50v3cOu3f20uCi7O8sbc2Q0VvfiLwDAGo0=</latexit><latexit sha1_base64="WQkmL3e4vs7hIfA4vQ1lzS30Ckg=">AGhHictVRdb9MwFM1WKM2PbKi8VEhcQYsbsyQNowAuPQ2IfUlNFjuO0Vp0P2c7UEuUX8VP4BfwbnLTdmrQvPGAp0snxvfece2MnyDiTyjT/7Ox2Hj3uPtl72nu2/zFy4PD/WuZ5oLQK5LyVNwGWFLOEnqlmOL0NhMUxwGnN8H0a7V/c0eFZGnyQ80zOorxOGERI1hpyj/c/eUFdMySIouxEmxW9ogPa/nZROcqDQuvLswVbIkPqrY+gVoRPyw59EkfMj72GtXAsuFfRj4EPQXAGng1WRFjVe4hFq1jUjH3QXsUumf4aCuwLRb74apu2PagiXYz7Y0Y+rgwqtHPhTjYFSYpy4amGfuiXlqDQauDTVApmVCpxR+AU9QWYI1oXYyhI6JkM4x6WB6zoIWovksCxr+/+s2K+NbptaH9yPaIsdZJlO7cKyLduwJmLbHdQVQ5PwvdwuyGIrHNobnTh3HexkG2Lndm2a1Vi562r8HAQaZrYlVjbS+in9wvNIBmwAuwbGxXJf6eP/WgyB5TBNFOJZyCM1MjQosFCOclj0vlzTDZIrHdKhgmMqR0VtQRvNBOCKBX6SRSo2fWMAsdSzuNAR2qHE9neq8hte8NcRc6oYEmWK5qQhVCUc6BSUN1REDJBieJzDTARTHsFZIFJkrf5IZKVvISJZbtRvkhAq6EVb/8Vc8GbhJrQVNC4lSoEnpegwY0FziaMzFq0YtOfLSobRxmv/lM1WwVwFgs5kWGlZ5aIje7VGnKpR4+iHiaig+EMq6/cRzjJGzEShXrQiJsNYGDnGMxa7LBXNGIUa6DG7xIlf7hJuMWHcStPmaLo9fgakoFvNTH7YP+ya4RqdQX8vprFnvDJeG28NaNjGhfHNuDSuDNI56jidz50v3cOu3f20uCi7O8sbc2Q0VvfiLwDAGo0=</latexit><latexit sha1_base64="JBRVOVgew73hCqK2GdLyHNC7z60=">AGj3ictVRdb9MwFM1WKN8beORF4uJComx2emyJA+gAS/wNiT2ITV5DhOa835kO1MLVF+ET+FX8C/wUnbrUn7wgOWIp0cn3vuTd2gowzqSD8s7XdefCw+2jnce/J02fPX+zu7V/KNBeEXpCUp+I6wJyltALxRSn15mgOA4vQpuvlT7V7dUSJYmP9Qso6MYjxMWMYKVpvy97V9eQMcsKbIYK8GmZY/4yPN6XjbBiUrjwrsNUyVL4psVW78AjYgf9jyahPdxH3rtTGCxsI8CH4H+HJgaeHWaBRFW+e615lJrNrX3tZfaBdNfAWEFNmxHy7zhm0Pmg3825DM1CLC68e+VCMg1EBj1xzAE/cQ3hkDQaujTQwoQWRUwq/QIdmWYKVQu1ghBxomjoG1ksD13VMZM2Dw7Ks7f9zxX5tdNPU+uBuRBvsmBZ0aheWbdl2BU5c03YHVebwMHyPNhtCpnWK4FoXzl0X87LtYie27VpVsVNX29dg4JjQtVaKVY20voq/e7CsA9YBWoADY7HO9fH+rQdB8pgminAs5RDBTI0KLBQjnJY9L5c0w+QGj+lQwTHVI6K2moJ3mgmBFEq9JMoULOrEQWOpZzFgVZqhxPZ3qvITXvDXEXOqGBJliuakHmhKOdApaC6oyBkghLFZxpgIpj2CsgEC0yUvsmNKlVuISNZbqzdICdU0DVZbf8/Z8wFbxJqQlNB41aoEHhWgY3FjibMDJt0Yrd/GxR2TjKePWfqtlKwFkgsJgVGVZ6aolc71KlKZd6+CDiaSqOCWVcf+M4xknY0EoV60QibDWBg5xjMW2ywUzRiFGuxQ1epEr/cJNxiw7iVh/T+dFrcDWlAl7q4/ah30dXJpHSF/L7/DgzF1chB3jlfHaeGsgwzbOjK/GuXFhkM5+x+l86nzu7nXt7sfu2Vy6vbWIeWk0VvfbX13FG38=</latexit><latexit sha1_base64="JiY7sU4veOIJlTH5NLjyieyRkY=">AGj3ictVRdb9MwFM1WKN8beORF4uJCokxYrdZkgfQgBd4GxLbkJoqchynteZ8yHamli/iJ/CL+Df4KTt1qR94QFLkU6Oz73Bs7QcaZVKb5Z2e3c+9+98Hew96jx0+ePts/OLyUaS4IvSApT8WPAEvKWUIvFOc/sgExXHA6Vw/bnav7qhQrI0+a7mGR3HeJKwiBGsNOUf7P7yAjphSZHFWAk2K3vEh57X87IpTlQaF95NmCpZEh9VbP0CNCJ+2PNoEt7Fve+1M4Hlwj4MfAj6C4A08Oo0SyKs8t1p0UqLmtq72ivtkumvgbAC27TYD1d5w7YHTbSbebOlGVOLC68e+UhMgnFhnrhoYA7dY/PEGgxcG2qATMuETin8Ah6jsgRrhdrBEDomQjrGrJcGrusgaC2Cw7Ks7f9zxX5tdNvU+uB2RFvsIMt0aheWbdl2BYust1BlTk8Dt/C7Ygsk6hudGFc9vFomy72NC2Xasqdupq+xoMHGS61lqxqpHWV/H3j1Z1wCaAS3BkLNe5Pt6/9SBIHtNEY6lHEzU+MC8UIp2XPyXNMLnGEzrSMExleOitlqCV5oJQZQK/SQK1Ox6RIFjKedxoJXa4VS29ypy294oV5EzLliS5YomZFEoyjlQKajuKAiZoETxuQaYCKa9AjLFAhOlb3KjSpVbyEiW2s3yCkVdENW2/PGXPBm4Sa0lTQuBUqBJ6XoMFNBM6mjMxatGLXP1tUNokyXv2narYScBYILOZFhpWeWiI3u1RpyqUePoh4mop3hDKuv3Ec4yRsaKWKdSIRtprAQc6xmDXZYK5oxCjX4gYvUqV/uMmkRQdxq4/Z4ug1uJpSAS/18Yftw74JLtEJ1Nfy2/DozF1ehD3jhfHSeG1AwzbOjC/GuXFhkM5hx+l87HzqHnTt7ofu2UK6u7OMeW40VvfrX18FG4M=</latexit><latexit sha1_base64="JiY7sU4veOIJlTH5NLjyieyRkY=">AGj3ictVRdb9MwFM1WKN8beORF4uJCokxYrdZkgfQgBd4GxLbkJoqchynteZ8yHamli/iJ/CL+Df4KTt1qR94QFLkU6Oz73Bs7QcaZVKb5Z2e3c+9+98Hew96jx0+ePts/OLyUaS4IvSApT8WPAEvKWUIvFOc/sgExXHA6Vw/bnav7qhQrI0+a7mGR3HeJKwiBGsNOUf7P7yAjphSZHFWAk2K3vEh57X87IpTlQaF95NmCpZEh9VbP0CNCJ+2PNoEt7Fve+1M4Hlwj4MfAj6C4A08Oo0SyKs8t1p0UqLmtq72ivtkumvgbAC27TYD1d5w7YHTbSbebOlGVOLC68e+UhMgnFhnrhoYA7dY/PEGgxcG2qATMuETin8Ah6jsgRrhdrBEDomQjrGrJcGrusgaC2Cw7Ks7f9zxX5tdNvU+uB2RFvsIMt0aheWbdl2BYust1BlTk8Dt/C7Ygsk6hudGFc9vFomy72NC2Xasqdupq+xoMHGS61lqxqpHWV/H3j1Z1wCaAS3BkLNe5Pt6/9SBIHtNEY6lHEzU+MC8UIp2XPyXNMLnGEzrSMExleOitlqCV5oJQZQK/SQK1Ox6RIFjKedxoJXa4VS29ypy294oV5EzLliS5YomZFEoyjlQKajuKAiZoETxuQaYCKa9AjLFAhOlb3KjSpVbyEiW2s3yCkVdENW2/PGXPBm4Sa0lTQuBUqBJ6XoMFNBM6mjMxatGLXP1tUNokyXv2narYScBYILOZFhpWeWiI3u1RpyqUePoh4mop3hDKuv3Ec4yRsaKWKdSIRtprAQc6xmDXZYK5oxCjX4gYvUqV/uMmkRQdxq4/Z4ug1uJpSAS/18Yftw74JLtEJ1Nfy2/DozF1ehD3jhfHSeG1AwzbOjC/GuXFhkM5hx+l87HzqHnTt7ofu2UK6u7OMeW40VvfrX18FG4M=</latexit><latexit sha1_base64="JiY7sU4veOIJlTH5NLjyieyRkY=">AGj3ictVRdb9MwFM1WKN8beORF4uJCokxYrdZkgfQgBd4GxLbkJoqchynteZ8yHamli/iJ/CL+Df4KTt1qR94QFLkU6Oz73Bs7QcaZVKb5Z2e3c+9+98Hew96jx0+ePts/OLyUaS4IvSApT8WPAEvKWUIvFOc/sgExXHA6Vw/bnav7qhQrI0+a7mGR3HeJKwiBGsNOUf7P7yAjphSZHFWAk2K3vEh57X87IpTlQaF95NmCpZEh9VbP0CNCJ+2PNoEt7Fve+1M4Hlwj4MfAj6C4A08Oo0SyKs8t1p0UqLmtq72ivtkumvgbAC27TYD1d5w7YHTbSbebOlGVOLC68e+UhMgnFhnrhoYA7dY/PEGgxcG2qATMuETin8Ah6jsgRrhdrBEDomQjrGrJcGrusgaC2Cw7Ks7f9zxX5tdNvU+uB2RFvsIMt0aheWbdl2BYust1BlTk8Dt/C7Ygsk6hudGFc9vFomy72NC2Xasqdupq+xoMHGS61lqxqpHWV/H3j1Z1wCaAS3BkLNe5Pt6/9SBIHtNEY6lHEzU+MC8UIp2XPyXNMLnGEzrSMExleOitlqCV5oJQZQK/SQK1Ox6RIFjKedxoJXa4VS29ypy294oV5EzLliS5YomZFEoyjlQKajuKAiZoETxuQaYCKa9AjLFAhOlb3KjSpVbyEiW2s3yCkVdENW2/PGXPBm4Sa0lTQuBUqBJ6XoMFNBM6mjMxatGLXP1tUNokyXv2narYScBYILOZFhpWeWiI3u1RpyqUePoh4mop3hDKuv3Ec4yRsaKWKdSIRtprAQc6xmDXZYK5oxCjX4gYvUqV/uMmkRQdxq4/Z4ug1uJpSAS/18Yftw74JLtEJ1Nfy2/DozF1ehD3jhfHSeG1AwzbOjC/GuXFhkM5hx+l87HzqHnTt7ofu2UK6u7OMeW40VvfrX18FG4M=</latexit><latexit sha1_base64="JiY7sU4veOIJlTH5NLjyieyRkY=">AGj3ictVRdb9MwFM1WKN8beORF4uJCokxYrdZkgfQgBd4GxLbkJoqchynteZ8yHamli/iJ/CL+Df4KTt1qR94QFLkU6Oz73Bs7QcaZVKb5Z2e3c+9+98Hew96jx0+ePts/OLyUaS4IvSApT8WPAEvKWUIvFOc/sgExXHA6Vw/bnav7qhQrI0+a7mGR3HeJKwiBGsNOUf7P7yAjphSZHFWAk2K3vEh57X87IpTlQaF95NmCpZEh9VbP0CNCJ+2PNoEt7Fve+1M4Hlwj4MfAj6C4A08Oo0SyKs8t1p0UqLmtq72ivtkumvgbAC27TYD1d5w7YHTbSbebOlGVOLC68e+UhMgnFhnrhoYA7dY/PEGgxcG2qATMuETin8Ah6jsgRrhdrBEDomQjrGrJcGrusgaC2Cw7Ks7f9zxX5tdNvU+uB2RFvsIMt0aheWbdl2BYust1BlTk8Dt/C7Ygsk6hudGFc9vFomy72NC2Xasqdupq+xoMHGS61lqxqpHWV/H3j1Z1wCaAS3BkLNe5Pt6/9SBIHtNEY6lHEzU+MC8UIp2XPyXNMLnGEzrSMExleOitlqCV5oJQZQK/SQK1Ox6RIFjKedxoJXa4VS29ypy294oV5EzLliS5YomZFEoyjlQKajuKAiZoETxuQaYCKa9AjLFAhOlb3KjSpVbyEiW2s3yCkVdENW2/PGXPBm4Sa0lTQuBUqBJ6XoMFNBM6mjMxatGLXP1tUNokyXv2narYScBYILOZFhpWeWiI3u1RpyqUePoh4mop3hDKuv3Ec4yRsaKWKdSIRtprAQc6xmDXZYK5oxCjX4gYvUqV/uMmkRQdxq4/Z4ug1uJpSAS/18Yftw74JLtEJ1Nfy2/DozF1ehD3jhfHSeG1AwzbOjC/GuXFhkM5hx+l87HzqHnTt7ofu2UK6u7OMeW40VvfrX18FG4M=</latexit><latexit sha1_base64="JiY7sU4veOIJlTH5NLjyieyRkY=">AGj3ictVRdb9MwFM1WKN8beORF4uJCokxYrdZkgfQgBd4GxLbkJoqchynteZ8yHamli/iJ/CL+Df4KTt1qR94QFLkU6Oz73Bs7QcaZVKb5Z2e3c+9+98Hew96jx0+ePts/OLyUaS4IvSApT8WPAEvKWUIvFOc/sgExXHA6Vw/bnav7qhQrI0+a7mGR3HeJKwiBGsNOUf7P7yAjphSZHFWAk2K3vEh57X87IpTlQaF95NmCpZEh9VbP0CNCJ+2PNoEt7Fve+1M4Hlwj4MfAj6C4A08Oo0SyKs8t1p0UqLmtq72ivtkumvgbAC27TYD1d5w7YHTbSbebOlGVOLC68e+UhMgnFhnrhoYA7dY/PEGgxcG2qATMuETin8Ah6jsgRrhdrBEDomQjrGrJcGrusgaC2Cw7Ks7f9zxX5tdNvU+uB2RFvsIMt0aheWbdl2BYust1BlTk8Dt/C7Ygsk6hudGFc9vFomy72NC2Xasqdupq+xoMHGS61lqxqpHWV/H3j1Z1wCaAS3BkLNe5Pt6/9SBIHtNEY6lHEzU+MC8UIp2XPyXNMLnGEzrSMExleOitlqCV5oJQZQK/SQK1Ox6RIFjKedxoJXa4VS29ypy294oV5EzLliS5YomZFEoyjlQKajuKAiZoETxuQaYCKa9AjLFAhOlb3KjSpVbyEiW2s3yCkVdENW2/PGXPBm4Sa0lTQuBUqBJ6XoMFNBM6mjMxatGLXP1tUNokyXv2narYScBYILOZFhpWeWiI3u1RpyqUePoh4mop3hDKuv3Ec4yRsaKWKdSIRtprAQc6xmDXZYK5oxCjX4gYvUqV/uMmkRQdxq4/Z4ug1uJpSAS/18Yftw74JLtEJ1Nfy2/DozF1ehD3jhfHSeG1AwzbOjC/GuXFhkM5hx+l87HzqHnTt7ofu2UK6u7OMeW40VvfrX18FG4M=</latexit><latexit sha1_base64="JiY7sU4veOIJlTH5NLjyieyRkY=">AGj3ictVRdb9MwFM1WKN8beORF4uJCokxYrdZkgfQgBd4GxLbkJoqchynteZ8yHamli/iJ/CL+Df4KTt1qR94QFLkU6Oz73Bs7QcaZVKb5Z2e3c+9+98Hew96jx0+ePts/OLyUaS4IvSApT8WPAEvKWUIvFOc/sgExXHA6Vw/bnav7qhQrI0+a7mGR3HeJKwiBGsNOUf7P7yAjphSZHFWAk2K3vEh57X87IpTlQaF95NmCpZEh9VbP0CNCJ+2PNoEt7Fve+1M4Hlwj4MfAj6C4A08Oo0SyKs8t1p0UqLmtq72ivtkumvgbAC27TYD1d5w7YHTbSbebOlGVOLC68e+UhMgnFhnrhoYA7dY/PEGgxcG2qATMuETin8Ah6jsgRrhdrBEDomQjrGrJcGrusgaC2Cw7Ks7f9zxX5tdNvU+uB2RFvsIMt0aheWbdl2BYust1BlTk8Dt/C7Ygsk6hudGFc9vFomy72NC2Xasqdupq+xoMHGS61lqxqpHWV/H3j1Z1wCaAS3BkLNe5Pt6/9SBIHtNEY6lHEzU+MC8UIp2XPyXNMLnGEzrSMExleOitlqCV5oJQZQK/SQK1Ox6RIFjKedxoJXa4VS29ypy294oV5EzLliS5YomZFEoyjlQKajuKAiZoETxuQaYCKa9AjLFAhOlb3KjSpVbyEiW2s3yCkVdENW2/PGXPBm4Sa0lTQuBUqBJ6XoMFNBM6mjMxatGLXP1tUNokyXv2narYScBYILOZFhpWeWiI3u1RpyqUePoh4mop3hDKuv3Ec4yRsaKWKdSIRtprAQc6xmDXZYK5oxCjX4gYvUqV/uMmkRQdxq4/Z4ug1uJpSAS/18Yftw74JLtEJ1Nfy2/DozF1ehD3jhfHSeG1AwzbOjC/GuXFhkM5hx+l87HzqHnTt7ofu2UK6u7OMeW40VvfrX18FG4M=</latexit>Probing Security
6 6 memory computation leakage
I1
x1 y1 z1 f1(x1, y1)
I2
x2 y2 z2 f2(x2, y2)
Is
xs ys zs fs(xs, ys)
Ii f(xi, yi) = (xi, yi) for t instrucRons f(xi, yi) = ⊥ for other instrucRons ISW scheme is t-probing secure for t < d
Composition Flaws
7
P1 x1 ⋅ (x3 + y3) P2 x2 ⋅ y3
f (x1, x3 + y3) = (x1, x3 + y3) f (x2, y3) = (x2, y3)
Composition Flaws
7
P1 x1 ⋅ (x3 + y3) P2 x2 ⋅ y3
f (x1, x3 + y3) = (x1, x3 + y3) f (x2, y3) = (x2, y3)
Refresh Gadget
8
R
Limitation of Existing Tools
9
⊕ [ ] ⊗ [ ] [x] [y] R ⊕ [ ] ⊗ [ ] [x] [y]
existing tools
New Proposal
10 t-probing security game-based definition simplified problem formal method
Game Based Probing Security
11
(𝒬, x1, …, xn) (𝒬, x1, …, xn)
[x1] ← Enc(x1) [x2] ← Enc(x2) [xn] ← Enc(xn) ⋮
C([x1], [x2], …, [xn])𝒬
𝒯(𝒬)
(v1, v2, …, vt) (v1, v2, …, vt)
Real Ideal 1. 1. 2.
Game 0 to Game 1
12
(𝒬, x1, …, xn) (𝒬, x1, …, xn) [x1] ← Enc(x1) [x2] ← Enc(x2) [xn] ← Enc(xn) ⋮
C([x1], [x2], …, [xn])𝒬
𝒯(𝒬)
(v1, v2, …, vt) (v1, v2, …, vt) (𝒬′, x1, …, xn) (𝒬′, x1, …, xn)
C([x1], [x2], …, [xn])𝒬′
(v1, v2, …, vq) (v1, v2, …, vq) 𝒯(𝒬′)
Real Ideal 1. 2. 1.
Game 0 to Game 1
13
⊕ [ ] ⊗ [ ] [x] [y] ⊕ [ ] ⊗ [ ] [x] [y]
Game 1 to Game 2
14
[x1] ← Enc(x1) [x2] ← Enc(x2) [xn] ← Enc(xn) ⋮
(𝒬′, x1, …, xn) (𝒬′, x1, …, xn)
C′([x1], [x2], …, [xn])𝒬′
(v1, v2, …, vq) (v1, v2, …, vq) 𝒯(𝒬′) C′ ← Flatten(C) C′ ← Flatten(C) C C 𝒯′(𝒬′)
Real Ideal 1. 1. 2. 2. 3.
Flatten Transformation
15
[x] [y] [z] ⊗ [ ] ⊕ [ ] ⊗ [ ] ⊗ [ ] ⊗ [ ] R [x] [y] [z] ⊗ [ ] ⊕ [ ] ⊗ [ ] ⊗ [ ] ⊗ [ ] R [ f ] [h] [e] [g] [i]
Flatten Transformation
15
[x] [y] [z] ⊗ [ ] ⊕ [ ] ⊗ [ ] ⊗ [ ] ⊗ [ ] R [x] [y] [z] ⊗ [ ] ⊕ [ ] ⊗ [ ] ⊗ [ ] ⊗ [ ] R [ f ] [h] [e] [g] [i]
Flatten Transformation
15
[x] [y] [z] ⊗ [ ] ⊕ [ ] ⊗ [ ] ⊗ [ ] ⊗ [ ] R [x] [y] [z] ⊗ [ ] ⊕ [ ] ⊗ [ ] ⊗ [ ] ⊗ [ ] R [ f ] [h] [e] [g] [i]
Flatten Transformation
15
[x] [y] [z] ⊗ [ ] ⊕ [ ] ⊗ [ ] ⊗ [ ] ⊗ [ ] R [x] [y] [z] ⊗ [ ] ⊕ [ ] ⊗ [ ] ⊗ [ ] ⊗ [ ] R [ f ] [h] [e] [g] [i]
Flatten Transformation
15
[x] [y] [z] ⊗ [ ] ⊕ [ ] ⊗ [ ] ⊗ [ ] ⊗ [ ] R [x] [y] [z] ⊗ [ ] ⊕ [ ] ⊗ [ ] ⊗ [ ] ⊗ [ ] R [ f ] [h] [e] [g] [i]
Flatten Transformation
15
[x] [y] [z] ⊗ [ ] ⊕ [ ] ⊗ [ ] ⊗ [ ] ⊗ [ ] R [x] [y] [z] ⊗ [ ] ⊕ [ ] ⊗ [ ] ⊗ [ ] ⊗ [ ] R [ f ] [h] [e] [g] [i]
Game 2 to Game 3
16
[x1] ← Enc(x1) [x2] ← Enc(x2) [xn] ← Enc(xn) ⋮
(𝒬′, x1, …, xn) (𝒬′, x1, …, xn)
C′([x1], [x2], …, [xn])𝒬′
(v1, v2, …, vq) (v1, v2, …, vq) 𝒯′(𝒬′) C′ ← Flatten(C) C′ ← Flatten(C) (𝒬′′, x1, …, xn) (𝒬′′, x1, …, xn)
C′([x1], [x2], …, [xn])𝒬′′
𝒯′(𝒬′′)
Real Ideal 1. 1. 2. 2. 3.
Game 2 to Game 3
17
[x] [y] [z] ⊗ [ ] ⊕ [ ] ⊗ [ ] ⊗ [ ] ⊗ [ ] R [ f ] [h] [e] [g] [i] [x] [y] [z] ⊗ [ ] ⊕ [ ] ⊗ [ ] ⊗ [ ] ⊗ [ ] R [ f ] [h] [e] [g] [i]
Matrix Representation
18
[x] [y] [z] ⊗ [ ] ⊕ [ ] ⊗ [ ] ⊗ [ ] ⊗ [ ] R [ f ] [h] [e] [g] [i] [x] [y] [z] [ f ] [h] [e] [g] [i] 1 1 1
for the j-th shares
P1 P2
Matrix Representation
18
[x] [y] [z] ⊗ [ ] ⊕ [ ] ⊗ [ ] ⊗ [ ] ⊗ [ ] R [ f ] [h] [e] [g] [i] [x] [y] [z] [ f ] [h] [e] [g] [i] 1 1 1
for the j-th shares
P1 P2
Matrix Representation
18
[x] [y] [z] ⊗ [ ] ⊕ [ ] ⊗ [ ] ⊗ [ ] ⊗ [ ] R [ f ] [h] [e] [g] [i] [x] [y] [z] [ f ] [h] [e] [g] [i] 1 1 1
for the j-th shares
P1 P2
Game 2 to Game 3
19
1) ∩ Im(ℳT 2) ∩ … ∩ Im(ℳT d) = ∅
uniformly distributed
Resolution Method
20
⊕ [ ] ⊗ [ ] [x] [y] ⊗ [ ]
[x] [y]
1 1 1 1 1
⊕ [ ] ⊗ [ ] [c1] [c2] [c3] ⊕ [ ] ⊗ [ ] ⊗ [ ] [c4] [c5]
21
⊕ [ ] ⊗ [ ] [c1] [c2] [c3] ⊕ [ ] ⊗ [ ] ⊗ [ ] [c4] [c5]
21
⊕ [ ] ⊗ [ ] [c1] [c2] [c3] ⊕ [ ] ⊗ [ ] ⊗ [ ] [c4] [c5]
21
⊕ [ ] ⊗ [ ] [c1] [c2] [c3] ⊕ [ ] ⊗ [ ] ⊗ [ ] [c4] [c5] [c1] ⋅ [c2] [c2]
21
⊕ [ ] ⊗ [ ] [c1] [c2] [c3] ⊕ [ ] ⊗ [ ] ⊗ [ ] [c4] [c5] [c1] ⋅ [c2] [c2] [c4] ⋅ [c5], [c4] ⋅ [c3] [c5], [c3]
21
⊕ [ ] ⊗ [ ] [c1] [c2] [c3] ⊕ [ ] ⊗ [ ] ⊗ [ ] [c4] [c5]
21
⊕ [ ] ⊗ [ ] [c1] [c2] [c3] ⊕ [ ] ⊗ [ ] ⊗ [ ] [c4] [c5] [c2] ⋅ [c1] [c1]
21
⊕ [ ] ⊗ [ ] [c1] [c2] [c3] ⊕ [ ] ⊗ [ ] ⊗ [ ] [c4] [c5] [c2] ⋅ [c1] [c1] [c4] ⋅ [c5], [c4] ⋅ [c3] [c5], [c3]
21
⊕ [ ] ⊗ [ ] [c1] [c2] [c3] ⊕ [ ] ⊗ [ ] ⊗ [ ] [c4] [c5] [c2] ⋅ [c1] [c1] [c4] ⋅ [c5], [c4] ⋅ [c3] [c5], [c3]
[c2] = [c3] + [c5] !
21
⊕ [ ] ⊗ [ ] [c1] [c2] [c3] ⊕ [ ] ⊗ [ ] ⊗ [ ] [c4] [c5] [c2] ⋅ [c1] [c1] [c4] ⋅ [c5], [c4] ⋅ [c3] [c5], [c3]
[c2] = [c3] + [c5] !
21
⊕ [ ] ⊗ [ ] [c1] [c2] [c3] ⊕ [ ] ⊗ [ ] ⊗ [ ] [c4] [c5] [c2] ⋅ [c1] [c1] [c4] ⋅ [c5], [c4] ⋅ [c3] [c5], [c3]
[c2] = [c3] + [c5] !
21
⊕ [ ] ⊗ [ ] [c1] [c2] [c3] ⊕ [ ] ⊗ [ ] ⊗ [ ] [c4] [c5] [c2] ⋅ [c1] [c1] [c4] ⋅ [c5], [c4] ⋅ [c3] [c5], [c3]
[c2] = [c3] + [c5] !
21
tightProve
22
Bitslice for the AES S-box
23 83 XOR gates 32 AND gates Circuit of Boyer et al.
Bitslice for the AES S-box
23 83 XOR gates 32 AND gates 83 XOR inst. 32 AND inst. Bitslice transformation
Bitslice for the AES S-box
23 83 XOR gates 32 AND gates 83 XOR inst. 32 AND inst. Bitslice transformation 83 XORs 32 ISW-and Masking transformation
d
Bitslice for the AES S-box
23 83 XOR gates 32 AND gates 83 XOR inst. 32 AND inst. Bitslice transformation 83 XORs 32 ISW-and Masking transformation
d
Application of tightProve
24
Application of tightProve
24
How many refresh gadgets ? Where to insert them ?
Application of tightProve
24
Existing tools
+ 32 Refresh gadgets
1 before each mult.
Application of tightProve
24
tightPROVE
No refresh required !
Application of tightProve
24
tightPROVE
No refresh required ! Randomness requirement 2 /
Performance
25
Randomness consumption 1500 3000 4500 6000 Masking order 2 3 4 5 6 7 8 9 10
Bitslice with tightPROVE Standard (KHL) Standard (RP) Bitslice with refresh
Questions?
26