主权项 |
一种基于格理论的签名方案,其特征在于:它包括以下3个部分内容:(1)参数生成算法:选定一个整数n,选定一个素数q,保证q≥3,并选定任意一个正整数m,保证m≥5nlgq,利用陷门产生函数计算出(A,T),其中A为公钥,T为私钥;(2)签名生成算法:给定私钥T和消息x,选择哈希函数H:{0,1}<sup>n</sup>→{0,1}<sup>m</sup>,对消息x计算其哈希值H(x);利用格向量选择函数,在格Λ<sup>⊥</sup>(A)中高斯随机选取向量v,保证v满足||H(x)‑v||≤ρ;其中ρ为γ‑CVP问题中的距离d,其值为γ·μ,γ=2(2/3)<sup>n</sup>,μ为一常数;(3)签名验证算法:给定公钥A,原始消息x,签名v,首先计算消息x的哈希值H(x),然后判断签名的长度是否小于界限值,即||H(x)‑v||≤ρ;最后判断该签名v是否在格Λ<sup>⊥</sup>(A)中,即判断等式A·v=0是否成立,如果成立,则签名得到验证;其中,所述内容(1)中的陷门产生函数,其实现步骤如下:(1.1)输入任意大于零的数C和δ,大于等于3的素数q以及任意矩阵<img file="FDA0000580554480000011.GIF" wi="243" he="92" />令m<sub>1</sub>≥d=(1+δ)nlg(q),m<sub>2</sub>≥(4+2δ)nlg(q),m=m<sub>1</sub>+m<sub>2</sub>;(1.2)计算格Λ<sup>⊥</sup>(A)的基底T,其中||T||≤L=m<sup>1+ε</sup>,ε为任意大于0的数;(1.3)计算矩阵<img file="FDA0000580554480000012.GIF" wi="217" he="92" />其中A服从<img file="FDA0000580554480000013.GIF" wi="100" he="79" />上的均匀分布;其中,所述内容(2)中利用格向量选择函数,其实现步骤如下:(2.1)输入消息向量x和格Λ<sup>⊥</sup>(A)的“好”基T=[t<sub>1</sub>,t<sub>2</sub>,…,t<sub>m</sub>];(2.2)计算格Λ<sup>⊥</sup>(A)中与x距离小于等于ρ的向量v。 |