一种无线环境下具有可控匿名性的认证协议

身份认证系统一种无线环境下具有可控匿名性的认证协议1
谢诚1,徐红云1,2,刘京1
1湖南大学计算机与通信学院,湖南长沙(410082)
2华南理工大学计算机科学与工程学院,广东广州(510640)
E-mail:simonskizo@163, xu_hongyun@163, mitkook@163
摘要:针对无线匿名认证协议中因家乡域身份信息暴露而导致协议匿名性降低及匿名服务滥用的问题,提出了一种基于无线网络环境下的可控匿名认证协议(CACP),协议通过使用历史访问域转发认证信息的方法实现了家乡域的匿名,同时通过检查认证标记来拒绝非法用户的认证请求以达到对协议的可控性要求。描述了协议的实现过程,从概率统计的角度分析了协议的安全性和匿名性。相关分析结果表明,使用该协议不但可以提高家乡域的匿名性同时也能有效地控制匿名的滥用。
关键词:无线通信,数据隐私,匿名协议,可控匿名
中图分类号:TP393.08
1.引言
近年来,无线网络得到了迅速的发展和广泛的应用,给人们的生活带来了极大的方便。但值得注意的是,安全问题已经成为无线网络技术应用普及的一个主要障碍,而其中认证是整个安全方案的基础。随着人们对网络隐私保护的重视,具有用户匿名性的无线认证研究得到了快速发展[1,2,6]。1999年,Juang等人[3]提出了一种无线匿名认证协议,协议中移动节点可以在访问域得到匿名服务,访问域在家乡域的帮助下完成对请求者的认证工作,2001年,Jan 等人[4]指出上述协议是可追踪的和低效的,他们提出了一种新的更加有效的认证方案,该方案可以减少认证阶段的通信开销。2004年Hwang等人[5]在以上协议的基础上提出了一种更加有效的认证协议,该协议不但可以减少匿名标签认证阶段的通信开销,同时也可以减少匿名标签分发阶段的通信开销。近几年来国内学者在相关领域也展开了研究,2004年,朱建明和马建峰就提出了一种高效的具有匿名性的无线认证协议[2],该协议在移动节点与访问域之间以及访问域与家乡域之间通过一次交互实现了身份认证,并在移动节点和访问域之间协商了一次性密钥。由于移动节点主要采用对称密码算法,因此有利于降低移动节点的运算量。2006年,文献[6]的研究表明该协议在匿名性上存在严重的安全缺陷并提出了改进方案,通过使用选择密文安全(IND-CCA)的对称加密方案来加密参数n来提高匿名性,满足域分离性。但从以上的协议可以看出,当前大多数无线匿名认证协议主要围绕提高移动节点的匿名性而展开研究的,忽略了其家乡域的匿名性问题,其认证信息是通过访问域直接转发给家乡域,家乡域的身份信息对访问域来说是已知的,当某一时刻来自同一家乡域的移动节点比较少时,外部访问域可以猜测出移动节点的真实身份。
另外,有关可控匿名通信技术的研究已逐渐引起网络安全研究人员的重视[7],诸如电子现金,电子投票等具体应用,都需要一个可控的机制来引导其正常发展,防止因提供匿名服务而导致非法活动无法追踪和控制。2001年,Oliver Berthold等人[8]使用盲签名技术实现了一个基于标签的认证协议,在协议中,每个用户都使用假名在Mix服务器上注册并使用标签来匿名地使用服务,但是该方案无法通过标签的内容来推断消息的发送者。文献[9]中改进和完善了Oliver Berthold等人的方案,使用公平盲签名技术实现了通过标签内容对消息发送者身份的确认。2005年,段桂华等人提出了一种基于洋葱路由和可信第三方的可撤销匿名
1本课题得到湖南省科技计划资助项目(20063342467)和湖南大学博士基金项目(521105255)的资助。
通信方案[10],在方案中可信第三方负责匿名发送者假名的分配并使用基于拉格朗日插值多项式的(n,n)阈值方案将发送者的IP地址拆分并分发给中间的洋葱路由器。在发现攻击时再通过各个中间洋葱路由器重组IP地址来撤销发送者的匿名。既保证了正常通信的匿名性同时防止了非法用户滥用匿名。但目前无线网络环境下的可控匿名协议的研究工作却没有得到足够的关注,国内外的研究机构和学者对该领域的研究成果也较少。
本文针对以上问题,提出了一种具有可控性的无线匿名认证协议。协议通过使用移动节点访问路径中
的部分历史访问域转发认证信息的方法来提高协议的匿名度。另外,为了控制匿名的滥用,协议中采用当前访问域向其家乡域发送撤销匿名服务请求来撤消用户的匿名性。
2.可控匿名认证协议
2.1 系统模型
当前无线认证协议主要涉及三方:家乡域(HLR)和访问域(VLR)以及移动节点(MS)。无线通信模型如图1所示。其中R i代表路由器,HLR代表家乡域,VLR代表外地访问域,MS代表移动节点。
当移动节点不在其家乡域的服务范围时,它通过向当前的访问域发送自己的认证信息来进行认证。当前访问域接收到认证信息后将其转发至移动节点的家乡域进行认证。在完成认证后,访问域就可以为移动节点提供其所需的服务了。
图1 无线通信模型
2.2 协议描述
协议主要包括三个阶段:匿名信道标签分发阶段,匿名信道标签认证阶段和用户匿名控制阶段。第一阶段的主要任务是移动节点通过VLR向 HLR申请匿名信道标签,在得到标签后,MS可以使用VLR提供
的服务,如移动呼叫等。如果移动节点希望继续使用VLR提供的服务,协议将进入第二阶段即匿名信道标签认证阶段。第二阶段的主要任务是检查匿名信道标签的有效性。如果有效则可继续使用服务,否则将终止服务。当合法用户非法使用服务时,协议将进入第三阶段即用户匿名控制阶段。第三阶段的主要任务是控制用户的匿名性并限制其非法使用匿名服务。
为了对当前访问域隐藏移动节点的家乡域信息,采用移动节点曾经访问过的部分历史访问域来转发认证信息。MS首先选取好转发路径并将认证信息发送给当前访问域,转发节点计算得到下一跳的转发地址进行转发直到信息到达家乡域进行认证。家乡域认证移动节点身份后,选取转发路径将返回信息转发到当前访问域和移动节点来完成认证。
下面将详细介绍协议的实现,下面给出了协议中一些符号的含义。
δ :HLR 分发的匿名信道标签
VT :匿名信道标签的有效时间
Tkt(m):匿名信道标签循环使用的次数
VL :MS 访问过的访问域列表
K h,i :MS 和HLR 的共享密钥
TN h :HLR 分配给MS 的认证标记
f():单向哈希函数
P h :HLR 的公钥
S h :HLR 的私钥
ID i :节点i 的身份信息
STK :转发地址列表
VLR i :历史访问域i
ADDR i :节点i 的地址标记
2.2.1 匿名信道标签分发阶段
在协议中,假设各个访问域之间是可信的,MS 在进入一个新的访问域时首先要通过该访问域的前一
个访问域向当前访问域证明自己是可信的。当前访问域在得到前一个访问域的认证通过信息后将自己的身份信息VD i 和转发地址信息ADDR i 发送给MS ,MS 将其存储到访问域列表VL 中。在VL 中保存着访问域身份信息VD i 与其地址信息ADDR i 的对应关系。同时,为了防止MS 因访问的访问域节点过多导致计算量过大,协议采用从VL 中随机选取部分历史访问域的方法来减少计算量。在MS 发送认证信息之前,首先从访问域列表VL 中选取k 个历史访问域,其中:2≤k ≤n (n 表示访问域个数)
该阶段协议过程见图2。在这里定义符号A=>B:{messages}代表左边实体A 发送信息messages 给右边实体B 。为了简单起见,假设MS 从VL 中选取的转发路径为M →V →X →H 。其中,M 代表移动节点,V 代表当前访问域,X 代表历史访问域,H 代表家乡域。
1. MS => VLR: {TN h ,N,STK i ,(ID i ,RAND,VL)i h K ,}
MS 发送访问请求到当前访问域VLR ,其中包含HLR 分配的认证标记TN h ,防止重放攻击的标记N=f(HD ⊕RAND)(RAND 为MS 选取的一个大随机数),转发地址列表STK i 和发送给HLR 的信息(ID i ,RAND,VL)。其中(ID i ,RAND,VL)使用共享密钥K h,i 加密。STK i 是一个堆栈式列表(i 代表堆栈列表的项数),只允许进行入栈和出栈操作,其中存储着认证信息的转发路径信息。中间访问域将可以通过读取栈顶信息来计算下一跳的转发地址信息。在假设路径M →V →X →H 下,其内容如表1所示:
表1:地址信息列表STK i  f(VD v ) ⊕ADDR x
f(VD x ) ⊕ADDR h
2. VLR => VLR x : {TN h ,N,STK i-1,(ID i ,RAND,VL)i h K ,,ETA}
VLR 在接收到MS 发送来的信息后,首先检查TN h 是否在其非法用户列表中,如果在则拒绝其认证请求,否则读取列表STK i 的栈顶信息,计算f(VD v )并将其与读取的栈顶信息进行异或运算来得到下一跳的转发地址信息ADDR x ,然后使用该地址转发信息。VLR 保存信息
(TN h ,N,STK i-1,(ID i ,RAND,VL)i h K ,, ETA)以便将来用于向HLR 发送控制请求。此外,为了防
止攻击者查看数据包大小来推测数据包的转发路径,数据包中将添加填充信息ETA 。
3. VLR x => HLR: { TN h ,N, STK i-2,(ID i ,RAND,VL)i h K ,,ETA}
VLR x 执行相同操作转发信息到HLR ,HLR 首先使用共享密钥解密得到随机数RAND ,
再用自己的身份信息HD 计算f(HD ⊕RAND)并与N 进行比较来验证认证信息的正确性。同时得到MS 的身份信息ID i 并对其进行认证。如果不能通过认证则返回认证不通过信息给VLR ,否则从解密得到
的列表VL 中选取转发路径(假设为H →Y →V →M)并计算匿名信道标签δ={(ID i ,RAND,VL)P h ||VT}S h 和Tkt(m)=(δ,m)L ,其中L 是从列表VL 中选取信息生成的临时密钥L= f(VD v ) ⊕ADDR x 。最后根据列表VL 的信息来生成地址信息列表STK r ,在假设路径H →Y →V →M 下,其内容如表2所示。
表2:地址信息列表STK r  f(VD y ) ⊕ADDR v
f(VD v ) ⊕ADDR m
4. HLR=>VLR y :{TN h ,STK r ,(TN ’h ,Tkt(m),m,n)i h K ,,(δ,n)L }
HLR 将下次认证所需的认证标记TN ’h ,Tkt(m),标签有效次数m 和种子数n 用共享密钥加密并使用临时密钥L 加密信息(δ,n)。然后转发给VLR y 。
5. VLR y => VLR: {TN h ,STK r-1,(TN ’h ,Tkt(m),m,n)i h K ,,(δ,n)L ,ETA }
VLR y 执行同样的操作进行转发。VLR 收到VLR y 的信息后使用自己的身份信息和记录的地址信息ADDR x 生成临时密钥L 解密信息并保存参数δ和n 。
6. VLR => MS: { TN h ,r, STK r-2,(TN ’h ,Tkt(m),m,n)i h K ,,ETA}
在得到HLR 的参数后,VLR 生成一个随机数r 并一起发送给MS 。同时,保存随机数r 和MS 认证标记TN h 。MS 在解密信息后得到并保存下一次认证的标记TN ’h 以及用于第二阶段的参数Tkt(m),m 和n 。 这阶段主要完成HLR 认证MS 的工作并生成匿名信道标签分发给MS 。同时,VLR 保存HLR 分发的参数用于第二阶段与MS 的认证。
图2 匿名信道标签分发阶段
2.2.2 匿名信道标签认证阶段
在这个阶段MS 使用第一阶段得到的参数r 和n 生成会话密钥(session key)来加密Tkt(m)并将其发送给当前访问域VLR 。VLR 解密并认证Tkt(m)的有效性来决定是否继续提供匿名
服务。该阶段过程如下:
1. MS => VLR: {TN h ,(Tkt(m))f(r ⊕n)}
MS 使用密钥f(r ⊕n)加密Tkt(m)并将其与TN h 一起发送给当前访问域VLR 。VLR 通过TN h 到该节点的记录信息(r, n, δ)。然后使用r 和n 计算密钥f(r ⊕n)解密信息得到Tkt(m)再使用临时密钥L 解密得到δ与记录的δ比较来验证其有效性。最后,VLR 计算下次的认证标签Tkt(m-1)=(δ, (m-1))L 。
2. VLR => MS: {TN h ,(Tkt(m-1))f((r-1)⊕n)}
VLR 使用密钥f((r-1)⊕n)加密Tkt(m-1)并发送给MS 。MS 在接收到信息后计算密钥f((r-1)⊕n)来解密信息得到下次要使用的认证标签Tkt(m-1)来进行下次认证。当标签使用次数m 耗尽,MS 必须从HLR 重新申请新的匿名信道标签。在协议中,随机数r 必须大于标签使用次数m 。
这个阶段主要完成标签的认证工作,MS 通过使用标签从VLR 处得到匿名服务。VLR 通过递减标签使用次数m 来计算一个标签的有效时间。当次数耗尽后,MS 需从HLR 重新申请新的匿名信道标签。
2.2.3 用户匿名控制阶段
当VLR 发现MS 非法使用匿名服务时,协议将进入第三阶段即匿名控制阶段。VLR 在HLR 的帮助下可以拒绝MS 的认证请求来防止匿名的滥用。VLR 发送控制请求到HLR ,中间访问域节点逐一转发请求信息到下一跳节点。HLR 在收到控制请求后通过解密信息获得MS 的身份信息ID i 并将其对应的下次认证所用的认证标记TN ’h 返回给当前访问域以便拒绝该用户的下次认证信息。认证过程与第一阶段相似,过程如下:
VLR => HLR: {TN h ,N,STK i-1,CON,(ID i ,RAND,VL)i h K ,}
VLR 通过TN h 查到信息(TN h ,N,STK i-1,(ID i ,RAND,VL)i h K ,)和地址信息ADDR x ,这些
信息在第一阶段已由VLR 保存下来。另外,为了区分于前面的认证信息,VLR 在信息中加入标志CON=(VD v )L 。经过中间访问域转发后, HLR 接收到该信息后通过标志CON 解密得知该信息是VLR 的控制请求信息。在验证控制请求信息的正确性后将ID i 保存到非法用户列表,同时返回ID i 所对应的下次认证标记TN ’h 给VLR 。
HLR => VLR: {TN h ,STK r ,(TN ’h )L }
返回信息经过中间访问域转发到达VLR 后,VLR 使用临时密钥L 解密得到TN ’h 并将其
保存到非法用户列表以便在下次认证过程检查其有效性来决定是否通过认证。
这阶段主要是防止用户滥用匿名服务。VLR 在HLR 的帮助下可以在MS 非法使用匿名服务时对其行为进行控制,从而提高协议的安全性。
3.分析与评价
3.1 安全性分析
由于采用新的转发机制和控制策略使得提出的协议在安全性上有了较大的提高。协议中移动节点的身份信息,地址信息列表以及匿名信道标签在传输过程中使用密钥加密,安全性是基于密钥的安全性基础之上,保证了访问域和攻击者都无法得到该信息。同时,家乡域返回给当前访问域的参数使用临时密钥进行了加密,第三方无法获得这些参数从而对协议的安全构成威胁。在协议的第二阶段使用了随机数r 和种子数n 生成会话密钥来提高移动节点和当前访问域之间的通信安全。其次,由于使用部分历史访问域来转发信息,当前访问域无法得知移动节点家乡域的身份信息,可以防止在当前访问域处利用移动节点家乡域信息来推
测移动节点身份。另外,协议中引入了可控匿名策略,使得协议对合法用户滥用匿名服务具有一定的抵御能力,提高了协议的安全性。最后,协议中加入了随机数认证即nonce 技术来防止攻击者进行重
放攻击。使用nonce 技术代替时间戳技术不但可以抵御重放攻击也可以解决因时钟同步问题给时间戳技术带来的影响。
3.2 匿名性分析
3.2.1 匿名度分析
在协议匿名性方面,新的机制和策略也带来了协议匿名性方面的提高。在我们的协议中,移动节点的身份信息经过共享密钥加密,只有拥有共享密钥的移动节点及其家乡域才有可以得到移动节点的真实身份,从而实现了移动节点的匿名。另外,由于采用了历史访问域转发机制,移动节点可以在不暴露家乡域的情况下进行身份认证,大大提高了协议的匿名度。
目前,针对现有的匿名系统的攻击方法主要有消息码攻击,消息长度攻击,重放攻击和共谋攻击等。对于消息码攻击,消息长度攻击和重放攻击协议分别通过加密,填充信息包和随机数认证来有效地防御。 共谋攻击则需要在掌握一定数量的泄密者时才能对安全构成一定的威胁。在直接转发协议中由于转发的中间节点只有当前访问域,所以抵御此类攻击的能力较弱,而改进的协议则可以有效地抵御此类攻击。下面通过假设历史访问域中存在泄密者的情况下来分析改进的协议与直接转发协议相比在匿名度上的提高。考虑到协议主要实现了家乡域对当前访问域的匿名,所以以下只计算当家乡域是信息发送者时协议的匿名度。家乡域为接收者时分析过程和结果与之类似。
在分析协议匿名度之前,首先定义一些将要使用到符号:
T :表示转发路径上第一个泄密者之前是发送者的事件。
H i (i ≥1):表示第一个泄密者在转发路径上的位置为i(假设发送者位置为0)。
H i+:表示转发路径上第i 个位置及以后有泄密者的事件。
P(T| H i+):表示在有泄密者的情况下,攻击者猜测发送者正确的概率。
p :表示移动节点曾访问过的访问域中非泄密者所占的比例。
由于P(T|H 1+)代表被猜中的概率,所以可以定义1- P(T|H 1+)为协议的匿名度。假设移动节点曾访问过的访问域个数为n ,其中泄密者个数为c ,则p  =
n c n −,选定的转发节点的个数为k 。
首先,计算第一个泄密者位于转发路径第i 个位置的概率:
P(H i ) = p i-1(1-p ).
则泄密者位于路径上第二个位置或之后的概率为:
P(H 2+) = ∑=k i 2P(Hi) = ∑=−k i i 2
1p)-(1p
= (1-p )(p −−1p 1k -1) = p -p k .              ○1 第一个泄密者位于路径上第一个位置或以后的概率为:    P(H 1+) =∑=k i 1P(Hi) =∑=k i 11
-i p)-(1p = (1-p )(p −−1p 1k
) = 1-p k .                ○2      当泄密者位于转发路径的第一个位置时,很显然P(T|H 1)=1。而当泄密者位于转发路径的第二个位置或以后时,由于出现非泄密者的概率是相同的,所以 P(T|H 2+) =
c n −1。则由○
1,○2可得:

本文发布于:2024-09-22 17:20:48,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/373435.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:认证   协议   信息
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议