一种云环境下基于身份的统一身份认证方案研究
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一种云环境下基于身份的统一身份认证方案研究
刘团奇;张浩军;赵志鹏
【摘要】提出了一种云环境下的基于身份密码体制的统一身份认证方案,在私钥分发的过程中使用了双线性对运算,显著降低了PKI体系中CA的负担,简化了CA对用户证书的管理,实现了云环境下不同类型用户的统一认证.方案在保证足够高的安全强度的同时,降低了计算开销.
【期刊名称】《中原工学院学报》
【年(卷),期】2015(026)004
【总页数】4页(P55-58)
【关键词】身份认证;基于身份密码体制;统一身份认证
【作者】刘团奇;张浩军;赵志鹏
【作者单位】河南工业大学,郑州450001;河南工业大学,郑州450001;河南工业大学,郑州450001
【正文语种】中文
【中图分类】TP39
在云计算技术快速发展的同时,越来越多的用户数据被存储在云端服务器中。
用户与云服务器之间的双向认证是云环境下用户访问云服务器中数据或使用所需服务的重要前提
[1]。
而虚拟化技术和用户对不同云服务器的频繁访问对身份认证技术提出了更高的要求。
在公有云和私有云的复杂架构下,不同的云内部可能有不同的身份
认证系统,用户在访问不同的云服务时可能需要在相应系统中进行身份认证;而更加多样化的云服务使用户需要在不同的云服务器上进行身份认证。
为了提供更好的用户体验,云服务通常会使用单点登录方式
[2-6]。
Yan L提出了基于HIBC的身份认证模型
[7],但该模型对根密钥的依赖性较强;Zhang Q K提出了云环境下的联
盟认证模型
[8],但该模型密钥数量较多。
本文提出了一种云环境下的基于身份密码体制(IBC)的统一身份认证方案,该方案能够显著降低PKI体系中CA的负担,简化CA对用户证书的管理。
基于身份密码体制一般是由离散对数难题和双线性对来进行构造的
[7-8],相关难解问题如下:
定义1 离散对数问题,设群
G是一个
q阶群,给定(
P,
Q)∈
G,求一个整数
n∈
q*,使Q=nP。
定义2 双线性映射,群
G1、G2分别是q阶的循环加法群和循环乘法群,p是G1的一个生成元,
e:
G1×
G2→G2是双线性映射,e有以下性质
[9]:
(1)双线性。
对任意
R、
S∈
G1,a、b∈q*,有e(Ra,Sb)=e(R,S)
ab;
(2)非退化性。
存在
M、
N∈
G1,使e(M,N)≠1,1是G2的单位元;
(3)可计算性。
存在有效的多项式算法,该算法对任意
R、
S∈
G1,可以计算e(R,S)。
本文借鉴了文献[9]中密钥协商过程中双线性映射的应用方法,将其应用于公有云环境下的私钥分发,在保证足够高的安全强度的前提下,降低了私钥分发的计算开
2.1 认证模型
作为一种安全的基础架构,PKI体系在实际应用中得到了快速发展。
但PKI的证书验证过程比较繁琐,会造成一定的性能负担和网络延迟,在云计算环境下,PKI体系的这些劣势会更加显著地表现出来。
本文设计了一种云环境下的基于身份密码体制(IBC)的统一身份认证方案,认证模型如图1所示。
在公有云或私有云的内部使用IBC体系,云和云之间的认证由PKI体系负责。
公有云或私有云中的用户通过认证代理访问其他云所提供的服务,用户可以分为3类:公有云中的普通用户、私有云中的用户和使用PKI体系认证的用户。
3类用户在统一的身份认证方案下可以安全地使用身份认证服务。
2.2 符号构成
PK
S:S的公钥。
SK
S:S的私钥。
H():安全的散列函数。
E
ab(m):使用对称密码算法加密m。
D
ab(m):使用对称密钥
ab解密m。
2.3 系统初始化
(1)云内IBC系统的建立:首先产生一个随机数
SK
S∈
Zq*,计算PK
S=
SK
Sg∈
G1,SK
S作为云S的主密钥,
PK
S作为公钥,云的认证代理服务器公布系统的参数
param= {
q,
G1,G2,g,p,PK
S,
H1,H2}。
除了IBC系统之外,认证代理服务器同时运行PKI系统,拥有证
书和对应的私钥。
其他云的参数选取过程同理。
(2)用户注册:用户U注册申请成为云S的用户时,U提交用户ID和口令P的散列值,
ID∈{0,1}
*,将用户的
ID和
p=
H
1(
P)保存在用户信息数据库中
[10]。
2.4 认证过程
用户按认证过程分为3类:公有云中的普通用户、私有云中的用户和使用PKI体系认证的用户。
2.4.1 公有云用户认证过程
(1)通过验证云的PKI证书,交换系统参数实现云和云信任关系的建立
[11],任意的云A和云B之间的参数交换过程如下:
①AP
A→AP
B:
r
A,
Param_Req
云A的认证代理向云B的认证代理发送请求, r
A是云A产生的随机数。
②AP
B→AP
A:
cert
APB,
Param
B||
r
B||
r
A||
ID
A||
sigcert
B(
Param
B||
B||
r
A||
ID
A)
AP
B收到请求后,向AP
A发送系统参数
Param
B,并加入生成的随机数
r
B,以证书的方式用私钥进行签名。
③AP
A→AP
B:
cert
APA,
Param
A||
r
A||
B||
ID
B||sigcert
A(
Param
A||
r
A||
r
B||
ID
B)
AP
A收到消息后,先要对AP
B的证书进行有效性检查,提取公钥验证签名,然后验证 r
A是否与刚刚发送的请求消息中的
r
A相同,如果通过验证,说明
Param
B是由AP
B发送的,并且完整未被篡改。
然后,AP
A将消息③发送给AP
B,AP
B收到后进行同样的操作,最终实现系统参数的互换。
(2)公有云内私钥的分发,用户U注册申请成为云S的用户时,用户的
ID和
H
1(
P)保存在用户信息数据库中,私钥生成器(pkg)负责将用户的私钥安全地分发给用户U:
①U→pkg:
ID
U||
E
pg(
r
U)||
ID
pkg||
T
1||
T
2
用户U向pkg发送私钥申请参数,
T1=g
t1,
T2=(g
-p)
t1,
r
U和
t
1是U产生的随机数,并计算用户口令P的散列值 p=
H1(P)。
②pkg→U:
ID
pkg ||
ID
U||
E
pg(
r
U)||
T3||T4 ||x||
E
k(
SK
U,
r
pkg)
pkg收到U的密钥申请后,根据用户的口令数据 p来验证
T2=(T1)
-p是否通过,然后产生两个随机数
t2和r
pkg,计算
T3=g
t2和
T4=(g
-p)
t2,再计算出一个
x=
H2(ID
pkg)p,然后根据
T1、T2、T3、T4、x等值进行以下运算 [9-12]:
k'=e(
p
t2
x,
T1)e(
H2(ID
pkg),
T
2)
=e(
p
t2
H2(ID
pkg)p,g t1)
e(
H2(ID
pkg),(
g
-p))
t1
p,
g)
t1t2
k=
H1(IDu||k')
使用
K对系统所产生的用户私钥
PK
U和随机数
r
pkg进行对称加密,构造出②发送到用户U。
③U→pkg:
E
k(
r
pkg)
用户收到消息后,根据
T1、T2、T3、T4、x等值进行以下运算:
k'=e(
p
t1
x,
T3)e(H2(ID pkg),
T
4)
=e(
p
t1
H2(ID
pkg)p,g t2)
e(
H2(ID
pkg),(
g
-p))
t2
p,
g)
t1t2
k=
H1(IDu||k')
此时所计算出的
k和pkg计算出的
k相同,使用
k对②中的
E
k(
SK
U,
r
pkg)进行解密,得到
SK
U和pkg的随机数
r
pkg,并验证在①中发送的随机数 r
U,然后使用双方共享的对称密钥
k对pkg的随机数
r
pkg进行确认,并发送③。
(3)属性令牌的获取:
①U→AP:
Attr_req,
ID
u||
r
u||
Signcrypt(
Attr_req,
ID
u||
r
u)
U选取随机数
r
u和自己的身份ID,使用签名加密算法签名并加密后发送给AP。
②AP→U:
Token,
ID
u||
r
u||
ID
AP||
r
AP||
Signcrypt(
Token,
ID
u||
r
u||
ID
AP||
r
AP)
AP收到①后,用自己的私钥和U的公钥进行解密,验证签名,选取随机数 r
AP构造消息②发送给U。
用户收到②后,用自己的私钥和AP的公钥进行解密验签,如果消息中含有 r
u,则对AP进行认证。
(4)跨云认证:
①U→S:
Token,
ID
u||
r
u||
ID
s||
Signcrypt(
Token,
ID
u||
r
u||
ID
s)
用户U产生随机数
r
u,和令牌一起使用自己的私钥和S的公钥进行签名加密,发送给S。
②S→U:
ID
s||
r
s||
ID
u||
r
u||
Signcrypt(
ID
s||
r
s||
ID
u||
r
u)
S收到①后,用自己的私钥和U的公钥进行解密验签,并选取随机数 r
s,通过签名加密,发送给U。
2.4.2 私有云用户认证过程
私有云用户的认证过程和公有云用户的认证过程相似。
首先是云和云之间信任关系的建立,然后是云内私钥的分发,再获取属性令牌,最后访问云内部或其他云中的服务。
在私有云用户的私钥分发过程中,在经过一次私钥分发后,U和pkg共享了一个
密钥
k,在后续的私钥分发过程中,可以使用
k作为密钥通过对称加密方法进行私钥分发,设置密钥
k的生命周期,在
k到期或必要的情况下重新使用双线性映射来分发私钥,可以降低计算量。
2.4.3 PKI证书用户认证过程
(1)U→AP:
Signcrypt
U,AP(
cert
U,
r
U||
Param_Req||
Token_req)
(2)AP→pkg:
k(
ID AP||
r
AP||
ID pkg||
r pkg||
ID U)
(3)pkg→AP:
E
k(
ID AP||
r
AP||
ID pkg||
r pkg||
U)
(4)AP→U:
Signcrypt
AP,U(
cert
AP,
ID
AP||
r
AP||
ID
U||
r
U||
Param||
Token||
SK
U)
(5)U获取到
Param、
Token和pkg为其分配的
U和
SK
U。
本方案在认证过程中使用了安全散列运算、随机数和IBC算法等,能够有效地防止重放攻击、假冒攻击、篡改攻击、中间人攻击等。
(1)重放攻击和中间人攻击。
在消息传递过程中采用了加密传输、加入随机数和签名等机制,接收方能够验证消息的来源和正确性,故可以防止重放攻击和中间人攻击。
(2)假冒攻击和篡改攻击。
公有云用户进行身份认证是3种情况中安全性最差的,U和pkg之间传输的消息都包含了离散对数运算过程,U和pkg之间共享的
H1(P)和最后生成的
SK
U都以加密的形式被安全地传递,并且加入了随机数验证过程,攻击者在不知道 H1(P)的情况下假冒用户U或者篡改消息是困难的。
身份认证协议的性能主要由计算复杂度和交互的轮数决定,其中交互轮数对身份认证的影响较大。
身份认证过程中所进行的运算主要包括加解密运算、哈希运算、对运算、签密运算。
本文提出的方案在云间信任关系建立和用户私钥获取过程中,进行了2次哈希运算、4次加解密运算和4次对运算,交互轮数有6次;在属性令牌获取和跨云身份认证过程中,进行了4次基于身份的签密运算,交互轮数有4次。
文献[9]中提出的混合云密钥协商协议在计算复杂度上有一定的优势,但存在多个云间相互认证时需要交换
N-1)/2密钥的情况。
本文提出的方案和文献[8]、文献[9]进行了比较,结果见表1。
由表1可知,本文提出的方案综合性能更好,适合较大范围的云环境身份认证。
在公有云和私有云的复杂架构下,将基于身份密码技术和PKI体系结合,提出了一种云计算环境下统一的身份认证方案,方案中使用了安全散列运算、随机数和IBC算法等,能够有效防止重放攻击、假冒攻击、篡改攻击和中间人攻击。
方案在保证足够高的安全强度前提下,有更好的综合性能。
[1] 朱智强.混合云服务安全若干理论与关键技术研究[D].武汉:武汉大学,2011.
[2] 江伟玉,高能,刘泽艺,等.一种云计算中的多重身份认证与授权方案[J].信息网络安全,2012(8):7-10.
[3] 余幸杰,高能,江伟玉.云计算中的身份认证技术研究[J].信息网络安
全,2012(8):71-74.
[4] 张立斌,高仲春,张晶.云计算环境下统一身份认证平台的设计与实现[J].工业控制计算机,2013(7):91-92.
[5] 吕群.基于云服务的身份认证服务的研究与设计[D].北京:北京邮电大学,2013.
[6] Li H,Dai Y,Tian L,et al. Identity-
based Authentication for Cloud Computing[J].Lecture Notes in Computer S cience,2009(5):166-177.
[7]
Yan L,Rong C M, Zhao G S.Strengthen Cloud Computing Security with Fede ral Identity Management Using Hierarchical Identity-
based Cryptography[J]. Lecture Notes in Computer Science, 2009,LNCS 593
[8] Zhang Q K,Li Y Z,Song D J,et al.Alliance-
authentication Protocol in Clouds Computing Environment[J].China Comm unications,2012,9(7):43-53.
[9] 王崇霞,高美真,刘倩,等.混合云联合身份认证与密钥协商协议设计[J].电信科学,2014(4):95-99.
[10] 徐雯丽.云计算环境下的身份认证研究[D].南京:南京邮电大学,2013.
[11] 周晓斌,许勇,张凌.一种开放式PKI身份认证模型的研究[J].国防科技大学学报,2013(1):169-174.
[12] 樊超.云计算环境下基于标识的用户身份认证技术研究[D].广州:广东工业大学,2014.
Key words:identity authentication; ID-
based cryptography; unified identity authentication。