格与密码学:NTRU 与格规约算法解析
1. NTRU 作为格密码系统
NTRU 是一种重要的格密码系统,在密码学领域有着广泛的应用。我们先从 NTRU 解密密钥的概率计算入手。对于 $N = 251$ 和 $q = 257$,在 $T (84, 83)$ 中预期的解密密钥数量约为 $2^{-1222.02}$。这表明除了构造公开密钥 $h(x)$ 时使用的解密密钥 $f(x)$ 及其旋转之外,存在额外解密密钥的可能性极小。
1.1 NTRU 格
设 $h(x) = h_0 + h_1x + \cdots + h_{N - 1}x^{N - 1}$ 为 NTRU 公开密钥,与之关联的 NTRU 格 $L_{NTRU}^h$ 是由矩阵 $M_{NTRU}^h$ 的行所张成的 $2N$ 维格。矩阵 $M_{NTRU}^h$ 可表示为:
[
M_{NTRU}^h =
\begin{pmatrix}
1 & 0 & \cdots & 0 & h_0 & h_1 & \cdots & h_{N - 1} \
0 & 1 & \cdots & 0 & h_{N - 1} & h_0 & \cdots & h_{N - 2} \
\vdots & \vdots & \ddots & \vdots & \vdots & \vdots & \ddots & \vdots \
0 & 0 & \cdots & 1 & h_1 &a