基于多变量公钥密码体制的零知识数字签名方法技术

技术编号:8961198 阅读:153 留言:0更新日期:2013-07-25 20:25
基于多变量公钥密码体制的零知识数字签名方法,包括生成系统参数步骤、签名生成步骤和签名验证步骤。用户通过公开其基于多变量公钥密码的公钥,保密对应的私钥。签名者可以利用自己的私钥,对任意消息签名。该数字签名可以被任何验证者利用签名者的公钥来验证。如果签名验证通过,则说明该消息的签名是真实的。

【技术实现步骤摘要】
基于多变量公钥密码体制的零知识数字签名方法
本专利技术属于信息安全
,涉及一种基于多变量公钥密码体制的零知识数字签名方法。
技术介绍
数字签名在信息安全,特别是数据真实性、完整性和不可否认性等方面有重要应用。数字签名能够和传统的手写签名一样起到法律认证的作用。相比之下,手写签名在以计算机和互联网为基础的信息时代显现出很大的局限性。因为,手写签名在计算机网络中,极易拷贝伪造。而数字签名中包含签名者所使用的秘密钥的信息,不知道该私钥的任何人伪造数字签名都是几乎不可能的。因此,数字签名更适合于新时代的应用要求。人们可以通过网络进行远程文件签署,提高工作效率。许多数字签名方法是基于传统密码体制的,如RSA和DSA等数字签名算法等,大部分都是基于大整数因子分解和离散对数问题的传统公钥密码体制的。然而,量子计算机的出现对传统公钥密码体制造成了威胁,出于安全性和高效性的迫切需求,多变量公钥密码体制(MPKCs)迅速成为一种新型快速的公钥密码体制。它是基于有限域上多元二次多项式方程组的一个NP-困难求解问题,量子计算机在处理NP困难问题上并没有显现出任何优势,MPKCs以其高的计算效率有可能成为后量子时代安全的密码体制。MPKCs可分为两极系统和混合系统。两极系统主要有MI、HFE、OV、TTM和l-IC体制等。研究后量子时代安全的零知识数字签名方法具有重要的理论和实际意义。
技术实现思路
本专利技术的目的是提供一种基于多变量公钥密码体制的零知识数字签名方法,解决现有技术在量子计算下不再安全的问题。本专利技术的目的是这样实现的,基于多变量公钥密码体制的零知识数字签名方法,包括以下步骤:步骤1.生成系统参数;系统参数为(k,q,l,m,n,H),其中q,l是安全参数,k=GF(ql)是一个有限域,m为多变量方程的个数,n为变量的个数。H:{0,1}*→kn为一个密码学安全的单向抗碰撞的哈希函数;密钥生成:签名者对应的私钥SK={L1,F,L2},其中F是可逆中心映射,L1和L2分别是km和kn上的可逆仿射变换;签名者的公钥PK是m个具有n个变量的多项式分量,这里符号。表示函数复合;步骤2.签名生成;签名者对消息M∈{0,1}*进行签名,步骤如下:(1)随机选择ui∈km,其中i=1,...,t;(2)计算c=H(M||PK||u1||...||ut)∈kn;(3)计算(4)输出消息M∈{0,1}*的零知识签名σ=(c,s1,...,st);步骤3.签名验证:对消息M的签名σ=(c,s1,...,st),任何验证者验证利用签名者的公钥验证等式是否成立。如果成立,则接受该签名;否则拒绝该签名。本专利技术的有益效果是1、本专利技术可以解决现有的零知识数字签名方法在量子计算下将不再安全的缺陷,既具有安全性又具有计算效率高的优点。2、本专利技术提出的基于多变量公钥密码体制的零知识数字签名方法,满足完全性、不可伪造性和零知识证明性,在后量子密码时代可能依然安全。具体实施方式下面结合具体实施方式对本专利技术作进一步详细的说明。基于多变量公钥密码体制的零知识数字签名方法,按照以下步骤实施:步骤1.生成系统参数系统参数为(k,q,l,m,n,H)。其中q,l是安全参数,k=GF(ql)是一个有限域,m为多变量方程的个数,n为变量的个数。H:{0,1}*→kn为一个密码学安全的单向抗碰撞的哈希函数;密钥生成:签名者对应的私钥SK={L1,F,L2},其中F是可逆中心映射,L1和L2分别是km和kn上的可逆仿射变换。签名者的公钥是m个具有n个变量的多项式分量。这里符号。表示函数复合。步骤2.签名生成签名者对消息M∈{0,1}*进行签名,步骤如下:(1)随机选择ui∈km,其中i=1,...,t;(2)计算c=H(M||PK||u1||...||ut)∈kn;(3)计算(4)输出消息M∈{0,1}*的零知识签名σ=(c,s1,...,st)。步骤3.签名验证对消息M的签名σ=(c,s1,...,st),任何验证者验证利用签名者的公钥验证等式是否成立,如果成立,则接受该签名;否则拒绝该签名。关于本专利技术基于多变量公钥密码体制的零知识数字签名方法的安全性分析:1.正确性如果签名者诚实的遵循了签名过程的每一步,那么消息M的签名σ=(c,s1,...,st)满足:验证者总是接受签名,因此方法具有完全性。2.不可伪造性假设签名者是一个欺骗者,即他不知道私钥SK={L1,F,L2},企图来伪造一个消息M有效的签名。签名伪造者成功的途径之一是他随机选择ui∈km,其中i=1,...,t;然后计算c=H(M||PK||u1||...||ut)∈kn接下来,在没有私钥的前提下,伪造者需要通过方程来计算si,i=1,…,t,伪造者知道ui和c,求解该方程,在二次多变量方程的求解是一个困难问题的假设下,是困难的。目前学术界公认二次多变量方程的求解是一个困难问题。所以这种伪造成功的概率很小。签名伪造者成功的途径之二是求解满足验证式的一组解σ=(c,s1,...,st),在hash函数H:{0,1}*→kn是一个密码学安全的单向抗碰撞的假设下是困难的。实施例1.基于多变量oil-vinegar公钥密码体制的交互式零知识身份证明方法。步骤1.生成系统参数:(1)设置k=GF(q)是特征为p=2的有限域,其中q=28。(2)令o=30,v=64,m=o=30为多变量方程组中方程的个数,n=o+v=97为变量的个数。(3)选择安全哈希函数,H:{0,1}*→k97,具体可以取安全哈希函数为sha-512||sha-384的896比特位输出的前776比特位,然后按照776=8*97转化为有限域k=GF(28)上的97个变量。密钥生成:证明者随机选择F是从k97到k30的可逆Oil-Vinegar多项式映射,Oil-Vinegar多项式是任意一个具有如下形式的总次数为2的多项式其中aij,bij,ci,dj,e∈k。这里o=30,v=64。令F:kn→ko是一个多项式映射,形式如下:...

【技术保护点】
基于多变量公钥密码体制的零知识数字签名方法,其特征在于,包括生成系统参数步骤、签名生成步骤和签名验证步骤。

【技术特征摘要】
1.基于多变量公钥密码体制的零知识数字签名方法,其特征在于,包括生成系统参数步骤、签名生成步骤和签名验证步骤,具体步骤如下:步骤1.生成系统参数:选择系统参数为(k,q,l,m,n,t,H),其中q,l是安全参数,k是一个有限域,记为k=GF(ql),其中的元素个数为ql,这里GF是有限域的英文缩写,m是多变量方程的个数,n是变量的个数,H:{0,1}*→kn为一个密码学安全的单向抗碰撞的哈希函数,这里kn代表有限域k上的n维向量空间;密钥生成:签名者对应的私钥SK={L1,F,L2},其中F是可逆中心映射,L1和L2分别是向量空间km和kn上的可逆仿射变换,签名者的公钥PK是m个具有n个变量的多项式分量,这里符号表示函数复合;步骤2.签名生成:签名者对消息M∈{0,1}*进行签名,步骤如下:...

【专利技术属性】
技术研发人员:王尚平
申请(专利权)人:西安理工大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1