CN116886411B - 一种基于匿名认证的安全多方计算方法 - Google Patents
一种基于匿名认证的安全多方计算方法 Download PDFInfo
- Publication number
- CN116886411B CN116886411B CN202310992576.XA CN202310992576A CN116886411B CN 116886411 B CN116886411 B CN 116886411B CN 202310992576 A CN202310992576 A CN 202310992576A CN 116886411 B CN116886411 B CN 116886411B
- Authority
- CN
- China
- Prior art keywords
- participant
- initiator
- parameter
- authentication
- index
- 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.)
- Active
Links
- 238000004364 calculation method Methods 0.000 title claims abstract description 70
- 239000003999 initiator Substances 0.000 claims abstract description 108
- 238000000034 method Methods 0.000 claims abstract description 11
- 230000005540 biological transmission Effects 0.000 claims abstract description 4
- 238000012795 verification Methods 0.000 claims description 25
- 125000004122 cyclic group Chemical group 0.000 claims description 6
- 230000008569 process Effects 0.000 abstract description 5
- 230000002457 bidirectional effect Effects 0.000 abstract description 3
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012502 risk assessment Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0876—Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3066—Public 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3236—Cryptographic 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 cryptographic hash functions
- H04L9/3239—Cryptographic 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 cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Power Engineering (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于匿名认证的安全多方计算方法,属于安全多方计算技术领域,所述方法包括:初始化阶段;报名阶段,包括拟发起计算任务的发起者报名和拟参与计算任务的参与者报名;匿名身份认证阶段,用于完成参与者与发起者之间的双向身份认证;计算任务发起和安全多方计算阶段。本发明在基于混淆电路执行多方计算之前,引入匿名身份认证过程,即:任务发起者和参与者之间进行匿名身份认证,确保了计算参与者以匿名方式参与到多方计算过程中,从而保护了参与者身份隐私,此外通过不经意传输协议,保证了计算参与者拥有的本地私有数据的机密性和完整性,确保了参与者的数据所有权。
Description
技术领域
本发明属于信息安全技术领域,特别是安全多方计算技术领域,具体涉及一种基于匿名认证的安全多方计算方法。
背景技术
基于混淆电路的安全多方计算技术是一种隐私保护计算方法。在许多应用场景中,需要多个参与者在不暴露输入的情况下协同计算,例如医疗保险领域的计算赔付、金融领域的风险评估和在线投票的选举等。在这些场景下,各个参与者的数据往往包含敏感信息,传统的数据加密方法可能会因密钥管理等问题而无法满足隐私保护的需求。因此,研究人员开始探索利用安全多方计算来实现隐私保护。然而,安全多方计算的安全性建立在参与者的诚实性基础之上。如果存在参与者的不诚实行为,可能会导致计算结果的不正确,甚至会使得计算结果被泄露。因此在确保多方计算的数据安全以及计算结果、同时提升抵御内外部攻击的能力方面,人们提出了一些改进的安全多方计算方案。然而,这些改进的安全多方计算方案对于以下场景还不能完全满足需求。例如,某选举机构计划通过在线投票方式让选民远程投票选择候选人,为了保障选举的公正性和安全性,选举机构决定采用基于混淆电路的安全多方计算技术进行投票计数,然而,可能存在以下情况:(a)对于参与者来说,并不愿意披露任何关于自己的身份信息;(b)参与者往往并不愿意分享自己的原始数据,无论是以密文还是明文的形式,以避免潜在的信息泄露和数据篡改问题,即:希望保护自身原始数据的所有权。由此可见,针对基于混淆电路的安全多方计算过程,一种能够确保数据所有权、且参与者通过匿名方式参与计算的方案亟待提出。
发明内容
有鉴于此,本发明提出了一种基于匿名认证的安全多方计算方法,用以克服现有基于混淆电路的安全多方计算方案在保护数据所有权和参与方身份隐私方面存在的一项或多项缺陷。
本发明的目的是通过以下技术方案来实现的:
一种基于匿名认证的安全多方计算方法,包括:
S100.可信中心公开第一参数,第一参数包括可信中心的公钥和选取的消息认证函数;
S200.拟发起计算任务的发起者和拟参与计算的参与者分别向可信中心发送报名请求,报名请求中包含加密后的属性信息,若参与者发送的报名请求合法,则可信中心基于自身的私钥生成反馈信息,并将反馈信息发送给该参与者,反馈信息中包含有该参与者自身加密后的属性信息对应的索引值且索引值根据该参与者的公钥生成,该参与者基于可信中心的公钥解析反馈信息后获悉自身报名的结果;若发起者发送的报名请求合法,则可信中心向发起者发送合法列表,合法列表中包含有报名请求合法的参与者的索引值和公钥;
S300.报名成功的参与者使用第一加密参数对自身的索引值进行加密得到加密索引,并生成包含加密索引的认证请求,然后将认证请求发送至发起者,以及生成第一认证参数,其中,第一加密参数基于发起者自身的公钥生成,第一认证参数基于第一加密参数生成;
S400.发起者基于第一解密参数对加密索引进行解密得到验证索引,第一解密参数基于发起者自身的私钥生成,若验证索引在合法列表内、且通过该验证索引在合法列表中所对应的参与者公钥对验证索引进行可信度验证的结果为可信,则基于第一解密参数生成第二认证参数,并通过消息认证函数计算第二认证参数的消息认证码,将该消息认证码发送给加密索引对应的参与者;
S500.若通过消息认证函数计算得到的第一认证参数的消息认证码与第二认证参数的消息认证码相同,则参与者确认与发起者相互认证通过;
S600.基于混淆电路多方计算方法,认证通过后的所有参与者在发起者发布计算任务后共同执行多方计算,发起者根据各个参与者的计算结果得到计算任务的结果值。
优选地,所述S100具体为:
S101.可信中心TC随机选择大质数q,生成循环群G,以及选择q阶有限域哈希函数H1:/>哈希函数H2:/>哈希函数H3:/>哈希函数H4:/>消息认证函数MAC:/>在p阶有限域Fp上的椭圆曲线E/Fp:y”2=x”3+ax”+b mod p和椭圆曲线生成元P,其中,{0,1}*表示任意长度的二进制序列,a表示第一常数,b表示第二常数,p为大质数,x”、y”分别代表椭圆曲线上的点对应的横坐标和纵坐标;
S102.可信中心TC随机选择作为自己的私钥,并计算自己的公钥pkTC=skTCP;
S103.可信中心TC公开第一参数pp={q、Fp、E/Fp、G、g、P、H1、H2、H3、H4、MAC、pkTC},g表示循环群G的一个生成元。
优选得,所述S200具体为:
S201.拟参与计算的参与者TPi随机选择作为自己的私钥,并计算自己的公钥/>然后发送报名请求/>给可信中心TC,拟发起计算任务的发起者TI随机选择/>作为自己的私钥,并计算自己的公钥pkTI=skTIP,然后发送报名请求ReqTI-Enroll=H1(AttributeTI)给可信中心TC,其中,表示参与者TPi属性信息的哈希值,||表示字符连接符号,i表示参与者的下标序号,H1(AttributeTI)表示发起者TI属性信息的哈希值;
S202.在验证报名请求的合法性后,可信中心TC随机选择随机数以及计算第一中间参数Ki=kiP、加密后的参与者TPi属性信息对应的索引值 和第一辅助参数/>生成反馈信息/>并将反馈信息发送给参与者TPi,参与者TPi验证第一等式/> 是否成立,若是,则表示参与者TPi报名成功,否则报名不成功;
S203.在验证报名请求ReqTI-Enroll的合法性后,可信中心TC向发起者TI发送时段T内的合法列表其中,N表示时段T内报名请求合法的参与者数量,可信中心TC周期性地向发起者TI发送一个时间间隔内的合法列表,时段T表示该时间间隔的时长。
优选地,所述S300具体为:
S301.报名成功的参与者TPi随机选择随机数并计算第二中间参数y=x'pkTI;
S302.报名成功的参与者TPi读取时间戳Tc,并使用第一加密参数h2=H2(y,Tc)对自身的索引值进行加密获得加密索引其中,/>表示异或运算符;
S303.报名成功的参与者TPi生成哈希值和/> 并计算第三中间参数
S304.报名成功的参与者TPi生成数字签名并将认证请求/>发送给发起者TI;
S305.报名成功的参与者TPi生成第一认证参数
优选地,所述S400具体为:
S401.若发起者TI检查时间戳Tc在有效范围内,则计算第四中间参数和第五中间参数/>
S402.发起者TI计算第一解密参数h'2=H2(y',Tc),并使用第一解密参数对加密索引进行解密,得到验证索引若在合法列表内匹配到该验证索引,则获取与该验证索引在合法列表中所对应的参与者公钥/>
S403.若发起者TI验证第二等式和第三等式均成立,则生成第二认证参数
S404.发起者TI生成第二认证参数的消息认证码并发送给参与者TPi。
优选地,所述S500具体为:
S501.参与者TPi在接收到消息认证码MACTI后,验证第四等式是否成立,若是,则参与者TPi确认与发起者TI相互认证通过,否则参与者TPi确认与发起者TI相互认证不通过,其中,/>表示第一认证参数的消息认证码。
优选地,所述S600中,参与者共同执行多方计算时,各个参与者通过不经意传输协议自发起者方获取自身关联的混淆电路输入线随机值。
优选地,所述S600具体为:
S601.参与者TPi与发起者TI相互认证通过后,发起者TI发布计算任务,并根据计算任务构造混淆电路以及广播混淆表;
S602.参与者TPi与发起者TI之间执行不经意传输协议后,参与者TPi根据自身拟用参与计算任务的本地私有数据xi获取对应的混淆电路输入线随机值以及参与者TPi+1与发起者TI之间执行不经意传输协议后,参与者TPi+1根据自身拟用参与计算任务的本地私有数据xi+1获取对应的混淆电路输入线随机值/>参与者TPi与参与者TPi+1之间共享自己获得的输入线随机值,其中,xi,xi+1∈{0,1};
S603.参与者TPi将输入线随机值和/>作为解密密钥逐条解密混淆表,得到自身的计算结果,以及参与者TPi+1将输入线随机值/>和/>作为解密密钥逐条解密混淆表,得到自身的计算结果,而后参与者TPi和参与者TPi+1均将计算结果返回给发起者TI;
S604.发起者TI根据接收到的所有计算结果得到计算任务的结果值。
优选地,所述参与者TPi与发起者TI之间执行不经意传输协议,具体为:
S6021.发起者TI选择随机数C∈Zp,并发送给参与者TPi,其中,Zp表示p阶有限域;
S6022.参与者TPi选择随机数计算第六中间参数/>和第七中间参数/>并将PK0发送给发起者TI;
S6023.发起者TI首先计算PK1=C/PK0,并选择随机数r0,r1∈Zp和计算第八中间参数和第九中间参数/>然后将第八中间参数和第九中间参数发送给参与者TPi;
S6024.参与者TPi计算第十中间参数和输入线随机值 其中,/>当xi=1,/>取值为/>当xi=0,取值为/>
本发明具有的有益效果如下:
(1)在基于混淆电路执行多方计算之前,引入匿名身份认证过程,即:任务发起者和参与者之间进行匿名身份认证,确保了计算参与者以匿名方式参与到多方计算过程中,从而保护了参与者身份隐私;
(2)通过不经意传输协议,保证了计算参与者拥有的本地私有数据的机密性和完整性,确保了参与者的数据所有权;
(3)通过引入可信中心进行报名请求合法性的验证,避免在多方计算过程中引入不合法的参与方,从而能够确保计算结果的正确性;
综上所述,结合(1)至(3),本发明实现的基于匿名认证的安全多方计算方法同时具备了下述优点:确保了计算参与者的身份匿名、保证了参与者的本地私有数据的机密性和完整性、确保了参与者的数据所有权以及保证了多方计算结果的有效性。
附图说明
图1为基于匿名认证的安全多方计算方法的一种流程示意图;
图2为混淆电路、真值表、混淆值和混淆表的一种示意图。
具体实施方式
下面将结合实施例,对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有付出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
参阅图1,本实施例提供了一种基于匿名认证的安全多方计算方法,应用于安全多方计算系统,系统包括可信中心、用于发起计算任务的发起者和拟参与计算任务的参与者,可信中心分别与发起者和参与者通信连接,发起者与参与者通信连接。
详细的,一种基于匿名认证的安全多方计算方法包括下述四个阶段:初始化阶段;报名阶段,包括拟发起计算任务的发起者报名和拟参与计算任务的参与者报名;匿名身份认证阶段,用于完成参与者与发起者之间的双向身份认证;计算任务发起和安全多方计算阶段。
初始化阶段,具体包括下述实施步骤:
S100.可信中心公开第一参数,第一参数包括可信中心的公钥和选取的消息认证函数。
报名阶段,具体包括下述实施步骤:
S200.拟发起计算任务的发起者和拟参与计算的参与者分别向可信中心发送报名请求,报名请求中包含加密后的属性信息,若参与者发送的报名请求合法,则可信中心基于自身的私钥生成反馈信息,并将反馈信息发送给该参与者,反馈信息中包含有该参与者自身加密后的属性信息对应的索引值且索引值根据该参与者的公钥生成,该参与者基于可信中心的公钥解析反馈信息后获悉自身报名的结果;若发起者发送的报名请求合法,则可信中心向发起者发送合法列表,合法列表中包含有报名请求合法的参与者的索引值和公钥。
匿名身份认证阶段,具体包括下述实施步骤:
S300.报名成功的参与者使用第一加密参数对自身的索引值进行加密得到加密索引,并生成包含加密索引的认证请求,然后将认证请求发送至发起者,以及生成第一认证参数,其中,第一加密参数基于发起者自身的公钥生成,第一认证参数基于第一加密参数生成。
S400.发起者基于第一解密参数对加密索引进行解密得到验证索引,第一解密参数基于发起者自身的私钥生成,若验证索引在合法列表内、且通过该验证索引在合法列表中所对应的参与者公钥对验证索引进行可信度验证的结果为可信,则基于第一解密参数生成第二认证参数,并通过消息认证函数计算第二认证参数的消息认证码,将该消息认证码发送给加密索引对应的参与者。
S500.若通过消息认证函数计算得到的第一认证参数的消息认证码与第二认证参数的消息认证码相同,则参与者确认与发起者相互认证通过。
计算任务发起和安全多方计算阶段,具体包括下述实施步骤:
S600.基于混淆电路多方计算方法,认证通过后的所有参与者在发起者发布计算任务后共同执行多方计算,发起者根据各个参与者的计算结果得到计算任务的结果值。
在一些实施例中,可信中心的密钥对、参与者的密钥对和发起者的密钥对可优选基于相同的密钥生成方法获得,例如椭圆曲线密钥生成算法等;对报名请求中的实体属性信息进行加密,可优选基于哈希函数进行;消息认证函数可采用消息认证代码MAC;参与者与发起者之间进行双向匿名身份认证时,优选通过哈希函数建立会话密钥。
因此,基于上述优选,步骤S100具体为:
S101.可信中心TC随机选择大质数q,生成循环群G,以及选择q阶有限域哈希函数H1:/>哈希函数H2:/>哈希函数H3:/>哈希函数H4:/>消息认证函数MAC:/>在p阶有限域Fp上的椭圆曲线E/Fp:y”2=x”3+ax”+b mod p和椭圆曲线生成元P,其中,{0,1}*表示任意长度的二进制序列,a表示第一常数,b表示第二常数,p为大质数,x”、y'分别代表椭圆曲线上的点对应的横坐标和纵坐标;
S102.可信中心TC随机选择作为自己的私钥,并计算自己的公钥pkTC=skTCP;
S103.可信中心TC公开第一参数pp={q、Fp、E/Fp、G、g、P、H1、H2、H3、H4、MAC、pkTC},g表示循环群G的一个生成元。
进而,S200具体为:
S201.拟参与计算的参与者TPi随机选择作为自己的私钥,并计算自己的公钥/>然后发送报名请求/>给可信中心TC,拟发起计算任务的发起者TI随机选择/>作为自己的私钥,并计算自己的公钥pkTI=skTIP,然后发送报名请求ReqTI-Enroll=H1(AttributeTI)给可信中心TC,其中,表示参与者TPi属性信息的哈希值,||表示字符连接符号,i表示参与者的下标序号,H1(AttributeTI)表示发起者TI属性信息的哈希值;
S202.在验证报名请求的合法性后,可信中心TC随机选择随机数以及计算第一中间参数ki=kiP、加密后的参与者TPi属性信息对应的索引值 和第一辅助参数/>生成反馈信息/>并将反馈信息发送给参与者TPi,参与者TPi验证第一等式/> 是否成立,若是,则表示参与者TPi报名成功,否则报名不成功;
S203.在验证报名请求ReqTI-Enroll的合法性后,可信中心TC向发起者TI发送时段T内的合法列表其中,N表示时段T内报名请求合法的参与者数量,可信中心TC周期性地向发起者TI发送一个时间间隔内的合法列表,时段T表示该时间间隔的时长。
进而,S300具体为:
S301.报名成功的参与者TPi随机选择随机数并计算第二中间参数y=x'pkTI;
S302.报名成功的参与者TPi读取时间戳Tc,并使用第一加密参数h2=H2(y,Tc)对自身的索引值进行加密获得加密索引其中,/>表示异或运算符;
S303.报名成功的参与者TPi生成哈希值和/> 并计算第三中间参数
S304.报名成功的参与者TPi生成数字签名并将认证请求/>发送给发起者TI;
S305.报名成功的参与者TPi生成第一认证参数
进而,S400具体为:
S401.若发起者TI检查时间戳Tc在有效范围内,则计算第四中间参数和第五中间参数/>
S402.发起者TI计算第一解密参数h'2=H2(y',Tc),并使用第一解密参数对加密索引进行解密,得到验证索引若在合法列表内匹配到该验证索引,则获取与该验证索引在合法列表中所对应的参与者公钥/>
S403.若发起者TI验证第二等式和第三等式均成立,则生成第二认证参数
S404.发起者TI生成第二认证参数的消息认证码并发送给参与者TPi。
进而,S500具体为:
S501.参与者TPi在接收到消息认证码MACTI后,验证第四等式是否成立,若是,则参与者TPi确认与发起者TI相互认证通过,否则参与者TPi确认与发起者TI相互认证不通过,其中,/>表示第一认证参数的消息认证码。
在一些实施中,S600中,混淆电路多方计算方法可采用普通实施例中的基于混淆电路的安全多方计算方案。
作为上述实施例的一种改进,在S600中,所有参与者共同执行多方计算时,各个参与者通过不经意传输协议自发起者方获取自身关联的混淆电路输入线随机值。
因此,引入不经意传输协议后,S600的一种改进实施过程如下:
S601.参与者TPi与发起者TI相互认证通过后,发起者TI发布计算任务,并根据计算任务构造混淆电路以及广播混淆表;
S602.参与者TPi与发起者TI之间执行不经意传输协议后,参与者TPi根据自身拟用参与计算任务的本地私有数据xi获取对应的混淆电路输入线随机值以及参与者TPi+1与发起者TI之间执行不经意传输协议后,参与者TPi+1根据自身拟用参与计算任务的本地私有数据xi+1获取对应的混淆电路输入线随机值/>参与者TPi与参与者TPi+1之间共享自己获得的输入线随机值,其中,xi,xi+1∈{0,1};
S603.参与者TPi将输入线随机值和/>作为解密密钥逐条解密混淆表,得到自身的计算结果,以及参与者TPi+1将输入线随机值/>和/>作为解密密钥逐条解密混淆表,得到自身的计算结果,而后参与者TPi和参与者TPi+1均将计算结果返回给发起者T。
S604.发起者TI根据接收到的所有计算结果得到计算任务的结果值。
图2以与门为例,示出了混淆电路的输入线和输出线、门电路的真值表、通过将门电路的真值表转换后得到的混淆电路混淆值、将混淆值打乱得到的混淆表以及混淆表解密示意,其中,输出线随机值表示为f=(f0,f1),使用输入线随机值进行双重加密得到密态随机值,即为混淆值;表示使用输入线随机值/>和/>进行双重加密的加密函数,依次类推,/>表示使用输入线随机值/>和/>进行双重加密的加密函数;表示使用/>和/>进行双重解密的解密函数,依次类推,/>表示使用/>和/>进行双重解密的解密函数;l∈(1,...,n),l表示混淆电路中门单元的编号,n表示混淆电路中门单元的总数量。
可选的,参与者TPi与发起者TI之间执行不经意传输协议的一种具体实施过程为:
S6021.发起者TI选择随机数C∈Zp,并发送给参与者TPi,其中,Zp表示p阶有限域;
S6022.参与者TPi选择随机数计算第六中间参数/>和第七中间参数/>并将PK0发送给发起者TI;
S6023.发起者TI首先计算PK1=C/PK0,并选择随机数r0,r1∈Zp和计算第八中间参数和第九中间参数/>然后将第八中间参数和第九中间参数发送给参与者TPi;
S6024.参与者TPi计算第十中间参数和输入线随机值 其中,/>当xi=1,/>取值为/>当xi=0,取值为/>
参与者TPi+1与发起者TI之间执行不经意传输协议的过程同理。
以上所述仅是本发明的优选实施方式,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。
Claims (4)
1.一种基于匿名认证的安全多方计算方法,其特征在于,包括:
S100.可信中心公开第一参数,第一参数包括可信中心的公钥和选取的消息认证函数;
S200.拟发起计算任务的发起者和拟参与计算的参与者分别向可信中心发送报名请求,报名请求中包含加密后的属性信息,若参与者发送的报名请求合法,则可信中心基于自身的私钥生成反馈信息,并将反馈信息发送给该参与者,反馈信息中包含有该参与者自身加密后的属性信息对应的索引值且索引值根据该参与者的公钥生成,该参与者基于可信中心的公钥解析反馈信息后获悉自身报名的结果;若发起者发送的报名请求合法,则可信中心向发起者发送合法列表,合法列表中包含有报名请求合法的参与者的索引值和公钥;
S300.报名成功的参与者使用第一加密参数对自身的索引值进行加密得到加密索引,并生成包含加密索引的认证请求,然后将认证请求发送至发起者,以及生成第一认证参数,其中,第一加密参数基于发起者自身的公钥生成,第一认证参数基于第一加密参数生成;
S400.发起者基于第一解密参数对加密索引进行解密得到验证索引,第一解密参数基于发起者自身的私钥生成,若验证索引在合法列表内、且通过该验证索引在合法列表中所对应的参与者公钥对验证索引进行可信度验证的结果为可信,则基于第一解密参数生成第二认证参数,并通过消息认证函数计算第二认证参数的消息认证码,将该消息认证码发送给加密索引对应的参与者;
S500.若通过消息认证函数计算得到的第一认证参数的消息认证码与第二认证参数的消息认证码相同,则参与者确认与发起者相互认证通过;
S600.基于混淆电路多方计算方法,认证通过后的所有参与者在发起者发布计算任务后共同执行多方计算,发起者根据各个参与者的计算结果得到计算任务的结果值;
所述S100具体为:
S101.可信中心TC随机选择大质数q,生成循环群G,以及选择q阶有限域哈希函数H1:哈希函数H2:/>哈希函数H3:/>哈希函数H4:/>消息认证函数MAC:/>在p阶有限域Fp上的椭圆曲线E/Fp:y″2=x″3+ax″+b mod p和椭圆曲线生成元P,其中,{0,1}*表示任意长度的二进制序列,a表示第一常数,b表示第二常数,p为大质数,x″、y″分别代表椭圆曲线上的点对应的横坐标和纵坐标;
S102.可信中心TC随机选择作为自己的私钥,并计算自己的公钥pkTC=skTCP;
S103.可信中心TC公开第一参数pp={q、Fp、E/Fp、G、g、P、H1、H2、H3、H4、MAC、pkTC},g表示循环群G的一个生成元;
所述S200具体为:
S201.拟参与计算的参与者TPi随机选择作为自己的私钥,并计算自己的公钥然后发送报名请求/>给可信中心TC,拟发起计算任务的发起者TI随机选择/>作为自己的私钥,并计算自己的公钥pkTI=skTIP,然后发送报名请求ReqTI-Enroll=H1(AttributeTI)给可信中心TC,其中,表示参与者TPi属性信息的哈希值,||表示字符连接符号,i表示参与者的下标序号,H1(AttributeTI)表示发起者TI属性信息的哈希值;
S202.在验证报名请求的合法性后,可信中心TC随机选择随机数/>以及计算第一中间参数Ki=kiP、加密后的参与者TPi属性信息对应的索引值和第一辅助参数/>生成反馈信息/>并将反馈信息发送给参与者TPi,参与者TPi验证第一等式是否成立,若是,则表示参与者TPi报名成功,否则报名不成功;
S203.在验证报名请求ReqTI-Enroll的合法性后,可信中心TC向发起者TI发送时段T内的合法列表其中,N表示时段T内报名请求合法的参与者数量,可信中心Tc周期性地向发起者TI发送一个时间间隔内的合法列表,时段T表示该时间间隔的时长;
所述S300具体为:
S301.报名成功的参与者TPi随机选择随机数并计算第二中间参数y=x′pkTI;
S302.报名成功的参与者TPi读取时间戳Tc,并使用第一加密参数h2=H2(y,Tc)对自身的索引值进行加密获得加密索引其中,/>表示异或运算符;
S303.报名成功的参与者TPi生成哈希值和并计算第三中间参数/>
S304.报名成功的参与者TPi生成数字签名并将认证请求/>发送给发起者TI;
S305.报名成功的参与者TPi生成第一认证参数
所述S400具体为:
S401.若发起者TI检查时间戳Tc在有效范围内,则计算第四中间参数和第五中间参数/>
S402.发起者TI计算第一解密参数h′2=H2(y′,Tc),并使用第一解密参数对加密索引进行解密,得到验证索引若在合法列表内匹配到该验证索引,则获取与该验证索引在合法列表中所对应的参与者公钥/>
S403.若发起者TI验证第二等式和第三等式均成立,则生成第二认证参数
S404.发起者TI生成第二认证参数的消息认证码并发送给参与者TPi;
所述S500具体为:
S501.参与者TPi在接收到消息认证码MACTI后,验证第四等式是否成立,若是,则参与者TPi确认与发起者TI相互认证通过,否则参与者TPi确认与发起者TI相互认证不通过,其中,/>表示第一认证参数的消息认证码。
2.根据权利要求1所述的一种基于匿名认证的安全多方计算方法,其特征在于,所述S600中,参与者共同执行多方计算时,各个参与者通过不经意传输协议自发起者方获取自身关联的混淆电路输入线随机值。
3.根据权利要求2所述的一种基于匿名认证的安全多方计算方法,其特征在于,所述S600具体为:
S601.参与者TPi与发起者TI相互认证通过后,发起者TI发布计算任务,并根据计算任务构造混淆电路以及广播混淆表;
S602.参与者TPi与发起者TI之间执行不经意传输协议后,参与者TPi根据自身拟用参与计算任务的本地私有数据xi获取对应的混淆电路输入线随机值以及参与者TPi+1与发起者TI之间执行不经意传输协议后,参与者TPi+1根据自身拟用参与计算任务的本地私有数据xi+1获取对应的混淆电路输入线随机值/>参与者TPi与参与者TPi+1之间共享自己获得的输入线随机值,其中,xi,xi+1∈{0,1};
S603.参与者TPi将输入线随机值和/>作为解密密钥逐条解密混淆表,得到自身的计算结果,以及参与者TPi+1将输入线随机值/>和/>作为解密密钥逐条解密混淆表,得到自身的计算结果,而后参与者TPi和参与者TPi+1均将计算结果返回给发起者TI;
S604.发起者TI根据接收到的所有计算结果得到计算任务的结果值。
4.根据权利要求3所述的一种基于匿名认证的安全多方计算方法,其特征在于,所述参与者TPi与发起者TI之间执行不经意传输协议,具体为:
S6021.发起者TI选择随机数C∈Zp,并发送给参与者TPi,其中,Zp表示p阶有限域;
S6022.参与者TPi选择随机数计算第六中间参数/>和第七中间参数并将PK0发送给发起者TI;
S6023.发起者TI首先计算PK1=C/PK0,并选择随机数r0,r1,∈Zp和计算第八中间参数和第九中间参数/>然后将第八中间参数和第九中间参数发送给参与者TPi;
S6024.参与者TPi计算第十中间参数和输入线随机值其中,/>当xi=1,/>取值为/>当xi=0,/>取值为/>
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310992576.XA CN116886411B (zh) | 2023-08-08 | 2023-08-08 | 一种基于匿名认证的安全多方计算方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310992576.XA CN116886411B (zh) | 2023-08-08 | 2023-08-08 | 一种基于匿名认证的安全多方计算方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116886411A CN116886411A (zh) | 2023-10-13 |
CN116886411B true CN116886411B (zh) | 2024-03-15 |
Family
ID=88266334
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310992576.XA Active CN116886411B (zh) | 2023-08-08 | 2023-08-08 | 一种基于匿名认证的安全多方计算方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116886411B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108809623A (zh) * | 2018-07-10 | 2018-11-13 | 矩阵元技术(深圳)有限公司 | 安全多方计算方法、装置及系统 |
US10742421B1 (en) * | 2019-03-08 | 2020-08-11 | Ares Technologies, Inc. | Methods and systems for anonymous hardware attestation |
CN112614545A (zh) * | 2020-12-29 | 2021-04-06 | 暨南大学 | 一种支持多属性匿名认证的基因序列安全比对方法及系统 |
CN113343291A (zh) * | 2021-05-25 | 2021-09-03 | 联想(北京)有限公司 | 一种基于多方计算的秘密分享方法、装置及系统 |
-
2023
- 2023-08-08 CN CN202310992576.XA patent/CN116886411B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108809623A (zh) * | 2018-07-10 | 2018-11-13 | 矩阵元技术(深圳)有限公司 | 安全多方计算方法、装置及系统 |
US10742421B1 (en) * | 2019-03-08 | 2020-08-11 | Ares Technologies, Inc. | Methods and systems for anonymous hardware attestation |
CN112614545A (zh) * | 2020-12-29 | 2021-04-06 | 暨南大学 | 一种支持多属性匿名认证的基因序列安全比对方法及系统 |
CN113343291A (zh) * | 2021-05-25 | 2021-09-03 | 联想(北京)有限公司 | 一种基于多方计算的秘密分享方法、装置及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN116886411A (zh) | 2023-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109756485B (zh) | 电子合同签署方法、装置、计算机设备及存储介质 | |
RU2325693C2 (ru) | Способы аутентификации потенциальных членов, приглашенных присоединиться к группе | |
Kumari et al. | A provably secure biometrics-based authenticated key agreement scheme for multi-server environments | |
CN112889047A (zh) | 利用多个装置以增强生物计量认证安全 | |
WO2019147477A1 (en) | Blockchain system and data processing method for blockchain system | |
Amin et al. | A software agent enabled biometric security algorithm for secure file access in consumer storage devices | |
CN113761582B (zh) | 基于群签名的可监管区块链交易隐私保护方法及系统 | |
US20110194698A1 (en) | Key Sharing System | |
Lindell | Anonymous authentication | |
KR20070037581A (ko) | 익명성 증명서 쇼를 구비하는 익명성 증명서 | |
JP2023500570A (ja) | コールドウォレットを用いたデジタルシグニチャ生成 | |
Xie et al. | Provable secure and lightweight blockchain-based V2I handover authentication and V2V broadcast protocol for VANETs | |
CN108494559B (zh) | 一种基于半可信第三方的电子合同签订方法 | |
Backes et al. | Using mobile device communication to strengthen e-voting protocols | |
KR20200016506A (ko) | 익명 디지털 아이덴티티 수립 방법 | |
Li et al. | AvecVoting: Anonymous and verifiable E-voting with untrustworthy counters on blockchain | |
US7222362B1 (en) | Non-transferable anonymous credentials | |
Takaragi et al. | Secure revocation features in eKYC-privacy protection in central bank digital currency | |
Xiong et al. | A novel quantum ring signature scheme without using entangled states | |
Su et al. | Secure blockchain-based electronic voting mechanism. | |
Li et al. | Blockchain-based portable authenticated data transmission for mobile edge computing: a universally composable secure solution | |
Farash | Cryptanalysis and improvement of ‘an improved authentication with key agreement scheme on elliptic curve cryptosystem for global mobility networks’ | |
CN111245615B (zh) | 一种基于身份的数字签名密码逆向防火墙方法 | |
CN116886411B (zh) | 一种基于匿名认证的安全多方计算方法 | |
Zhang et al. | CSH: a post-quantum secret handshake scheme from coding theory |
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 |