阅读笔记1:A secure and efficient certificateless signature scheme for Internet of Things
摘要
物联网(IoT)是一项新的技术创新,它使事物更加智能,使我们的生活更加方便。为了确保物联网中智能对象之间的安全通信,无认证签名是一种提供数据完整性和身份认证的可行加密工具:
- 消除了证书管理,消除了基于身份加密的密钥托管问题;
- 无证书签名方案不能抵抗公钥替换攻击、密钥生成中心攻击;
- 由于这些智能设备的存储和处理能力有限,无法完全满足物联网的实时需求;
文章的主要工作有:
- 分析Jia的方案;
- 证明了所声称的解决方案不能抵抗第二型强大的对手;
- 提出了一种新的无认证签名方案,并证明了其在椭圆曲线离散对数问题假设下的存在不可消除性;
- 综合性能评价表明,在相同的安全水平上,我们的方案比其他无认证的签名方案更有效,非常适合于资源受限的物联网环境
1 引言
1.1 以车联网loV为例,物联网设计的安全问题
H2O is是液体。
210 运算结果是 1024.
车辆通过无线网络(如IEEE802.11p或基于蜂窝的V2X、C-V2X)传输到基础设施(V2I)来交换信息,如前方的道路信息、当前位置和行驶速度等。首先,由于通信环境的开放和复杂,攻击者可以发起各种攻击,如数据窃听、篡改、伪造和拒绝服务等。因此,验证车辆身份的合法性和广播消息的有效性对于防止恶意攻击尤为重要。此外,物联网中车辆节点数量的激增、高速移动、频繁的信息交互、高实时要求,结合车辆的电源、空间和计算能力的限制,为该系统提供一个安全的认证协议是极其紧迫的。
1.2 传统数字签名在物联网应用中的问题
- 复杂的证书管理问题;
- 为每个持续增长的物联网设备颁发和维护证书的开销也过于昂贵。
- Shamir提出的基于身份的密码系统摆脱了证书管理,同时也带来了密钥托管的缺陷。换句话说,用户的私钥仅由密钥生成中心(KGC)生成,恶意的KGC可以随意伪造任何用户的签名。此外,一旦KGC成为对手的攻击目标,所有用户都将面临私钥被泄露的风险,此时,用户根本没有任何隐私。
- 由Al-Riyami提出的无认证公钥密码系统(CL-PKC)的思想结合了上述两种密码系统的优点。它不需要集中的证书和密钥管理,而完整的私钥分别由KGC提供的部分私钥和用户选择的密钥值组成。因此,无认证签名(CLS)更符合物联网的分布式、灵活和可变的特性,对物联网实现的限制较少。然而Al-Riyami的方案是不安全的。此外,目前提出的CLS方案要么容易被破坏,要么效率低下。因此,设计一个安全高效的物联网CLS仍然是一个突出的挑战。
1.3 文章的贡献
- 分析了Jia等人构建的CLS方案,发现他们的方案受到了恶意但被动的强KGC的攻击,这意味着它无法抵抗强大的II类对手;
- 在椭圆曲线离散对数问题(ECDLP)假设下,提出了一种改进的具有椭圆曲线密码学(ECC)的CLS方案。在随机预言中,我们证明了该方案对两种超级对手的自适应选择的消息攻击和身份攻击(EUF-CMA)是不可克服的。
- 方案不是基于昂贵的配对,而是使用了相对较快的ECC系统。与典型的RSA签名相比,基于ECC的CLS可以实现相同的安全功能,并具有更好的性能(例如,密钥长度更短,存储空间更少等),所以它适用于物联网环境。此外,详细的分析表明,文章的签名方案具有可靠的安全性和相对较高的执行效率。
2 准备工作
2.1 复杂性假设:椭圆曲线离散对数问题ECDLP
G为加法循环群,阶数为q,p为生成元。给定一点Q,在任意PPT内,计算Q=kp的概率是不可忽略的,k为整数。
与其他公钥密码系统相比,ECC的密钥大小和存储量更小、计算量和带宽更小,达到了相同的安全级别。人们普遍认为,224位椭圆曲线能够具有与2048位RSA相同的安全级别。
2.2 无证书签名CLS
一个CLS方案包含三个实体:密钥生成中心(KGC)、签名者和验证者。在CLS方案中有七种算法。
- Setup:KGC运行此算法来初始化系统。输入安全参数𝜆,输出系统主密钥msk和系统公共参数pp。
- Extract-Partial-Private-Key:输入msk、pp、用户身份ID,KGC提取用户的部分私钥d,通过安全信道发送给用户。
- Set-Secret-Value:用户输入pp、身份ID,输出一个秘密值x。
- Set-Private-Key:输入pp、d、x,算法输出私钥SK。
- Set-Public-Key:用户输入pp、x,输出公钥PK。
- Sign:输入消息m、pp、签名者的ID、私钥SK,算法输出签名𝜎。
- Verify:收到签名𝜎、pp、签名者的ID、PK、消息m,验证签名。
2.3 安全模型
在Al-Riyami等人定义的第一个安全模型中,对手可以替换任何实体的公钥,因为身份验证不需要该证书。因此,允许**I型敌手A1**用其选择的值替换用户的公钥,并且不会获得系统主密钥和用户的部分私钥,他们充当了外部攻击者。相反,**模拟恶意但被动KGC的II型敌手A2**拥有系统主密钥,可以学习用户的部分私钥,但不能替换目标用户的公钥。
之后,根据对手的能力,Huang等人进一步将对手分为三个安全级别: normal, strong, and super。文章仍然采用他们的对手模型来评估CLS方案的安全性。
- 在进行签名查询时,normal敌手只使用原始公钥学习用户的有效签名。简而言之,一旦用户的公钥被替换,normal敌手就无法获得有效的签名。
- 对于strong敌手,如果替换了公钥,则只有在提供了新公钥的相应秘密值后,strong敌手才可以获得有效的签名。
- 当super敌手通过使用被替换的公钥获得一个有效的签名时,他不需要提交一个新的秘密值。
通过定义安全模型,提高了敌手比现实世界中更高的能力,使方案在现实世界中更加合理和可接受,从而确保了方案的有效实施。如果一个CLS方案能够抵抗super敌手,就一定能抵抗strong敌手和normal敌手。
定义
如果对于任何多项式时间的super对手A1和A2,,它们的优势𝐴𝑑𝑣(𝜆)可以忽略不计,那么在以下两个游戏,CLS方案对于自适应选择的信息和身份攻击(EUF-CMA)是存在性不可忽略的。
2.3.1 Game1
- 初始化