CN103563288B - 基于口令的单轮密钥交换协议 - Google Patents

基于口令的单轮密钥交换协议 Download PDF

Info

Publication number
CN103563288B
CN103563288B CN201280024883.9A CN201280024883A CN103563288B CN 103563288 B CN103563288 B CN 103563288B CN 201280024883 A CN201280024883 A CN 201280024883A CN 103563288 B CN103563288 B CN 103563288B
Authority
CN
China
Prior art keywords
message
random integers
diffie
hellman
cyclic group
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201280024883.9A
Other languages
English (en)
Other versions
CN103563288A (zh
Inventor
C·S·朱莉塔
A·罗伊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN103563288A publication Critical patent/CN103563288A/zh
Application granted granted Critical
Publication of CN103563288B publication Critical patent/CN103563288B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • H04L9/0844Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols with user authentication or key authentication, e.g. ElGamal, MTI, MQV-Menezes-Qu-Vanstone protocol or Diffie-Hellman protocols using implicitly-certified keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3218Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

一种使用公共参考串和共享口令初始化加密通信的方法,包括使用第一消息(106a)、第二消息(106b)以及公共参考串(100)确定对等方的秘密密钥(108a),其中所述第一消息和所述第二消息各包括素数阶p的循环群G的元素的元组、所述共享口令的盲加密、以及散列投影密钥。

Description

基于口令的单轮密钥交换协议
本发明根据内政部授予的编号为FA8750-08-2-0091的合同在美国政府的支持下做出。美国政府对本发明拥有特定的权利。
技术领域
本发明涉及安全通信。更具体地说,本发明涉及实现安全通信的基于口令的单轮(single round)密钥交换。
背景技术
基于口令的认证是重要的安全范式(paradigm)。此场景中的安全性是一项富有挑战性的问题,因为口令通常来自随机性不足以生成密码安全密钥的低熵域(low-entropydomain)。
已经开发出其中口令由对等方(peer)共享的模型来使安全通信免受攻击。所有当前基于口令的密钥交换协议遵循不可延展的承诺范式,例如,所选的密文对手模型CCA2-加密范式,以及相关的散列证明***。这些协议还采用类似于CCA2加密方案中的平滑投影散列函数(smooth projective hash function)。在此,用于获取散列证明的方法通常包括对等方之间的多轮交换以及模拟可靠零知识证明(simulation sound zero knowledgeproof)。
发明内容
根据本公开的示例性实施例,一种方法包括确定广义Diffie-Hellman元组;生成一次性模拟可靠零知识证明,其用于证明所述广义Diffie-Hellman元组的一致性;以及根据所述广义Diffie-Hellman元组加密消息。
根据本公开的示例性实施例,一种使用公共参考串和共享口令进行加密通信的方法包括使用被发送到对等方的第一消息、从所述对等方接收的第二消息以及公共参考串确定秘密密钥,其中所述第一消息和所述第二消息各包括素数阶p的循环群G的元素的元组、所述共享口令的盲加密、以及散列投影密钥。
根据本公开的示例性实施例,一种使用公共参考串和共享口令初始化安全通信的方法包括使用第一消息、第二消息以及公共参考串确定对等方的秘密密钥,其中所述第一消息和所述第二消息各包括素数阶p的循环群G的元素的元组、所述共享口令的盲加密,以及散列投影密钥。
根据本公开的示例性实施例,一种使用公共参考串和共享口令初始化安全通信的方法包括将第一消息发送到对等方,从所述对等方接收第二消息,以及使用所述第一消息、所述第二消息以及所述公共参考串确定所述对等方的安全密钥,其中所述第一消息和所述第二消息各包括广义Diffie-Hellman元组、所述共享口令的盲加密、散列投影密钥、以及用于证明所述广义Diffie-Hellman元组的一致性的一次性模拟可靠零知识证明。
附图说明
下面参考附图更详细地描述本公开的优选实施例:
图1是根据本公开的实施例的基于口令的密钥交换协议的图;
图2是示出根据本公开的实施例的消息生成的图;
图3是根据本公开的实施例的已接收的消息的图;
图4是根据本公开的实施例生成共享密钥的示例性方法的流程图;
图5是根据本公开的实施例的公共参考串的图;
图6是根据本公开的实施例的Diffie-Hellman元组的图;
图7是根据本公开的实施例的加密口令的图;
图8是根据本公开的实施例的散列投影密钥的图;以及
图9是用于执行根据本公开的实施例的方法的示例性***。
具体实施方式
根据本公开的实施例,一种基于口令的单轮口令交换实现了安全通信。基于口令的单轮密钥交换可用于不同的安全通信模型。例如,基于口令的单轮密钥交换可用于口令认证密钥(PAK)安全模型或通用可组合(UC)模型。基于口令的单轮密钥交换绕过了构建传统的基于口令的密钥交换协议所依据的不可延展的承诺范式。通过避免CCA-2加密范式的不可延展的承诺范式,可使得方法在通信成本和最终密钥计算这两方面高效。
根据本公开的实施例,散列证明***可被实现并集成在基于口令的密钥交换协议中。更具体地说,共享的秘密密钥可被确定为两个投影散列函数的乘积,其中第一投影散列函数对应于与有效的口令加密关联的语言,并且第二投影散列函数对应于加密方案中的密文完整性。第二投影散列函数不需要是在CC2A加密方案中使用的通用2投影散列函数。为了仅基于决定性Diffie–Hellman(DDH)假设证明安全性,在公共参考串陷门中需要进一步的(成对独立的)冗余。
基于口令的单轮密钥交换是高效的,其中NIZK(模拟可靠非交互式零知识)用于散列密钥的知识证明,但不一定用于构建CC2A安全加密。基于口令的单轮密钥交换使用一个多定理(multi-theorem)NIZK证明***。基于口令的单轮密钥交换可以使用多个多定理NIZK证明***。
此处使用的术语只是为了描述特定的实施例并且并非旨在作为本公开的限制。如在此使用的那样,单数形式“一”、“一个”和“该”旨在也包括复数形式,除非上下文明确地另有所指。还将理解,当在此说明书中使用时,术语“包括”和/或“包含”指定存在所述的特征、整数、步骤、操作、元素和/或组件,但是并不排除存在或添加一个或多个其它特征、整数、步骤、操作、元素、组件和/或它们构成的组。
以下的权利要求中的所有装置或步骤加功能要素的对应结构、材料、操作和等价物,旨在包括任何用于与在权利要求中具体指出的其它要素相组合地执行该功能的结构、材料或操作。所给出的对本公开的描述是示例性和描述性的,并非穷尽性的,并且也不限于所披露形式的发明。在对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的,而不偏离本公开的范围和精神。实施例的选择和描述,旨在最好地解释本公开的原理和实际应用,并使本技术领域的普通人员理解适合于所构想的特定应用的、本公开带有各种修改的各种实施例。
根据本公开的实施例,使用散列证明***,其中对等方共享口令。如果所共享的口令错误,对等方会得出无关的秘密密钥。进一步地,无论是主动的还是被动的窃听者在猜想合法的对等方协商一致的最终密钥方面没有任何优势,以致于开始的口令可以很弱。例如,对于4个数位长的口令,窃听者在一次尝试中可以猜对口令的概率是1/9999,这与随机猜想相同。即,与随机猜想相比,窃听者没有额外的优势。
根据本公开的实施例,公共参考串(CRS)是全局发布的随机值,其可以被所有对等方访问,例如,任何特定日期上道琼斯平均指数(DJIA)的最后一位数。另一示例是诸如NIST(国家标准技术研究所)之类的组织公布的随机字符串。
现在参考图1,给定两个对等方A和B(101a和101b)和对等方已选择的独立随机值r_A和r_B(104a和104b),然后通过使用这些随机值,对等方A和B可以确定其相应随机值的函数F、公共的CRS105以及它们的口令(103a和103b)。函数F可以由协议指定。结果值(106a和106b)被发送到另一对等方。然后当在方框107a和107b接收到来自另一对等方的相应值时,这两个对等方基于它们从另一对等方接收的东西、它们的口令、CRS及其随机值确定最终密钥,以便生成相应消息(108a和108b)。
当且仅当这两个对等方使用相同的口令(103a和103b)时,它们才会确定相同的密钥。而且,如果口令不同,即使有一位不同,两个值也是随机的并且相互独立。如果具有不正确的口令知识的第三方(例如“中间人”(man in the middle))尝试发起主动或被动窃听攻击,则情况依然如此,即,所生成的值是随机的并且独立于对等方所获取的值。
在说明书和附图中,使用循环群G1和G2(都是素数阶p的循环群),以便它们满足SXDH(对称外部Diffie-Hellman)假设。
SXDH假设包括使用两个不同的循环群G1和G2的基础代数结构,每个循环群都是素数阶p的循环群。双线性映射从G1和G2分别获得一对元素,并将它们映射到被称为目标群G3的第三群。SXDH假设声称,两个群G1和G2是如此不兼容,以致于Diffie-Hellman假设在这两个群中都单独成立。这样,给定循环群G1的生成器g、以及两个元素g的a次幂以及g的b次幂(其中a和b是随机选择的),没有任何多项式时间对手(polynomial time adversary)可以区分g的a乘b次幂与群G1的随机元素。类似的假设被规定对群G2适用。
图1中的协议假设固定的CRS100是所有对等方公知的。该协议是对称且异步的,其中每方确定要被发送的消息、接收对应的消息和确定密钥。因此,下面的描述从一方的角度进行的;另一方是对称的。
CRS(请参阅图5)包括从群G中均匀随机地选择的三个群元素g、A和K(301-303);以及用于NIZK证明的CRS(304)。
考虑共享公共口令pw的协议中涉及的两方Pi和Pj。在图2中,一方Pi从1到p均匀随机地生成随机数x、η1和η1′并确定消息组件106,包括:Diffie-Hellman元组:=(gx,Ax)(201和图6)、口令加密:=Kx.ssid·ρw(202、图7)(其中ssid是子会话标识)、散列投影密钥:(203和图8)以及存在x的NIZK证明,从而图6中的Diffie-Hellman元组的形式确实是(gx,Ax)204。
Diffie-Hellman元组一致性<ρ11′>的NIZK证明满足以下性质:
存在x,使得ρ1=gx且ρ1′=Ax
NIZK证明可使用已知的技术构建。例如,零知识协议(例如,验证方从证明获取的知识不多于陈述的真实性)可被视为一次性模拟可靠,如果即使给定的假陈述的副本(transcript)在协议中通过采用基础的难解性假设通过替换无法区别的字符串被证明,也没有任何多项式时间对手可以证明假陈述。这可以通过双线性对和SXDH假设实现。证明是一次性模拟可靠,从而在一次性模拟可靠零知识证明协议中,没有任何对手可以修改给定的陈述证明以获取另一陈述的有效证明。
考虑对于证人关系为R的语言L∈NP,(NIZK[1,2])Π=(l,P,V,S)=(S1,S2)可以是多定理NIZK证明***(相应参数),如果:l是多项式,并且P,V,S1,S2都是概率性多时间机器,从而存在可忽略的函数α,以便对于所有k:
完备性:对于长度为k的所有x∈L,以及所有w,从而R(x,w)=true,对于长度为l(k)的所有字符串σ,具有V(x,P(x,w,σ),σ)=true。
可靠性:对于所有无界(相应多项式时间)对手A,如果σ∈{0,1}l(k)是随机选择的,则A(σ)将输出(x,p)以便但是V(x,p,σ)=true的概率小于α(k)。
在确定消息组件106之后,Pi发送出单个消息,其包括通过通信信道(安全或不安全的)的消息组件。这在图1中示出为由Pi发出的强密钥(101a)。
Pi从网络,例如从Pj接收密钥。现在参考图4,已接收的密钥(请参阅107,图3)被期望与对等方Pi发出的消息相比具有相同的格式(401)。如果格式在语法上并非很好形成的,或者与对等方Pi发出的消息相比具有相同的Diffie-Hellman元组(402),则协议以失败结束(403)。进一步地,如果NIZK证明不是已接收的Diffie-Hellman元组(402)的一致性的有效证明,则协议以失败结束(403)。在没有NIZK证明的情况下,已接收的消息可以表示为(r2,r'2,e22)。
图4示出在一致性检查成功之后生成强密钥。令CRH为防碰撞散列函数,并且令H=CRH(ρ2)。对等方密钥404的部分1可被确定为对等方密钥405的部分2可被确定为对等方的强密钥406可被确定为sk=sk1·sk2
此处描述的技术可用于更一般的密码应用。说明性示例是抗选择密文攻击(CCA2)公钥加密方案的情况。CCA2公钥加密方案包括公钥和私钥生成和公钥分发,使用该公钥的加密,以及使用私钥的解密。此类CCA2加密方案可使用抗选择明文攻击(CPA)加密方案和一次性模拟可靠非交互式零知识证明构建,如下所述。
加密方法生成密文,其包括生成广义Diffie-Hellman元组、根据CPA加密方案的消息加密、证明广义Diffie-Hellman元组的一致性的标记的一次性模拟可靠非交互式零知识证明,其中标记是根据CPA加密方案的加密消息。
CPA是盲加密方法的示例,其中消息可以被编码,以基本上防止第三方获知内容。根据本公开的实施例,在盲加密方法中,诸如共享口令之类的消息可以是对等方知道的。
根据本公开的实施例,决定性线性假设(DLIN)可用于实现NIZK证明。在DLIN中,双线性映射针对分别来自相同的群G的两个元素。更具体地说,DLIN声称,给定用于素数阶p的循环群G的生成器g、以及元素g的a次幂、g的b次幂、g的a乘r次幂、g的b乘s次幂(其中a、b、r和s是从0至p-1中随机选择的)的情况下,没有任何多项式时间对手可以区分g的(r+s)次幂与群的随机元素。
为了使用DLIN,广义Diffie-Hellman元组包括三个元素<U,V,W>,其中U采用g的x次幂的形式,V采用A的y次幂的形式,W采用B的x加y次幂的形式。在此,A和B可以提前确定,例如,作为公共参考串的一部分。
这样,协议可以描述如下:公共参考串(CRS)包括多个来自素数阶p的循环群G的元素。这些CRS元素是从群中随机选择的,且可被命名为g、A、B、K1和K2。
参与与第二对等方的基于口令的密钥交换的第一对等方可以如下方式生成将被发送到对等方的消息。第一对等方选取随机整数x以及另一随机整数y以生成广义Diffie-Hellman元组,其为g的x次幂、A的y次幂、以及B的x加y次幂。在此,取幂运算和乘法运算在循环群G中完成。
第一对等方可以如下方式生成两个散列投影密钥。第一对等方选取三个随机数1、m和n。第一对等方获取第一散列投影密钥,其为以1为指数取幂的g和以n为指数取幂的K1的乘积。第一对等方获取第二散列投影密钥,其为以m为指数取幂的A和以n为指数取幂的K2的乘积。
第一对等方通过首先以x为指数对K1取幂、以y为指数对K2取幂、然后将两个结果乘在一起来对口令加密。第一对等方可以可选地使用根据先前确定的两个散列投影密钥确定的附加指数对得到的乘积取幂。例如,可通过将诸如安全散列算法(SHA)之类的防碰撞函数应用到散列投影密钥对来实现此确定。它然后将结果乘以所述乘积以获得口令加密。如上所述,所有取幂和乘法运算都在循环群G中完成。
第一对等方可以确定一次性模拟可靠非交互式零知识证明以证明广义Diffie-Hellman元组的一致性,即,证明三元组的形式是g的某一整数x次幂、A的另一整数y次幂,以及B的x加y次幂。
第一对等方然后可将消息发送到第二对等方,该消息包括广义Diffie-Hellman元组、口令加密、散列投影密钥对以及零知识证明。令Diffie-Hellman元组中的元素命名为S、T、U。进一步地,将所述加密称为E。两个散列投影密钥分别被称为R和F,零知识证明被称为P。
第一对等方将所有临时变量保存在其本地存储器中,这些变量用于确定出站消息。
第一对等方可以从第二对等方接收消息,此消息的格式据称与被发送到第二对等方的消息的格式相同。令所接收的元素称为S’、T’、U’、E’、R’、F’和P’。
第一对等方以如下方式继续确定秘密密钥,检查所接收的证明P’与S’、T’、U’以及CRS一致。如果证明无效,则通过从群G中随机选择元素来确定秘密密钥。
如果证明确实有效,则秘密密钥可被确定为两个数量H1和H2和H3的乘积。数量H1被获取为以1为指数取幂的R’和以m为指数取幂的F’的乘积。记住,1、m和n是由第一对等方选择以确定散列投影密钥R和F的,并且这些值被保存在本地存储器中。
数量H2可通过首先根据下面所述获取数量d来获取。数量d可通过用n除以根据已接收的散列投影密钥对R’和F’确定的值获取。此确定可与确定出站消息元素E相同的方式进行。例如,d可被确定为用n除以被应用到对R’和F’的SHA。该特定的除法可以以p为模进行,其中p是群G的阶。
数量H2可通过用E’除以口令并且以d为指数对结果取幂来获取。如上所述,所有乘法、除法和取幂运算都在循环群G中完成。
数量H3可被获取为以x为指数取幂的R’与以y为指数取幂的F’的乘积。记住,x和y用于获取出站消息中的S和T,且x和y被该方保存在本地存储器中。
如上所述,秘密密钥可被确定为循环群G中H1、H2和H3的乘积。
本公开的实施例的方法可以特别适合用于电子设备或其他***。因此,本公开的实施例可以采取以下形式,即:完全的硬件实施例或硬件和软件方面结合的实施例,这里可以统称为“处理器”、“电路”、“模块”或“***”。此外,本公开的实施例可以采取在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。
可以采用一个或多个计算机可用介质或可读介质的任意组合。计算机可用介质或可读介质可以是计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置、器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
上面参照方法、装置(***)和计算机程序产品的流程图和/或框图描述本公开的实施例。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。
这些计算机程序指令可存储在计算机可读介质中,这些指令使得计算机或其它可编程数据处理装置以特定方式工作,从而,存储在计算机可读介质中的指令就产生出包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的指令的制造品(articleof manufacture)。
可以把这些计算机程序指令存储在计算机可读介质中,这些指令使得计算机、其它可编程数据处理装置、或其他设备以特定方式工作,从而,存储在计算机可读介质中的指令就产生出包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的指令的制造品(article of manufacture)。
例如,图9是示出实现安全通信的基于口令的单轮密钥交换的示例性***的框图。***901可以包括处理器902、与处理器相连(例如,通过总线904或其他连接装置)的存储器903、以及在操作上与处理器902相接口的输入/输出(I/O)电路905-906。处理器902可被配置为执行本公开中描述的一种或多种方法,本公开的示例性实施例在上面的附图中示出并且在此进行描述。
将理解,在此使用的术语“处理器”旨在包括任何处理设备,例如,包括中央处理单元(CPU)和/或其它处理电路(例如,数字信号处理器(DSP)、微处理器等)的处理设备。此外,将理解,术语“处理器”可以指示一个以上的处理设备,并且与处理设备关联的各个组件可以被其它处理设备共享。在此使用的术语“存储器”旨在包括与处理器或CPU关联的存储器和其它计算机可读介质,例如随机存取存储器(RAM)、只读存储器(ROM)、固定存储介质(例如,硬盘)、可移动存储介质(例如,软盘)、闪存等。此外,在此使用的术语“I/O电路”旨在包括例如用于将数据输入处理器的一个或多个输入设备(例如,键盘、鼠标等),和/或用于提供与处理器关联的结果的一个或多个输出设备(例如,打印机、监视器等)。
附图中的流程图和框图显示了根据本公开的多个实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
尽管此处参考附图描述了本公开的示例性实施例,但是将理解,本公开不限于这些确切的实施例,本领域的技术人员可以对这些实施例做出各种其它修改和改变,而不偏离所附权利要求的范围。

Claims (38)

1.一种用于安全通信的方法,包括:
确定广义Diffie-Hellman元组(201);
生成一次性模拟可靠零知识证明,其用于证明所述广义Diffie-Hellman元组的一致性(204);以及
根据所述广义Diffie-Hellman元组、公共参考串和共享口令加密消息(108a);其中所述方法由处理器执行;
其中所述公共参考串包括从循环群G中选择的元素g、A和K,并且其中所述广义Diffie-Hellman元组包括所述循环群G中的元素S和S’,所述元素S和S’通过选取随机整数x来获取,所述元素S通过以所述随机整数x为指数对所述元素g取幂来确定,所述元素S’通过以所述随机整数x为指数对所述元素A取幂来获取。
2.一种用于使用公共参考串和共享口令执行加密通信的方法,包括:
使用被发送到对等方的第一消息(106a)、从所述对等方接收的第二消息(107a)以及公共参考串(100)确定秘密密钥(108a),
其中所述第一消息和所述第二消息各包括素数阶p的循环群G的元素的广义Diffie-Hellman元组(201)、所述共享口令(202)的盲加密、以及散列投影密钥(203),
其中所述公共参考串包括从循环群G选择的元素g、A、B、K和K1,并且其中所述广义Diffie-Hellman元组包括所述循环群G中的元素S、T和U,所述元素S、T和U通过选取随机整数x和y来获取,所述元素S通过以所述随机整数x为指数对所述元素g取幂来确定,所述元素T通过以所述随机整数y为指数对所述元素A取幂来确定,所述元素U通过以所述随机整数x加所述随机整数y为指数对所述元素B取幂来确定。
3.根据权利要求2的方法,进一步包括由处理器使用所述秘密密钥(108a)的解码形式对有效负载进行解码。
4.根据权利要求2的方法,进一步包括使用对称密钥加密方案和所述秘密密钥(108a)对有效负载进行加密。
5.根据权利要求2的方法,其中所述第一消息和所述第二消息各进一步包括一次性模拟可靠零知识证明。
6.根据权利要求5的方法,进一步包括由处理器根据对称外部Diffie-Hellman假设证明所述元组的一致性(304)。
7.根据权利要求5的方法,进一步包括由处理器根据决定性线性假设证明所述元组的一致性。
8.一种使用公共参考串和共享口令初始化加密通信的方法,包括:
使用第一消息、第二消息以及公共参考串确定对等方的秘密密钥,
其中所述第一消息和所述第二消息各包括素数阶p的循环群G的元素的广义Diffie-Hellman元组(201)、所述共享口令(202)的盲加密,以及散列投影密钥(203),
其中所述公共参考串包括从循环群G中选择的元素g、A和K,并且其中所述广义Diffie-Hellman元组包括所述循环群G中的元素S和S’,所述元素S和S’通过选取随机整数x来获取,所述元素S通过以所述随机整数x为指数对所述元素g取幂来确定,所述元素S’通过以所述随机整数x为指数对所述元素A取幂来获取。
9.根据权利要求8的方法,其中所述第一消息和所述第二消息各进一步包括一次性模拟可靠零知识证明。
10.根据权利要求9的方法,进一步包括根据对称外部Diffie-Hellman假设证明所述元组的一致性(304)。
11.根据权利要求9的方法,进一步包括根据决定性线性假设证明所述元组的一致性。
12.一种用于使用公共参考串和共享口令初始化加密通信的方法,包括:
将第一消息(106a)发送到对等方;
从所述对等方接收第二消息(107a);以及
使用所述第一消息、所述第二消息以及所述公共参考串确定所述对等方的秘密密钥(108a),
其中所述第一消息和所述第二消息各包括广义Diffie-Hellman元组、所述共享口令的盲加密、散列投影密钥、以及证明所述广义Diffie-Hellman元组的一致性的一次性模拟可靠零知识证明,其中所述公共参考串包括从循环群G中选择的元素g、A和K,并且其中所述广义Diffie-Hellman元组包括所述循环群G中的元素S和S’,
所述元素S和S’通过选取随机整数x来获取,所述元素S通过以所述随机整数x为指数对所述元素g取幂来确定,所述元素S’通过以所述随机整数x为指数对所述元素A取幂来获取。
13.根据权利要求12的方法,进一步包括:通过选取两个或更多个随机整数,并且使用所述两个或更多个随机整数和所述元素g、A和K确定所述散列投影密钥(203)。
14.根据权利要求12的方法,进一步包括:通过以所述随机整数x为指数对所述元素K取幂并且用所述循环群G中的所述共享口令(202)乘以结果,来获取所述共享口令的加密。
15.根据权利要求12的方法,进一步包括:通过以所述随机整数x为指数对所述元素K取幂,并且通过根据所述散列投影密钥和预定协议会话标识符确定的函数取幂,以及用所述循环群G中的所述共享口令乘以结果,来获取所述共享口令的加密。
16.一种用于使用公共参考串和共享口令初始化加密通信的方法,包括:
将第一消息(106a)发送到对等方;
从所述对等方接收第二消息(107a);以及
使用所述第一消息、所述第二消息以及所述公共参考串确定所述对等方的秘密密钥(108a),
其中所述第一消息和所述第二消息各包括广义Diffie-Hellman元组、所述共享口令的盲加密、散列投影密钥、以及证明所述广义Diffie-Hellman元组的一致性的一次性模拟可靠零知识证明,
其中所述公共参考串包括从循环群G选择的元素g、A、B、K和K1,并且其中所述广义Diffie-Hellman元组包括所述循环群G中的元素S、T和U,
所述元素S、T和U通过选取随机整数x和y来获取,所述元素S通过以所述随机整数x为指数对所述元素g取幂来确定,所述元素T通过以所述随机整数y为指数对所述元素A取幂来确定,所述元素U通过以所述随机整数x加所述随机整数y为指数对所述元素B取幂来确定。
17.根据权利要求16的方法,进一步包括:使用所述循环群G中的所述随机整数x和y以及所述元素g、A、B、K1和K2获取所述散列投影密钥。
18.根据权利要求16的方法,进一步包括:通过以所述随机整数x为指数对所述元素K1取幂,并且以所述随机整数y为指数对所述元素K2取幂,乘以所述随机整数x和y,以及用所述共享口令乘以结果来获取所述共享口令的所述加密。
19.根据权利要求16的方法,进一步包括:通过以所述随机整数x为指数对所述元素K1取幂,并且以所述随机整数y为指数对所述元素K2取幂,乘以所述随机整数x和y,将结果提高到通过散列投影密钥确定的函数的幂,以及用所述共享口令乘以结果来获取所述共享口令的所述加密。
20.一种用于安全通信的***,包括:
被配置为确定广义Diffie-Hellman元组(201)的模块;
被配置为生成一次性模拟可靠零知识证明的模块,其用于证明所述广义Diffie-Hellman元组的一致性(204);以及
被配置为根据所述广义Diffie-Hellman元组、公共参考串和共享口令加密消息(108a)的模块;
其中所述公共参考串包括从循环群G中选择的元素g、A和K,并且其中所述广义Diffie-Hellman元组包括所述循环群G中的元素S和S’,所述元素S和S’通过选取随机整数x来获取,所述元素S通过以所述随机整数x为指数对所述元素g取幂来确定,所述元素S’通过以所述随机整数x为指数对所述元素A取幂来获取。
21.一种用于使用公共参考串和共享口令执行加密通信的***,包括:
被配置为使用被发送到对等方的第一消息(106a)、从所述对等方接收的第二消息(107a)以及公共参考串(100)确定秘密密钥(108a)的模块,
其中所述第一消息和所述第二消息各包括素数阶p的循环群G的元素的广义Diffie-Hellman元组(201)、所述共享口令(202)的盲加密、以及散列投影密钥(203),
其中所述公共参考串包括从循环群G选择的元素g、A、B、K和K1,并且其中所述广义Diffie-Hellman元组包括所述循环群G中的元素S、T和U,所述元素S、T和U通过选取随机整数x和y来获取,所述元素S通过以所述随机整数x为指数对所述元素g取幂来确定,所述元素T通过以所述随机整数y为指数对所述元素A取幂来确定,所述元素U通过以所述随机整数x加所述随机整数y为指数对所述元素B取幂来确定。
22.根据权利要求21的***,进一步包括:被配置为由处理器使用所述秘密密钥(108a)的解码形式对有效负载进行解码的模块。
23.根据权利要求21的***,进一步包括:被配置为使用对称密钥加密方案和所述秘密密钥(108a)对有效负载进行加密的模块。
24.根据权利要求21的***,其中所述第一消息和所述第二消息各进一步包括一次性模拟可靠零知识证明。
25.根据权利要求24的***,进一步包括:被配置为由处理器根据对称外部Diffie-Hellman假设证明所述元组的一致性(304)的模块。
26.根据权利要求24的***,进一步包括:被配置为由处理器根据决定性线性假设证明所述元组的一致性的模块。
27.一种使用公共参考串和共享口令初始化加密通信的***,包括:
被配置为使用第一消息、第二消息以及公共参考串确定对等方的秘密密钥的模块,
其中所述第一消息和所述第二消息各包括素数阶p的循环群G的元素的广义Diffie-Hellman元组(201)、所述共享口令(202)的盲加密,以及散列投影密钥(203),
其中所述公共参考串包括从循环群G中选择的元素g、A和K,并且其中所述广义Diffie-Hellman元组包括所述循环群G中的元素S和S’,所述元素S和S’通过选取随机整数x来获取,所述元素S通过以所述随机整数x为指数对所述元素g取幂来确定,所述元素S’通过以所述随机整数x为指数对所述元素A取幂来获取。
28.根据权利要求27的***,其中所述第一消息和所述第二消息各进一步包括一次性模拟可靠零知识证明。
29.根据权利要求28的***,进一步包括:被配置为根据对称外部Diffie-Hellman假设证明所述元组的一致性(304)的模块。
30.根据权利要求28的***,进一步包括:被配置为根据决定性线性假设证明所述元组的一致性的模块。
31.一种用于使用公共参考串和共享口令初始化加密通信的模块,包括:
被配置为将第一消息(106a)发送到对等方的模块;
被配置为从所述对等方接收第二消息(107a)的模块;以及
被配置为使用所述第一消息、所述第二消息以及所述公共参考串确定所述对等方的秘密密钥(108a)的模块,
其中所述第一消息和所述第二消息各包括广义Diffie-Hellman元组、所述共享口令的盲加密、散列投影密钥、以及证明所述广义Diffie-Hellman元组的一致性的一次性模拟可靠零知识证明,其中所述公共参考串包括从循环群G中选择的元素g、A和K,并且其中所述广义Diffie-Hellman元组包括所述循环群G中的元素S和S’,所述元素S和S’通过选取随机整数x来获取,所述元素S通过以所述随机整数x为指数对所述元素g取幂来确定,所述元素S’通过以所述随机整数x为指数对所述元素A取幂来获取。
32.根据权利要求31的模块,进一步包括:被配置为通过选取两个或更多个随机整数,并且使用所述两个或更多个随机整数和所述元素g、A和K确定所述散列投影密钥(203)的模块。
33.根据权利要求31的模块,进一步包括:被配置为通过以所述随机整数x为指数对所述元素K取幂并且用所述循环群G中的所述共享口令(202)乘以结果,来获取所述共享口令的加密的模块。
34.根据权利要求31的模块,进一步包括:被配置为通过以所述随机整数x为指数对所述元素K取幂,并且通过根据所述散列投影密钥和预定协议会话标识符确定的函数取幂,以及用所述循环群G中的所述共享口令乘以结果,来获取所述共享口令的加密的模块。
35.一种用于使用公共参考串和共享口令初始化加密通信的***,包括:
被配置为将第一消息(106a)发送到对等方的模块;
被配置为从所述对等方接收第二消息(107a)的模块;以及
被配置为使用所述第一消息、所述第二消息以及所述公共参考串确定所述对等方的秘密密钥(108a)的模块,
其中所述第一消息和所述第二消息各包括广义Diffie-Hellman元组、所述共享口令的盲加密、散列投影密钥、以及证明所述广义Diffie-Hellman元组的一致性的一次性模拟可靠零知识证明,
其中所述公共参考串包括从循环群G选择的元素g、A、B、K和K1,并且其中所述广义Diffie-Hellman元组包括所述循环群G中的元素S、T和U,所述元素S、T和U通过选取随机整数x和y来获取,所述元素S通过以所述随机整数x为指数对所述元素g取幂来确定,所述元素T通过以所述随机整数y为指数对所述元素A取幂来确定,所述元素U通过以所述随机整数x加所述随机整数y为指数对所述元素B取幂来确定。
36.根据权利要求35的***,进一步包括:被配置为使用所述循环群G中的所述随机整数x和y以及所述元素g、A、B、K1和K2获取所述散列投影密钥的模块。
37.根据权利要求35的***,进一步包括:被配置为通过以所述随机整数x为指数对所述元素K1取幂,并且以所述随机整数y为指数对所述元素K2取幂,乘以所述随机整数x和y,以及用所述共享口令乘以结果来获取所述共享口令的所述加密的模块。
38.根据权利要求35的***,进一步包括:被配置为通过以所述随机整数x为指数对所述元素K1取幂,并且以所述随机整数y为指数对所述元素K2取幂,乘以所述随机整数x和y,将结果提高到通过散列投影密钥确定的函数的幂,以及用所述共享口令乘以结果来获取所述共享口令的所述加密的模块。
CN201280024883.9A 2011-05-25 2012-05-03 基于口令的单轮密钥交换协议 Expired - Fee Related CN103563288B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/115,720 US8681986B2 (en) 2011-05-25 2011-05-25 Single-round password-based key exchange protocols
US13/115,720 2011-05-25
PCT/US2012/036296 WO2012161939A1 (en) 2011-05-25 2012-05-03 Single-round password-based key exchange protocols

Publications (2)

Publication Number Publication Date
CN103563288A CN103563288A (zh) 2014-02-05
CN103563288B true CN103563288B (zh) 2017-03-22

Family

ID=47217600

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280024883.9A Expired - Fee Related CN103563288B (zh) 2011-05-25 2012-05-03 基于口令的单轮密钥交换协议

Country Status (5)

Country Link
US (1) US8681986B2 (zh)
CN (1) CN103563288B (zh)
DE (2) DE112012001828B4 (zh)
GB (1) GB2503618B (zh)
WO (1) WO2012161939A1 (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2819211C (en) * 2011-04-29 2020-12-08 International Business Machines Corporation Data encryption
US10263782B2 (en) * 2011-10-12 2019-04-16 Goldkey Corporation Soft-token authentication system
US9449167B2 (en) * 2012-09-12 2016-09-20 Infosys Limited Method and system for securely accessing different services based on single sign on
GB201310084D0 (en) 2013-06-06 2013-07-17 Mastercard International Inc Improvements to electronic authentication systems
US9769658B2 (en) * 2013-06-23 2017-09-19 Shlomi Dolev Certificating vehicle public key with vehicle attributes
US20150036820A1 (en) * 2013-07-30 2015-02-05 Gideon Samid Probability Durable Entropic Advantage
CN105227308B (zh) * 2014-06-13 2019-01-08 华为技术有限公司 一种加密、解密方法及电子设备
US10033532B2 (en) * 2015-06-20 2018-07-24 Fujitsu Limited Biometric based authenticated key exchange
CN106301788B (zh) * 2016-08-12 2019-03-19 武汉大学 一种支持用户身份认证的群组密钥管理方法
US10404667B2 (en) 2016-11-17 2019-09-03 Bank Of America Corporation Secure, autonomous file encryption and decryption
CN112968878A (zh) * 2021-01-29 2021-06-15 江苏理工学院 基于多线性映射的一轮多方密钥交换协议
US11610004B2 (en) * 2021-04-14 2023-03-21 Bank Of America Corporation System for implementing enhanced file encryption technique

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101060530A (zh) * 2007-05-22 2007-10-24 赵运磊 可抵赖的互联网密钥交换协议

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7010692B2 (en) 1996-04-17 2006-03-07 Phoenix Technologies Ltd. Cryptographic methods for remote authentication
US6084968A (en) * 1997-10-29 2000-07-04 Motorola, Inc. Security token and method for wireless applications
US6128724A (en) * 1997-12-11 2000-10-03 Leland Stanford Junior University Computation using codes for controlling configurable computational circuit
US6925568B1 (en) * 1998-01-16 2005-08-02 Sonera Oyj Method and system for the processing of messages in a telecommunication system
US6693964B1 (en) * 2000-03-24 2004-02-17 Microsoft Corporation Methods and arrangements for compressing image based rendering data using multiple reference frame prediction techniques that support just-in-time rendering of an image
US20030158960A1 (en) 2000-05-22 2003-08-21 Engberg Stephan J. System and method for establishing a privacy communication path
AU6816101A (en) * 2000-06-05 2001-12-17 Phoenix Tech Ltd Systems, methods and software for remote password authentication using multiple servers
US6928461B2 (en) * 2001-01-24 2005-08-09 Raja Singh Tuli Portable high speed internet access device with encryption
US20020136410A1 (en) * 2001-03-26 2002-09-26 Sun Microsystems, Inc. Method and apparatus for extinguishing ephemeral keys
US8520844B2 (en) * 2003-06-20 2013-08-27 Alcatel Lucent Methods and apparatus for providing secure two-party public key cryptosystem
US7581100B2 (en) 2003-09-02 2009-08-25 Authernative, Inc. Key generation method for communication session encryption and authentication system
US7908482B2 (en) 2005-08-18 2011-03-15 Microsoft Corporation Key confirmed authenticated key exchange with derived ephemeral keys
US7861078B2 (en) 2005-10-14 2010-12-28 Juniper Networks, Inc. Password-authenticated asymmetric key exchange
US8572387B2 (en) 2006-07-26 2013-10-29 Panasonic Corporation Authentication of a peer in a peer-to-peer network
CN102017510B (zh) 2007-10-23 2013-06-12 赵运磊 自封闭联合知识证明和Diffie-Hellman密钥交换方法与结构
US8776176B2 (en) 2008-05-16 2014-07-08 Oracle America, Inc. Multi-factor password-authenticated key exchange
US8553878B2 (en) * 2010-04-14 2013-10-08 Apple Inc. Data transformation system using cyclic groups

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101060530A (zh) * 2007-05-22 2007-10-24 赵运磊 可抵赖的互联网密钥交换协议

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
One-Round Password-Based Authenticated Key Exchange;Jonathan Katz等;《Cryptology ePrint Archive》;20100628;第1-29页 *

Also Published As

Publication number Publication date
WO2012161939A1 (en) 2012-11-29
US8681986B2 (en) 2014-03-25
GB2503618B (en) 2019-02-06
GB2503618A (en) 2014-01-01
US20120300930A1 (en) 2012-11-29
DE112012001828T5 (de) 2014-01-30
CN103563288A (zh) 2014-02-05
DE112012001828B4 (de) 2016-09-15
GB201318211D0 (en) 2013-11-27
DE112012007297B3 (de) 2019-02-07

Similar Documents

Publication Publication Date Title
CN103563288B (zh) 基于口令的单轮密钥交换协议
CN112106322B (zh) 基于密码的阈值令牌生成
CN105827402B (zh) 一种分布式公开可验证随机数生成方法
CN107342859B (zh) 一种匿名认证方法及其应用
US10027654B2 (en) Method for authenticating a client device to a server using a secret element
CN110011781B (zh) 用于交易金额加密且支持零知识证明的同态加密方法和介质
CN104811450B (zh) 云计算中一种基于身份的数据存储方法及完整性验证方法
He et al. A pairing‐free certificateless authenticated key agreement protocol
US8464060B2 (en) Method and structure for self-sealed joint proof-of-knowledge and diffie-hellman key-exchange protocols
EP0786178B1 (en) Secret-key certificates
US10846372B1 (en) Systems and methods for trustless proof of possession and transmission of secured data
CN107659395B (zh) 一种多服务器环境下基于身份的分布式认证方法及***
JP2017517229A (ja) 動的鍵生成を用いるネットワーク認証システム
JP2004208263A (ja) バイリニアペアリングを用いた個人識別情報に基づくブラインド署名装置及び方法
CN104754570B (zh) 一种基于移动互联网络的密钥分发和重构方法与装置
CN103444128B (zh) 密钥pv签名
Ruan et al. After-the-fact leakage-resilient identity-based authenticated key exchange
CN101282216B (zh) 带隐私保护的基于口令认证的三方密钥交换方法
CN112417489B (zh) 数字签名的生成方法、装置和服务器
Fischer et al. A public randomness service
CN111245615B (zh) 一种基于身份的数字签名密码逆向防火墙方法
WO2019174404A1 (zh) 一种群组数字签名、验证方法及其设备和装置
JP5512598B2 (ja) 情報共有システム、方法、装置及びプログラム
Yang et al. Efficient certificateless encryption withstanding attacks from malicious KGC without using random oracles
CN116132012A (zh) 一种可信任的隐私数据比较方法及其存储装置、智能终端

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170322