CN107241190A - 一种基于身份的密钥协商构建方法与网络平台 - Google Patents
一种基于身份的密钥协商构建方法与网络平台 Download PDFInfo
- Publication number
- CN107241190A CN107241190A CN201710661488.6A CN201710661488A CN107241190A CN 107241190 A CN107241190 A CN 107241190A CN 201710661488 A CN201710661488 A CN 201710661488A CN 107241190 A CN107241190 A CN 107241190A
- Authority
- CN
- China
- Prior art keywords
- key
- identity
- user
- agreement
- layers
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key 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/0847—Key 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 identity based encryption [IBE] schemes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种基于身份的密钥协商构建方法与网络平台。方法为:***建立:公开***参数,保密主私钥;密钥提取:给定一个用户U的身份,PKG计算该用户的私钥,分别计算此处密钥协商双方A、B的公、私钥;密钥协商:A、B分别随机选取,计算各自的临时会话密钥,并将各自生成的值发送给对方;计算最终的共享密钥。所述网络平台为:网站采用MVC架构模型,Controller层:负责转发请求,以及对请求进行处理;View层:与用户进行交互;Model层:实现程序算法功能,与数据库进行交互,其中Model层中Service层与Dao层实现了该基于身份的密钥协商协议。本发明直接以用户的身份标识作为公钥,简化了公钥的使用与管理,具有广阔的应用前景。
Description
技术领域
本发明属于通信技术领域,特别是一种基于身份的密钥协商构建方法与网络平台。
背景技术
密钥建立(key establishment)是指通信双方或者多方建立一个共享的会话密钥的过程。目前流行的有两种方法可以在双方之间建立一个会话密钥,一种方法为通信的一方自己生成一个会话密钥并将这个会话密钥安全地传递给另一方,这样的方法称之为密钥传输。第二种方法为通信双方都贡献一部分信息,这些信息共同推出了一个会话密钥,这样的方法称之为密钥协商,如果Alice确信只有Bob能够(其它人不能够)确定会话密钥的值,那么称这个密钥协商协议提供了Bob到Alice的密钥认证性。如果一个密钥协商协议提供了相互的密钥确认性,那么称这个密钥协商协议为认证密钥协商协议。一个认证的密钥协商协议应该满足以下两个基本的安全属性(这里以Alice和Bob为通信双方来说明):
(1)含蓄密钥认证(implicit key authentication):如果Alice确信只有特定的通信方Bob(不会有其他人)可能知道会话密钥,那么称这个密钥协商协议提供了Bob到Alice的含蓄密钥认证。需要注意的是,含蓄密钥认证并不一定说明Alice相信Bob已经得到了会话密钥。
(2)明确密钥认证(explicit key authentication):如果Alice确信另一通信方Bob已经得到了会话密钥,那么称这个密钥协商协议提供了Bob到Alice的明确密钥认证或者是明确密钥确认。
从表面上看,明确密钥认证好像比含蓄密钥认证要强。但对于很多实际应用来说,这两者是相同的。此外,某些时候,还需要密钥协商协议满足以下安全属性。
(1)已知密钥安全(known key security):每次运行密钥协商协议都应该生成唯一的会话密钥。即使知道了过去的一些会话密钥,敌手也不能凭此推算出现在的或者将来的会话密钥。
(2)前向安全性(forward security):如果Alice和Bob的私钥泄露了,那么过去产生的会话密钥就无法恢复出来。有时候前向安全性又分为半前向安全性(half forwardsecurity)和完全前向安全性(full forward security)。半前向安全性指的是只有一方泄露了自己的私钥,过去产生的会话密钥不能被恢复出来。完全前向安全性指的是双方的私钥都泄露了,过去产生的会话密钥也不能被敌手恢复出来。
(3)密钥妥协假冒(key-compromise impersonation):如果Alice的私钥SA被敌手知道了。明显地,敌手可以伪装成Alice。但在某些情况下,要求敌手不能在Alice面前伪装成Bob。同样地,如果Bob的私钥SB泄露了,那么敌手不能在Bob面前伪装成Alice。
(4)未知密钥共享(unknown key-share):Bob不能在不知情的情况下被强迫与Alice共享一个会话密钥,也就是说,Bob认为他与Carol共享了一个会话密钥,但是Alice却认为他与Bob共享了这个会话密钥。
(5)密钥控制(key control):Alice和Bob都不能控制会话密钥的结构,也就是说他们不能设定会话密钥等于他们事先设置的值,也不能够预测会话密钥的值。
传统的基于证书的公钥密码体制每一个用户的公钥都伴随一个公钥证书,这个公钥证书由CA(权威中心)签发。公钥证书是一个结构化的数据记录,它包含了用户的身份信息、公钥参数和CA的签名等。任何人都可以通过验证证书的合法性(CA的签名)来认证公钥。如果一个用户信任CA,那么在他验证了另一个用户证书的有效性之后,他就应该相信公钥的真实性。这就是人们常说的PKI(公钥基础设施)。但是这种方式相比于基于身份的密码体制有两个明显的缺点:
(1)使用任何公钥之前都需要先验证公钥证书的合法性,这就增加了用户的计算量。
(2)CA需要管理大量的证书,包括证书的颁发,存储与撤销等。
发明内容
本发明的目的在于提供一种基于身份的密钥协商构建方法与网络平台,使得生成的双方基于身份的会话密钥具有更高的效率与安全性。
实现本发明目的的技术解决方案为:一种基于身份的密钥协商构建方法,构造基于身份的密钥交换协议并将其以网站的形式实现,网站采用MVC架构模型,其中Model层中Service层与Dao层实现了该基于身份的密钥协商协议,具体如下:
(1)***建立:公开***参数:{G1,GT,p,e,P,Ppub,H1,H2},保密主私钥s;
其中,G1:为由P生成的p阶加法循环群;
GT:与G1同阶的乘法循环群;
e:G1×G1→GT为双线性映射;
H1:{0,1}*→G1为一个安全的Hash函数;
H2:为密钥提取函数;
为PKG随机选取的***主私钥;
Ppub=sP:为***主公钥;
(2)密钥提取:给定一个用户U的身份IDU,PKG计算该用户的私钥SU=sQU,其中QU=H1(IDU)是该用户的公钥,分别计算此处密钥协商双方A、B的公、私钥;
其中,IDU:代表用于U的身份;
SU:代表用户U的私钥,SU=sQU;
QU:代表用户U的公钥,QU=H1(IDU);
(3)密钥协商:A、B分别随机选取计算各自的临时会话密钥TA=aP,TB=bP,并将各自生成的值发送给对方;A计算h=aTB,KAB=e(aPpub+SA,TB+QB),类似地,B计算h=bTA,KBA=e(bPpub+SB,TA+QA),最终的共享密钥为H2(h,KAB);
其中,TA:为Alice的临时会话密钥,TA=aP,其中
TB:为Bob的临时会话密钥,TB=bP,其中
KAB:为Alice计算出的未经过哈希的会话密钥,KAB=e(aPpub+SA,TB+QB);
KBA:为Bob计算出的未经过哈希的会话密钥,KBA=e(bPpub+SB,TA+QA);
h:防止已知密钥攻击的临时会话因子,h=aTB,h=bTA。
进一步地,所述密钥协商过程中,涉及三个参与者,包括***管理员admin,协商密钥双方A、B,具体步骤如下:
第一步:***管理员admin登录,进行***初始化;
第二步:将要进行密钥协商的两方用户分别在自己的设备上登录,并在用户列表中分别选择将要共享密钥的人员;
第三步:密钥协商,
(1)由一方作为发起密钥协商方A向服务器发起请求,获得基于自己身份的私钥,用户B操作同A一致;
(2)A向***发出计算临时密钥的请求,计算临时会话密钥TA,B操作同A,生成临时密钥TB;
(3)***根据临时密钥计算出最终A、B共同协商的会话密钥。
一种基于身份的密钥协商网络平台,包括以下部分:
Controller层:负责转发请求,以及对请求进行处理;
View层:与用户进行交互;
Model层:实现程序算法功能,与数据库进行交互,Model层包含了进行业务逻辑处理的Service层,以及与数据库操作***进行交互的Dao层。
进一步地,所述Service层与Dao层实现下述的密钥协商算法:
密钥协商过程中,涉及三个参与者,包括***管理员admin,协商密钥双方A、B,具体步骤如下:
第一步:***管理员admin登录,进行***初始化;
第二步:将要进行密钥协商的两方用户分别在自己的设备上登录,并在用户列表中分别选择将要共享密钥的人员;
第三步:密钥协商,
(1)由一方作为发起密钥协商方A向服务器发起请求,获得基于自己身份的私钥,用户B操作同A一致;
(2)A向***发出计算临时密钥的请求,计算临时会话密钥TA,B操作同A,生成临时密钥TB;
(3)***根据临时密钥计算出最终A、B共同协商的会话密钥。
本发明与现有技术相比,其显著优点为:(1)基于身份两方的密钥协商协议,将上述协议使用网站的形式实现,在网站上对该协议的安全性进行攻击演示,安全性较好,可以抵抗多种攻击,包括前向安全性攻击、已知密钥攻击、密钥妥协假冒攻击;(2)基于身份的公钥密码体制直接以用户的身份标识作为公钥,不需要证书和相关操作,简化了公钥的使用与管理。
附图说明
图1是基于身份的密钥协商体系示意图。
图2是攻击演示流程图。
图3是基于身份的公钥密码体制示意图。
图4是密钥协商流程图。
图5是密钥协商阶段流程图,其中(a)是清除历史数据阶段界面图,(b)是用户成功登陆后的协商密钥界面中Alice的界面图,(c)是用户成功登陆后的协商密钥界面中Bob的界面图。
图6是一次密钥协商中生成用户的私钥界面图,其中(a)是一次密钥协商中生成用户Alice的私钥截面图,(b)是一次密钥协商中生成用户Bob的私钥界面图。
图7是临时会话密钥生成界面图,其中(a)是Alice临时会话密钥生成界面图,(b)是Bob临时会话密钥生成界面图。
图8是协商密钥生成界面图,其中(a)是Alice协商密钥生成界面图,(b)是Bob协商密钥生成界面图。
图9是管理员界面图。
图10是用户Alice密钥协商界面图。
图11是前向安全性攻击演示结果图,其中(a)是Alice的共享密钥结果图,(b)是Bob的共享密钥结果图,(c)是敌手的结果示意图。
图12是已知密钥攻击演示结果图,其中(a)是已知密钥攻击下首次协商密钥结果图,(b)是已知密钥攻击下二次协商的密钥结果图。
图13是密钥妥协假冒攻击演示结果图,其中(a)是密钥妥协假冒攻击下Alice的结果页面图,(b)是密钥妥协假冒敌手结果页面图。
具体实施方式
本发明提出了一种基于身份的密钥协商构建方法,构造基于身份的密钥交换协议并将其以网站的形式实现,网站采用MVC架构模型,其中Model层中Service层与Dao层实现了该基于身份的密钥协商协议,具体如下:
(1)***建立:公开***参数:{G1,GT,p,e,P,Ppub,H1,H2},保密主私钥s;
其中,G1:为由P生成的p阶加法循环群;
GT:与G1同阶的乘法循环群;
e:G1×G1→GT为双线性映射;
H1:{0,1}*→G1为一个安全的Hash函数;
H2:为密钥提取函数;
为PKG随机选取的***主私钥;
Ppub=sP:为***主公钥;
(2)密钥提取:给定一个用户U的身份IDU,PKG计算该用户的私钥SU=sQU,其中QU=H1(IDU)是该用户的公钥,分别计算此处密钥协商双方A、B的公、私钥;
其中,IDU:代表用于U的身份;
SU:代表用户U的私钥,SU=sQU;
QU:代表用户U的公钥,QU=H1(IDU);
(3)密钥协商:A、B分别随机选取计算各自的临时会话密钥TA=aP,TB=bP,并将各自生成的值发送给对方;A计算h=aTB,KAB=e(aPpub+SA,TB+QB),类似地,B计算h=bTA,KBA=e(bPpub+SB,TA+QA),最终的共享密钥为H2(h,KAB);
其中,TA:为Alice的临时会话密钥,TA=aP,其中
TB:为Bob的临时会话密钥,TB=bP,其中
KAB:为Alice计算出的未经过哈希的会话密钥,KAB=e(aPpub+SA,TB+QB);
KBA:为Bob计算出的未经过哈希的会话密钥,KBA=e(bPpub+SB,TA+QA);
h:防止已知密钥攻击的临时会话因子,h=aTB,h=bTA。
上述述密钥协商过程中,涉及三个参与者,包括***管理员admin,协商密钥双方A、B,具体步骤如下:
第一步:***管理员admin登录,进行***初始化;
第二步:将要进行密钥协商的两方用户分别在自己的设备上登录,并在用户列表中分别选择将要共享密钥的人员;
第三步:密钥协商,
(1)由一方作为发起密钥协商方A向服务器发起请求,获得基于自己身份的私钥,用户B操作同A一致;
(2)A向***发出计算临时密钥的请求,计算临时会话密钥TA,B操作同A,生成临时密钥TB;
(3)***根据临时密钥计算出最终A、B共同协商的会话密钥。
本发明利用Java语言编写开发了一个基于身份的密钥协商网络平台,包括以下部分:负责转发请求,以及对请求进行处理的Controller层;与用户进行交互的View层;实现程序算法功能,与数据库进行交互的Model层,而Model层又主要包含了进行业务逻辑处理的Service层,以及与数据库操作***进行交互的Dao层。
本发明采用一种新的双线性对的基于身份的密钥协商方案的算法进行密钥交换,网站的Service层与Dao层完全的实现了上述的密钥协商算法,使用这种新型算法编写的Service层与Dao层,使得网站可以提供前向安全性攻击、已知密钥攻击、密钥妥协假冒攻击的三种攻击演示。所述Service层与Dao层实现下述的密钥协商算法:
密钥协商过程中,涉及三个参与者,包括***管理员admin,协商密钥双方A、B,具体步骤如下:
第一步:***管理员admin登录,进行***初始化;
第二步:将要进行密钥协商的两方用户分别在自己的设备上登录,并在用户列表中分别选择将要共享密钥的人员;
第三步:密钥协商,
(1)由一方作为发起密钥协商方A向服务器发起请求,获得基于自己身份的私钥,用户B操作同A一致;
(2)A向***发出计算临时密钥的请求,计算临时会话密钥TA,B操作同A,生成临时密钥TB;
(3)***根据临时密钥计算出最终A、B共同协商的会话密钥。
另一方面,在满足上述安全性的前提下,该网站还可以给一定数量的合法用户提供在线密钥协商服务。与传统的基于证书的公钥密码体制相比,基于身份的公钥密码体制直接以用户的身份标识作为公钥,不需要证书和相关操作,简化了公钥的使用与管理,在实际应用中,具有广阔的应用前景。
下面结合附图和实施例对本发明做进一步详细说明。
实施例1
本实施例中基于身份的两方的密钥协商协议,将上述该协议使用网站的形式实现,在该网站上对该协议的安全性进行攻击演示,具体如下:
(1)一种新的基于身份的两方的密钥协商协议。
该协议主要涉及的算法有基于身份的密钥协商方案。基于身份的密钥协商方案,是由三个阶段组成的:***建立、密钥提取(用户的公私钥)、密钥协商,本***是对Shim(Shim K.Efficient ID-based authenticated key agreement protocol based on Weilpairing.Electronics Letters,2003,39(8):653-654.)提出的基于身份的密钥协商方案的改进,基于身份的密钥协商体系示意图如图1,整个过程的具体步骤如下:
(1)***建立:公开***参数:{G1,GT,p,e,P,Ppub,H1,H2},保密主私钥s;
其中,G1:为由P生成的加法循环群;
GT:为与G1同阶的乘法循环群;
e:G1×G1→GT为双线性映射;
H1:{0,1}*→G1为一个安全的Hash函数;
H2:为密钥提取函数;
为PKG随机选取的***主私钥;Ppub=sP:为***主公钥;
(2)密钥提取:给定一个用户U的身份IDU,PKG计算该用户的私钥SU=sQU,其中QU=H1(IDU)是该用户的公钥,分别计算此处密钥协商双方A、B的公、私钥;
其中,IDU:代表用于U的身份;
SU:代表用户U的私钥,SU=sQU;
QU:代表用户U的公钥,QU=H1(IDU);
(3)密钥协商:A、B分别随机选取计算各自的临时会话密钥TA=aP,TB=bP,并将各自生成的值发送给对方;A计算h=aTB,KAB=e(aPpub+SA,TB+QB),类似地,B计算h=bTA,KBA=e(bPpub+SB,TA+QA),最终的共享密钥为H2(h,KAB);
其中,TA:为Alice的临时会话密钥,TA=aP,其中
TB:为Bob的临时会话密钥,TB=bP,其中
KAB:为Alice计算出的未经过哈希的会话密钥,KAB=e(aPpub+SA,TB+QB);
KBA:为Bob计算出的未经过哈希的会话密钥,KBA=e(bPpub+SB,TA+QA);
h:防止已知密钥攻击的临时会话因子,h=aTB,h=bTA。
(2)将上述协议完全嫁接到以Java语言为基础springMVC为框架的网络平台上面,实现该协议的主要实现代码如下:
***建立阶段代码如下:
protected Element s,a,b,P,Ppub,SA,QA,SB,QB,TA,TB,KA,KB,hA,hB,K;
protected Field G1,Zr;
protected Pairing pairing;
@RequestMapping("users/keys/buildSystem.json")
public void buildSystem(){
System.out.println("开始buildSystem");
init();
s=Zr.newRandomElement().getImmutable();//随机生成主私钥s
P=G1.newRandomElement().getImmutable();//生成G1的生成元P
Ppub=P.mulZn(s);//计算Ppub=sP,注意顺序,生成主公钥Ppub。
}
密钥提取阶段代码如下:
@RequestMapping(value="users/keys/extractSecretKeyOf{username}",
method={RequestMethod.GET,RequestMethod.POST})
public@ResponseBody List<HashMap>getSecretKey(@PathVariable("username")String username){
QA=pairing.getG1().newElement().setFromHash(username.getBytes(),
0,username.length()).getImmutable();//从长度为3的Hash值IDu确定用户U产生的公钥Qa,生成用户U的公钥。
SA=QA.mulZn(s).getImmutable();//生成用户U的私钥。
List<HashMap>listone=new ArrayList();
HashMap<String,String>newsMap=new HashMap<String,String>();
newsMap.put("P",SA.toString());
listone.add(newsMap);
return listone;
}
计算最终会话密钥代码如下:
public@ResponseBody List<HashMap>createKA(){
hA=TB.mulZn(a);
KA=pairing.pairing((Ppub.mulZn(a)).mul(SA),TB.mul(QB))
List<HashMap>listone=new ArrayList();
HashMap<String,String>newsMap=new HashMap<String,String>();
newsMap.put("P",SHA((KA.toString()+hA.toString()),"SHA-256"));
listone.add(newsMap);
return listone;
}
(3)网络平台上提供该方案的攻击演示***:
在初始界面,通过点击不同攻击类型的按钮,演示不同攻击,具体步骤如下:
第一步:点击相应攻击演示按钮(以前向安全性为例);
第二步:进行协商密钥的两方用户登录;
第三步:根据相应的攻击类型,在密钥协商的不同阶段,敌手开始干预攻击,并生成一个敌手的“会话密钥”;
第四步:比对用户生成的会话密钥及敌手的“会话密钥”是否相同,判断攻击是否成功;
最后退出***。
具体的攻击演示流程图如图2,该方案安全性较好,可以抵抗多种攻击,包括本作品中演示的前向安全性、已知密钥攻击、密钥妥协假冒三种攻击。
与传统的基于证书的公钥密码体制相比,基于身份的公钥密码体制直接以用户的身份标识作为公钥如图3所示,不需要证书和相关操作,简化了公钥的使用与管理。
在密钥协商过程,涉及三个参与者,包括***管理员admin,协商密钥双方(为方便叙述,在此分别记A,B)
承接上述登录成功后,跳转到用户协商页面,两方开始进行密钥协商,结合图4,具体步骤如下:
第一步:***管理员admin登录,点击buildsystem按钮以清空Java容器中的历史数据;
第二步:将要进行密钥协商的两方用户分别在自己的设备上登录,并在用户列表中分别选择将要共享密钥的人员;
第三步:密钥协商,
(1)由一方作为发起密钥协商方(A)向服务器发起请求,点击extract secretkey按钮生成自身的私钥,B操作同A;
(2)A点击computeT按钮,计算临时会话密钥TA,B操作同A,生成TB;
(3)A点击createK按钮,产生最终A、B共同协商的会话密钥,B进行相同操作;
第四步:检验生成相同的会话密钥,安全退出。
1***实施步骤过程
运行各功能模块,得出如下效果图:
密钥协商阶段:以Alice与Bob协商为例,图5是密钥协商阶段流程图,其中(a)是清除历史数据阶段界面图,(b)是用户成功登陆后的协商密钥界面中Alice的界面图,(c)是用户成功登陆后的协商密钥界面中Bob的界面图。
图6是一次协商中生成用户的私钥界面图,其中(a)是一次协商中生成用户Alice的私钥界面图,(b)是一次协商中生成用户Bob的私钥界面图。
图7是临时会话密钥生成界面图,其中(a)是Alice临时会话密钥生成界面图,(b)是Bob临时会话密钥生成界面图。
图8是协商密钥生成界面图,其中(a)是Alice协商密钥生成界面图,(b)是Bob协商密钥生成界面图。
2***实施攻击演示过程
1、输入***管理员登陆账号admin与密码123456,即可跳转到管理员功能界面如图9,管理员通过点击buildsystem按钮以清空Java容器中的历史数据,以便开始新一次的密钥协商。
2、协商阶段(在此以用户Alice为例说明),输入用户账号Alice与密码1990,跳转到Alice的用户密钥协商页面如图10,点击选取将要进行密钥协商的一方(例如Bob),二者进行一次密钥协商会在相应的私钥、临时会话密钥、共享密钥栏内生成;
3、密钥攻击,本作品设计了前向安全性、已知密钥攻击、密钥妥协假冒三种攻击演示,以下给出三种攻击演示结果图如图11(a)~(c),图12(a)~(b),图13(a)~(b)。
前向安全性,敌手可以拿到Alice与Bob的私钥SA,SB,但没有主密钥s,在此情况下,敌手会在最后利用密钥导出函数随机输出一个结果,而如图11(a),图11(b)中,Alice与Bob得到一致的会话密钥,而敌手得到的会话密钥显然与前者不同,意味着,此次攻击失败,这是由于敌手鉴于上述信息,不可以计算e(P,P)abs。
结合图12(a)~(b),针对已知密钥攻击,因为每次协商,服务器都会重新随机选取新的随机数a,b,所以每次生成的临时会话密钥均不同,导致共享的会话密钥不同。在恶意敌手即使获得历史的会话密钥,也不会威胁到以后的会话。
结合图13(a)~(b),针对密钥妥协假冒,Alice将SA泄露给了敌手,敌手通过随机选取计算出TB发给Alice,由于敌手不知道SB及Alice随机选取的a,所以不能计算e(P,QB)as,方案可以抵抗该攻击。
Claims (4)
1.一种基于身份的密钥协商构建方法,其特征在于,构造基于身份的密钥交换协议并将其以网站的形式实现,网站采用MVC架构模型,其中Model层中Service层与Dao层实现了该基于身份的密钥协商协议,具体如下:
(1)***建立:公开***参数:{G1,GT,p,e,P,Ppub,H1,H2},保密主私钥s;
其中,G1:为由P生成的p阶加法循环群;
GT:与G1同阶的乘法循环群;
e:G1×G1→GT为双线性映射;
H1:{0,1}*→G1为一个安全的Hash函数;
H2:为密钥提取函数;
为PKG随机选取的***主私钥;
Ppub=sP:为***主公钥;
(2)密钥提取:给定一个用户U的身份IDU,PKG计算该用户的私钥SU=sQU,其中QU=H1(IDU)是该用户的公钥,分别计算此处密钥协商双方A、B的公、私钥;
其中,IDU:代表用于U的身份;
SU:代表用户U的私钥,SU=sQU;
QU:代表用户U的公钥,QU=H1(IDU);
(3)密钥协商:A、B分别随机选取计算各自的临时会话密钥TA=aP,TB=bP,并将各自生成的值发送给对方;A计算h=aTB,KAB=e(aPpub+SA,TB+QB),类似地,B计算h=bTA,KBA=e(bPpub+SB,TA+QA),最终的共享密钥为H2(h,KAB);
其中,TA:为Alice的临时会话密钥,TA=aP,其中
TB:为Bob的临时会话密钥,TB=bP,其中
KAB:为Alice计算出的未经过哈希的会话密钥,KAB=e(aPpub+SA,TB+QB);
KBA:为Bob计算出的未经过哈希的会话密钥,KBA=e(bPpub+SB,TA+QA);
h:防止已知密钥攻击的临时会话因子,h=aTB,h=bTA。
2.根据权利要求1所述的基于身份的密钥协商构建方法,其特征在于,所述密钥协商过程中,涉及三个参与者,包括***管理员admin,协商密钥双方A、B,具体步骤如下:
第一步:***管理员admin登录,进行***初始化;
第二步:将要进行密钥协商的两方用户分别在自己的设备上登录,并在用户列表中分别选择将要共享密钥的人员;
第三步:密钥协商,
(1)由一方作为发起密钥协商方A向服务器发起请求,获得基于自己身份的私钥,用户B操作同A一致;
(2)A向***发出计算临时密钥的请求,计算临时会话密钥TA,B操作同A,生成临时密钥TB;
(3)***根据临时密钥计算出最终A、B共同协商的会话密钥。
3.一种基于身份的密钥协商网络平台,其特征在于,包括以下部分:
Controller层:负责转发请求,以及对请求进行处理;
View层:与用户进行交互;
Model层:实现程序算法功能,与数据库进行交互,Model层包含了进行业务逻辑处理的Service层,以及与数据库操作***进行交互的Dao层。
4.根据权利要求3所述基于身份的密钥协商网络平台,其特征在于,所述Service层与Dao层实现下述的密钥协商算法:
密钥协商过程中,涉及三个参与者,包括***管理员admin,协商密钥双方A、B,具体步骤如下:
第一步:***管理员admin登录,进行***初始化;
第二步:将要进行密钥协商的两方用户分别在自己的设备上登录,并在用户列表中分别选择将要共享密钥的人员;
第三步:密钥协商,
(1)由一方作为发起密钥协商方A向服务器发起请求,获得基于自己身份的私钥,用户B操作同A一致;
(2)A向***发出计算临时密钥的请求,计算临时会话密钥TA,B操作同A,生成临时密钥TB;
(3)***根据临时密钥计算出最终A、B共同协商的会话密钥。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710661488.6A CN107241190A (zh) | 2017-08-04 | 2017-08-04 | 一种基于身份的密钥协商构建方法与网络平台 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710661488.6A CN107241190A (zh) | 2017-08-04 | 2017-08-04 | 一种基于身份的密钥协商构建方法与网络平台 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107241190A true CN107241190A (zh) | 2017-10-10 |
Family
ID=59988679
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710661488.6A Pending CN107241190A (zh) | 2017-08-04 | 2017-08-04 | 一种基于身份的密钥协商构建方法与网络平台 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107241190A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107682150A (zh) * | 2017-10-27 | 2018-02-09 | 武汉大学 | 一种适用于计算资源非对称领域的共享密钥建立方法 |
CN108809656A (zh) * | 2018-07-18 | 2018-11-13 | 陕西师范大学 | 一种基于双重认证防护签名的密钥交换协议构造方法 |
CN109698747A (zh) * | 2019-02-15 | 2019-04-30 | 上海扈民区块链科技有限公司 | 一种基于双线性对的身份基身份匿藏密钥协商方法 |
CN111510291A (zh) * | 2020-04-20 | 2020-08-07 | 重庆邮电大学 | 基于双线性对的高效身份认证密钥协商协议 |
WO2020252611A1 (zh) * | 2019-06-17 | 2020-12-24 | 华为技术有限公司 | 一种数据交互方法及相关设备 |
CN112753203A (zh) * | 2020-10-30 | 2021-05-04 | 华为技术有限公司 | 一种安全通信方法及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101582906A (zh) * | 2009-06-23 | 2009-11-18 | 中国人民解放军信息工程大学 | 密钥协商方法和装置 |
CN101710859A (zh) * | 2009-11-17 | 2010-05-19 | 深圳国微技术有限公司 | 一种认证密钥协商方法 |
CN102663024A (zh) * | 2012-03-22 | 2012-09-12 | 北京英孚斯迈特信息技术有限公司 | 一种用于企业数据统一平台的数据门户*** |
CN104868993A (zh) * | 2015-05-15 | 2015-08-26 | 河海大学 | 一种基于证书的两方认证密钥协商方法及*** |
CN105577377A (zh) * | 2014-10-13 | 2016-05-11 | 航天信息股份有限公司 | 带密钥协商的基于身份的认证方法和*** |
CN105978906A (zh) * | 2016-07-01 | 2016-09-28 | 中国人民解放军国防科学技术大学 | 一种基于身份的通信握手协议 |
CN106209369A (zh) * | 2016-07-01 | 2016-12-07 | 中国人民解放军国防科学技术大学 | 基于身份密码***的单交互认证密钥协商协议 |
-
2017
- 2017-08-04 CN CN201710661488.6A patent/CN107241190A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101582906A (zh) * | 2009-06-23 | 2009-11-18 | 中国人民解放军信息工程大学 | 密钥协商方法和装置 |
CN101582906B (zh) * | 2009-06-23 | 2012-04-18 | 中国人民解放军信息工程大学 | 密钥协商方法和装置 |
CN101710859A (zh) * | 2009-11-17 | 2010-05-19 | 深圳国微技术有限公司 | 一种认证密钥协商方法 |
CN102663024A (zh) * | 2012-03-22 | 2012-09-12 | 北京英孚斯迈特信息技术有限公司 | 一种用于企业数据统一平台的数据门户*** |
CN105577377A (zh) * | 2014-10-13 | 2016-05-11 | 航天信息股份有限公司 | 带密钥协商的基于身份的认证方法和*** |
CN104868993A (zh) * | 2015-05-15 | 2015-08-26 | 河海大学 | 一种基于证书的两方认证密钥协商方法及*** |
CN105978906A (zh) * | 2016-07-01 | 2016-09-28 | 中国人民解放军国防科学技术大学 | 一种基于身份的通信握手协议 |
CN106209369A (zh) * | 2016-07-01 | 2016-12-07 | 中国人民解放军国防科学技术大学 | 基于身份密码***的单交互认证密钥协商协议 |
Non-Patent Citations (2)
Title |
---|
李坤: ""基于身份的认证密钥协商协议研究"", 《中国优秀硕士学位论文全文数据库信息科技辑》 * |
袁艳祥等: ""基于身份加密的可认证密钥协商协议"", 《信息网络安全》 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107682150A (zh) * | 2017-10-27 | 2018-02-09 | 武汉大学 | 一种适用于计算资源非对称领域的共享密钥建立方法 |
CN107682150B (zh) * | 2017-10-27 | 2020-03-10 | 武汉大学 | 一种适用于计算资源非对称领域的共享密钥建立方法 |
CN108809656A (zh) * | 2018-07-18 | 2018-11-13 | 陕西师范大学 | 一种基于双重认证防护签名的密钥交换协议构造方法 |
CN108809656B (zh) * | 2018-07-18 | 2021-03-02 | 陕西师范大学 | 一种基于双重认证防护签名的密钥交换协议构造方法 |
CN109698747A (zh) * | 2019-02-15 | 2019-04-30 | 上海扈民区块链科技有限公司 | 一种基于双线性对的身份基身份匿藏密钥协商方法 |
CN109698747B (zh) * | 2019-02-15 | 2021-08-24 | 上海扈民区块链科技有限公司 | 一种基于双线性对的身份基身份匿藏密钥协商方法 |
WO2020252611A1 (zh) * | 2019-06-17 | 2020-12-24 | 华为技术有限公司 | 一种数据交互方法及相关设备 |
CN111510291A (zh) * | 2020-04-20 | 2020-08-07 | 重庆邮电大学 | 基于双线性对的高效身份认证密钥协商协议 |
CN112753203A (zh) * | 2020-10-30 | 2021-05-04 | 华为技术有限公司 | 一种安全通信方法及装置 |
CN112753203B (zh) * | 2020-10-30 | 2022-07-12 | 华为技术有限公司 | 一种安全通信方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107241190A (zh) | 一种基于身份的密钥协商构建方法与网络平台 | |
Li et al. | An enhanced smart card based remote user password authentication scheme | |
CN112106322B (zh) | 基于密码的阈值令牌生成 | |
US9698985B2 (en) | Authentication | |
US8930704B2 (en) | Digital signature method and system | |
Acar et al. | Single password authentication | |
US8971540B2 (en) | Authentication | |
US9106644B2 (en) | Authentication | |
CN107437993A (zh) | 一种基于无证书两方认证密钥协商方法和装置 | |
CN106209369A (zh) | 基于身份密码***的单交互认证密钥协商协议 | |
Farash et al. | Cryptanalysis and improvement of a robust smart card secured authentication scheme on SIP using elliptic curve cryptography | |
CN106487786B (zh) | 一种基于生物特征的云数据完整性验证方法及*** | |
Mishra | Design and analysis of a provably secure multi-server authentication scheme | |
CN109829288A (zh) | 一种基于混沌映射的多因素身份认证方法 | |
Zhu | Flexible and password-authenticated key agreement scheme based on chaotic maps for multiple servers to server architecture | |
CN101626364A (zh) | 一类可基于口令、抗秘密数据泄露的认证和密钥交换方法 | |
Tsai et al. | Provably secure revocable id‐based signature in the standard model | |
Islam et al. | Provably secure one-round certificateless authenticated group key agreement protocol for secure communications | |
Luo et al. | Cross-domain certificateless authenticated group key agreement protocol for 5G network slicings | |
Li et al. | An improved authentication with key agreement scheme on elliptic curve cryptosystem for global mobility networks | |
Zhu et al. | Provably Secure Multi-server Privacy-Protection System Based on Chebyshev Chaotic Maps without Using Symmetric Cryptography. | |
Zheng et al. | Threshold attribute‐based signcryption and its application to authenticated key agreement | |
Xia et al. | Breaking and repairing the certificateless key agreement protocol from ASIAN 2006 | |
Truong et al. | Provable user authentication scheme on ECC in multi-server environment | |
Wen et al. | Intersection-policy private mutual authentication from authorized private set intersection |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20171010 |
|
RJ01 | Rejection of invention patent application after publication |