法律状态公告日
法律状态信息
法律状态
2015-10-21
授权
授权
2013-06-19
实质审查的生效 IPC(主分类):H04L9/32 申请日:20130122
实质审查的生效
2013-05-22
公开
公开
技术领域
本发明涉及一种数字签名技术,属于信息安全技术领域,具体指的是一种具 备指定可撤销性的Schnorr环签名方法。
背景技术
出于公平、公正以及保护用户隐私的动机,越来越多的应用场合开始关注匿 名性。环签名作为一种新型的匿名签名技术,是Rivest等人于2001年在“安全 泄露秘密”的背景下提出的。它是一种特殊的面向群体的签名,不需要群的建立 过程,没有群管理员,签名者只需随意选取一部分成员公钥(用于隐藏签名者身 份),再通过自己的私钥生成一个签名,这样减少了很多复杂的交互证明过程。 环签名的最大特点是签名者具有无条件匿名性,即使攻击者拥有无限的计算能 力,也无法追踪签名人的身份,且签名过程易于高效实现。因此,它在匿名电子 选举、电子货币系统、自组织网络通信以及安全多方计算中都有广泛的应用。
环签名是一种匿名技术,然而在有些情况下需要撤销其匿名性。比如在某些 场合,要给泄密者(签名人)颁奖,需要真实签名人证明其身份。鉴于此问题, Lv等人于2003年提出了基于双离散对数的可验证环签名方案。2004年,GAN等 人在阀下信道中嵌入认证信息,也实现了环签名的可验证。但前者大大增加了签 名的复杂度,后者的实现成本较高。另外,还有人提出可转换的环签名方案。如 果真实签名人需要证实其身份,他可通过泄露有关环签名的秘密信息将环签名转 换为普通签名,但如此一来任何验证者都可获得其身份信息,身份暴露的范围将 不可控。
下面首先对相关概念进行说明:
1.单向陷门函数(Trap-door oneway function)
单向陷门函数ft(x):D→R,是一个单向函数,即对任意的x∈D,容易计 算,而对几乎所有R中的值,求逆困难。但是,如果知道陷门信息t,则对所有 的y∈R,容易计算满足y=ft(x)的x∈D。
2.DL(Discrete Logarithm)困难问题假定
定义1给定素数q及有限域Fq,g是的一个生成元,对于任意的 求解惟一的整数a<q,满足h=ga。
本发明中方案的安全性是基于单向函数的性质和DL问题的难解性。下面将 说明方案基于的Schnorr环签名。
首先给出Schnorr环签名的简单流程图,图1。
Schnorr环签名方案具备系统参数及密钥生成模块、签名模块、验证模块。
1.系统参数及密钥生成模块
首先系统选取大素数p,q使得q|p-1,且q≥2k,其中k是方案的安全参 数。选取中的q阶生成元g,以及抗碰撞的散列函数令所有环成员为I1,I2,…,In,每个成员Ii选取其私钥则相应的公钥为
综上所述,系统的公开参数为params=(p,q,g,H),环成员的公私钥集合 为{(xi,yi)i=1,2,…,n}。
2.签名模块
为了生成消息m的签名,真实签名人Is,s∈{1,2,…,n}执行以下步骤:
对所有i∈{1,2,…,n},i≠s,在中随机选择两两不同的ai,并计算
3.验证模块
验证者计算hi=H(m,Ri),并验证等式 是否成立。成立,则签名有效;反之,签 名无效。
发明内容
本发明针对上述技术问题,针对已有同类方案存在的缺陷,根据匿名举报-- 事后奖励的应用需求,提出一种具备指定可撤销性的Schnorr环签名方法,该方 法基于Schnorr环签名,结合指定确认者签名和指定验证者证明,具有签名确认 过程,使得签名人可向指定的验证方证实其身份,且验证方不能向其他人证明签 名人的身份;在随机预言机模型下具有无条件匿名性,不可伪造性和不可传递性; 在效率和功能性上均有显著提高,构造简洁、高效。
本发明为解决上述技术问题,采用如下技术方案:
一种具备指定可撤销性的Schnorr环签名方法,所述方法包括系统参数及密 钥生成模块、签名模块、验证模块、身份确认模块四个部分;所述系统参数及密 钥生成模块中,系统选择生成签名和验证签名的系统参数,并生成环成员公私钥; 所述签名模块中,成员利用私钥对消息进行签名;所述验证模块中,验证者根据 公开的系统参数和所有环成员公钥对消息签名进行验证;所述身份确认模块中, 签名人利用指定验证人公钥发起交互式证明协议,通过该证明协议过程指定验证 人可确认对方是否是真实签名人;各模块及具体操作步骤如下:
A.系统参数及密钥生成模块
首先系统选取两个大素数p,q,q使得q|p-1,且q≥2k,其中k是预先设定 的方案安全参数;选取中的两个q阶生成元g,h,以及抗碰撞的散列函数 带加密的散列函数F();令所有环成员为I1,I2,…,In, 每个成员Ii选取其私钥则相应的公钥为n为环成员数;
则,系统的公开参数为params=(p,q,g,h,H,F),环成员的公私钥集合为 {(xi,yi)i=1,2,…,n};
B.签名模块
为了生成消息m的签名,真实签名人Is,s∈{1,2,…,n}执行以下步骤:
步骤1:随机选取并计算a*=hamodp,b*=(a*)vmodp;
步骤2:随机选取并计算U=(a*)umodp,θ=u+vF(m||a*,U)modq;
步骤3:将a+v分成n个片段;具体的,成员Is为其余环成员Ii(i≠s)分别选 取1个随机元素
步骤4:对所有i≠s,计算
步骤5:计算
步骤6:计算
步骤7:对消息m的签名是(m,R1,…,Rn,σ,a*,b*,U,θ);
C.验证模块
对于给定的消息m和相应的签名,验证者首先检测关键参数a*,b*是否按要 求生成,接着再验证签名的有效性;具体操作步骤如下:
步骤8:检查等式(a*)θ=U(b*)F(m||a*,U)modp是否成立;若成立,则执行下 一步;反之则签名无效;
步骤9:对所有1≤i≤n,计算hi=H(m,Ri);
步骤10:检查等式
D.身份确认
真实签名人可通过以下交互式证明协议,使其指定的验证方确信他的身份, 即向对方证明他知道以a*为底,b*的对数;具体步骤如下:
步骤11:签名人随机选择并计算β=(a*)αmodp;同时,随机选 择
步骤12:指定验证方随机选取并发送给签名人;
步骤13:收到挑战信息ε后,签名人计算η=α+vεmodq并发送给指定验证 人;接着,签名人公开β,γ,供对方验证承诺c;
步骤14:指定验证方检查两个等式c=gβ(PKv)γmodp, (a*)η=β(b*)εmodp是否成立;若成立,则确信被验证方是关于消息m真实签 名人。
有益效果:
本发明提出了一种具备指定可撤销性的Schnorr环签名方法。所述方法中, 系统选择生成签名和验证签名的系统参数,并生成环成员公私钥;成员利用私钥 对消息进行签名;验证者根据系统公开参数和所有环成员公钥对消息签名进行验 证;签名人利用指定验证人公钥发起交互式证明协议,通过该证明协议过程指定 验证人可确认对方是否是真实签名人。该方法构造简洁、高效,增强了环签名方 案的适用性,且实现了身份验证范围的可控,尤其适合用于匿名举报--事后奖励 的应用场景。
附图说明:
图1是普通的Schnorr环签名方案流程图;
图2是本发明的具备指定可撤销性的Schnorr环签名方法流程图。
具体实施方式:
下面结合附图,进一步具体说明本发明一种具备指定可撤销性的Schnorr环 签名方法的技术方案。
本发明包括如下步骤:选择生成签名和验证签名的系统参数,并生成环成员 公私钥;成员利用私钥对消息进行签名;验证者根据系统公开参数和所有环成员 公钥对消息签名进行验证;签名人利用指定验证人公钥发起交互式证明协议,通 过此过程指定验证人可确认对方是否是真实签名人。
由图2,给出本发明各个模块进行的具体操作步骤:
E.系统参数及密钥生成模块
首先系统选取两个大素数p,q,q使得q|p-1,且q≥2k,其中k是预先设定 的方案安全参数;选取中的两个q阶生成元g,h,以及抗碰撞的散列函数 带加密的散列函数F();令所有环成员为I1,I2,…,In, 每个成员Ii选取其私钥则相应的公钥为n为环成员数; 则,系统的公开参数为params=(p,q,g,h,H,F),环成员的公私钥集合为 {(xi,yi)i=1,2,…,n};
F.签名模块
为了生成消息m的签名,真实签名人Is,s∈{1,2,…,n}执行以下步骤:
步骤1:随机选取并计算a*=hamodp,b*=(a*)vmodp;
步骤2:随机选取并计算U=(a*)umodp,θ=u+vF(m||a*,U)modq;
步骤3:将a+v分成n个片段;具体的,成员Is为其余环成员Ii(i≠s)分别选 取1个随机元素并确定自身的片段
步骤4:对所有i≠s,计算
步骤5:计算
步骤6:计算
步骤7:对消息m的签名是(m,R1,…,Rn,σ,a*,b*,U,θ);
G.验证模块
对于给定的消息m和相应的签名,验证者首先检测关键参数a*,b*是否按要 求生成,接着再验证签名的有效性;具体操作步骤如下:
步骤8:检查等式(a*)θ=U(b*)F(m||a*,U)modp是否成立;若成立,则执行下 一步;反之则签名无效;
步骤9:对所有1≤i≤n,计算hi=H(m,Ri);
步骤10:检查等式
H.身份确认
真实签名人可通过以下交互式证明协议,使其指定的验证方确信他的身份, 即向对方证明他知道以a*为底,b*的对数;具体步骤如下:
步骤11:签名人随机选择并计算β=(a*)αmodp;同时,随机选 择并计算β的承诺
步骤12:指定验证方随机选取并发送给签名人;
步骤13:收到挑战信息ε后,签名人计算η=α+vεmodq并发送给指定验证 人;接着,签名人公开β,γ,供对方验证承诺c;
步骤14:指定验证方检查两个等式c=gβ(PKv)γmodp, (a*)η=β(b*)εmodp是否成立;若成立,则确信被验证方是关于消息m真实签 名人。
方法比较
本发明较之普通的Schnorr环签名方案,增加了身份确认功能。验证方仅需 与签名人进行1次交互,即可确认对方是否是真实签名人。与同类的可验证环签 名方案相比,本发明的构造简洁、高效,并实现了身份验证范围的可控。
下面将对本发明的环签名方案应用于企业中的情形进行说明。
依照本发明的步骤,当政府部门或大型企业应用本发明的签名系统时,如某 一职员发现领导、上司的贪腐或失职行为,他可利用部门内部所有员工的公钥生 成环签名,将举报信息公之于众或向更高的上级反映。由于公钥信息均来自部门 内部,验证者(举报信息接收者)可确信消息来源,但无法确认举报者身份。举 报信息一经查实,有关部门希望对举报给予奖励,此时该职员可通过“身份确认” 功能,向具体负责人证实其身份。由于该过程的不可传递性,验证方无法散播举 报人的身份信息,避免了被举报人及其同党可能实施的报复行为。
所以,本发明带来的有益效果是:增强了环签名方案的适用性,尤其适用于 匿名举报--事后奖励的应用场景。
对该技术领域的普通技术人员而言,根据以上实施类型可以很容易联想其他 的优点和变形。因此,本发明并不局限于上述具体实例,其仅仅作为例子对本发 明的一种形态进行详细、示范性的说明。在不背离本发明宗旨的范围内,本领域 普通技术人员根据上述具体实例通过各种等同替换所得到的技术方案,均应包含 在本发明的权利要求范围及其等同范围之内。
机译: 在计算机环境中指定语言语法的等效性并将一种语言的句子自动翻译为另一种语言的句子的方法
机译: 在计算机环境中指定语言语法的等效性并将一种语言的句子自动翻译为另一种语言的句子的方法
机译: 在计算机环境中指定语言语法的等效性并将一种语言的句子自动翻译为另一种语言的句子的方法