CN105721153A - 基于认证信息的密钥交换系统及方法 - Google Patents

基于认证信息的密钥交换系统及方法 Download PDF

Info

Publication number
CN105721153A
CN105721153A CN201410736759.6A CN201410736759A CN105721153A CN 105721153 A CN105721153 A CN 105721153A CN 201410736759 A CN201410736759 A CN 201410736759A CN 105721153 A CN105721153 A CN 105721153A
Authority
CN
China
Prior art keywords
authentication information
session key
densification
server
end side
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.)
Granted
Application number
CN201410736759.6A
Other languages
English (en)
Other versions
CN105721153B (zh
Inventor
崔珪映
赵志勋
尹爻珍
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.)
Samsung SDS Co Ltd
Original Assignee
Samsung SDS Co Ltd
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 Samsung SDS Co Ltd filed Critical Samsung SDS Co Ltd
Publication of CN105721153A publication Critical patent/CN105721153A/zh
Application granted granted Critical
Publication of CN105721153B publication Critical patent/CN105721153B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities

Landscapes

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

Abstract

本发明公开一种基于认证信息的密钥交换系统及方法。根据本发明的一个实施例的基于用户认证信息的密钥交换系统,包括:终端,利用终端侧随机数及服务器ID来生成与所述终端用户的认证信息对应的基于ID的密文;服务器,利用与所述服务器ID对应的服务器侧私钥来对从所述终端接收的所述基于ID的密文进行解密以恢复所述认证信息,并利用恢复的所述认证信息来认证所述终端,并且生成与认证的所述终端对应的服务器侧会话密钥。

Description

