格签名的一般构造方式

现有的基于格的签名方案基本都是在下述两种框架中得到的。

第一种:哈希-签名的方法主要是基于Ajtai SIS问题及其相关的陷门函数。陷门函数用来生成优质基。原像采样函数使用优质基对格进行采样。原像采样函数生成的参数用来进行签名构造。

第二种:Fiat-Shamir框架: … ( 待 补 充 ) \dots(待补充) ()

但是相对第二种Fiat-Shamir框架,哈希-签名这种模式要求格的维数要相对大的多,所以哈希-签名这种模式在密钥、签名的尺寸上来说相对非常大。(哈希-签名要求格维数大于 5 n log ⁡ q 5n\log q 5nlogq,第二种Fiat-Shamir差不多是 2 n 2n 2n

Hash-and-sign 格签名一般构造方式

k e y g e n ( ⋅ ) : keygen(\sdot): keygen():

  1. 生成矩阵 A ( a i ∈ R q ) A(a_i\in R_q) A(aiRq) B ( b i ∈ R q ) B(b_i\in R_q) B(biRq).

    (1)满足 A T = 0 AT=0 AT=0

    (2) T T T的范数比较小。

  2. A A A为公钥

  3. T T T为私钥( T T T为陷门基)

S i g n ( s k , μ ) : Sign(sk,\mu): Sign(sk,μ):

  1. 计算 t t t满足 A t = H ( μ ) At=H(\mu) At=H(μ)
  2. 利用原像陷门采样选取距离 H ( μ ) H(\mu) H(μ)最近的格点 v ∈ L ( T ) v\in L(T) vL(T)
  3. e = t − v e=t-v e=tv

V e r i f y ( p k , μ , e ) : Verify(pk,\mu,e): Verify(pk,μ,e):

  1. e e e的范数较小
  2. A e = H ( μ ) Ae=H(\mu) Ae=H(μ)

Fiat-Shamir格签名一般构造方式

原文中叙述了两种表达,此处只记关于高斯分布的一种。

k e y g e n ( ⋅ ) : keygen(\sdot): keygen():

  1. 生成矩阵 A ∈ R q n × m A\in \mathbb R^{n\times m}_q ARqn×m S ∈ R q m × k S\in \mathbb R^{m\times k}_q SRqm×k.满足 T ← A S T\leftarrow AS TAS
  2. 公钥 ( A , T ) (A,T) (A,T)
  3. 私钥为 S S S

S i g n ( s k , μ ) : Sign(sk,\mu): Sign(sk,μ):

  1. 从某一高斯分布中随机抽取 y ← D s m y \leftarrow D^m_s yDsm
  2. 计算 c ← H ( A y , μ ) c\leftarrow H(Ay,\mu) cH(Ay,μ)
  3. 计算 z = S c + y z=Sc+y z=Sc+y
  4. 以概率 min ⁡ ( D s m ( z ) M D S c , s m ( z ) , 1 ) \min(\frac{D^m_s(z)}{MD^m_{Sc,s}(z)},1) min(MDSc,sm(z)Dsm(z),1)输出 ( z , c ) (z,c) zc

V e r i f y ( p k , μ , z , c , A , T ) : Verify(pk,\mu,z,c,A,T): Verify(pk,μ,z,c,A,T):

  1. ∥ z ∥ ≤ k s m \|z\|\leq ks\sqrt{m} zksm ,其中 k > 1 k>1 k>1
  2. c = H ( A z − T c , μ ) c=H(Az-Tc,\mu) c=H(AzTc,μ)

[1]蔡杰. 基于格的指定验证者数字签名方案及身份鉴别协议研究[D].山东大学,2020.

  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值