CN116192392A - 一种基于椭圆曲线的具有隐私保护的轻量级匿名认证方法 - Google Patents

一种基于椭圆曲线的具有隐私保护的轻量级匿名认证方法 Download PDF

Info

Publication number
CN116192392A
CN116192392A CN202310113801.8A CN202310113801A CN116192392A CN 116192392 A CN116192392 A CN 116192392A CN 202310113801 A CN202310113801 A CN 202310113801A CN 116192392 A CN116192392 A CN 116192392A
Authority
CN
China
Prior art keywords
user
task
blockchain
anonymous
equation
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.)
Granted
Application number
CN202310113801.8A
Other languages
English (en)
Other versions
CN116192392B (zh
Inventor
王欣超
王威
曹平
朱友文
吴启晖
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University of Aeronautics and Astronautics
Original Assignee
Nanjing University of Aeronautics and Astronautics
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nanjing University of Aeronautics and Astronautics filed Critical Nanjing University of Aeronautics and Astronautics
Priority to CN202310113801.8A priority Critical patent/CN116192392B/zh
Publication of CN116192392A publication Critical patent/CN116192392A/zh
Application granted granted Critical
Publication of CN116192392B publication Critical patent/CN116192392B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/088Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3228One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Physics & Mathematics (AREA)
  • Algebra (AREA)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供一种基于椭圆曲线的具有隐私保护的轻量级匿名认证方法,包括监管机构设置有限域上的椭圆曲线、椭圆曲线上的加法循环群和加法循环群的生成元;监管机构设置安全的哈希函数,选取一个轻量级的对称加密算法,并将以上信息作为全局参数公开;用户部分私钥和完全私钥生成;用户完成任务后,对感知数据的密文进行签名;用户向区块链节点发送消息;区块链节点筛选出领取任务的用户的消息,对签名进行验证;任务发布者解密最新的区块上的密文,获得感知数据;监管机构收到举报后,可对匿名身份进行追踪。本发明能确保用户在监管机构处进行有效地匿名注册,能保证验证签名阶段消息的认证性、不可否认性和完整性,可确保匿名身份的可监管性。

Description

一种基于椭圆曲线的具有隐私保护的轻量级匿名认证方法
技术领域
本发明属于信息安全技术领域,尤其涉及一种基于椭圆曲线的具有隐私保护的轻量级匿名认证方法。
背景技术
随着移动互联网技术的飞速发展,群智感知被提出,随后群智感知被广泛应用于物联网中。然而由于群智感知网络具有开放性和脆弱性特点,故面临着各式各样的攻击威胁,这将阻碍其广泛应用。在群智感知网络中,恶意攻击者可能会通过伪装成合法用户而危害整个网络系统,或者获得用户的真实身份信息而造成用户的隐私泄露等。所以首先必须确保能对消息进行高效认证,从而有效发挥系统功能;其次,需要保护用户真实身份的隐私性;最后,由于采用了匿名的方法保护了用户真实身份的隐私,如何追踪一个匿名用户的真实身份成为一个挑战,当消息引发争议时,比如发现了一个虚假数据,需要确保能对消息来源的真实身份进行追溯。所以群智感知网络的隐私安全尤为重要。
Raya等人于2007年提出基于公钥基础设施的公钥证书方案后,后来的研究者根据此提出了各种公钥证书方案,基本实现了身份认证。随着研究的深入,研究者们发现此方法存在需要消耗大量存储空间来存储和管理大量数字证书的问题。为了克服公钥证书方案的缺陷,1984年,Shamir提出了第一个基于身份的认证方案,随后许多基于身份的方案被提出,但是此方法存在密钥托管问题。2003年,AL-RIYAM等人提出了无证书密码体制,克服了证书管理和密钥托管问题。然而许多基于无证书密码体制的方案中存在中间人攻击、DDOS攻击等安全缺陷。
发明内容
本发明针对现有技术中的不足,提供一种基于椭圆曲线的具有隐私保护的轻量级匿名认证方法。
本发明提供一种基于椭圆曲线的具有隐私保护的轻量级匿名认证方法,包括:
监管机构设置有限域上的椭圆曲线、椭圆曲线上的加法循环群和加法循环群的生成元;监管机构设置安全的哈希函数,选取一个轻量级的对称加密算法,并将以上信息作为全局参数公开;
用户产生自己的部分私钥、部分公钥和匿名身份;
用户通过公开信道向区块链中的监管机构进行匿名注册,监管机构生成用户的部分私钥、部分公钥与身份证明,并将身份证明上传到区块链中;
任务发布者通过区块链上部署的智能合约发布感知任务,用户经过智能合约的认证后领取任务;智能合约将领取任务的用户名单发送给区块链;智能合约一段时间后自动触发领取任务的用户执行任务;用户完成任务后,对感知数据的密文进行签名;
用户向区块链节点发送消息;区块链节点首先筛选出领取任务的用户的消息,然后对签名进行验证,验证通过后将消息上传至区块链;任务发布者解密最新的区块上的密文,获得感知数据;监管机构收到举报后,可对匿名身份进行追踪。
进一步地,所述监管机构设置有限域上的椭圆曲线、椭圆曲线上的加法循环群和加法循环群的生成元;监管机构设置安全的哈希函数,选取一个轻量级的对称加密算法,并将以上信息作为全局参数公开,包括:
选取有限域Zq上的椭圆曲线E,选取椭圆曲线E上n阶加法循环群G,以及选取加法循环群G的生成元P;q是大素数;设置三个安全的抗碰撞哈希函数
Figure BDA0004077773340000021
H1:{0,1}*→{0,1}l和H2:{0,1}*→G;l是哈希函数H1输出的固定比特长度;
Figure BDA0004077773340000022
为有限域Zq去掉零元所得到的乘法群;
监管机构选取
Figure BDA0004077773340000023
作为自己的主私钥,计算相应的公钥PK=sP;监管机构为任务发布者颁布公钥与私钥,其中私钥为
Figure BDA0004077773340000024
公钥为Y=yP;选取一个轻量级的对称加密算法Enc;并公布系统全局参数Para=(E,q,P,G,PK,Y,Enc,H0,H1,H2)。
进一步地,所述用户产生自己的部分私钥、部分公钥和匿名身份,包括:
用户选取RIDi∈{0,1}*作为自己的真实身份,用户选择随机数
Figure BDA0004077773340000025
作为自己的部分私钥,计算部分公钥vpki=niP,计算
Figure BDA0004077773340000026
计算用户的匿名身份
Figure BDA0004077773340000027
计算密文
Figure BDA0004077773340000028
计算认证值
Figure BDA0004077773340000029
其中
Figure BDA00040777733400000210
Figure BDA00040777733400000211
的横坐标;用户将{PIDi,Ri,vpki}以匿名方式通过公开信道发送给监管机构。
进一步地,所述用户通过公开信道向区块链中的监管机构进行匿名注册,监管机构生成用户的部分私钥、部分公钥与身份证明,并将身份证明上传到区块链中,包括:
监管机构计算
Figure BDA00040777733400000212
计算
Figure BDA00040777733400000213
验证Ri′=Ri方程式是否成立,方程式通过后用
Figure BDA00040777733400000214
的横坐标
Figure BDA00040777733400000215
解密PIDi,得到用户的真实身份RIDi与匿名身份IDi;计算
Figure BDA00040777733400000216
验证方程式IDi=IDi′是否成立,在成立的情况下进行下一步;
监管机构选取随机数
Figure BDA0004077773340000031
计算Ki=kiP作为用户的部分公钥,计算用户的部分私钥pski=ki+sH0(Ki,PK,IDi),令h1,i=H0(Ki,PK,IDi);监管机构在溯源对应列表中保存{RIDi,IDi,vpki,Ki,pski};然后计算用户的身份证明
Figure BDA0004077773340000032
并将身份证明CTi上传到区块链上;监管机构计算
Figure BDA0004077773340000033
将{Ki,ppski}通过公开信道发给用户;
用户计算
Figure BDA0004077773340000034
验证方程式pskiP=Ki+h1,iPK是否成立;在方程式成立的情况下,用户的私钥对设置为SKi=(pski,ni),公钥对为UKi=(Ki,vpki)。
进一步地,所述任务发布者通过区块链上部署的智能合约发布感知任务,用户经过智能合约的认证后领取任务;智能合约将领取任务的用户名单发送给区块链;智能合约一段时间后自动触发领取任务的用户执行任务;用户完成任务后,对感知数据的密文进行签名,包括:
任务发布者通过区块链上部署的智能合约发布感知任务,设置任务需求、任务奖励和任务分配方案;参与感知任务的用户经过智能合约的认证;
用户向智能合约提交
Figure BDA0004077773340000035
智能合约计算
Figure BDA0004077773340000036
并查询区块链上是否存在CTi使得方程式CTi′=CTi成立;在方程式成立的情况下,为合法的用户分配任务,随后智能合约计算哈希值vi=H0(TIDj,Ki,vpki,IDi),其中TIDj为任务的编号,然后将vi添加进领取了任务的用户名单
Figure BDA0004077773340000037
智能合约经过一段时间后根据名单
Figure BDA0004077773340000038
计算l阶一元多项式函数f(x)=(x-v1)(x-v2)...(x-vl)=b1x+b2x2+...+blxl,其中,{b1,b2,...,bl}为用于验证领取任务的匿名名单的认证秘密参数;x,x2,...,xl将领取任务的用户特征隐藏起来;令
Figure BDA0004077773340000039
然后智能合约将
Figure BDA00040777733400000310
发送给区块链网络中的节点;智能合约在一段时间后自动触发领取任务的用户执行任务;
用户收集完数据后,选择随机数
Figure BDA00040777733400000311
计算Qi=qiP,加密感知数据mi
Figure BDA00040777733400000312
用户选择随机数
Figure BDA00040777733400000313
计算
Figure BDA00040777733400000316
Figure BDA00040777733400000314
计算
Figure BDA00040777733400000315
则签名为σi=(αii),其中h3,i=H0(Ki,h2,i),h2,i=H0(Ci,TIDj,IDi,vpkii,Qi,Ti),Ti为时间戳;
用户将Msgi=(σi,TIDj,Ci,IDi,Ki,vpki,Qi,Ti)发送给区块链节点。
进一步地,所述用户向区块链节点发送消息;区块链节点首先筛选出领取任务的用户的消息,然后对签名进行验证,验证通过后将消息上传至区块链;任务发布者解密最新的区块上的密文,获得感知数据;监管机构收到举报后,可对匿名身份进行追踪,包括:
区块链节点在接收到一批来自用户的消息Msgi后,首先验证时间戳Ti的有效性,假设收到消息的时间为Tj,如果ΔT≥Tj-Ti,根据
Figure BDA0004077773340000041
得到多项式函数f(x)=b1x+b2x2+...+blxl,计算vi=H0(TIDj,Ki,vpki,IDi),验证方程式f(vi)=0是否成立;验证通过,则筛选出领取任务的用户的消息,根据
Figure BDA0004077773340000042
计算
Figure BDA0004077773340000043
计算h1,i=H0(Ki,PK,IDi),h3,i=H0(Ki,h2,i),其中h2,i=H0(Ci,TIDj,IDi,vpkii,Qi,Ti),验证方程式
Figure BDA0004077773340000044
是否成立;在方程式成立的情况下,将数据Msgi=(σi,TIDj,Ci,IDi,Ki,vpki,Qi,Ti)上传至区块链;
任务发布者查询区块链上最新的区块上的密文数据Ci,利用Qi与自己的私钥y,解密密文数据Ci得到所需感知数据
Figure BDA0004077773340000045
监管机构收到举报后,对匿名身份进行追踪。
进一步地,所述验证方程式
Figure BDA0004077773340000046
是否成立,包括:
根据以下公式推导签名验证方程的正确性:
Figure BDA0004077773340000047
进一步地,所述验证方程式
Figure BDA0004077773340000048
是否成立,还包括:
根据以下公式推导批量签名验证方程的正确性:
Figure BDA0004077773340000049
其中,随机数λi∈[1,2z],z为根据系统验证安全与效率需求,选取的验证安全参数,z∈[1,10]。
本发明提供一种基于椭圆曲线的具有隐私保护的轻量级匿名认证方法,包括监管机构设置有限域上的椭圆曲线、椭圆曲线上的加法循环群和加法循环群的生成元;监管机构设置安全的哈希函数,选取一个轻量级的对称加密算法,并将以上信息作为全局参数公开;用户产生自己的部分私钥、部分公钥和匿名身份;用户通过公开信道向区块链中的监管机构进行匿名注册,监管机构生成用户的部分私钥、部分公钥与身份证明,并将身份证明上传到区块链中;任务发布者通过区块链上部署的智能合约发布感知任务,用户经过智能合约的认证后领取任务;智能合约将领取任务的用户名单发送给区块链;智能合约一段时间后自动触发领取任务的用户执行任务;用户完成任务后,对感知数据的密文进行签名;用户向区块链节点发送消息;区块链节点首先筛选出领取任务的用户的消息,然后对签名进行验证,验证通过后将消息上传至区块链;任务发布者解密最新的区块上的密文,获得感知数据;监管机构收到举报后,可对匿名身份进行追踪。本发明满足消息的认证性、完整性、保密性与可追踪性等安全需求,同时能抵抗重放攻击、数据篡改与伪装攻击等常见安全攻击。当数据引发争议时,监管机构可对真实身份进行追踪。方本发明利用了椭圆曲线密码算法,具有较小的计算与存储开销,因而具有轻量级特性,结合区块链技术解决了单点故障的问题,利用智能合约可对需要领取任务的合法匿名身份进行有效认证,增加了系统的安全性。
附图说明
为了更清楚地说明本发明的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种基于椭圆曲线的具有隐私保护的轻量级匿名认证方法的流程图;
图2为本发明实施例提供的一种基于椭圆曲线的具有隐私保护的轻量级匿名认证方法的结构示意图;
图3为本发明实施例提供的本发明与现有技术提出的认证方案进行计算效率分析与比较图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供一种基于椭圆曲线的具有隐私保护的轻量级匿名认证方法,包括:
步骤101,监管机构设置有限域上的椭圆曲线、椭圆曲线上的加法循环群和加法循环群的生成元。监管机构设置安全的哈希函数,选取一个轻量级的对称加密算法,并将以上信息作为全局参数公开。
示例性地,监管机构选取有限域Zq上的椭圆曲线E,选取椭圆曲线E上n阶加法循环群G,以及选取加法循环群G的生成元P;q是大素数;设置三个安全的抗碰撞哈希函数
Figure BDA0004077773340000061
Figure BDA0004077773340000062
l是哈希函数H1输出的固定比特长度;
Figure BDA0004077773340000063
为有限域Zq去掉零元所得到的乘法群。
监管机构选取
Figure BDA0004077773340000064
作为自己的主私钥,计算相应的公钥PK=sP;监管机构为任务发布者颁布公钥与私钥,其中私钥为
Figure BDA0004077773340000065
公钥为Y=yP;选取一个轻量级的对称加密算法Enc;并公布系统全局参数Para=(E,q,P,G,PK,Y,Enc,H0,H1,H2)。
步骤102,用户产生自己的部分私钥、部分公钥和匿名身份。
示例性地,用户选取RIDi∈{0,1}*作为自己的真实身份,用户选择随机数
Figure BDA0004077773340000066
作为自己的部分私钥,计算部分公钥vpki=niP,计算
Figure BDA0004077773340000067
计算用户的匿名身份
Figure BDA0004077773340000068
计算密文
Figure BDA0004077773340000069
计算认证值
Figure BDA00040777733400000610
其中
Figure BDA00040777733400000611
Figure BDA00040777733400000612
的横坐标;用户将{PIDi,Ri,vpki}以匿名方式通过公开信道发送给监管机构。
步骤103,用户通过公开信道向区块链中的监管机构进行匿名注册,监管机构生成用户的部分私钥、部分公钥与身份证明,并将身份证明上传到区块链中。
示例性地,监管机构计算
Figure BDA00040777733400000613
计算
Figure BDA00040777733400000614
验证Ri′=Ri方程式是否成立,方程式通过后用
Figure BDA00040777733400000615
的横坐标
Figure BDA00040777733400000616
解密PIDi,得到用户的真实身份RIDi与匿名身份IDi;计算
Figure BDA00040777733400000617
验证方程式IDi=IDi′是否成立,在成立的情况下进行下一步。
监管机构选取随机数
Figure BDA00040777733400000618
计算Ki=kiP作为用户的部分公钥,计算用户的部分私钥pski=ki+sH0(Ki,PK,IDi),令h1,i=H0(Ki,PK,IDi);监管机构在溯源对应列表中保存{RIDi,IDi,vpki,Ki,pski};然后计算用户的身份证明
Figure BDA00040777733400000619
并将身份证明CTi上传到区块链上;监管机构计算
Figure BDA00040777733400000620
将{Ki,ppski}通过公开信道发给用户;
Figure BDA00040777733400000621
只有监管机构和用户本身知道。
用户计算
Figure BDA00040777733400000622
验证方程式pskiP=Ki+h1,iPK是否成立;在方程式成立的情况下,用户的私钥对设置为SKi=(pski,ni),公钥对为UKi=(Ki,vpki)。
步骤104,任务发布者通过区块链上部署的智能合约发布感知任务,用户经过智能合约的认证后领取任务;智能合约将领取任务的用户名单发送给区块链;智能合约一段时间后自动触发领取任务的用户执行任务;用户完成任务后,对感知数据的密文进行签名。
示例性地,任务发布者通过区块链上部署的智能合约发布感知任务,设置任务需求、任务奖励和任务分配方案;参与感知任务的用户经过智能合约的认证。
用户向智能合约提交
Figure BDA0004077773340000071
智能合约计算
Figure BDA0004077773340000072
并查询区块链上是否存在CTi使得方程式CTi′=CTi成立;在方程式成立的情况下,为合法的用户分配任务,随后智能合约计算哈希值vi=H0(TIDj,Ki,vpki,IDi),其中TIDj为任务的编号,然后将vi添加进领取了任务的用户名单
Figure BDA0004077773340000073
智能合约经过一段时间后根据名单
Figure BDA0004077773340000074
计算l阶一元多项式函数f(x)=(x-v1)(x-v2)...(x-vl)=b1x+b2x2+...+blxl,其中,{b1,b2,...,bl}为用于验证领取任务的匿名名单的认证秘密参数;x,x2,...,xl将领取任务的用户特征隐藏起来;令
Figure BDA0004077773340000075
然后智能合约将
Figure BDA0004077773340000076
发送给区块链网络中的节点;智能合约在一段时间后自动触发领取任务的用户执行任务。
用户收集完数据后,选择随机数
Figure BDA0004077773340000077
计算Qi=qiP,加密感知数据mi
Figure BDA0004077773340000078
用户选择随机数
Figure BDA0004077773340000079
计算
Figure BDA00040777733400000710
Figure BDA00040777733400000711
计算
Figure BDA00040777733400000712
则签名为σi=(αii),其中h3,i=H0(Ki,h2,i),h2,i=H0(Ci,TIDj,IDi,vpkii,Qi,Ti),Ti为时间戳。
用户将Msgi=(σi,TIDj,Ci,IDi,Ki,vpki,Qi,Ti)发送给区块链节点。
步骤105,用户向区块链节点发送消息;区块链节点首先筛选出领取任务的用户的消息,然后对签名进行验证,验证通过后将消息上传至区块链;任务发布者解密最新的区块上的密文,获得感知数据;监管机构收到举报后,可对匿名身份进行追踪。
示例性地,区块链节点在接收到一批来自用户的消息Msgi后,首先验证时间戳Ti的有效性,假设收到消息的时间为Tj,如果ΔT≥Tj-Ti,根据
Figure BDA00040777733400000713
得到多项式函数f(x)=b1x+b2x2+...+blxl,计算vi=H0(TIDj,Ki,vpki,IDi),验证方程式f(vi)=0是否成立;验证通过,则筛选出领取任务的用户的消息,根据
Figure BDA00040777733400000714
计算
Figure BDA00040777733400000715
计算h1,i=H0(Ki,PK,IDi),h3,i=H0(Ki,h2,i),其中h2,i=H0(Ci,TIDj,IDi,vpkii,Qi,Ti),验证方程式
Figure BDA00040777733400000716
是否成立;在方程式成立的情况下,将数据Msgi=(σi,TIDj,Ci,IDi,Ki,vpki,Qi,Ti)上传至区块链。
根据以下公式推导签名验证方程的正确性:
Figure BDA0004077773340000081
为了保证不可否认性与抵抗混淆攻击,选取随机数λi∈[1,2z],z为根据系统验证安全与效率需求,选取的验证安全参数;z为一个非常小的整数仅带来非常小的计算开销;通常z∈[1,10]之间,z越大,批量签名验证效率相对降低,安全性更高;根据以下公式推导批量签名验证方程的正确性:
Figure BDA0004077773340000082
任务发布者查询区块链上最新的区块上的密文数据Ci,利用Qi与自己的私钥y,解密密文数据Ci得到所需感知数据
Figure BDA0004077773340000083
监管机构收到举报后,对匿名身份进行追踪。
本发明能确保用户在监管机构处进行有效地匿名注册。用户在计算密文
Figure BDA0004077773340000084
时,用到了Diffie-Hellman技术协商出的临时对称密钥
Figure BDA0004077773340000085
如果敌手截获了PIDi想要获取用户的真实身份RIDi,由于临时对称密钥
Figure BDA0004077773340000086
只有监管机构与用户知道,因此敌手不能有效解密PIDi而获取用户的真实身份RIDi,保证了真实身份RIDi的机密性。此外认证值为
Figure BDA0004077773340000087
如果敌手截获了{PIDi,Ri,vpki},篡改了PIDi和vpki,由于哈希函数的不可逆性,监管机构计算认证值
Figure BDA0004077773340000088
后会发现方程式Ri′=Ri不通过,所以保证了注册阶段中PIDi和vpki的完整性。监管机构为用户生成对应的部分私钥pski=ki+sH0(Ki,PK,IDi)与部分公钥Ki=kiP,并计算pski的密文
Figure BDA0004077773340000089
将{Ki,ppski}通过公开信道发送给用户,如果敌手截获了ppski,由于RIDi只有用户与监管机构知道,所以敌手无法有效得到监管机构为用户颁发的部分私钥,保证了部分私钥的机密性。如果敌手篡改了消息Ki和ppski,用户计算h1,i=H0(Ki,PK,IDi)后发现方程式pskiP=Ki+h1,iPK不通过,保证了消息Ki和ppski的完整性。故确保了用户在区块链中的监管机构处进行有效地匿名注册。
本发明能保证验证签名阶段消息的认证性、不可否认性和完整性。当区块链节点得到智能合约发来的集合{b1,b2,...,bl}后构造出多项式函数f(x)=b1x+b2x2+...+blxl。一段时间后得到一批来自用户的消息Msgi=(σi,TIDj,Ci,IDi,Ki,vpki,Qi,Ti),计算vi=H0(TIDj,Ki,vpki,IDi),验证方程式f(vi)=0是否成立。若方程式通过,则筛选出了领取了任务的用户的消息。若方程式验证不通过,则说明发起消息的数据源可能是恶意攻击者或者服务器故障,将匿名身份交由监管机构去追踪,增加了方案的安全性。其次,若同一个vi验证次数过多,则说明此签名的数据源可能是发起DDOS攻击的攻击源或者此数据源的服务器故障,可让监管机构去追踪其真实身份,及时制止出现问题的服务器。若敌手截获了签名σi=(αii),其中
Figure BDA0004077773340000091
如果敌手想尝试生成有效的签名σi=(αii),由于用户私钥SKi=(pski,ni)的保密性和离散对数困难问题,所以敌手无法对签名σi=(αii)进行伪造。如果敌手篡改或者替换数据密文Ci,由于哈希函数h3,i=H0(Ki,h2,i)和h2,i=H0(Ci,TIDj,IDi,vpkii,Qi,Ti)具有不可逆性与抗碰撞性,故验证方程
Figure BDA0004077773340000092
不能通过。若签名验证通过,则验证了匿名认证消息的完整性与不可否认性。区块链节点经过共识后,将数据Msgi=(σi,TIDj,Ci,IDi,Ki,vpki,Qi,Ti)上传到区块链上。故能保证验证签名阶段消息的认证性、不可否认性和完整性。
本发明可确保匿名身份的可监管性。在区块链系统中,如果监管机构要追责某些用户,监管机构能够利用溯源对应列表追踪区块链上匿名身份IDi所对应的真实身份RIDi,实现匿名身份的可监管性。
为了进一步说明本发明的效果,现在将本发明方法与文献(Effcientcertificateless aggregate signature with conditional privacy preservation inIoV)中提出的认证方案进行计算效率分析与比较,所有算法实现的编程使用C语言,调用了密码学库函数MIRACL。Tpa表示双线性对运行时间,Tpm表示双线性对标量乘法运行时间,TMu表示椭圆曲线中的倍点运行时间,TAdd表示椭圆曲线的点加法运行时间,Tmu表示普通模乘法时间运行时间,Tinv表示求逆运行时间,THa表示映射到循环群中的椭圆曲线点坐标的运行时间,Tha表示普通哈希函数运行时间。算法实验仿真数值见表1。
表1不同算法仿真的执行时间
符号 运行时间(毫秒,ms)
Tpa 7.1662
Tpm 2.9753
TMu 1.3039
TAdd 0.0116
Tmu 0.0011
Tinv 0.0223
THa 7.3564
Tha 0.0275
本发明方案与对照方案在计算效率比较具体如表2所示:
表2计算开销比较
方案 认证数据产生开销 认证数据验证开销(ms)
对照方案 2THa+4Tpm=26.6140 4Tpa+2Tpm=34.6154
本发明方案 TMu+Tinv+3Tmu+2Tha=1.3845 4TMu+2TAdd+3Tha=5.3213
如图3所示,将以上表格中的数据转换成柱状图的形式。通过分析与比较容易看出本发明方案在计算开销方面占有明显的优势。
以上结合具体实施方式和范例性实例对本发明进行了详细说明,不过这些说明并不能理解为对本发明的限制。本领域技术人员理解,在不偏离本发明精神和范围的情况下,可以对本发明技术方案及其实施方式进行多种等价替换、修饰或改进,这些均落入本发明的范围内。本发明的保护范围以所附权利要求为准。

Claims (8)

1.一种基于椭圆曲线的具有隐私保护的轻量级匿名认证方法,其特征在于,包括:
监管机构设置有限域上的椭圆曲线、椭圆曲线上的加法循环群和加法循环群的生成元;监管机构设置安全的哈希函数,选取一个轻量级的对称加密算法,并将以上信息作为全局参数公开;
用户产生自己的部分私钥、部分公钥和匿名身份;
用户通过公开信道向区块链中的监管机构进行匿名注册,监管机构生成用户的部分私钥、部分公钥与身份证明,并将身份证明上传到区块链中;
任务发布者通过区块链上部署的智能合约发布感知任务,用户经过智能合约的认证后领取任务;智能合约将领取任务的用户名单发送给区块链;智能合约一段时间后自动触发领取任务的用户执行任务;用户完成任务后,对感知数据的密文进行签名;
用户向区块链节点发送消息;区块链节点首先筛选出领取任务的用户的消息,然后对签名进行验证,验证通过后将消息上传至区块链;任务发布者解密最新的区块上的密文,获得感知数据;监管机构收到举报后,可对匿名身份进行追踪。
2.根据权利要求1所述的基于椭圆曲线的具有隐私保护的轻量级匿名认证方法,其特征在于,所述监管机构设置有限域上的椭圆曲线、椭圆曲线上的加法循环群和加法循环群的生成元;监管机构设置安全的哈希函数,选取一个轻量级的对称加密算法,并将以上信息作为全局参数公开,包括:
选取有限域Zq上的椭圆曲线E,选取椭圆曲线E上n阶加法循环群G,以及选取加法循环群G的生成元P;q是大素数;设置三个安全的抗碰撞哈希函数
Figure FDA0004077773330000011
H1:{0,1}*→{0,1}l和H2:{0,1}*→G;l是哈希函数H1输出的固定比特长度;
Figure FDA0004077773330000012
为有限域Zq去掉零元所得到的乘法群;
监管机构选取
Figure FDA0004077773330000013
作为自己的主私钥,计算相应的公钥PK=sP;监管机构为任务发布者颁布公钥与私钥,其中私钥为
Figure FDA0004077773330000014
公钥为Y=yP;选取一个轻量级的对称加密算法Enc;并公布系统全局参数Para=(E,q,P,G,PK,Y,Enc,H0,H1,H2)。
3.根据权利要求2所述的基于椭圆曲线的具有隐私保护的轻量级匿名认证方法,其特征在于,所述用户产生自己的部分私钥、部分公钥和匿名身份,包括:
用户选取RIDi∈{0,1}*作为自己的真实身份,用户选择随机数
Figure FDA0004077773330000015
作为自己的部分私钥,计算部分公钥vpki=niP,计算
Figure FDA0004077773330000016
计算用户的匿名身份
Figure FDA0004077773330000017
计算密文
Figure FDA0004077773330000018
计算认证值
Figure FDA0004077773330000019
其中
Figure FDA00040777733300000110
Figure FDA00040777733300000111
的横坐标;用户将{PIDi,Ri,vpki}以匿名方式通过公开信道发送给监管机构。
4.根据权利要求3所述的基于椭圆曲线的具有隐私保护的轻量级匿名认证方法,其特征在于,所述用户通过公开信道向区块链中的监管机构进行匿名注册,监管机构生成用户的部分私钥、部分公钥与身份证明,并将身份证明上传到区块链中,包括:
监管机构计算
Figure FDA0004077773330000021
计算
Figure FDA0004077773330000022
验证R′i=Ri方程式是否成立,方程式通过后用
Figure FDA0004077773330000023
的横坐标
Figure FDA0004077773330000024
解密PIDi,得到用户的真实身份RIDi与匿名身份IDi;计算
Figure FDA0004077773330000025
验证方程式IDi=IDi′是否成立,在成立的情况下进行下一步;
监管机构选取随机数
Figure FDA0004077773330000026
计算Ki=kiP作为用户的部分公钥,计算用户的部分私钥pski=ki+sH0(Ki,PK,IDi),令h1,i=H0(Ki,PK,IDi);监管机构在溯源对应列表中保存{RIDi,IDi,vpki,Ki,pski};然后计算用户的身份证明
Figure FDA0004077773330000027
并将身份证明CTi上传到区块链上;监管机构计算
Figure FDA0004077773330000028
将{Ki,ppski}通过公开信道发给用户;
用户计算
Figure FDA0004077773330000029
验证方程式pskiP=Ki+h1,iPK是否成立;在方程式成立的情况下,用户的私钥对设置为SKi=(pski,ni),公钥对为UKi=(Ki,vpki)。
5.根据权利要求4所述的基于椭圆曲线的具有隐私保护的轻量级匿名认证方法,其特征在于,所述任务发布者通过区块链上部署的智能合约发布感知任务,用户经过智能合约的认证后领取任务;智能合约将领取任务的用户名单发送给区块链;智能合约一段时间后自动触发领取任务的用户执行任务;用户完成任务后,对感知数据的密文进行签名,包括:
任务发布者通过区块链上部署的智能合约发布感知任务,设置任务需求、任务奖励和任务分配方案;参与感知任务的用户经过智能合约的认证;
用户向智能合约提交
Figure FDA00040777733300000210
智能合约计算
Figure FDA00040777733300000211
并查询区块链上是否存在CTi使得方程式CTi′=CTi成立;在方程式成立的情况下,为合法的用户分配任务,随后智能合约计算哈希值vi=H0(TIDj,Ki,vpki,IDi),其中TIDj为任务的编号,然后将vi添加进领取了任务的用户名单
Figure FDA00040777733300000212
智能合约经过一段时间后根据名单
Figure FDA00040777733300000213
计算l阶一元多项式函数f(x)=(x-v1)(x-v2)...(x-vl)=b1x+b2x2+...+blxl,其中,{b1,b2,...,bl}为用于验证领取任务的匿名名单的认证秘密参数;x,x2,...,xl将领取任务的用户特征隐藏起来;令
Figure FDA00040777733300000214
然后智能合约将b发送给区块链网络中的节点;智能合约在一段时间后自动触发领取任务的用户执行任务;
用户收集完数据后,选择随机数
Figure FDA0004077773330000031
计算Qi=qiP,加密感知数据mi
Figure FDA0004077773330000032
用户选择随机数
Figure FDA0004077773330000033
计算
Figure FDA00040777733300000312
Figure FDA00040777733300000313
计算
Figure FDA0004077773330000034
则签名为σi=(αii),其中h3,i=H0(Ki,h2,i),h2,i=H0(Ci,TIDj,IDi,vpkii,Qi,Ti),Ti为时间戳;
用户将Msgi=(σi,TIDj,Ci,IDi,Ki,vpki,Qi,Ti)发送给区块链节点。
6.根据权利要求5所述的基于椭圆曲线的具有隐私保护的轻量级匿名认证方法,其特征在于,所述用户向区块链节点发送消息;区块链节点首先筛选出领取任务的用户的消息,然后对签名进行验证,验证通过后将消息上传至区块链;任务发布者解密最新的区块上的密文,获得感知数据;监管机构收到举报后,可对匿名身份进行追踪,包括:
区块链节点在接收到一批来自用户的消息Msgi后,首先验证时间戳Ti的有效性,假设收到消息的时间为Tj,如果ΔT≥Tj-Ti,根据
Figure FDA0004077773330000035
得到多项式函数f(x)=b1x+b2x2+...+blxl,计算vi=H0(TIDj,Ki,vpki,IDi),验证方程式f(vi)=0是否成立;验证通过,则筛选出领取任务的用户的消息,根据
Figure FDA0004077773330000036
计算
Figure FDA0004077773330000037
计算h1,i=H0(Ki,PK,IDi),h3,i=H0(Ki,h2,i),其中h2,i=H0(Ci,TIDj,IDi,vpkii,Qi,Ti),验证方程式
Figure FDA0004077773330000038
是否成立;在方程式成立的情况下,将数据Msgi=(σi,TIDj,Ci,IDi,Ki,vpki,Qi,Ti)上传至区块链;
任务发布者查询区块链上最新的区块上的密文数据Ci,利用Qi与自己的私钥y,解密密文数据Ci得到所需感知数据
Figure FDA0004077773330000039
监管机构收到举报后,对匿名身份进行追踪。
7.根据权利要求6所述的基于椭圆曲线的具有隐私保护的轻量级匿名认证方法,其特征在于,所述验证方程式
Figure FDA00040777733300000310
是否成立,包括:
根据以下公式推导签名验证方程的正确性:
Figure FDA00040777733300000311
8.根据权利要求7所述的基于椭圆曲线的具有隐私保护的轻量级匿名认证方法,其特征在于,所述验证方程式
Figure FDA0004077773330000041
是否成立,还包括:
根据以下公式推导批量签名验证方程的正确性:
Figure FDA0004077773330000042
其中,随机数λi∈[1,2z],z为根据系统验证安全与效率需求,选取的验证安全参数,z∈[1,10]。
CN202310113801.8A 2023-02-15 2023-02-15 一种基于椭圆曲线的具有隐私保护的轻量级匿名认证方法 Active CN116192392B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310113801.8A CN116192392B (zh) 2023-02-15 2023-02-15 一种基于椭圆曲线的具有隐私保护的轻量级匿名认证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310113801.8A CN116192392B (zh) 2023-02-15 2023-02-15 一种基于椭圆曲线的具有隐私保护的轻量级匿名认证方法

Publications (2)

Publication Number Publication Date
CN116192392A true CN116192392A (zh) 2023-05-30
CN116192392B CN116192392B (zh) 2023-11-24

Family

ID=86443945

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310113801.8A Active CN116192392B (zh) 2023-02-15 2023-02-15 一种基于椭圆曲线的具有隐私保护的轻量级匿名认证方法

Country Status (1)

Country Link
CN (1) CN116192392B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020133655A1 (zh) * 2018-12-26 2020-07-02 中国科学院沈阳自动化研究所 边缘计算场景下支持异构终端匿名接入的轻量级认证方法
CN111988141A (zh) * 2020-03-18 2020-11-24 支付宝(杭州)信息技术有限公司 共享集群密钥的方法及装置
CN113079140A (zh) * 2021-03-23 2021-07-06 福建师范大学 一种基于区块链的协作频谱感知位置隐私保护方法
WO2021184882A1 (zh) * 2020-03-18 2021-09-23 支付宝(杭州)信息技术有限公司 验证合约的方法及装置
CN113783696A (zh) * 2021-08-14 2021-12-10 西安电子科技大学 物联网感知数据共享交易平台、控制方法、设备、终端
US20220096003A1 (en) * 2015-07-17 2022-03-31 Chao-Lun Mai Method, apparatus, and system for automatic and adaptive wireless monitoring and tracking
CN114386043A (zh) * 2021-12-09 2022-04-22 北京理工大学 一种面向群智感知的去中心隐私保持信誉评估方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220096003A1 (en) * 2015-07-17 2022-03-31 Chao-Lun Mai Method, apparatus, and system for automatic and adaptive wireless monitoring and tracking
WO2020133655A1 (zh) * 2018-12-26 2020-07-02 中国科学院沈阳自动化研究所 边缘计算场景下支持异构终端匿名接入的轻量级认证方法
CN111988141A (zh) * 2020-03-18 2020-11-24 支付宝(杭州)信息技术有限公司 共享集群密钥的方法及装置
WO2021184882A1 (zh) * 2020-03-18 2021-09-23 支付宝(杭州)信息技术有限公司 验证合约的方法及装置
CN113079140A (zh) * 2021-03-23 2021-07-06 福建师范大学 一种基于区块链的协作频谱感知位置隐私保护方法
CN113783696A (zh) * 2021-08-14 2021-12-10 西安电子科技大学 物联网感知数据共享交易平台、控制方法、设备、终端
CN114386043A (zh) * 2021-12-09 2022-04-22 北京理工大学 一种面向群智感知的去中心隐私保持信誉评估方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王震;范佳;成林;安红章;郑海彬;牛俊翔;: "可监管匿名认证方案", 软件学报, no. 06 *

Also Published As

Publication number Publication date
CN116192392B (zh) 2023-11-24

Similar Documents

Publication Publication Date Title
Cui et al. An efficient authentication scheme based on semi-trusted authority in VANETs
CN109274481B (zh) 一种区块链的数据可追踪方法
Wang et al. Privacy-preserving data aggregation against malicious data mining attack for IoT-enabled smart grid
He et al. Secure and efficient two-party signing protocol for the identity-based signature scheme in the IEEE P1363 standard for public key cryptography
CA2949018C (en) Methods and devices for securing keys when key-management processes are subverted by an adversary
Jiang et al. Anonymous and efficient authentication scheme for privacy-preserving distributed learning
Ogundoyin et al. PAASH: A privacy-preserving authentication and fine-grained access control of outsourced data for secure smart health in smart cities
Zhou et al. An efficient identity authentication scheme with dynamic anonymity for VANETs
Kamil et al. A lightweight CLAS scheme with complete aggregation for healthcare mobile crowdsensing
CN104392185A (zh) 在云环境日志取证中实现数据完整性验证的方法
Cao et al. Decentralized group signature scheme based on blockchain
Ayub et al. Secure consumer-centric demand response management in resilient smart grid as industry 5.0 application with blockchain-based authentication
Patil et al. Hybrid and Adaptive Cryptographic-based secure authentication approach in IoT based applications using hybrid encryption
Sang et al. PACM: Privacy-preserving authentication scheme with on-chain certificate management for VANETs
Liu et al. Efficient decentralized access control for secure data sharing in cloud computing
Wang et al. A data reporting protocol with revocable anonymous authentication for edge-assisted intelligent transport systems
Lyu et al. A2UA: An auditable anonymous user authentication protocol based on blockchain for cloud services
Qiao et al. An Anonymous and Efficient Certificate-Based Identity Authentication Protocol for VANET
Shim Design principles of secure certificateless signature and aggregate signature schemes for IoT environments
Long et al. Blockchain-Based Anonymous Authentication and Key Management for Internet of Things With Chebyshev Chaotic Maps
CN117195306A (zh) 基于多方能源数据隐私计算的恶意参与行为检出方法
Chen et al. Provable secure group key establishment scheme for fog computing
Sani et al. Idenx: A blockchain-based identity management system for supply chain attacks mitigation in smart grids
Yang et al. Cryptanalysis and improvement of a blockchain-based certificateless signature for IIoT devices
CN116192392B (zh) 一种基于椭圆曲线的具有隐私保护的轻量级匿名认证方法

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
GR01 Patent grant
GR01 Patent grant