基于认证信息的密钥交换系统及方法
技术领域
本发明涉及一种网络上的安全技术。
背景技术
基于认证信息的密钥交换协议(口令认证密钥交换(PAKE:PasswordAuthenticatedKeyExchange))是指参与通信的两个以上的主体共享用于如下的通信的密钥的过程,即该通信基于其中一个以上的主体所知道的密码(Password)而被加密。PAKE可根据其实现方式而分为基于公钥证书的PAKE及基于非公钥证书的PAKE。
对于基于公钥证书的PAKE而言,为了交换密钥常常需要执行公钥认证的步骤,对于基于非公钥证书的PAKE(相关联的标准:IEEEP1363.2及ISO/IEC11770-4)而言,因通过直接指数乘密码来存储的认证者(verifier)构成方式而发生了难以更新现有系统的迁移(migration)及参数(parameter)的新问题。此外,由于这种方式需要将密码与成组参数(groupparameter)直接结合,因此为了应对针对此的离线分析需要相对多的实时计算量并且无法灵活地交换协议的消息流。
发明内容
本发明的实施例旨在提供一种将基于ID(身份标识号码)的加密技术应用于现有的基于认证信息的密钥交换协议而同时具有基于公钥证书的PAKE的优点及基于非公钥证书的PAKE的优点的高效的认证及密钥交换协议。
此外,本发明的实施例旨在最小化认证及密钥交换所需的通信次数。
根据示例性实施例,提供一种基于用户认证信息的密钥交换系统,包括:终端,利用终端侧随机数及服务器ID来生成与所述终端用户的认证信息对应的基于ID的密文;服务器,利用与所述服务器ID对应的服务器侧私钥来对从所述终端接收的所述基于ID的密文进行解密以恢复所述认证信息,并利用恢复的所述认证信息来认证所述终端,并且生成与认证的所述终端对应的服务器侧会话密钥。
所述终端可由所述终端侧随机数计算第一会话密钥元素,并由所述服务器ID及所述终端侧随机数生成终端侧加密化元素,并且结合所述认证信息和所述终端侧加密化元素而生成加密化字符串。
所述终端侧加密化元素可通过如下的数学式来计算。
D=(H(IDS))x
(其中,D为终端侧加密化元素,IDS为服务器ID,x为终端侧随机数,H为单向哈希值)
所述加密化字符串可通过所述认证信息及所述终端侧加密化元素的异或运算(XOR)来计算。
所述服务器可从所述终端接收包含所述第一会话密钥元素及所述加密化字符串的基于ID的密文,并通过所述服务器侧私钥及所述第一会话密钥元素来计算服务器侧加密化元素,并且利用所述服务器侧加密化元素而从所述加密化字符串恢复所述认证信息。
所述服务器侧加密化元素可通过如下的数学式来计算。
D'=XKs
(其中,D'为服务器侧加密化元素,X为第一会话密钥元素,Ks为服务器侧私钥)
所述认证信息可通过接收到的所述加密化字符串及所述服务器侧加密化元素之间的异或运算(XOR)来恢复。
所述服务器可根据恢复的所述认证信息和已存储于所述服务器的所述终端的认证信息的相同与否来认证所述终端。
所述服务器在所述终端得到认证时,可由通过服务器侧随机数计算第二会话密钥元素,并且由所述服务器侧随机数及所述第一会话密钥元素来生成服务器侧第三会话密钥元素。
所述服务器侧第三会话密钥元素可通过将所述第一会话密钥元素作为底数,并将所述服务器侧随机数作为指数的乘方来计算。
所述终端可从所述服务器接收所述第二会话密钥元素,并由所述第二会话密钥元素生成终端侧第三会话密钥元素及终端侧会话密钥。
所述终端侧第三会话密钥元素可通过将所述第二会话密钥元素作为底数并将所述终端侧随机数作为指数的乘方来计算。
所述终端侧会话密钥(sk)可以是包含所述终端ID、所述服务器ID、所述加密化字符串、所述第一会话密钥元素、所述第二会话密钥元素、所述终端侧加密化元素及所述终端侧第三会话密钥元素中的一个以上的字符串的哈希值。
所述服务器侧会话密钥可以是包含所述终端ID、所述服务器ID、所述加密化字符串、所述第一会话密钥元素、所述第二会话密钥元素、所述服务器侧加密化元素及所述服务器侧第三会话密钥元素中的一个以上的字符串的哈希值。
根据另一个示例性实施例,提供一种基于用户认证信息的密钥交换方法,包括如下步骤:在终端中,利用终端侧随机数及服务器ID来生成与所述终端用户的认证信息对应的基于ID的密文;在服务器中,通过与所述服务器ID对应的服务器侧私钥来对从所述终端接收的所述基于ID的密文进行解密以恢复所述认证信息;在所述服务器中,利用恢复的所述认证信息来认证所述终端;在所述终端得到认证时,生成与认证的所述终端对应的服务器侧会话密钥。
生成所述基于ID的密文的步骤还可包括如下步骤:由所述终端侧随机数计算第一会话密钥元素;由所述服务器ID及所述终端侧随机数生成终端侧加密化元素;结合所述认证信息和所述终端侧加密化元素而生成加密化字符串。
所述终端侧加密化元素可通过如下的数学式来计算。
D=(H(IDS))x
(其中,D为终端侧加密化元素,IDS为服务器ID,x为终端侧随机数,H为单向哈希值)
所述加密化字符串可通过所述认证信息及所述终端侧加密化元素的异或运算(XOR)来计算。
恢复所述认证信息的步骤还可包括如下步骤:从所述终端接收包含所述第一会话密钥元素及所述加密化字符串的基于ID的密文;通过所述服务器侧私钥及所述第一会话密钥元素来计算服务器侧加密化元素;利用所述服务器侧加密化元素而从所述加密化字符串恢复所述认证信息。
所述服务器侧加密化元素可通过如下的数学式来计算。
D'=XKs
(其中,D'为服务器侧加密化元素,X为第一会话密钥元素,Ks为服务器侧私钥)
从所述加密化字符串恢复所述认证信息的步骤可被构成为:通过接收到的所述加密化字符串及所述服务器侧加密化元素之间的异或运算(XOR)来恢复所述认证信息。
认证所述终端的步骤可被构成为:根据恢复的所述认证信息和已存储于所述服务器的所述终端的认证信息的相同与否来认证所述终端。
生成所述服务器侧会话密钥的步骤还可包括如下步骤:由服务器侧随机数计算所述第二会话密钥元素;由所述服务器侧随机数及所述第一会话密钥元素生成服务器侧第三会话密钥元素。
所述服务器侧第三会话密钥元素可通过将所述第一会话密钥元素作为底数,并将所述服务器侧随机数作为指数的乘方来计算。
所述终端可从所述服务器接收所述第二会话密钥元素,并由所述第二会话密钥元素生成终端侧第三会话密钥元素及终端侧会话密钥。
所述终端侧第三会话密钥元素可通过将所述第二会话密钥元素作为底数,并将所述终端侧随机数作为指数的乘方来计算。
所述终端侧会话密钥(sk)可以是包含所述终端ID、所述服务器ID、所述加密化字符串、所述第一会话密钥元素、所述第二会话密钥元素、所述终端侧加密化元素及所述终端侧第三会话密钥元素中的一个以上的字符串的哈希值。
所述服务器侧会话密钥(sk')可以是包含所述终端ID、所述服务器ID、所述加密化字符串、所述第一会话密钥元素、所述第二会话密钥元素、所述服务器侧加密化元素及所述服务器侧第三会话密钥元素中的一个以上的字符串的哈希值。
根据另一个示例性实施例,提供一种计算机程序,该计算机程序为了与硬件结合而执行如下的步骤而存储于介质:利用终端侧随机数及服务器ID来生成与所述终端用户的认证信息对应的基于ID的密文;利用与所述服务器ID对应的服务器侧私钥来对从所述终端接收的所述基于ID的密文进行解密以恢复所述认证信息;利用恢复的所述认证信息来认证所述终端;在所述终端得到认证时,生成与认证的所述终端对应的服务器侧会话密钥。
根据本发明的实施例,可利用用户的认证信息来有效且安全地认证终端,尤其是在初期由服务器执行针对终端的认证,从而可有效地应对分布式阻断服务(DDoS)攻击。
此外,根据本发明的实施例,可将终端的认证及会话密钥的生成所需的通信次数最少可由两通道(pass)构成,由此可最小化认证过程中的通信量负荷。
附图说明
图1是用于说明根据本发明的一个实施例的基于认证信息的认证系统100的框图。
图2是用于说明根据本发明的一个实施例的基于认证信息的认证算法200的整个步骤的流程图。
图3是用于详细说明根据本发明的一个实施例的基于认证信息的认证算法200的认证及密钥交换过程206的流程图。
符号说明:
100:基于用户认证信息的密钥交换系统
102:终端
104:服务器
106:密钥分发装置
具体实施方式
以下,将参照附图对本发明的具体实施方式进行描述。然而,这只不过是示例,并且本发明不限于此。
在对本发明进行描述时,在对与本发明相关联的公知技术的具体描述被认为有可能会使本发明的主旨不清楚的情况下,省略其详细描述。并且,后述的术语作为考虑本发明中的功能而定义的术语,可根据使用者、运用者的意图或者惯例等而不同。因此,其定义应基于贯穿整个本说明书的内容而做出。
本发明的技术构思由权利要求书确定,并且以下的实施例只是用于高效地将本发明的技术思想解释给本发明所属的技术领域中具有普通的知识的技术人员的一种方式而已。
图1是用于说明根据本发明的一个实施例的基于认证信息的认证系统100的框图。如图所示,根据本发明的一个实施例的基于认证信息的认证系统100包括终端102、服务器104及密钥分发装置106。
终端102选择终端侧随机数(x),并利用所述终端侧随机数(x)及服务器104的ID(身份标识号码)(IDs)来生成与终端102用户的认证信息对应的基于ID的密文(X,W)。本发明的实施例中,服务器104的ID(IDs)作为为了在网络上识别服务器104而被赋予的信息,例如可以是服务器104的MAC地址或者IP地址等。此外,终端102用户的认证信息可包括用户的密码、指纹信息等认证所述用户所需的所有种类的信息。
如果生成所述基于ID的密文(X,W),则终端102将所述基于ID的密文(X,W)发送至服务器104以请求认证。
终端104存储及管理终端102用户的认证信息。此时,所述认证信息可包括所述用户的密码、指纹信息等认证所述用户所需的所有信息。在一个实施例中,所述终端102用户可设定自己的ID(IDc)及密码(pw)并将其注册到服务器104。此时,虽然终端102的用户可直接注册所述密码(pw),但是为了提高安全性,可代替所述密码(pw)而注册所述密码的单向哈希值(H(pw))或者利用专门的硬件安全模块(HSM)来计算出的消息认证码(MAC:messageauthenticationcode)值(MACk(pw))。以下的说明中,为了便利性将所述认证信息假设为密码的单向哈希值(H(pw))。
服务器104利用与所述服务器ID(IDs)对应的服务器侧私钥(Ks)来对从所述终端接收的所述基于ID的密文(X,W)进行解密以恢复所述认证信息,并且将恢复的所述认证信息与由用户已登记到服务器104的认证信息进行比较以认证终端102。即,服务器104可通过从终端102接收到的基于ID的密文(X,W)所包含的终端102的认证信息来直接认证终端。此外,由于所述基于ID的密文(X,W)的解密只可以在服务器104进行,因此在所述认证过程中终端102还会隐式认证(implicitauthentication)服务器104。
在终端102的认证中获得成功时,服务器104生成用于与认证的终端102进行通信的会话密钥(sk)。此外,在此过程中,服务器104选择服务器侧随机数(y)并将通过它来生成的第二会话密钥元素(Y)发送至终端102,并且接收该第二会话密钥元素(Y)的终端102利用所述第二会话密钥元素(Y)及在认证过程中使用的信息来生成与服务器104相同的会话密钥(sk)。
密钥分发装置(私钥产生器(PrivateKeyGenerator))106从服务器104接收服务器104的ID(IDs),并且分发与所述ID(IDs)对应的服务器侧私钥(Ks)。所存储的所述服务器侧私钥(Ks)用于在之后的认证过程中对从终端102接收到的基于ID的密文(X,W)进行解密。
在一个实施例中,密钥分发装置106可基于与已设定的系统参数和自己的主密钥以及陷阱门离散对数(Trapdoordiscretelogarithm)群有关的预先计算数据来计算与所述服务器ID(IDs)对应的服务器侧私钥(Ks)。对于具体的服务器侧私钥(Ks)生成方法将在后面进行描述。
以下,对具有上述构成的基于认证信息的认证系统100中的具体认证方法进行说明。如图2所示,根据本发明的实施例的基于认证信息的认证方法200可被划分为如下三个步骤:设置(Setup)202、服务器侧私钥分发(Keyextract)204及密钥交换(KeyExchange)206。其中,在设置步骤202中,定义整个系统的构成要素,在服务器侧私钥分发步骤204中,根据服务器104的请求,由密钥分发装置106基于主密钥而生成与服务器ID(IDs)对应的服务器侧私钥(Ks)。在密钥交换步骤206中,执行终端102及服务器104之间的认证并由此生成会话密钥(sk)。
设置202
本发明的实施例中,设置步骤是对用于终端102和服务器104之间的认证及密钥交换的参数及主密钥进行定义的步骤。
首先,通过分别满足p≡3(mod4)、q≡3(mod4)并且作为B平滑(Bsmooth)的大小差不多的两个大素数p、q来计算N=pq。此时,p和q是满足与给定的安全性参数有关的安全强度(securitylevel)并且密码学角度上安全的素数。安全性参数是指用来确定针对加密算法的基本攻击的时间和费用的算法的要素。此时,基本攻击是指直到发现满足给定的数据(明文和密文)的密钥为止检索所有可能的候选密钥的穷举搜索(ExhaustiveSearch)方式的攻击。由于穷举搜索所需的时间依赖于可能的密钥的数量,而密钥的数量根据密钥的长度来确定,因此在此情况下安全性参数是指密钥的长度。此外,B值可根据所述安全强度而被适当地设定。
接下来,定义哈希函数H及随机哈希函数h。将有限的群ZN={0,1,2,...,N-1}的最大循环子群(maximalcyclicsubgroup)的生成元(generator)表示为现在,将由生成元生成的循环子群定义为G,由此哈希函数H被定义为如数学式1所示。
[数学式1]
H:{0,1}*->G
(其中,{0,1}*是由0和1组成的任意的有限的位串(bitstring))
即,所述哈希函数H被定义为在将给定的ID作为输入值时使得该输出值成为群G的元素。例如,在存在如下的随机哈希函数h':{0,1}*->Zn时,哈希函数H可被定义为如数学式2所示。
[数学式2]
H(ID)=h'(ID)2
此外,哈希函数h被定义为如数学式3所示。
[数学式3]
h:{0,1}*->{0,1}n
(其中,{0,1}n是指由0或者1中的任意比特构成的n比特的字符串)
作为所述随机哈希函数例如可使用SHA1、SHA-256、SHA-512等,但是本发明不限于特定的函数。
通过如上所述的过程导出的系统参数(param)及主密钥(mk)如下。
param={N,G,g,H,h}
mk=(p,q)
服务器侧私钥分发204
本步骤是密钥分发装置106基于从服务器104接收到的服务器ID(IDs)来分发服务器侧私钥(Ks)的步骤。密钥分发装置106基于与所述系统参数(param)及主密钥(mk)以及陷阱门离散对数(TDL)群有关的预先计算数据来计算与给定的ID对应的私钥。虽然在密码学上无法实现离散对数计算,但是在知道陷阱门的情况下,存在能够容易计算离散对数值的群,将其称为陷阱门离散对数群。本发明中,利用如上所述的陷阱门离散对数群的特性来计算与各个ID对应的私钥。即,所述私钥产生器利用关于与所述主密钥和所述陷阱门离散对数有关的各个值的预先计算数据(例如,以表格等形式存储之后接收到的账号和存储于所述表格的预先计算数据)来计算与接收到的ID对应的私钥。例如,密钥分发装置106可如数学式4所示计算服务器侧私钥(Ks)。
[数学式4]
Ks=logg(H(IDs))
如上所述计算的所述私钥(Ks)通过安全的信道被传送至服务器104。
认证及密钥交换206
本步骤是执行终端102和服务器104之间的认证并且生成会话密钥(sk)的步骤。图3是用于说明根据本发明的一个实施例的认证及密钥交换过程206的流程图。
在步骤302中,终端102根据在步骤202中定义的系统参数从ZN选择任意的终端侧随机数(randomnumber)x。
在步骤304中,终端102通过所述终端侧随机数x来计算第一会话密钥元素(X)(302)。此时,第一会话密钥元素(X)可通过如下的数学式5来计算。
[数学式5]
X=gx
(其中,g为所述循环子群G的生成元,N为满足N=pq的整数,p及q分别为满足p≡3(mod4)、q≡3(mod4)的素数)
在步骤306中,终端102利用服务器ID(IDs)来生成基于ID的密文(X,W)。此时,基于ID的密文(X,W)是指对终端102用户的认证信息进行加密的值。此外,除所述认证信息之外,所述基于ID的密文(X,W)还可额外地包括为生成会话密钥所需的值(例如,gx等)。对具体的基于ID的密文(X,W)的生成过程进行说明如下。
首先,终端102利用所述服务器ID(IDs)及终端侧随机数(x),如以下的数学式5所示生成终端侧加密化元素(D)。
[数学式6]
D=(H(IDS))x
(其中,D为终端侧加密化元素,IDs为服务器ID,x为终端侧随机数,H为单向哈希值)
此后,终端102结合认证信息和终端侧加密化元素(D)来生成加密化字符串(W)。在将所述认证信息假设为用户密码的单向哈希值(H(pw))时,加密化字符串(W)可如数学式7所示通过认证信息及终端侧加密化元素(D)的异或运算(XOR)来计算。
[数学式7]
W=DXORH(pw)
在步骤308中,终端102将包含第一会话密钥元素(X)及加密化字符串(W)的基于ID的密文(X,W)连同终端用户的ID(IDc)一起发送至服务器104。
在步骤310中,服务器104利用服务器侧私钥(Ks)对接收到的基于ID的密文(X,W)进行解密。具体地讲,服务器104利用服务器侧私钥(Ks)及第一会话密钥元素(X)来如数学式8所示计算服务器侧加密化元素(D')。
[数学式8]
D'=XKs
(其中,D'为服务器侧加密化元素,X为第一会话密钥元素,Ks为服务器侧私钥)
在这种情况下,如果所述服务器侧私钥(Ks)是从服务器ID(IDs)正常生成的,则服务器侧加密化元素(D')成为与终端侧加密化元素(D)相同的值。
接下来,服务器104利用服务器侧加密化元素(D')而从加密化字符串(W)恢复认证信息。如果通过数学式来表示,则如数学式9所示。
[数学式9]
H'(pw)=WXORD'
即,所述认证信息可通过接收到的加密化字符串(W)及所述服务器侧加密化元素(D')之间的异或运算(XOR)来恢复。
在步骤312中,服务器104可根据恢复的所述认证信息(H'(pw))和已存储于所述服务器的终端102的认证信息(H(pw))的相同与否来认证终端102。如果H'(pw)与H(pw)相同,则服务器104判断为终端102得到认证,如果不相同,则判断为终端102未得到认证。
此外,如上所述,在服务器104侧不具有与服务器ID(IDs)对应的准确的服务器侧私钥(Ks)时,所述步骤310可被正常执行。由此,终端102可根据所述认证的结果值来隐式认证服务器104。
在步骤314中,服务器104根据在所述步骤202中定义的系统参数从ZN选择任意的服务器侧随机数(randomnumber)y。
在步骤316中,服务器104通过所述服务器侧随机数(y)来计算第二会话密钥元素(Y)。此时,所述第二会话密钥元素(Y)可通过如下的数学式10来计算。
[数学式10]
Y=gy
(其中,g为所述循环子群G的生成元,N为满足N=pq的整数,p及q分别为满足p≡3(mod4)、q≡3(mod4)的素数)
在步骤318中,服务器104将生成的所述第二会话密钥元素(Y)发送至终端102。
在步骤320中,服务器104利用在之前的步骤中生成或者交换的信息而生成服务器侧会话密钥(sk')。
具体地讲,服务器104通过所述服务器侧随机数(y)及第一会话密钥元素(X)来如数学式11所示生成服务器侧第三会话密钥元素(Z')。
[数学式11]
Z'=Xy
接下来,服务器104通过对包含终端ID(IDc)、服务器ID(IDs)、加密化字符串(W)、第一会话密钥元素(X)、第二会话密钥元素(Y)、服务器侧加密化元素(D')及服务器侧第三会话密钥元素(Z')中的一个以上的字符串进行散列(hashing)来生成服务器侧会话密钥(sk')。例如,服务器侧会话密钥(sk')可根据如下的数学式12来生成。
[数学式12]
sk'=H(IDc,IDs,W,X,Y,D',Z')
此外,在步骤322中,终端102利用在之前的步骤中生成或者交换的信息生成终端侧会话密钥(sk)。
具体地讲,终端102通过终端侧随机数(x)及第二会话密钥元素(Y)来如数学式13所示生成终端侧第三会话密钥元素(Z)。
[数学式13]
Z=Yx
此时,所述终端侧密钥(Z)与服务器侧第三会话密钥元素(Z')相同。
接下来,终端102通过对包含终端ID(IDc)、服务器ID(IDs)、加密化字符串(W)、第一会话密钥元素(X)、第二会话密钥元素(Y)、终端侧加密化元素(D)及终端侧第三会话密钥元素(Z)中的一个以上的字符串进行散列(hashing)来生成终端侧会话密钥(sk)。例如,终端侧会话密钥(sk)可根据如下的数学式14来生成。
[数学式14]
sk=H(IDc,IDs,W,X,Y,D,Z)
如上所述,由于终端侧加密化元素(D)及终端侧第三会话密钥元素(Z)分别与服务器侧加密化元素(D')及服务器侧第三会话密钥元素(Z')相同,因此终端侧会话密钥(sk)也与服务器侧会话密钥(sk')相同。即,通过如上所述的过程,即使终端102和服务器104不直接收发密钥,也可以共享用于两者之间的安全的通信的会话密钥。
此外,本发明的实施例可包括记录有用于在计算机上执行本说明书中记载的方法的程序的计算机可读记录介质。所述计算机可读记录介质可单独地包括程序命令、本地数据文件、本地数据结构等,或者包括它们的组合。所述介质可以是为了本发明而特别设计并构成的,或者也可以是计算机软件领域的普通技术人员所公知而可以使用的介质。所述计算机可读记录介质的示例包括为了存储并执行程序命令而专门构成的诸如硬盘、软盘及磁带的磁介质、诸如CD-ROM、DVD的光记录介质、诸如软盘的磁光介质及ROM、RAM、闪存等硬件装置。程序命令的示例可包括由编译器编写的机器语言代码以及使用解释器等而由计算机来执行的高级语言代码。
虽然已通过代表性实施例对本发明的代表性实施例进行了详细描述,但本发明所属的技术领域中具有公知常识的技术人员应该理解在不脱离本发明的范围的情况下可以对上述实施例进行各种变形。
因此,本发明的权利范围不应局限于所描述的实施例而确定,而是应当由权利要求书及其等同物来确定。

Claims (28)

1.一种基于用户认证信息的密钥交换系统,包括:
终端,利用终端侧随机数及服务器ID来生成与所述终端用户的认证信息对应的基于ID的密文;
服务器,利用与所述服务器ID对应的服务器侧私钥来对从所述终端接收的所述基于ID的密文进行解密以恢复所述认证信息,并利用恢复的所述认证信息来认证所述终端,并且生成与认证的所述终端对应的服务器侧会话密钥。
2.根据权利要求1所述的基于用户认证信息的密钥交换系统,其中,
所述终端由所述终端侧随机数计算第一会话密钥元素,并由所述服务器ID及所述终端侧随机数生成终端侧加密化元素,并且结合所述认证信息和所述终端侧加密化元素而生成加密化字符串。
3.根据权利要求2所述的基于用户认证信息的密钥交换系统,其中,
所述终端侧加密化元素通过如下的数学式来计算:
D=(H(IDS))x
其中,D为终端侧加密化元素,IDS为服务器ID,x为终端侧随机数,H为单向哈希值。
4.根据权利要求2所述的基于用户认证信息的密钥交换系统,其中,
所述加密化字符串通过所述认证信息及所述终端侧加密化元素的异或运算来计算。
5.根据权利要求2所述的基于用户认证信息的密钥交换系统,其中,
所述服务器从所述终端接收包含所述第一会话密钥元素及所述加密化字符串的基于ID的密文,并通过所述服务器侧私钥及所述第一会话密钥元素来计算服务器侧加密化元素,并且利用所述服务器侧加密化元素而从所述加密化字符串恢复所述认证信息。
6.根据权利要求5所述的基于用户认证信息的密钥交换系统,其中,
所述服务器侧加密化元素通过如下的数学式来计算:
D'=XKs
其中,D'为服务器侧加密化元素,X为第一会话密钥元素,Ks为服务器侧私钥。
7.根据权利要求5所述的基于用户认证信息的密钥交换系统,其中,
所述认证信息通过接收到的所述加密化字符串及所述服务器侧加密化元素之间的异或运算来恢复。
8.根据权利要求2所述的基于用户认证信息的密钥交换系统,其中,
所述服务器根据恢复的所述认证信息和已存储于所述服务器的所述终端的认证信息的相同与否来认证所述终端。
9.根据权利要求2所述的基于用户认证信息的密钥交换系统,其中,
所述服务器在所述终端得到认证时,由服务器侧随机数计算第二会话密钥元素,并且由所述服务器侧随机数及所述第一会话密钥元素来生成服务器侧第三会话密钥元素。
10.根据权利要求9所述的基于用户认证信息的密钥交换系统,其中,
所述服务器侧第三会话密钥元素通过将所述第一会话密钥元素作为底数并将所述服务器侧随机数作为指数的乘方来计算。
11.根据权利要求9所述的基于用户认证信息的密钥交换系统,其中,
所述终端从所述服务器接收所述第二会话密钥元素,并由所述第二会话密钥元素生成终端侧第三会话密钥元素及终端侧会话密钥。
12.根据权利要求11所述的基于用户认证信息的密钥交换系统,其中,
所述终端侧第三会话密钥元素通过将所述第二会话密钥元素作为底数并将所述终端侧随机数作为指数的乘方来计算。
13.根据权利要求11所述的基于用户认证信息的密钥交换系统,其中,
所述终端侧会话密钥是包含所述终端ID、所述服务器ID、所述加密化字符串、所述第一会话密钥元素、所述第二会话密钥元素、所述终端侧加密化元素及所述终端侧第三会话密钥元素中的一个以上的字符串的哈希值。
14.根据权利要求9所述的基于用户认证信息的密钥交换系统,其中,
所述服务器侧会话密钥是包含所述终端ID、所述服务器ID、所述加密化字符串、所述第一会话密钥元素、所述第二会话密钥元素、所述服务器侧加密化元素及所述服务器侧第三会话密钥元素中的一个以上的字符串的哈希值。
15.一种基于用户认证信息的密钥交换方法,包括如下步骤:
在终端中,利用终端侧随机数及服务器ID来生成与所述终端用户的认证信息对应的基于ID的密文;
在服务器中,利用与所述服务器ID对应的服务器侧私钥来对从所述终端接收的所述基于ID的密文进行解密以恢复所述认证信息;
在所述服务器中,利用恢复的所述认证信息来认证所述终端;
在所述终端得到认证时,生成与认证的所述终端对应的服务器侧会话密钥。
16.根据权利要求15所述的基于用户认证信息的密钥交换方法,其中,
生成所述基于ID的密文的步骤还包括如下步骤:
由所述终端侧随机数计算第一会话密钥元素;
由所述服务器ID及所述终端侧随机数生成终端侧加密化元素;
结合所述认证信息和所述终端侧加密化元素而生成加密化字符串。
17.根据权利要求16所述的基于用户认证信息的密钥交换方法,其中,
所述终端侧加密化元素通过如下的数学式来计算:
D=(H(IDS))x
其中,D为终端侧加密化元素,IDS为服务器ID,x为终端侧随机数,H为单向哈希值。
18.根据权利要求16所述的基于用户认证信息的密钥交换方法,其中,
所述加密化字符串通过所述认证信息及所述终端侧加密化元素的异或运算来计算。
19.根据权利要求16所述的基于用户认证信息的密钥交换方法,其中,
恢复所述认证信息的步骤还包括如下步骤:
从所述终端接收包含所述第一会话密钥元素及所述加密化字符串的基于ID的密文;
通过所述服务器侧私钥及所述第一会话密钥元素来计算服务器侧加密化元素;
利用所述服务器侧加密化元素而从所述加密化字符串恢复所述认证信息。
20.根据权利要求19所述的基于用户认证信息的密钥交换方法,其中,
所述服务器侧加密化元素通过如下的数学式来计算:
D'=XKs
其中,D'为服务器侧加密化元素,X为第一会话密钥元素,Ks为服务器侧私钥。
21.根据权利要求19所述的基于用户认证信息的密钥交换方法,其中,
从所述加密化字符串恢复所述认证信息的步骤被构成为:
通过接收到的所述加密化字符串及所述服务器侧加密化元素之间的异或运算来恢复所述认证信息。
22.根据权利要求16所述的基于用户认证信息的密钥交换方法,其中,
认证所述终端的步骤被构成为:
根据恢复的所述认证信息和已存储于所述服务器的所述终端的认证信息的相同与否来认证所述终端。
23.根据权利要求16所述的基于用户认证信息的密钥交换方法,其中,
生成所述服务器侧会话密钥的步骤还包括如下步骤:
由服务器侧随机数计算第二会话密钥元素;
由所述服务器侧随机数及所述第一会话密钥元素生成服务器侧第三会话密钥元素。
24.根据权利要求23所述的基于用户认证信息的密钥交换方法,其中,
所述服务器侧第三会话密钥元素通过将所述第一会话密钥元素作为底数并将所述服务器侧随机数作为指数的乘方来计算。
25.根据权利要求23所述的基于用户认证信息的密钥交换方法,其中,
所述终端从所述服务器接收所述第二会话密钥元素,并由所述第二会话密钥元素生成终端侧第三会话密钥元素及终端侧会话密钥。
26.根据权利要求25所述的基于用户认证信息的密钥交换方法,其中,
所述终端侧第三会话密钥元素通过将所述第二会话密钥元素作为底数,并将所述终端侧随机数作为指数的乘方来计算。
27.根据权利要求25所述的基于用户认证信息的密钥交换方法,其中,
所述终端侧会话密钥是包含所述终端ID、所述服务器ID、所述加密化字符串、所述第一会话密钥元素、所述第二会话密钥元素、所述终端侧加密化元素及所述终端侧第三会话密钥元素中的一个以上的字符串的哈希值。
28.根据权利要求23所述的基于用户认证信息的密钥交换方法,其中,
所述服务器侧会话密钥是包含所述终端ID、所述服务器ID、所述加密化字符串、所述第一会话密钥元素、所述第二会话密钥元素、所述服务器侧加密化元素及所述服务器侧第三会话密钥元素中的一个以上的字符串的哈希值。
CN201410736759.6A 2014-09-05 2014-12-05 基于认证信息的密钥交换系统及方法 Active CN105721153B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2014-0119260 2014-09-05
KR20140119260 2014-09-05

Publications (2)

Publication Number Publication Date
CN105721153A true CN105721153A (zh) 2016-06-29
CN105721153B CN105721153B (zh) 2020-03-27

Family

ID=55438594

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410736759.6A Active CN105721153B (zh) 2014-09-05 2014-12-05 基于认证信息的密钥交换系统及方法

Country Status (3)

Country Link
US (1) US9621519B2 (zh)
KR (1) KR101685810B1 (zh)
CN (1) CN105721153B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106603485A (zh) * 2016-10-31 2017-04-26 美的智慧家居科技有限公司 密钥协商方法及装置
CN109863770A (zh) * 2016-10-19 2019-06-07 高通股份有限公司 用于设备设定协议(dpp)的配置器密钥包
CN113014534A (zh) * 2019-12-21 2021-06-22 浙江宇视科技有限公司 一种用户登录与认证的方法及装置

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016132719A1 (ja) * 2015-02-16 2016-08-25 日本電気株式会社 通信システム、ノード装置、通信端末、キー管理方法及びプログラムが格納された非一時的なコンピュータ可読媒体
US9853965B2 (en) * 2015-08-24 2017-12-26 Verizon Patent And Licensing Inc. Authentication service for third party applications
US10218698B2 (en) * 2015-10-29 2019-02-26 Verizon Patent And Licensing Inc. Using a mobile device number (MDN) service in multifactor authentication
SG10201701044SA (en) * 2017-02-09 2018-09-27 Huawei Int Pte Ltd System and method for computing private keys for self certified identity based signature schemes
CN108076062A (zh) * 2017-12-22 2018-05-25 深圳市汇川技术股份有限公司 物联网设备安全通信系统、方法、联网设备及服务器
KR102192330B1 (ko) * 2018-12-10 2020-12-17 주식회사 시티캣 보안단말기를 이용한 저장장치의 데이터 보안 관리 시스템 및 방법
KR102424873B1 (ko) * 2020-08-14 2022-07-22 세종대학교산학협력단 비밀번호 및 행동 패턴을 이용한 멀티 팩터 인증 시스템 및 방법
WO2023077280A1 (en) * 2021-11-02 2023-05-11 Huawei Technologies Co., Ltd. Certificate-less authentication and secure communication

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101018129A (zh) * 2006-12-31 2007-08-15 华东师范大学 公共安全播控媒体管理与识别其完整未被篡改的认证方法
CN101026454A (zh) * 2006-02-24 2007-08-29 中兴通讯股份有限公司 一种用户终端接入软交换系统的安全交互方法
CN101127600A (zh) * 2006-08-14 2008-02-20 华为技术有限公司 一种用户接入认证的方法
CN101771535A (zh) * 2008-12-30 2010-07-07 上海茂碧信息科技有限公司 终端和服务器之间的双向认证方法
US20100211779A1 (en) * 2009-02-17 2010-08-19 Sundaram Ganapathy S Identity Based Authenticated Key Agreement Protocol
CN102307178A (zh) * 2011-03-15 2012-01-04 陈建国 Pstn-ip双网协作通信的交换控制方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2825869B1 (fr) * 2001-06-08 2003-10-03 France Telecom Procede d'authentification entre un objet de telecommunication portable et une borne d'acces public
JP3754004B2 (ja) * 2002-05-20 2006-03-08 システムニーズ株式会社 データ更新方法
JP4553565B2 (ja) * 2002-08-26 2010-09-29 パナソニック株式会社 電子バリューの認証方式と認証システムと装置
KR20040050625A (ko) * 2002-12-10 2004-06-16 한국전자통신연구원 대칭형 및 비대칭형 인증 키 교환을 이용한 인증방법
JP4487490B2 (ja) * 2003-03-10 2010-06-23 ソニー株式会社 情報処理装置、およびアクセス制御処理方法、情報処理方法、並びにコンピュータ・プログラム
US7660417B2 (en) * 2003-09-26 2010-02-09 Telefonaktiebolaget Lm Ericsson (Publ) Enhanced security design for cryptography in mobile communication systems
KR101765917B1 (ko) * 2011-01-06 2017-08-24 삼성전자주식회사 개인망 엔티티 인증을 위한 방법
KR101493214B1 (ko) * 2012-10-31 2015-02-24 삼성에스디에스 주식회사 패스워드 기반 인증 방법 및 이를 수행하기 위한 장치
KR101493212B1 (ko) * 2012-10-31 2015-02-23 삼성에스디에스 주식회사 아이디 기반 암호화, 복호화 방법 및 이를 수행하기 위한 장치
WO2014069783A1 (ko) * 2012-10-31 2014-05-08 삼성에스디에스 주식회사 패스워드 기반 인증 방법 및 이를 수행하기 위한 장치
KR101460541B1 (ko) * 2013-07-15 2014-11-11 고려대학교 산학협력단 사용자 아이디 기반 공개키 암호화 방법
KR102124413B1 (ko) * 2013-12-30 2020-06-19 삼성에스디에스 주식회사 아이디 기반 키 관리 시스템 및 방법
CN106130716B (zh) * 2015-05-06 2020-01-21 三星Sds株式会社 基于认证信息的密钥交换系统及方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101026454A (zh) * 2006-02-24 2007-08-29 中兴通讯股份有限公司 一种用户终端接入软交换系统的安全交互方法
CN101127600A (zh) * 2006-08-14 2008-02-20 华为技术有限公司 一种用户接入认证的方法
CN101018129A (zh) * 2006-12-31 2007-08-15 华东师范大学 公共安全播控媒体管理与识别其完整未被篡改的认证方法
CN101771535A (zh) * 2008-12-30 2010-07-07 上海茂碧信息科技有限公司 终端和服务器之间的双向认证方法
US20100211779A1 (en) * 2009-02-17 2010-08-19 Sundaram Ganapathy S Identity Based Authenticated Key Agreement Protocol
CN102318258A (zh) * 2009-02-17 2012-01-11 阿尔卡特朗讯公司 基于身份的认证密钥协商协议
CN102307178A (zh) * 2011-03-15 2012-01-04 陈建国 Pstn-ip双网协作通信的交换控制方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109863770A (zh) * 2016-10-19 2019-06-07 高通股份有限公司 用于设备设定协议(dpp)的配置器密钥包
CN106603485A (zh) * 2016-10-31 2017-04-26 美的智慧家居科技有限公司 密钥协商方法及装置
CN106603485B (zh) * 2016-10-31 2020-03-03 美的智慧家居科技有限公司 密钥协商方法及装置
CN113014534A (zh) * 2019-12-21 2021-06-22 浙江宇视科技有限公司 一种用户登录与认证的方法及装置

Also Published As

Publication number Publication date
US20160072775A1 (en) 2016-03-10
KR101685810B1 (ko) 2016-12-12
KR20160029640A (ko) 2016-03-15
CN105721153B (zh) 2020-03-27
US9621519B2 (en) 2017-04-11

Similar Documents

Publication Publication Date Title
US9515825B2 (en) Method for password based authentication and apparatus executing the method
CN106130716B (zh) 基于认证信息的密钥交换系统及方法
CN105721153A (zh) 基于认证信息的密钥交换系统及方法
US9379891B2 (en) Method and system for ID-based encryption and decryption
US20170244687A1 (en) Techniques for confidential delivery of random data over a network
KR101493214B1 (ko) 패스워드 기반 인증 방법 및 이를 수행하기 위한 장치
CN110519046B (zh) 基于一次性非对称密钥对和qkd的量子通信服务站密钥协商方法和系统
WO2019216950A1 (en) Password based threshold token generation
CN106850207B (zh) 无ca的身份认证方法和系统
CN111416715B (zh) 基于秘密共享的量子保密通信身份认证系统及方法
CN107294696B (zh) 针对Leveled全同态密钥分配方法
Chen et al. Security analysis and improvement of user authentication framework for cloud computing
Barkha Implementation of DNA cryptography in cloud computing and using socket programming
CN111416712B (zh) 基于多个移动设备的量子保密通信身份认证系统及方法
CN116388995A (zh) 一种基于puf的轻量级智能电网认证方法
CN111245611B (zh) 基于秘密共享和可穿戴设备的抗量子计算身份认证方法及系统
CN106257859A (zh) 一种密码使用方法
CN110048852B (zh) 基于非对称密钥池的量子通信服务站数字签密方法和系统
CN111245609A (zh) 基于秘密共享和随机数的量子保密通信密钥分发和协商系统及其方法
Chandrakar et al. A secure two-factor mutual authentication and session key agreement protocol using Elliptic curve cryptography
CN115913521A (zh) 基于量子密钥进行身份认证的方法
CN114244531A (zh) 基于强puf的轻量级自更新消息认证方法
EP3883178A1 (en) Encryption system and method employing permutation group-based encryption technology
CN110572788A (zh) 基于非对称密钥池和隐式证书的无线传感器通信方法和系统
CN110572257A (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
GR01 Patent grant
GR01 Patent grant