签名方案的多密钥协商协议
- 格式:pdf
- 大小:136.43 KB
- 文档页数:3
一个高效的可验证加密签名方案
在现代密码学中,加密和数字签名是非常常见的密码学操作,这在保护信息安全中有十分重要的作用。
虽然目前已存在实现可验证加密签名的方案,但是它们的复杂性和效率往往比较低,因此需要一个高效的可验证加密签名方案来提高效率。
本文介绍一种高效的可验证加密签名方案。
该方案主要由三个阶段组成:密钥协商阶段,签名生成和验证阶段。
在密钥协商阶段,参与者之间通过协商生成一个共享密钥,该密钥被用来生成签名和验证签名。
在签名生成阶段,生成方将消息加密,并将密文和一个签名标识一起发送给接收方。
在验证阶段,接收方通过使用与发送方相同的共享密钥来解密密文,并验证签名是否正确。
该方案有以下几个特点:
1. 高效性:该方案的签名和验证操作时间复杂度仅为对数级别。
2. 可验证性:该方案允许接收方通过使用共享密钥来验证签名的真实性,并且非法篡改是不可能的。
3. 安全性:该方案使用了基于椭圆曲线加密算法的安全机制,能够防止一些安全攻击。
具体实现流程如下:
1. 密钥协商阶段:参与者之间通过DH密钥交换协商生成共享
密钥,并且为了保证安全性,每位参与者还需要提供自己的身份证明,以便其他参与者可以验证身份。
2. 签名生成阶段:生成方将消息用共享密钥加密,并将密文和签名标识作为签名一起发送给接收方。
3. 验证阶段:接收方通过使用同样的共享密钥,对密文进行解密,并验证签名是否合法。
在实际应用中,该方案可以被用于加密和数字签名交互等场景,如支付、通信等场景中,保障数据的机密性和完整性。
总之,该方案的高效性、可验证性和安全性使其成为现代密码学中的一种优秀方案,具有广泛的应用价值。
面向无人机通信的认证和密钥协商协议蹇奇芮;陈泽茂;武晓康【期刊名称】《计算机科学》【年(卷),期】2022(49)8【摘要】针对无人机通信中密钥配置的安全性和轻量化需求,面向不同计算性能的无人机系统分别提出了基于椭圆曲线密码算法的认证和密钥协商协议DroneSec,以及基于对称密码算法的认证和密钥协商协议DroneSec-lite。
所提协议实现了无人机和地面站之间的双向身份认证和通信密钥配置功能,其中DroneSec协议通过结合使用ECDH(Elliptic-Curve Diffie-Hellman)和消息认证码,在保证前向安全性的情况下减小了计算开销,适用于较高性能的计算平台;DroneSec-lite协议仅使用了对称密码算法,因而计算开销极低,适用于低性能平台。
使用安全协议形式化验证工具ProVerif验证了协议在加强的Dolve-Yao威胁模型下进行双向认证和密钥配置的安全性,并通过仿真环境实验对协议的性能进行了对比测试和分析。
结果显示,协议的计算、通信开销和安全性优于已有协议。
【总页数】8页(P306-313)【作者】蹇奇芮;陈泽茂;武晓康【作者单位】空天信息安全与可信计算教育部重点实验室;武汉大学国家网络安全学院;海军工程大学电气工程学院【正文语种】中文【中图分类】TP309【相关文献】1.EGAKA:一种面向LTE-A机器类型通信的高效组认证与密钥协商协议2.面向车联网的多服务器架构的匿名双向认证与密钥协商协议3.面向Ad Hoc网络的无证书认证组密钥协商协议4.面向云服务的安全高效无证书聚合签名车联网认证密钥协商协议5.一种面向物联网设备的口令认证密钥协商协议因版权原因,仅展示原文概要,查看原文内容请购买。
NTRUSign无线认证和密钥协商协议
张利华;章丽萍;张有光;吕善伟
【期刊名称】《计算机工程与应用》
【年(卷),期】2009(045)007
【摘要】NTRU是一个快速、低开销的公钥体制,适合在资源受限的应用中使用.NTRUSign是基于NTRU的数字签名算法.基于NTRUSign算法,给出了一个无线认证和密钥协商协议.该协议的安全性基于有限时间内在大维数格计算最短向量的困难性.协议包括三个阶段:用户注册阶段、服务器注册阶段、认证阶段和密钥协商阶段.通过安全性分析和协议性能分析对比,表明该协议是一个安全性和效率比占优的协议.
【总页数】4页(P32-35)
【作者】张利华;章丽萍;张有光;吕善伟
【作者单位】北京航空航天大学电子信息工程学院,北京,100083;华东交通大学电气与电子学院,南昌,330013;华东交通大学电气与电子学院,南昌,330013;北京航空航天大学电子信息工程学院,北京,100083;北京航空航天大学电子信息工程学院,北京,100083
【正文语种】中文
【中图分类】TP393.08
【相关文献】
1.无线局域网中一种基于共享秘密的认证和密钥协商协议 [J], 王斌;吕欣美
2.高效无线通信匿名认证密钥协商协议 [J], 王颖;王星魁;彭新光;边婧
3.自认证公钥的无线传感器网络密钥协商协议 [J], 任勇军;王建东;徐大专;庄毅;王箭
4.无线环境下的Web服务身份认证密钥协商协议 [J], 张学英;杨晋吉
5.一种基于第三方认证的无线组密钥协商协议 [J], 游子毅;谢晓尧
因版权原因,仅展示原文概要,查看原文内容请购买。
简述安全协议的分类安全协议可以根据其目标和功能的不同进行分类。
下面是几种常见的安全协议分类:1. 通信机密性协议(Communication Confidentiality Protocol):这种安全协议主要用于保护通信内容的机密性,确保只有授权的用户能够访问通信数据。
常见的协议包括SSL(Secure Socket Layer)和TLS(Transport Layer Security)等。
2. 认证协议(Authentication Protocol):认证协议用于验证用户的身份,确保只有合法用户能够进行操作或访问资源。
常见的协议有Kerberos、OAuth和OpenID等。
3. 密钥协商协议(Key Agreement Protocol):密钥协商协议用于两个或多个通信实体之间协商出一个共享的密钥,以便进行后续的通信加密。
例如,Diffie-Hellman密钥交换协议。
4. 审计协议(Audit Protocol):审计协议用于跟踪和记录系统中发生的安全事件,以便进行安全审计和监控。
这些协议可以帮助检测和应对潜在的安全威胁。
5. 防重放攻击协议(Replay Attack Prevention Protocol):这类协议用于防止重放攻击,即攻击者重复发送或录制一次或多次通信过程,并以后再次发送给目标。
常见的防重放攻击协议包括时间戳和非cesar码。
6. 密码协议(Cryptographic Protocol):密码协议是指使用密码学方法来解决安全问题的协议,包括加密、解密、签名、验证等操作。
常见的密码协议包括RSA、AES和MD5等。
以上是一些常见的安全协议分类,每种协议都有自己独特的功能和目标,为不同的安全需求提供了解决方案。
pqc流程PQC(Post-Quantum Cryptography)是指需要考虑量子计算机威胁的加密方案。
由于量子计算机有天然的优势,例如可以通过Shor算法破解目前广泛使用的对称加密算法和非对称加密算法,因此需要开发出抗量子计算机攻击的加密技术。
本文将介绍PQC的流程。
PQC的流程包括四个主要部分:密钥协商、消息机密性、签名和鉴别。
下面将通过对每个部分的详细介绍,来了解PQC的流程。
密钥协商密钥协商是用于确定在通信过程中所使用的密钥的过程。
密钥协商可以通过基于密码或非密码的算法实现。
由于量子计算机威胁,PQC 需要使用抗量子计算机攻击的密钥交换算法(Key Exchange Algorithm)。
常见的密钥交换算法有SIDH(Supersingular Isogeny Diffie-Hellman)、Bridging Elliptic and Hyperelliptic Curves(BEHC)等。
这些算法在企图攻击这些密钥交换算法时,无论是传统计算机还是量子计算机,都需要几乎不可能的工作量。
消息机密性消息机密性是指在通信过程中对消息进行加密的过程。
由于量子计算机的威胁,传统的加密算法已经不足以保障信息的机密性。
因此,PQC需要使用抗量子计算机攻击的加密算法。
常见的消息加密算法包括一些基于置换的算法、代码的算法和格式密码算法。
这些算法在传统计算机上的加密强度与RSA类似,但在量子计算机上却是NP难问题。
签名签名是指对消息进行签名的过程。
类似于消息加密,传统的签名算法也不足以抗拒量子计算机的攻击。
因此,PQC需要使用抗量子计算机攻击的签名算法。
常见的签名算法包括基于代码的算法、基于置换的算法和超奇异同源椭圆曲线算法(Super-Singular Isogeny-based Signature Algorithm,SISSA)等。
这些算法在传统计算机上的签名强度与RSA类似,但在量子计算机上却是NP难问题。
2006年第21卷第1期 电 力 学 报 Vol.21No.12006 (总第74期) J OU RNAL OF EL ECTRIC POWER (Sum.74)文章编号: 1005-6548(2006)01-0009-04Diffie2Hellman密钥交换协议设计与实现Ξ尹少平1, 董 丹2(1.山西大学工程学院,山西太原 0300132;2.电大在线远程教育有限公司,北京 100011)Design and Implementation of Diff ie2H ellman K ey Exchange ProtocolYIN Shao2ping1, DON G Dan2(1.Engineering College of Shanxi University,Taiyuan 030013,China;2.CR TVU2Online EducationalTechnology Limited,Beijing 100011,China)摘 要: 为了能够真正在2个通信参与者Alice 和Bob之间协商1个密钥,就必须确保他们在协议运行过程中收到的信息的确是来自真实的对方。
本文给出了1种基于随机字符串的认证密钥交换协议以对Diffie2Hellman密钥交换协议进行改进。
这对于电子商务等很多网络应用而言是至关重要的。
本文也给出了这种协议的安全性分析,并描述了基于JAVA的实现。
关键词: 信息安全;密钥交换;身份认证;中间人攻击;DH-EKE中图分类号: TP393.08 文献标识码: A Abstract: In order to agree on a key which is ex2 clusively shared between Alice and Bob,these princi2 pals must make sure that the messages they receive in a protocol run are indeed from the intended princi2 pals.In this paper we propose a protocol to modify the Diffie2Hellman key exchange.This protocol can provide authentication based on random strings.This is critical for many network applications such as e2 business etc.Security analysis of this modified proto2 col given to its implementation based on JAVA is also presented.K ey Words: information security;key exchange al2 gorithm;authentication;man2in2the2middle attack; DH-EKEDiffie和Hellman在其具有里程碑意义的文章“密码学新方向”[1]中提出Diffie2Hellman密钥交换算法,时至今日该算法仍然是最为有效和安全的密钥交换算法。
RFC2408: Internet安全联盟和密钥管理协议(ISAKMP)Internet Security Association and Key Management Protocol (ISAKMP)摘要:该文档为Internet团体指定了一个Internet标准协议栈。
它描述了利用安全概念来建立安全联盟(SA),以及Internet环境中密钥所需的协议。
安全联盟协议协商,建立,修改和删除安全联盟,以及Internet环境所需的属性。
Internet环境中,有多种安全机制,对于每一种安全机制都有多个可选项。
密钥管理协议必须健壮,以处理Internet团体公钥的产生,以及私人网络私钥的产生。
Internet安全联盟和密钥管理协议(ISAKMP)定义了认证一个通信同位体,安全联盟的建立和管理,密钥的产生方法,以及减少威胁(例如:服务否认和重放攻击)的过程。
在Internet环境里,对于建立和维护安全联盟(经过IP 安全服务和其它安全协议),这些都是必不可少的。
目录1 介绍51.1 需要的技术术语 51.2 所需的商议 61.3 什么能够被协商? 61.4 安全联盟和管理71.4.1 安全联盟和注册71.4.2 ISAKMP的需求71.5 认证81.5.1 认证中心81.5.2 实体命名81.5.3 ISAKMP的需求91.6 公钥加密系统91.6.1 密钥交换属性101.6.2 ISAKMP的需要101.7 ISAKMP保护 111.7.1 防止障碍(服务否认) 111.7.2 拦截连接111.7.3 中途攻击111.8 多播通信122 术语和概念122.1 ISAKMP术语 122.2 ISAKMP布置 132.3 协商状态142.4 标识安全联盟152.5 其它172.5.1 传输协议172.5.2 保留域172.5.3 反障碍标记的创建173 ISAKMP载荷183.2 ISAKMP头格式183.2 普通载荷头213.3 数据属性223.4 安全联盟载荷233.5 提议载荷243.6 传输载荷253.7 密钥交换载荷273.8 标识载荷283.9 证书载荷293.10 证书请求载荷313.11 哈希载荷323.12 签名载荷333.13 NONCE载荷333.14 通告载荷343.14.1 通告信息类型363.15 删除载荷383.16 厂商ID载荷404.6 证明唯一交换414.7 主动交换434.8 信息交换445 ISAKMP有效载荷处理445.1 普通信息处理455.2 ISAKMP头操作455.3 特殊有效载荷头处理475.4 安全联盟有效载荷处理485.5 提议有效载荷处理485.6 转换有效载荷处理495.7 密钥的交换有效负载的处理50 5.8 鉴定有效负载的处理505.9 处理的证书有效负载515.10 处理的证书请求有效负载 525.11 哈希值有效负载的处理535.12 签名有效负载的处理 535.13 目前有效负载的处理 545.14 通知有效负载的处理 545.15 删除有效负载的处理 566 结论58A ISAKMP 安全协会属性59A.1 背景/ 基本原理 59A.2 因特网IP 安全DOI 的分配值59A.3 支持安全协议59A.4 ISAKMP 鉴定类型值60A.4.1 ID_IPV4_ADDR 60A.4.2 ID_IPV4_ADDR_SUBNET 60A.4.3 ID_IPV6_ADDR 60A.4.4 ID_IPV6_ADDR_SUBNET 60B定义新的解释域 60B.1 状况61B.2 安全策略61B.3 命名计划62B.4 为指定安全服务的句法62B.5 有效负载说明62B.6 定义新交换类型的62安全考虑62IANA 考虑63解释域63支持的安全协议63鸣谢63参考数目64作者地址66版权声明671 介绍此文档描述了因特网安全联盟和密钥管理协议(ISAKMP)。
isakmp协议ISAKMP(Internet Security Association and Key Management Protocol)是用于建立和维护IPsec VPN连接的协议。
它定义了安全关联(SA)的建立和管理,同时提供了身份认证和密钥交换的功能。
ISAKMP是一个基于面向连接的协议,它运行在TCP或UDP上,并使用IP为传输层协议。
ISAKMP协议包含两个主要的阶段:建立安全关联(SA)和生成密钥材料。
在建立安全关联阶段,ISAKMP主要负责协商双方的安全参数,包括加密算法、完整性检验、认证方法等。
这个阶段通常使用IKE(Internet Key Exchange)协议进行密钥交换和身份认证。
在生成密钥材料阶段,ISAKMP使用协商好的安全参数生成共享密钥和会话密钥,用于加密和解密IPsec数据包。
ISAKMP协议通过以下方式提供安全性:1. 身份验证:ISAKMP协议支持多种身份验证方法,包括预共享密钥、数字证书、Kerberos等。
双方在建立安全关联时需要进行身份验证,以确保通信双方的身份合法。
2. 密钥交换:ISAKMP协议使用IKE协议进行密钥交换,通信双方通过IKE协商加密算法、完整性检验算法和密钥长度等参数,并生成共享密钥和会话密钥。
3. 安全参数协商:ISAKMP协议允许通信双方协商并确定使用的加密算法、完整性检验算法和身份认证方法。
这样可以根据具体需求选择合适的安全参数,以提供更好的安全性和性能。
4. 安全保护:ISAKMP协议包含一些安全机制,如防止重放攻击(重放攻击通过重新发送已经捕获的数据包来破坏通信的完整性)、数字签名(确保消息的完整性和真实性)等。
这些机制可以帮助提高通信的安全性。
ISAKMP协议的应用场景主要是在建立和维护IPsec VPN连接时。
IPsec VPN可以用于安全地传输敏感数据,保护通信双方的隐私和机密性。
ISAKMP协议通过提供身份认证和密钥交换的功能,可以确保IPsec VPN连接的安全性。
移动漫游中强安全的两方匿名认证密钥协商方案陈明【摘要】由于低功耗的移动设备计算和存储能力较低,设计一种高效且强安全的两方匿名漫游认证与密钥协商方案是一项挑战性的工作.现有方案不仅计算开销较高,而且不能抵抗临时秘密泄露攻击.针对这两点不足,提出一种新的两方匿名漫游认证与密钥协商方案.在新方案中,基于Schnorr签名机制,设计了一种高效的基于身份签密算法,利用签密的特性实现实体的相互认证和不可追踪;利用认证双方的公私钥直接构造了一个计算Diffie-Hellman(Computational Diffie-Hellman,CDH)问题实例,能抵抗临时秘密泄露攻击.新方案实现了可证明安全,在eCK(extended Canetti-Krawczyk)模型基础上,探讨两方漫游认证密钥协商方案安全证明过程中可能出现的情形,进行归纳和拓展,并给出新方案的安全性证明,其安全性被规约为多项式时间敌手求解椭圆曲线上的CDH问题.对比分析表明:新方案安全性更强,需要实现的算法库更少,计算和通信开销较低.新方案可应用于移动通信网络、物联网或泛在网络,为资源约束型移动终端提供漫游接入服务.【期刊名称】《电子学报》【年(卷),期】2019(047)001【总页数】9页(P16-24)【关键词】认证密钥协商;移动漫游服务;基于身份密码体制;计算Diffie-Hellman 问题;扩展的CK模型【作者】陈明【作者单位】宜春学院数学与计算机科学学院,江西宜春336000【正文语种】中文【中图分类】TP3091 引言随着移动通信网与互联网融合,新型网络形态(物联网或泛在网络)正在逐步形成,其典型特征是终端设备多样化和移动频繁.移动节点(Mobile Node,MN)(特别是资源约束型设备)漫游接入认证与密钥协商是新型网络的一项重要安全技术[1].漫游认证方案主要分为有家乡服务器(Home Server,HS)在线参与认证的三方漫游认证协议[2~6],和无需HS在线认证的两方漫游认证协议[7~13].在三方协议中,远程认证服务器(Foreign Server,FS)与HS在线交互,共同完成MN身份认证,具有较大的通信时延,且易于遭受DOS攻击.随着移动设备能有效支持公钥密码算法,两方漫游认证与密钥协商方案受到研究者的广泛关注.最近,Jo等人[9]、Tsai等人[10]、周彦伟等人[11~13]分别提出两方漫游认证与密钥协商方案.但是上述方案存在以下不足:第一,采用较弱的安全模型(CK(Canetti-Krawczyk)模型[14]),协议的设计和安全性分析没有考虑会话临时秘密泄露攻击;第二,计算开销较大,Jo方案[9]、Tsai方案[10]、Zhou方案a[11]和Zhou方案c[13]基于双线性映射群,采用了具有较高计算代价的双线性对运算,Zhou方案[11~13]大量使用了公钥加密和数字签名技术,增加了方案的计算开销和算法实现方面的成本.此外,陈明[15]指出Zhou方案a[11]和Zhou方案b[12]不能抵抗FS的密钥泄露攻击.基于以上分析,强安全性(达到eCK安全[16],能抵抗临时秘密泄露攻击)且更加高效的两方漫游认证与密钥协商方案还需要进一步研究.分析现有方案,Tsai方案[10]采用基于身份签密实现FS对MN的显式认证以及MN对FS的隐式认证,采用了典型的Diffie-Hellman[17]密钥交换技术增强会话密钥安全性,安全性和总体性能较好.本文研究思路是借鉴Tsai方案的设计思想,采用轻量级的密码算法,设计更有效的认证方案,以达到降低计算开销和增强安全性的目标.首先,本文基于Schnorr[18]签名机制,融合代理签名思想,设计一种高效的基于身份签密算法,并以此构造漫游认证方案.其次,本文方案要求FS和MN输入私钥参与运算,将抗临时秘密泄露攻击(Ephemeral Secret Reveal,ESR)安全性规约到求解CDH问题实例.此外,在安全模型方面,本文基于eCK模型,参考陈明[19]关于实现基于身份认证密钥协商方案强安全性的研究,对相关概念重新定义;更进一步,考虑到漫游认证协议中实体角色的特性,对安全证明过程中可能出现的情形进行归纳和拓展.2 背景知识2.1 困难问题与假设设G为椭圆曲线上的q阶循环群,P,QG是曲线上的点,Q是P的倍数点,存在aq,满足:Q=aP(为了描述简洁,本文省去了mod q运算).下面定义G上的CDH问题和CDH假设.CDH问题:对于任意未知的a,bq,假设PG是G的生成元,给定(aP,bP),计算abP.CDH假设:不存在概率多项式时间算法能成功求解CDH问题.2.2 漫游认证模型漫游认证服务(如图1)包含三种角色:家乡域认证服务器HS、远程域认证服务器FS和移动节点MN.HS负责生成系统参数,生成FS与MN的漫游认证密钥,并对MN的身份进行管理,FS为MN提供漫游接入服务.本文模型具有去中心化的特点,每个认证服务器地位平等,无需超级认证中心为认证服务器颁发公钥证书.在组网初期,每个服务器可以独立地建立域内系统参数,服务器之间通过漫游协商达成漫游认证的系统参数.为了简化密钥管理,本文系统采用IBC(Identity-Based Cryptography)体制[20].3 新的漫游认证与密钥协商协议本文采用基于ECC的IBC系统和Schnorr[18]短签名机制,设计一种新的漫游认证与密钥协商协议.新协议沿用Tsai协议[10]的设计思想,采用基于身份签密技术实现FS与MN的相互认证.但是,在Tsai方案中,FS和MN的公(私)钥分别属于两个独立的循环群,使得实现ESR安全性变得困难(ESR安全性要求将FS与MN 的公(私)钥建立直接的密码学关联).为了实现降低计算开销和增强安全性的目标,本文不采用双线性映射群,在移动节点和远程认证服务器端采用椭圆曲线密码算法(Schnorr短签名机制)构造基于身份的公、私钥,进而设计一种高效的基于身份签密方案.新协议包含系统建立、漫游协商、节点注册、漫游认证四个算法,具体描述如下(如图2所示).系统建立输入安全参数κ,HS产生并发布系统参数params=<κ,q,G,P,PH,H1,H2,H3,H4,H5,H6,H7>.其中,q为大素数,G为椭圆曲线上的循环群,PG为G的生成元,PH=sP为HS公钥,sq为主密钥,Hi:{0,1}*→q(i{1,,5})为抗碰撞哈希函数,H6:{0,1}*→{0,1}n和H7:{0,1}*→{0,1}κ为密钥导出函数.漫游协商 FS提交其身份标识IDF,HS随机选择rFq,计算RF=rFP,qF=H1(IDF‖RF)和dF=rF+sqF,通过安全信道将<params,dF,RF>发回给FS.FS 通过计算dFP=RF+qFPH验证私钥是否正确.私钥产生算法采用了Schnorr[18]签名机制,IDF为被签名消息.节点注册 MN提交其身份标识IDM,HS选择q,计算RM=rMP和令TIDM=(tM‖RM‖T),然后计算qM=H2(TIDM)和dM= rM+sqM,通过安全信道将<dM,TIDM>发回给MN.其中,tM作为MN漫游时的临时身份,T是TIDM 的有效期.HS将<IDM,TIDM>插入节点列表,并安全擦除收到<dM,TIDM>后,MN按如下方式验证私钥dM是否正确:计算qM=H2(TIDM),验证等式dMP= RM+qMPH是否相等,若通过验证,则存储TIDM,并秘密保存dM.漫游认证当MN进入其它认证域时,①MN随机选择r,xq,计算R=rP,X=xP,Q=xPF,h=H3(IDH‖IDF‖TIDM‖R‖X‖Q),K=H6(X‖Q),=r+hdM,c=K(IDH‖TIDM‖R‖),发送(X‖c)给FS.其中,PF=RF+qFPH,qF=H1(IDF‖RF),PF为远程域服务器公钥,可预先计算并存储.②收到(X‖c)后,FS计算Q*=dFX,K*=H6(X‖Q*),(IDH‖TIDM‖R‖)=K*c,检查TIDM的有效期,然后计算h*=H3(IDH‖IDF‖TIDM‖R‖X‖Q*),qM=H2(TIDM),验证等式P=R+h*(RM+qMPH)是否成立,若TIDM不在有效期内或等式不成立则终止认证.否则,随机选择yq,计算Y=yP,Z=yX,V=dF(RM+qMPH),g=H4(IDF‖TIDM‖X‖Y‖Q*‖Z‖V),发送(Y‖g)给MN.计算会话密钥SKFM=H7(tM‖IDF‖h*‖g‖Z‖V).③收到(Y‖g)后,MN计算Z*=xY,V*=dMPF,g*=H4(IDF‖TIDM‖X‖Y‖Q‖Z*‖V*),验证g*=g成立则计算会话密钥SKMF=H7(tM‖IDF‖h‖g*‖Z*‖V*),然后计算l=H5(TIDM‖IDF‖X‖Y‖Q‖Z*‖V*‖SKMF)并发送给FS.④收到l后,FS计算l*=H5(TIDM‖IDF‖X‖Y‖Q*‖Z‖V‖SKFM),验证l*与l是否相等,相等则完成认证.容易验证:Q=Q*,K=K*,Z=Z*,V=V*,h=h*,g=g*,l=l*,SKFM=SKMF.协议满足正确性.在新方案中,FS通过验证签名P = R+h*(RM +qMPH)显式认证MN;而MN通过验证g*=g以及Q=Q*=xdFP隐式认证FS.此外,在认证阶段的第②步和第③步,FS与MN分别计算V和V*,并将V(V*)作为会话密钥材料的一部分,以此实现ESR安全性.V和V*分别由FS与MN的私钥和公钥运算得到,在FS和MN的私钥不泄露的情况下,敌手想要计算V(或V*),面临求解CDH问题,本文4.1节演示了ESR安全性的规约过程.同时,新方案还利用签密技术的性质,将MN的身份及签名消息进行加密,以达到防止对移动节点进行追踪的目标.本文采用了先签名后加密的方法,相对Tsai方案的先加密后签名,能更加有效地保护用户的隐私信息.4 分析与比较4.1 协议安全性分析4.1.1 漫游认证安全模型定义及扩展参考eCK模型[16]和陈明[19]关于实现强安全性的研究,下面先简要描述安全模型的相关概念和定义,然后根据漫游认证方案的特性,对安全游戏模拟过程中的各种场景进行重新归纳.会话(Session) 协议实例的一次运行被称为一个会话.会话由输入消息(,I,i,j)或(,R,j,i,Xi)激活,其中,表示协议标识,I(发起者)和R(响应者)表示会话角色,i和j表示用户标识.如果用户i收到消息(,I,i,j),那么i作为会话发起者,并输出消息Xi给j;如果用户j收到消息(,R,j,i,Xi),那么j作为会话响应者,并输出消息Xj给i.最后,双方计算会话密钥SK.会话标识sid由用户标识和会话消息连接而成.如果i是一个发起者,那么sid=(,I,i,j,Xi)或sid=(,I,i,j,Xi,Xj),称用户i是该会话的拥有者;如果j是一个响应者,那么sid=(,R,j,i,Xi,Xj),称用户j是该会话的拥有者.如果会话的拥有者计算了会话密钥,那么称该会话已完成(用comp表示).称会话sid=(,I,i,j,Xi,Xj),sid′=(,R,j,i,Xi,Xj)互为匹配会话.敌手(Adversary) 敌手A模拟为一个概率多项式时间图灵机,被允许执行多项式有界(次)的询问.- Send(message).消息message是如下形式之一:(,I,i,j),(,R,j,i,Xi),(,I,i,j,Xi,Xj).当输入为(,I,i,j),模拟器输出Xi;当输入为(,R,j,i,Xi),模拟器输出Xj,并将该会话置为comp;当输入为(,I,i,j,Xi,Xj),模拟器将该会话(如果sid=(,I,i,j,Xi)存在)置为comp,不输出任何值.- SessionKeyReveal(sid).如果sid存在,且状态为comp,那么返回该会话的会话密钥.- Corrupt(i).模拟器输出用户i的长期私钥.- EphemeralKeyReveal(sid).如果sid存在,那么返回该会话的临时秘密.- Test(sid*).模拟器随机选择b{0,1},如果b=0,则输出随机的SK′{0,1}k,否则输出sid*相关的会话密钥SK*.参考陈明[19]的工作,我们给出会话新鲜性定义,包含三种情况,分别模拟三种主要的安全属性:抗密钥泄露伪装(Key Compromise Impersonation,KCI)、抗临时秘密泄露(ESR)攻击和弱的完美前向安全(weak Perfect Forward Secrecy,wPFS). 定义1(Freshness) 令sid*=(,I,i,j,Xi,Xj)或sid*=(,R,j,i,Xi,Xj)是用户i和j之间的一次会话,且状态为comp,令o表示sid*的拥有者,p表示sid*中与o相对应的参与者,令sid**(如果存在)表示sid*的匹配会话,如果满足下列条件之一,则称sid*是新鲜会话:①(模拟KCI安全)A未提交Corrupt(p) 询问,针对sid*和sid**的SessionKeyReveal询问,以及EphemeralKeyReveal(sid*)询问;②(模拟wPFS安全)A未提交针对sid*和sid**的SessionKeyReveal询问和EphemeralKeyReveal询问;③(模拟ESR安全)A未提交针对sid*和sid**的SessionKeyReveal询问,Corrupt(o)和Corrupt(p)询问.安全游戏(Security Game) 安全游戏被模拟为挑战者C与敌手A之间的一系列游戏Game.A被允许执行多项式时间的上述询问(但仅能提交一次对挑战会话sid*的Test询问,并且始终保持sid*的新鲜性),C模拟协议的相应算法做出应答.最后,A输出对b的猜测b′{0,1},如果b′=b,A赢得游戏.A赢得Game的优势定义为定义2 如果协议满足如下要求,被认为满足eCK安全:①如果在两个诚实的参与者之间完成了一次匹配的会话,那么他们必然以极大的概率计算相同的会话密钥;②对任意多项式时间敌手均是可忽略的.在普通的两方密钥协商方案中,任何的实体既可以作为协议的发起者也可以是协议的响应者.然而在漫游认证方案中,认证的发起者(MN)和响应者(FS)的身份属性是固定的,不能互换.但是,敌手(通过腐化诚实的实体或者主动创建新的实体)既可以作为MN也可以是FS参与到认证过程中来.为了准确刻画敌手的攻击能力,我们对安全游戏模拟过程中的各种场景进行了重新归纳.下文用i专指发起者,用j专指响应者,假定sid*是挑战会话,协议的模拟场景描述如下.①sid*不存在匹配会话,且拥有者为i.事件E1,A不能询问j的长期私钥和sid*的临时私钥;事件E2,A不能询问i和j的长期私钥.②sid*不存在匹配会话,且拥有者为j.事件E3,A不能询问i的长期私钥和sid*的临时私钥;事件E4,A不能询问i和j的长期私钥.③sid*存在匹配会话sid′,且拥有者为i.事件E5,A不能询问sid*和sid′的临时私钥;事件E6,A不能询问i和j的长期私钥;事件E7,A不能询问j的长期私钥和sid*的临时私钥.④sid*存在匹配会话sid′,且拥有者为j.事件E8,A不能询问sid*和sid′的临时私钥;事件E9,A不能询问i和j的长期私钥;事件E10,A不能询问i的长期私钥和sid*的临时私钥.上述事件中,E1、E3、E7和E10模拟KCI安全性,E2、E4、E6和E9模拟ESR安全性,E5和E8模拟wPFS安全性.4.1.2 安全性分析根据安全模型定义,下面对本文协议的安全性进行分析.定理1 假设Hi(i{1,…,7})模拟为随机预言机,如果CDH假设成立,那么本文协议满足eCK安全.证明考虑安全性定义(定义2)的两个条件,第一,对于两个诚实的实体,完全如实地按照协议执行,如果他们完成了一次匹配的会话,根据匹配会话条件,容易验证,他们必然以极大的概率计算相同的会话密钥;对于定义2的第二个条件,根据安全模型将其规约到求解CDH问题,具体如下.假如存在多项式时间敌手A以优势ε(κ)赢得下面构造的安全游戏,那么可以构造算法以不低于f(ε(κ))的概率求解CDH问题.下面,分别以事件E1、E2和E5为例描述游戏模拟过程,其它事件类似,限于论文篇幅,不再一一描述.假设至多创建了m个移动节点、n个认证服务器以及l次会话,假定sid*是挑战会话,各事件模拟如下.事件E1下面以一系列游戏来模拟事件E1.游戏G0.G0模拟真实的攻击环境,敌手A和挑战者C均按照真实协议的规范执行.A赢得G0的概率为Adv(A,G0),与真实环境下的概率相同.游戏G1.初始化:C按照协议规范产生系统公开参数params=<κ,q,G,P,PH,H1,H2,H3,H4,H5,H6,H7>,并按照协议产生所有用户的公私钥.询问:C维护初始为空的列表Li(i{1,,7})和LS,按以下方式响应A发起的询问. Send0(,I,i,j).C创建发起者预言机,按照协议计算(R‖X‖Q‖h‖K‖‖c),输出(X‖c),并将<,I,i,j,r,R,x,X,Q,h,K,,c,#>插入LS中.Send1(,R,j,i,(X‖c)).C创建响应者预言机,按照协议规范解密消息(IDH‖TIDi‖),然后验证成立,并按照协议规范计算(Y‖Q′‖h′‖K′‖Z‖V‖g‖SK),输出(Y‖g),并将<,R,j,i,R,X,y,Y,Q′,h′,K′,Z,V,g,SK>插入LS.Send2(,I,i,j,X,(Y‖g)).C按照协议计算(Z′,V′,g′,SK),然后更新<,I,i,j,r,R,x,X,Q,h,K,,c,Y,Q,h,K,Z′,V′,g′,SK>.SessionKeyReveal(sid).如果sidsid*且相应的SK在LS中已存在,则输出SK,否则输出.Corrupt(ID).如果IDJ,输出ID的长期私钥dID.这里J为C预先选定的一个用户身份.EphemeralKeyReveal(sid).如果sidsid*且在LS中已存在,输出sid的临时私钥x 或y.Test(sid).如果sidsid*,C终止游戏;否则C随机选择b{0,1},如果b=0,则输出随机的SK′{0,1}κ,否则输出正确的SK*.G1与G0的不同之处在于:C选择了用户i发起的第s次会话sid*作为Test会话,且j=J.如果A发起了Test(sid)询问,且sid=sid*,由于sid=sid*的概率为1/mnl,则Adv(A,G1)1/mnlAdv(A,G0).游戏G2.G2与G1的不同之处是,将H6模拟为随机预言机O1:KR{0,1}n.具体如下.H6(X,Q)询问.如果<X,Q,K>在L6中存在,则直接输出K;否则,C随机选择并输出K{0,1}n,将<X,Q,K>插入L6中.Send0(,I,i,j).如果这是用户i发起的第s次会话sid*,且j=J,C随机选择r*,x*q,计算R*=r*P,X*=x*P,Q*=x*PJ,调用预言机O1输出K*{0,1}n,然后计算和c*=K*(IDH‖TIDi*‖R*‖*),输出(X*‖c*),最后将<X*,Q*,K*>插入L6.在G2中,X*由模拟器随机选择的x*计算产生,且不允许A询问j=J的长期私钥和sid*的临时私钥x*,A面临求解CDH问题Q*=x*PJ.如果CDH假设成立,那么,从A的视角来看,K*在{0,1}n上随机均匀分布.因此,从A的视角来看,游戏G2和G1是不可区分的,则|Adv(A,G2)-Ad v(A,G1)| negl(κ).游戏G3.G3与G2的不同之处是,将H3模拟为随机预言机O2:hRq.H3(IDH,IDj,TIDi,R,X,Q)询问.如果<IDH,IDj,TIDi,R,X,Q,h>在L3中存在,则直接输出h;否则,C随机选择并输出hq,将<IDH,IDj,TIDi,R,X,Q,h>插入L3中. Send0(,I,i,j).与G2的不同之处是,调用预言机O2输出h*q.最后将<IDH,IDj,TIDi,R,X,Q,h*>插入L3.与G2类似,如果CDH假设成立,那么:|Adv(A,G3)-Adv(A,G2)| negl(κ).游戏G4.G4与G3的不同之处是,在会话sid*中,给定CDH挑战(aP,bP,abP),如果A输出正确的猜测b′=b,那么,C可以构造算法解决CDH问题,具体如下. 初始化:令PJ = aP.H6(X,Q)询问.如果L6中存在<X,,K>与之对应,则更新为<X,Q,K>,否则与G3相同.H3(IDH,IDj,TIDi,R,X,Q)询问.如果L3中存在<IDH,IDj,TIDi,R,X,,h>与之对应,则更新为<IDH,IDj,TIDi,R,X,Q,h>,否则与G3相同.Send0(,I,i,j).如果这是用户i发起的第s次会话sid*,且j=J,C随机选择r*,x*q,计算R*=r*P,X*=x*bP,然后调用预言机O1和O2输出K*{0,1}n和h*q,按照与G3中相同方式计算*,c*,输出(X*‖c*),最后将<X*,,K*>插入L6,将<IDH,IDj,TIDi*,R*,X*,,h*>插入L3.Send2(,I,i,j,X,(Y‖g)).如果sid=sid*∧X=X*,C更新<,I,i,j,r*,R*,x*,X*,,h*,K*,*,c*,Y,,,g,>;否则按照协议计算(Z′,V′,g′,SK),然后更新<,I,i,j,r,R,x,X,Q,h,K,,c,Y,Z′,V′,g′,SK>.Test(sid).如果sidsid*,C终止游戏;否则C输出随机的SK*{0,1}κ.游戏结束后,C查找L3和L6,如果存在<X*,Q*,K*>和<IDH,IDj,TIDi*,R*,X*,Q*,h*>,则令abP=Q*/x*作为对CDH挑战的回答.注意,H3和H6模拟为随机预言机,为了保持一致性,对相同的输入应答相同的输出.如果A以不可忽略的概率输出正确的猜测b′=b,则必然得到了正确的Q*=x*abP,并且提交了H3(X*,Q*)询问和H6(IDH,IDF,TIDi*,R*,X*,Q*)询问,取得K*和h*,才能计算得到正确的SK*=H7(ti*‖IDj‖h*‖g‖Z‖V).因此,如果CDH假设成立,那么A成功的优势是可忽略的,则|Adv(A,G4)-Adv(A,G3)|negl(κ).事件E 2游戏G0.与事件E1中G0相同.游戏G1.与事件E1中G1基本相同.不同之处在于:Corrupt(ID).如果IDI∧IDJ,输出ID的长期私钥dID.这里I和J为C预先选定的两个用户.EphemeralKeyReveal(sid).如果sid在LS中已存在,输出sid的临时私钥x或y. 同样的,有Adv(A,G1) 1/mnlAdv(A,G0).游戏G2.与事件E1中G3基本一致.不同之处在于:Send0(,I,i,j).如果i=I,则调用预言机O2输出hq.最后将<IDH,IDj,TIDi,R,X,Q,h>插入L3.同样的,如果CDH假设成立,那么:|Adv(A,G2) -Adv(A,G1)| negl(κ).游戏G3.G3与G2的不同之处是,将H4模拟为随机预言机O3:gRq.H4(IDj,TIDi,X,Y,Q,Z,V)询问.如果<IDj,TIDi,X,Y,Q,Z,V,g>在L4中存在,则直接输出g;否则,随机选择并输出gq,将<IDj,TIDi,X,Y,Q,Z,V,g>插入L4.Send1(,R,j,i,(X‖c)).与G2的不同之处是,如果i=I∧j=J,则调用随机预言机O3输出gq.最后将<IDj,TIDi,X,Y,Q,Z,V,g>插入L4.类似的,A面临求解CDH问题V=dIPJ.如果CDH假设成立,那么,从A的视角来看,g在q上随机均匀分布.因此,从A的视角来看,G3和G2不可区分,则|Adv(A,G3)-Adv(A,G2)|negl(κ).游戏G4.G4与G3有以下不同.初始化:令PI = ηbP,PJ = ηaP.其中,ηq为C选择的随机数.H4(IDj,TIDi,X,Y,Q,Z,V)询问.如果L4中存在<IDj,TIDi,X,Y,Q,Z,,g>与之对应,则更新记录为<IDj,TIDi,X,Y,Q,Z,V,g>;否则与G3相同.Send0(,I,i,j).如果i=I∧j=J,C随机选择xq,按照与G3中相同方式计算X,Q,K,随机选择,hq,计算R=P-hPI,c=K(IDH‖TIDi‖R‖),输出(X‖c),最后将<IDH,IDj,TIDi,R,X,Q,h>插入L3;否则与G3相同.Send1(,R,j,i,(X‖c)).如果i=I∧j=J,则调用随机预言机O3输出gq.最后将<IDj,TIDi,X,Y,Q,Z,,g >插入L4;否则与G3相同.Send2(,I,i,j,X,(Y‖g)).如果i=I∧j=J,C查找L3和L4,如果L3中存在<IDH,IDj,TIDi,R,X,Q,h>,且L4中存在<IDj,TIDi,X,Y,Q,Z,V,g>,则计算SK=H7(ti‖ IDj‖h‖g‖Z‖V),更新<,I,i,j,r,R,x,X,Q,h,K,,c,Y,Q,h,K,Z,V,g,SK>,如果L3和L4中不存在相应元组则终止;否则与G3相同.Test(sid).如果sidsid*,C终止游戏;否则C输出随机的SK*{0,1}κ.如果游戏没有被终止,C 查找L4,L4中必然存在与sid*相对应的<IDj*,TIDi*,X*,Y*,Q*,Z*,V*,g*>,令abP=V*/η2作为对CDH挑战的回答.同理,如果A以不可忽略的概率输出正确的猜测b′=b,则必然得到正确的V*=η2abP,并且提交了H4(IDj*,TIDi*,X*,Y*,Q*,Z*,V*)询问,取得g*,从而计算正确的SK*=H7(ti*‖ IDj*‖h*‖g*‖Z*‖V*).如果CDH假设成立,那么A成功的优势是可忽略的,则|Adv(A,G4)-Adv(A,G3)|negl(κ).事件E5游戏G0.与事件E1中G0相同.游戏G1.与事件E1中G1基本相同.不同之处在于:Corrupt(ID).输出ID的长期私钥dID.EphemeralKeyReveal(sid).如果sidsid*在LS中已存在,并且sid不是与sid*相匹配的会话,输出sid的临时私钥x或y.同样的,有Adv(A,G1) 1/mnlAdv(A,G0).游戏G2.G2与G1的不同之处是,将H4模拟为随机预言机O3:gRq.H4(IDj,TIDi,X,Y,Q,Z,V)询问.如果<IDj,TIDi,X,Y,Q,Z,V,g>在L4中存在,则直接输出g;否则,随机选择并输出gq,将<IDj,TIDi,X,Y,Q,Z,V,g>插入L4.Send1(,R,j,i,(X‖c)).与G1的不同之处是,如果sid与sid*相匹配,调用随机预言机O3输出gq.最后将<IDj,TIDi,X,Y,Q,Z,V,g>插入L4.同理,|Adv(A,G2)-Adv(A,G1)|negl(κ).游戏G3.G3与G2有以下不同.H4(IDj,TIDi,X,Y,Q,Z,V)询问.如果L4中存在<IDj*,TIDi*,X,Y*,Q*,,V*,g*>与之对应,则更新记录为<IDj*,TIDi*,X,Y*,Q*,Z,V*,g*>;否则与G2相同.Send0(,I,i,j).如果sid=sid*,C随机选择x*q,计算X*=x*bP,Q*=x*djbP,然后,按照G2的方式计算(R*‖h*‖K*‖*‖c*),并输出(X*‖c*);否则与G2相同.Send1(,R,j,i,(X‖c)).如果sid与sid*相匹配,C随机选择y*q,令Y*=y*aP,调用随机预言机O3输出g*q,然后输出(Y*‖g*),并将<IDj*,TIDi*,X,Y*,Q*,,V*,g*>插入L4;否则与G2相同.Test(sid).如果sidsid*,C终止游戏;否则C输出随机的SK*{0,1}κ.如果游戏没有被终止,C查找L4,L4中存在与sid*相对应的元组<IDj*,TIDi*,X*,Y*,Q*,Z*,V*,g*>,计算abP=Z*/x*y*作为对CDH挑战的回答. 同理,如果A以不可忽略的概率输出正确的猜测b′=b,则必然得到正确的Z*= x*y*abP,并且提交了H4(IDj*,TIDi*,X*,Y*,Q*,Z*,V*)询问,取得g*,从而计算正确的SK*=H7(ti*‖IDj*‖h*‖g*‖Z*‖V*).如果CDH假设成立,那么A成功的优势是可忽略的,则|Adv(A,G4)-Adv(A,G3)|negl(κ).其它事件模拟过程与上述类似.证毕.4.2 匿名性分析漫游过程中,MN始终使用临时的身份tM= H1(IDM‖RM‖rM*),其中,rM*q 是由HS随机选择的值,且随后被安全删除.tM可看成在q上随机均匀分布,除HS外,任何实体都不能将其与MN的真实身份IDM联系起来.因此,协议满足匿名性.4.3 不可追踪性分析认证过程中,利用签密技术的性质,MN的临时身份信息TIDM通过加密传输,只有对应的FS能产生相应的解密密钥.在假定所有FS不联合泄密的情况下,本文协议能实现MN的不可追踪性.要实现强的不可追踪性,可以采用与文献[10]类似的方法,为MN生成多个临时的身份,每次使用不同的临时身份进行认证.这样的代价是增加了节点的存储开销,用于存储临时身份信息.4.4 分析与比较表1对最近提出的几种两方漫游认证协议进行了对比分析.表1 协议比较协议主要安全属性KCIwFPSESR计算开销通信开销(bits)发送接收算法需求Jo协议[9]㐰㐰‱2M+3E+1SV/2P+1M+3E+1SS72321836ECC/PBC/DS/HZhou协议a[11]㐰㐰‱5M+1PKE+1SV/4M+2P+2PKD+1SS4088(+160)966ECC/PBC/PKC/DS/H Zhou协议b[12]㐰㐰‱3M+1PKE+2PKD/4M+1PKD+2PKE+1Sv3816(+160)1286ECC/PKC/DS/H Zhou协议c[13]㐰㐰‱6M+1PKE+1PKD/5M+3P+1PKD+1PKE3880(+160)854ECC/PBC/PKC/DS /HTsai协议[10]㐰㐰‱4M+1E/1P+5M3282918ECC/PBC/HChen协议[15]㐰㐰㐰5M/8M2882(+160)1676ECC/H本文协议㐰㐰㐰5M/7M2204918ECC/H 4.4.1 安全性比较从表1可见,方案[9~13]均没有考虑会话临时秘密泄露攻击,不满足ESR安全性.由于移动节点易于遭受劫持,因此,ESR安全性尤为重要.此外,陈明[15]指出,Zhou协议a[11]和Zhou协议b[12]的安全性更弱,不能抵抗FS的密钥泄露攻击.陈明[15]提出一种采用隐式认证技术的漫游认证与密钥协商方案,该方案实现了强安全性和匿名性,但是没有实现不可追踪性.4.4.2 计算、通信和存储开销比较本文以80bits安全等级为基准,参考文献[21]的实验数据,采用基于超奇异椭圆曲线上的有限域E(F2m),q、G、GT上的元素分别为160bits、758bits、1516bits.表1中,M表示椭圆曲线上的点乘运算,E表示群GT上的指数运算,P 表示双线对运算,PKE(PKD)表示公钥加(解)密,SS(SV)表示数字签名(及验证),PBC表示双线性对函数库,PKC表示公钥加密算法,DS表示数字签名,H表示密码Hash函数.同时假定用户ID为20字节(等价于q上的一个值),时间数据为6字节.由于各协议采用不同的系统参数,其中,Jo协议[9]、Zhou协议a[11]和Tsai协议[10]采用双线性映射群,Zhou协议[11~13]使用了公钥加密和数字签名方案(未具体说明所采用的相关算法),Jo协议使用了ECDSA方案,因此,很难做出完全一致的对比.总的来看,本文协议需要实现的算法库少,计算和通信开销均为最低. 计算方面,本文协议、Chen协议和Tsai协议相近(根据基于MIRACL库的算法实现[21],1P4M);Jo协议和Zhou协议较高.通信方面,列举了MN的通信开销(FS则相反),所有协议实际都是发送2次/接收1次消息(Zhou协议[11~13]和Chen协议[15]忽略了密钥确认的步骤,因此我们在发送部分增加了160bits的密钥确认消息).总的通信开销对于智能手机这类较大的移动设备差别不大,但是对于传感器节点还是有较大差别.以文献[22]的实验数据为基准,MICA2节点发送和接收一个字节数据消耗能量分别约为52.2J 和19.3 J,则MN的通信能量消耗分别约为:16.6mJ(本文协议)、23.6mJ(Chen协议)、23.7mJ(Tsai协议)、28.5mJ(Zhou协议c)、29.1mJ(Zhou协议b)、30.1mJ(Zhou协议a)、52.6mJ(Jo协议).另外,在存储开销方面,本文方案总体较优.但是,相对Tsai方案,本文方案在存储开销和不可追踪性之间存在一个折衷.换句话说,要实现与Tsai方案相等强度的不可追踪性,本文方案需要更高的存储开销.这需要从两个方面进行解释.一方面,为了使移动节点和远程域服务器的公钥属于同一个循环群,以便于实现ESR安全性,本文方案不再使用双线性映射群,远程域服务器的私钥采用了Schnorr签名算法生成,使得远程域服务器的公钥大小增加,变为“1id+1g”,而Tsai方案为“1 id”(采用双线性映射群生成公钥的好处在于:可以直接将ID。