Lattice-based Cryptography ############################## RLWE (Ring Learning With Errors) Problem =============================================== `Introduction to post-quantum cryptographyand learning with errors `_ `Equivalence of Search and Decisional (Ring-) LWE `_ `Learning With Errors (LWE) and Ring LWE `_ `Python and Crypto: Learning With Errors (LWE) and Ring LWE `_ `The Learning with Errors Problem `_ 在 :math:`F_q` 有限域上的多项式 p(x) 环 b_i(x) = a_i(x) * s(x) + e_i(x) search LWE problem: 已知(b\_i(x), a\_i(x))求解s(x)是困难的 Decision LWE problem: 已知(b\_i(x), a\_i(x)),检查是否可以求解s(x),还是随机pair RLWE-KEX ====================================== `Ring Learning With Errors for Key Exchange (RLWE-KEX) `_ b_A(x) = A * s_A(x) + e_A(x) b_B(x) = A * s_B(x) + e_B(x) 两边交换b_A(x), b_B(x) share_A = s_A(x) * b_B(x) / p(x) = s_A(x) * (A * s_B(x) + e_B(x)) / p(x) share_B = b_A(x) * s_B(x) / p(x) = s_B(x) * (A * s_A(x) + e_A(x)) / p(x) LWE encryption ====================================== `Directions in Practical Lattice Cryptography Vadim Lyubashevsky IBM Research – Zurich. `_ `On Ideal Lattices andLearning With Errors Over Rings `_ `Lattice-Based Cryptography `_ 公钥为 (a, t) a*s + e = t 随机生成(r, e1) r*a + e1 = u r*t + e2 + m = v 明文为m, 密文为 (u, v) 解密 .. math:: v - u*s = r*t + e2 + m - (r*a + e1)*s = r*(a*s + e) + e2 + m - (r*a + e1)*s = m + r*e + e2 - e1*s LWE signature ====================================== .. math:: t = a*s + e c = H( a*u + v, m ) z = s*c + u a*z - t*c = a*(s*c + u) - (a*s + e)*c = a*u - e*c BLISS (Bimodal Lattice Signature Scheme) ====================================== `Lattice Signatures and Bimodal Gaussians `_ `Post-quantum Signature Bliss `_ 基础 -------- 私钥S, 公钥(T, A) T = A*S mod q message digest μ c = H( A*y mod q, μ ) z = S*c + y 签名 (z, c) 校验 c = H( A*z − T*c mod q, μ) = H( A*S*c + A*y − T*c mod q, μ) BLISS --------- A*S = q*I_n mod 2q 签名 y 为随机数 c = H( A*y mod 2q, μ ) b 为随机选取的0/1 z = y + (−1)^b*S*c 校验 c = H( A*z + q*c mod 2q, μ) = H( A*y + (-1)^b*A*S*c + q*c mod 2q, μ) NTRU ====================================== `ntru prime `_ `Quantum technology and its impact on security in mobile networks `_ falcon ====================================== `falcon `_ dilithium ====================================== `dilithium `_ 参考资料 ====================================== - `Lattice-based Cryptography `_ - `The Quantum Menace `_ - `Practical Aspects of Modern Cryptography `_ - `A Decade of Lattice Cryptography `_ - `Summer School on real-world crypto and privacy `_ - `NIST Cryptographic Standards and Guidelines `_ - `Lattice-based Cryptography `_ - `ETSI Quantum Safe Cryptography and Security `_ - `ETSI Implementation Security of Quantum Cryptography `_ - `Lattice Based Cryptography for Beginners `_ - `2019 Status Report on the First Round of the NIST Post-Quantum Cryptography Standardization Process `_ - `Post-quantum cryptography: Lattice-based cryptography `_