博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
格签名中陷门生成和原像采样的联系
阅读量:3958 次
发布时间:2019-05-24

本文共 1419 字,大约阅读时间需要 4 分钟。

概括:

  • 陷门生成算法产生短基。
  • 原像采样算法使用短基。

陷门生成函数生成格的陷门(即格的一个短(好的)基),原像采样函数本质是一个单向函数,陷门被用来实现原像采样[GPV08]。

原像采样使用的采样函数一般为高斯函数(也可使用二项分布)

1 定义

  • 定理(陷门生成算法).令整数 q > 3 , m > 5 n log ⁡ q q > 3, m > 5n\log q q>3,m>5nlogq,存在一个有效的算法 T r a p G e n ( q , m ) TrapGen(q,m) TrapGen(q,m),该算法能够在多项式时间内生成一个矩阵 A ∈ Z q n × m A\in \Z_q^{n\times m} AZqn×m和格 Λ ⊥ ( A ) \Lambda^\perp(A) Λ(A)的一个基 T A ∈ Z m × m T_A \in \Z^{m\times m} TAZm×m使得矩阵 A A A的分布在统计上接近于 Z q n × m \Z_q^{n\times m} Zqn×m上的均匀分布且让 ∣ ∣ T ~ A ∣ ∣ ≤ O ( n log ⁡ q ) ||\bold {\tilde T}_A||\le{O(\sqrt {n\log q})} T~AO(nlogq )以压倒性的概率成立。

  • 关于原像抽样算法

(高斯)域采样、向量原像采样、矩阵原像采样

基本定义(原像采样算法).令整数 m ≥ n , q m\ge n,q mn,q为素数, Λ ⊥ ( A ) \Lambda^\perp(A) Λ(A)是由矩阵 A ∈ Z q n × m A\in \Z_q^{n\times m} AZqn×m定义的格,矩阵 T A ∈ Z m × m T_A \in \Z^{m\times m} TAZm×m是格 Λ ⊥ ( A ) \Lambda^\perp(A) Λ(A)的一个基。如果参数 s ≥ ∣ ∣ T ~ A ∣ ∣ ⋅ ω ( log ⁡ q ) s\ge||\bold {\tilde T}_A||\cdot{\omega(\sqrt {\log q})} sT~Aω(logq ),那么对所有的 u ∈ Z q n \bold u\in \Z^n_q uZqn都存在一个多项式时间算法 S a m p I e P r e ( A , B , s , u ) SampIePre(\bold A, \bold B, s, \bold u) SampIePre(A,B,s,u),它能够从一个统计接近于 G Λ u ( A ) , s > G_{\Lambda^u(A),s}> GΛu(A),s>的分布中抽取一个向量 v ∈ Λ u ( A ) \bold v \in \Lambda^u(A) vΛu(A)

原像采样可以分为两步,先给出任意解再加上Ax=0的解
原像采样的矩阵扩展版本:
SampleMat
在这里插入图片描述

2 共同点:

  • 都是hash-and-sign格签名常用技术

3 不同

  • 一个在setup过程。
  • 一个在sign过程。
  • Lyu2012提出无陷门的签名算法,即Fiat-shamir格签名方案中没有使用陷门(短基),使用的是一个随机矩阵。

  1. Vadim Lyubashevsky:Lattice Signatures without Trapdoors. EUROCRYPT 2012: 738-755

转载地址:http://rjtzi.baihongyu.com/

你可能感兴趣的文章
7.ECMAScript 继承
查看>>
HTML DOM
查看>>
AJAX 基础
查看>>
JSON 基础
查看>>
J2EE监听器Listener接口大全[转]
查看>>
cookie、session、sessionid 与jsessionid[转]
查看>>
常见Oracle HINT的用法
查看>>
JAVA中各类CACHE机制实现的比较 [转]
查看>>
PL/SQL Developer技巧
查看>>
3-python之PyCharm如何新建项目
查看>>
15-python之while循环嵌套应用场景
查看>>
17-python之for循环
查看>>
18-python之while循环,for循环与else的配合
查看>>
19-python之字符串简单介绍
查看>>
20-python之切片详细介绍
查看>>
P24-c++类继承-01详细的例子演示继承的好处
查看>>
P8-c++对象和类-01默认构造函数详解
查看>>
P1-c++函数详解-01函数的默认参数
查看>>
P3-c++函数详解-03函数模板详细介绍
查看>>
P4-c++函数详解-04函数重载,函数模板和函数模板重载,编译器选择使用哪个函数版本?
查看>>