CN112532383B - 一种基于秘密分享的隐私保护计算方法 - Google Patents

一种基于秘密分享的隐私保护计算方法 Download PDF

Info

Publication number
CN112532383B
CN112532383B CN202011291344.4A CN202011291344A CN112532383B CN 112532383 B CN112532383 B CN 112532383B CN 202011291344 A CN202011291344 A CN 202011291344A CN 112532383 B CN112532383 B CN 112532383B
Authority
CN
China
Prior art keywords
participants
secret
protocol
multiplicative
additive
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
Application number
CN202011291344.4A
Other languages
English (en)
Other versions
CN112532383A (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 Information Science and Technology
Original Assignee
Nanjing University of Information Science and Technology
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 Information Science and Technology filed Critical Nanjing University of Information Science and Technology
Priority to CN202011291344.4A priority Critical patent/CN112532383B/zh
Publication of CN112532383A publication Critical patent/CN112532383A/zh
Application granted granted Critical
Publication of CN112532383B publication Critical patent/CN112532383B/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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • 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/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • 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/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种基于秘密分享的隐私保护计算方法,所述隐私保护计算方法包括如下技术:加性秘密分享技术和乘性秘密分享技术;所述隐私保护计算方法包括如下安全多方计算协议:安全乘性‑加性重分享协议、安全加性‑乘性重分享协议、安全比较协议、安全线性计算协议、安全乘法协议、安全指数协议、安全对数协议、安全幂协议、安全三角函数协议和安全反三角函数。通过隐私保护计算方法,可以大幅地提高隐私保护计算的效率,并支持几乎所有的基本初等函数计算。

Description

一种基于秘密分享的隐私保护计算方法
技术领域
本发明涉及信息安全领域,尤其涉及一种基于秘密分享的隐私保护计算方法。
背景技术
今年来,随着云计算的快速发展,越来越多的计算任务被外包到云服务器中。对于组织和公司来说,云计算为他们提供了近乎无限的,灵活的,廉价的计算资源;对于个人来说,云计算则降低了访问计算资源的门槛,使执行诸如深度学习等复杂任务成为可能。然而,隐私问题也随之而来:在云计算场景中,用户不可避免地要将包含敏感信息的数据交给云服务器。这意味着云服务器可以随时访问用户的私有数据。因此,隐私保护计算旨在保护数据隐私的前提下,云服务器依然能提供数据计算的能力。
现有的隐私保护计算基数主要分为两类。第一类是基于同态加密的方法,同态加密是一类具有同态性质的加密方案,允许在密文上执行计算,而解密后的结果就相当于在对应的明文上执行相同的计算。该类方法通常首先由用户通过同态加密对私有数据进行加密,然后云服务器在密文上执行用户所需的计算,最后用户解密密文。然而现有的同态加密方案的执行效率以及支持的计算类型不足以支撑规模较大的云计算服务。
第二类是基于安全多方计算的方法,安全多方计算允许多个互不信任的参与者协同计算,同时不泄露各自的秘密输入。在隐私保护计算领域中,具有代表性的是以秘密分享为基础的安全多方计算方案。这类方案主要分为三个阶段,首先,用户通过秘密分享技术将私有数据进行分享;然后,多个参与者即云服务器对这些分享协同计算;最后,用户从协同计算的输出分享中恢复出结果。目前对这类方案的主要改进工作是设计通信轮数更低、通信数量更少、支持更多操作类型的协议。然而现有的方案在应对非线性函数时,存在计算精度损失,通信轮数过高等问题。
发明内容
针对以上问题,本发明提出一种基于秘密分享的隐私保护计算方法。
为实现本发明的目的,提供一种基于秘密分享的隐私保护计算方法,所述隐私保护计算方法包括加性秘密分享方式和乘性秘密分享方式;所述隐私保护计算方法包括安全乘性-加性重分享协议、安全加性-乘性重分享协议、安全比较协议、安全线性计算协议、安全乘法协议、安全指数协议、安全对数协议、安全幂协议、安全三角函数协议和安全反三角函数协议。
进一步地,所述加性秘密分享方式:秘密发布者
Figure BDA0002783947590000021
将待分享的秘密s随机分成n份分享si,所述n份分享si满足:
Figure BDA0002783947590000022
其中,n为正整数,i=1,2,3…n;所述秘密发布者
Figure BDA0002783947590000023
将所述n份分享si分别发送给对应的n个参与者
Figure BDA0002783947590000024
所述的n个参与者
Figure BDA0002783947590000025
将各自的分享si通过累加的方式能够恢复秘密s;
所述乘性秘密分享方式:秘密发布者
Figure BDA0002783947590000026
将待分享的秘密s随机分成n份分享si,所述n份分享si满足:
Figure BDA0002783947590000027
所述秘密发布者
Figure BDA0002783947590000028
将所述n份分享si分别发送给对应的n个参与者
Figure BDA0002783947590000029
所述的n个参与者
Figure BDA00027839475900000210
将各自的分享si通过累乘的方式能够恢复秘密s。
进一步地,所述安全乘性-加性重分享协议的输入为:被乘性秘密分享的秘密u,输出为被加性秘密分享的秘密x,且满足x=u;
所述乘性-加性重分享协议的具体步骤包括:
预处理阶段:参与者
Figure BDA00027839475900000211
Figure BDA00027839475900000212
随机生成乘法三元组a,b,c,满足a·b=c,其中,a、b和c为随机数,所述参与者
Figure BDA00027839475900000213
Figure BDA00027839475900000214
对c进行加性秘密分享,且经过所述预处理操作后,所述参与者
Figure BDA00027839475900000215
持有a和c1,所述参与者
Figure BDA00027839475900000216
持有b和c2,其中,c1和c2为所述参与者
Figure BDA00027839475900000217
Figure BDA00027839475900000218
对所述秘密c的两个分享;
执行阶段:所述参与者
Figure BDA00027839475900000219
计算d←u1-a;所述参与者
Figure BDA00027839475900000220
计算e←u2-b;所述参与者
Figure BDA00027839475900000221
将d发送给参与者
Figure BDA00027839475900000222
所述参与者
Figure BDA00027839475900000223
将e发送给参与者
Figure BDA00027839475900000224
所述参与者
Figure BDA00027839475900000225
计算x1←c1-e·a;所述参与者
Figure BDA00027839475900000226
计算x2←c2-d·b+e·d;其中,d和e为中间变量,u1和u2为所述参与者
Figure BDA00027839475900000227
Figure BDA00027839475900000228
对所述秘密u的两个分享,x1和x2为所述参与者
Figure BDA00027839475900000229
Figure BDA00027839475900000230
对所述秘密x的两个分享。
进一步地,所述安全加性-乘性重分享协议的输入为:被加性秘密分享的秘密x,输出为:被乘性秘密分享的秘密u,且满足u=x;
所述安全加性-乘性重分享协议的具体步骤包括:
预处理阶段:参与者
Figure BDA00027839475900000231
Figure BDA00027839475900000232
随机生成乘法三元组a,b,c,满足a·b=c,其中,a、b和c为随机数,所述参与者
Figure BDA00027839475900000233
Figure BDA00027839475900000234
对c进行加性秘密分享,且经过所述预处理操作后,所述参与者
Figure BDA00027839475900000235
持有a和c1,参与者
Figure BDA00027839475900000236
持有b和c2
执行阶段:所述参与者
Figure BDA00027839475900000237
计算e←(x1-c1)/a;所述参与者
Figure BDA00027839475900000238
将e发送给所述参与者
Figure BDA0002783947590000031
所述参与者
Figure BDA0002783947590000032
计算u2←e+b,d←(x2-c2)/u2;所述参与者
Figure BDA0002783947590000033
将d发送给参与者
Figure BDA0002783947590000034
所述参与者
Figure BDA0002783947590000035
计算u1←d+a。
进一步地,所述安全比较协议包括两种情形:
情形一:输入为被加性秘密分享的秘密x和y时,所述安全比较协议的具体步骤包括:所述参与者
Figure BDA0002783947590000036
计算d1←x1-y1;所述参与者
Figure BDA0002783947590000037
计算d2←x2-y2;所述参与者
Figure BDA0002783947590000038
Figure BDA0002783947590000039
利用所述安全加性-乘性重分享协议将秘密d从加性形式转换为乘性形式;所述参与者
Figure BDA00027839475900000310
Figure BDA00027839475900000311
公开所述秘密d的乘性分享的符号;所述参与者
Figure BDA00027839475900000312
Figure BDA00027839475900000313
根据上述步骤公开的符号判断所述秘密x和y的大小;其中,x1和x2为所述参与者
Figure BDA00027839475900000314
Figure BDA00027839475900000315
对所述秘密z的两个分享,y1和y2为所述参与者
Figure BDA00027839475900000316
Figure BDA00027839475900000317
对所述秘密y的两个分享,d1和d2为所述参与者
Figure BDA00027839475900000318
Figure BDA00027839475900000319
对所述秘密d的两个分享;
情形二:输入为被乘性秘密分享秘密x和y时,所述安全比较协议的具体步骤包括:
所述参与者
Figure BDA00027839475900000320
计算d1←x1-y1;所述参与者
Figure BDA00027839475900000321
计算d2←x2-y2;所述参与者
Figure BDA00027839475900000322
Figure BDA00027839475900000323
利用所述安全乘性-加性重分享协议将秘密d从加性形式转换为乘性形式;所述参与者
Figure BDA00027839475900000324
Figure BDA00027839475900000325
公开所述秘密d的乘性分享的符号;所述参与者
Figure BDA00027839475900000326
Figure BDA00027839475900000327
根据上述步骤公开的符号判断所述秘密x和y的大小。
进一步地,所述安全线性计算协议的输入为:n个秘密x1,x2,…,xn、n个所述秘密对应的公开系数a1,a2,…,an和一个公开偏置b,所述安全线性计算协议的输出为:
Figure BDA00027839475900000328
其中,j=1,2,…,n,aj表示公开系数a1,a2,…,an,xj表示秘密x1,x2,…,xn
所述安全线性计算协议包括两种情形:
情形一:输入为被加性秘密分享的秘密xj时,所述安全线性计算协议的具体步骤包括:所述参与者
Figure BDA00027839475900000329
计算
Figure BDA00027839475900000330
所述参与者
Figure BDA00027839475900000331
计算
Figure BDA00027839475900000332
其中,n=2,f1和f2表示所述参与者
Figure BDA00027839475900000333
Figure BDA00027839475900000334
对所述安全线性计算协议输出结果的两个分享,
Figure BDA00027839475900000335
表示所述参与者
Figure BDA00027839475900000336
对所述秘密xj的分享,
Figure BDA00027839475900000337
表示所述参与者
Figure BDA00027839475900000338
对所述秘密xj的分享;
情形二:输入为被乘性秘密分享的秘密xj时,所述安全线性计算协议的具体步骤包括:
所述参与者
Figure BDA00027839475900000339
Figure BDA00027839475900000340
并行地将所述秘密xj利用所述安全乘性-加性重分享协议从乘性形式转换为加性形式;所述参与者
Figure BDA0002783947590000041
计算
Figure BDA0002783947590000042
所述参与者
Figure BDA0002783947590000043
计算
Figure BDA0002783947590000044
所述参与者
Figure BDA0002783947590000045
Figure BDA0002783947590000046
利用所述安全加性-乘性重分享协议将输出结果转换为乘性形式。
进一步地,所述安全乘法协议包括两种情形:
情形一:输入为被加性秘密分享的秘密x和y时,所述安全乘法协议的具体步骤包括:
预处理阶段:参与者
Figure BDA0002783947590000047
Figure BDA0002783947590000048
随机生成乘法三元组a,b,c,满足a·b=c,其中,a、b和c为随机数,所述参与者
Figure BDA0002783947590000049
Figure BDA00027839475900000410
对a,b和c分别进行加性秘密分享,且经过所述预处理操作后,所述参与者
Figure BDA00027839475900000411
持有a1,b1和c1,所述参与者
Figure BDA00027839475900000412
持有a2,b2和c2,其中,a1和a2为所述参与者
Figure BDA00027839475900000413
Figure BDA00027839475900000414
对所述秘密a的两个分享,b1和b2为所述参与者
Figure BDA00027839475900000415
Figure BDA00027839475900000416
对所述秘密b的两个分享,c1和c2为所述参与者
Figure BDA00027839475900000417
Figure BDA00027839475900000418
对所述秘密c的两个分享;
执行阶段:所述参与者
Figure BDA00027839475900000419
计算d1←x1-a1,e1←y1-b1;所述参与者
Figure BDA00027839475900000420
计算d2←x2-a2,e2←y2-b2;所述参与者
Figure BDA00027839475900000421
Figure BDA00027839475900000422
公开秘密d,e;所述参与者
Figure BDA00027839475900000423
计算f1←c1+d·b1+e·a1;所述参与者
Figure BDA00027839475900000424
计算f2←c2+d·b2+e·a2+e·d;其中,d1和d2为所述参与者
Figure BDA00027839475900000425
Figure BDA00027839475900000426
对所述秘密d的两个分享,e1和e2为所述参与者
Figure BDA00027839475900000427
Figure BDA00027839475900000428
对所述秘密e的两个分享,f1和f2为所述参与者
Figure BDA00027839475900000429
Figure BDA00027839475900000430
对输出结果f的两个分享;
情形二:输入为被乘性秘密分享的秘密x和y时,所述安全乘法协议的具体步骤包括:所述参与者
Figure BDA00027839475900000431
计算f1←x1·y1;所述参与者
Figure BDA00027839475900000432
计算f2←x2·y2
进一步地,所述安全指数协议包括两种情形:
情形一:输入为被加性秘密分享的秘密x时,所述安全指数协议的具体步骤包括:
所述参与者
Figure BDA00027839475900000433
计算
Figure BDA00027839475900000434
所述参与者
Figure BDA00027839475900000435
计算
Figure BDA00027839475900000436
所述参与者
Figure BDA00027839475900000437
Figure BDA00027839475900000438
利用所述安全乘性-加性重分享协议将秘密f从乘性形式转换为加性形式;其中,f1和f2为所述参与者
Figure BDA00027839475900000439
Figure BDA00027839475900000440
对所述秘密f的两个分享,底数a是公开数,x1和x2为所述参与者
Figure BDA00027839475900000441
Figure BDA00027839475900000442
对所述秘密x的两个分享;
情形二:输入为被乘性秘密分享的秘密x时,所述安全指数协议的具体步骤包括:
所述参与者
Figure BDA00027839475900000443
Figure BDA00027839475900000444
利用所述安全乘性-加性重分享协议将所述秘密x从乘性形式转换为加性形式;所述参与者
Figure BDA00027839475900000445
计算
Figure BDA00027839475900000446
所述参与者
Figure BDA00027839475900000447
计算
Figure BDA00027839475900000448
所述安全对数协议包括两种情形:
情形一:输入为被加性秘密分享的秘密x时,所述安全对数协议具体步骤包括:
所述参与者
Figure BDA0002783947590000051
Figure BDA0002783947590000052
利用所述安全加性-乘性重分享协议将所述秘密x从加性形式转换为乘性形式;所述参与者
Figure BDA0002783947590000053
计算f1←loga|x1|;所述参与者
Figure BDA0002783947590000054
计算f2←loga|x2|;
情形二:输入为被乘性秘密分享的秘密x时,所述安全对数协议具体步骤包括:
所述参与者
Figure BDA0002783947590000055
计算f1←loga|x1|;所述参与者
Figure BDA0002783947590000056
计算f2←loga|x2|;所述参与者
Figure BDA0002783947590000057
Figure BDA0002783947590000058
利用所述安全加性-乘性重分享协议将秘密f从加性形式转换为乘性形式;其中,f1和f2为所述参与者
Figure BDA0002783947590000059
Figure BDA00027839475900000510
对所述秘密f的两个分享,底数a是公开数,x1和x2为所述参与者
Figure BDA00027839475900000511
Figure BDA00027839475900000512
对所述秘密x的两个分享。
进一步地,所述安全幂协议包括两种情形:
情形一:输入为被加性秘密分享的n个秘密x1,x2,…,xn时,所述安全幂协议具体步骤包括:所述参与者
Figure BDA00027839475900000513
Figure BDA00027839475900000514
利用所述安全加性-乘性重分享协议将所述秘密x1,x2,…,xn并行地从加性形式转换为乘性形式;所述参与者
Figure BDA00027839475900000515
计算
Figure BDA00027839475900000516
所述参与者
Figure BDA00027839475900000517
计算
Figure BDA00027839475900000518
所述参与者
Figure BDA00027839475900000519
Figure BDA00027839475900000520
利用所述安全乘性-加性重分享协议将上述步骤输出结果秘密f从乘性形式转换为加性形式;其中,n=2,f1和f2表示所述参与者
Figure BDA00027839475900000521
Figure BDA00027839475900000522
各自对输出秘密f的分享,α12,…,αn表示公开指数,j=1,…,n,
Figure BDA00027839475900000523
表示所述参与者
Figure BDA00027839475900000524
对第j个秘密xj的分享,
Figure BDA00027839475900000525
表示所述参与者
Figure BDA00027839475900000526
对第j个秘密xj的分享;
情形二:输入为被乘性秘密分享的n个秘密x1,x2,…,xn时,所述安全幂协议具体步骤包括:所述参与者
Figure BDA00027839475900000527
计算
Figure BDA00027839475900000528
所述参与者
Figure BDA00027839475900000529
计算
Figure BDA00027839475900000530
进一步地,所述安全三角函数协议包括两种情形:
情形一:输入为被加性秘密分享的秘密x时,所述安全三角函数协议的具体步骤包括:所述参与者
Figure BDA00027839475900000531
计算m1←sinx1,n1←cosx1;所述参与者
Figure BDA00027839475900000532
计算n2←sinx2,m2←cosx2;所述参与者
Figure BDA00027839475900000533
Figure BDA00027839475900000534
利用所述安全乘性-加性重分享协议将输出的秘密m和秘密n并行地从乘性形式转换为加性形式;所述参与者
Figure BDA00027839475900000535
计算f1←m1+n1;所述参与者
Figure BDA00027839475900000536
计算f2←m2+n2;其中,m1和n1表示所述参与者
Figure BDA00027839475900000537
对输出的秘密m和n的分享,m2和n2表示参与者
Figure BDA00027839475900000538
对输出的秘密m和n的分享,x1和x2表示所述参与者
Figure BDA00027839475900000539
Figure BDA00027839475900000540
对所述秘密x的两个分享,f1和f2表示所述参与者
Figure BDA0002783947590000061
Figure BDA0002783947590000062
对输出结果秘密f的两个分享;
情形二:输入为被乘性秘密分享的秘密x时,所述安全三角函数协议的具体步骤包括:所述参与者
Figure BDA0002783947590000063
Figure BDA0002783947590000064
利用所述安全乘性-加性重分享协议将所述秘密x从乘性形式转换为加性形式;所述参与者
Figure BDA0002783947590000065
计算m1←sinx1,n1←cosx1;所述参与者
Figure BDA0002783947590000066
计算n2←sinx2,m2←cosx2;所述参与者
Figure BDA0002783947590000067
Figure BDA0002783947590000068
利用所述安全乘性-加性重分享协议将输出的秘密m和秘密n并行地从乘性形式转换为加性形式;所述参与者
Figure BDA0002783947590000069
计算f1←m1+n1;所述参与者
Figure BDA00027839475900000610
计算f2←m2+n2;所述参与者
Figure BDA00027839475900000611
Figure BDA00027839475900000612
利用所述安全加性-乘性重分享协议将秘密f从加性形式转换为乘性形式;
所述安全三角函数协议包括两种情形:
情形一:输入为被加性秘密分享的秘密x时,所述安全反三角函数协议的具体步骤包括:所述参与者
Figure BDA00027839475900000613
Figure BDA00027839475900000614
利用所述安全幂协议并行地计算项
Figure BDA00027839475900000615
所述参与者
Figure BDA00027839475900000616
计算
Figure BDA00027839475900000617
所述参与者
Figure BDA00027839475900000618
计算
Figure BDA00027839475900000619
其中,p为展开项数,k∈[0,p],tk1表示所述参与者
Figure BDA00027839475900000620
对所述项tk的分享,tk2表示所述参与者
Figure BDA00027839475900000621
对所述项tk的分享,f1和f2表示所述参与者
Figure BDA00027839475900000622
Figure BDA00027839475900000623
对输出秘密f的两个分享;
情形二:输入为被乘性秘密分享的秘密x时,所述安全反三角函数协议的具体步骤包括:所述参与者
Figure BDA00027839475900000624
计算项
Figure BDA00027839475900000625
所述参与者
Figure BDA00027839475900000626
计算项
Figure BDA00027839475900000627
Figure BDA00027839475900000628
所述参与者
Figure BDA00027839475900000629
Figure BDA00027839475900000630
利用所述安全线性计算协议计算
Figure BDA00027839475900000631
跟现有技术相比,本发明具有以下有益技术效果:
本发明公开的隐私保护计算方法具有通信轮数低,通信量少,计算复杂度低,支持计算类型全面等优势,适用于复杂的需隐私保护支持的外包云计算。
附图说明
图1是一个实施例的基于秘密分享的隐私保护计算方法模型图;
图2是一个实施例的秘密分享技术的模型图;
图3是一个实施例的安全乘性-加性重分享协议的具体计算过程示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
如图1所示,秘密共享技术主要是将秘密(也可以说是数据)分成n份分享,并将对应的分享发送给相应的参与者,任何k(k<=n)个参与者,利用掌握的分享即可恢复出秘密,这样的秘密共享技术也被称为(k,n)门限秘密共享技术,而乘性秘密分享技术则是(n,n)门限秘密共享技术(即它需要所有的分享才能恢复秘密)。为实现上述发明的目的,本发明所采用的技术方案是:一种基于秘密分享的隐私保护计算方法,包括在隐私保护计算方法中应用的秘密分享技术和一系列安全多方计算协议:(1)乘性秘密共享技术和加性秘密共享技术、(2)安全乘性-加性重分享协议、(3)安全加性-乘性重分享协议、(4)安全比较协议、(5)安全线性计算协议、(6)安全乘法协议、(7)安全指数协议、(8)安全对数协议、(9)安全幂协议、(10)安全三角函数协议、(11)安全反三角函数协议。
其中,在技术(1)中,如图2秘密分享技术的模型图所示,乘性秘密共享技术的具体分享方式为:
(1.1)秘密发布者
Figure BDA0002783947590000071
将待分享的秘密s随机分成n份分享si,满足
Figure BDA0002783947590000072
(1.2)秘密发布者
Figure BDA0002783947590000073
将分享si分别发送给对应的参与者
Figure BDA0002783947590000074
(1.3)n个参与者
Figure BDA0002783947590000075
将各自的分享累乘可以恢复秘密s。
其中,在协议(2)中,输入为被乘性秘密分享技术分享的秘密u,输出为被加性分享技术分享的秘密x,满足x=u。如图3所示,具体步骤为:
(2.1)参与者在预处理阶段生成乘法三元组a,b,c,满足a·b=c,并对c进行加性秘密分享。参与者
Figure BDA0002783947590000076
持有a,c1,参与者
Figure BDA0002783947590000077
持有b,c2
(2.2)参与者
Figure BDA0002783947590000078
计算d←u1-a;
(2.3)参与者
Figure BDA0002783947590000081
计算e←u2-b;
(2.4)参与者
Figure BDA0002783947590000082
将d发送给参与者
Figure BDA0002783947590000083
(2.5)参与者
Figure BDA0002783947590000084
将e发送给参与者
Figure BDA0002783947590000085
(2.6)参与者
Figure BDA0002783947590000086
计算x1←c1-e·a;
(2.7)参与者
Figure BDA0002783947590000087
计算x2←c2-d·b+e·d。
其中,在协议(3)中,输入为被加性秘密分享技术分享的秘密x,输出为被乘性分享技术分享的秘密u,满足u=x。具体步骤为:
(3.1)参与者在预处理阶段生成乘法三元组a,b,c,满足a·b=c,并对c进行加性秘密分享。参与者
Figure BDA0002783947590000088
持有a,c1,参与者
Figure BDA0002783947590000089
持有b,c2
(3.2)参与者
Figure BDA00027839475900000810
计算e←(x1-c1)/a;
(3.3)参与者
Figure BDA00027839475900000811
将e发送给参与者
Figure BDA00027839475900000812
(3.4)参与者
Figure BDA00027839475900000813
计算u2←e+b,d←(x2-c2)/u2
(3.5)参与者
Figure BDA00027839475900000814
将d发送给参与者
Figure BDA00027839475900000815
(3.6)参与者
Figure BDA00027839475900000816
计算u1←d+a。
其中,在协议(4)中,输入为待比较的两个秘密x,y,如果秘密是被加性秘密分享技术所分享的,则具体步骤为:
(4.1.1)参与者
Figure BDA00027839475900000817
计算d1←x1-y1
(4.1.2)参与者
Figure BDA00027839475900000818
计算d2←x2-y2
(4.1.3)参与者
Figure BDA00027839475900000819
Figure BDA00027839475900000820
利用协议(3)协同将秘密d从加性形式转换为乘性形式;
(4.1.4)参与者
Figure BDA00027839475900000821
Figure BDA00027839475900000822
公开秘密d的乘性分享的符号;
(4.1.5)参与者
Figure BDA00027839475900000823
Figure BDA00027839475900000824
根据公开的符号可判断秘密x,y的大小。
如果秘密是被乘性分享技术所分享的,则具体步骤为:
(4.2.1)参与者
Figure BDA00027839475900000825
Figure BDA00027839475900000826
并行地将秘密x,y利用协议(2)从乘性形式转换为加性形式;
(4.2.2)剩余步骤和第一种情况一致。
其中,在协议(5)中,输入为n个秘密x1,x2,…,xn和其公开的系数a1,a2,…,an以及一个公开偏置b,输出为
Figure BDA0002783947590000091
如果输入秘密是被加性秘密分享技术所分享的,则具体步骤为:
(5.1.1)参与者
Figure BDA0002783947590000092
计算
Figure BDA0002783947590000093
(5.1.2)参与者
Figure BDA0002783947590000094
计算
Figure BDA0002783947590000095
如果输入秘密是被乘性分享技术所分享的,则具体步骤为:
(5.2.1)参与者
Figure BDA0002783947590000096
Figure BDA0002783947590000097
并行地将秘密x1,x2,…,xn利用协议(2)从乘性形式转换为加性形式;
(5.2.2)剩余步骤和第一种情况一致;
(5.2.3)参与者
Figure BDA0002783947590000098
Figure BDA0002783947590000099
利用协议(3)将结果转换为乘性形式。
其中,在协议(6)中,输入为秘密x,y,输出为x·y。如果输入是被加性秘密分享技术所分享的,则具体步骤为:
(6.1.1)参与者在预处理阶段生成乘法三元组a,b,c,满足a·b=c,并对a,b,c进行加性秘密分享。参与者
Figure BDA00027839475900000910
持有a1,b1,c1,参与者
Figure BDA00027839475900000911
持有a2,b2,c2
(6.1.2)参与者
Figure BDA00027839475900000912
计算d1←x1-a1,e1←y1-b1
(6.1.3)参与者
Figure BDA00027839475900000913
计算d2←x2-a2,e2←y2-b2
(6.1.4)参与者
Figure BDA00027839475900000914
Figure BDA00027839475900000915
公开秘密d,e;
(6.1.5)参与者
Figure BDA00027839475900000916
计算f1←c1+d·b1+e·a1
(6.1.6)参与者
Figure BDA00027839475900000917
计算f2←c2+d·b2+e·a2+e·d。
如果输入是被乘性秘密分享技术所分享的,则具体步骤为:
(6.2.1)参与者
Figure BDA00027839475900000918
计算f1←x1·y1
(6.2.2)参与者
Figure BDA00027839475900000919
计算f2←x2·y2
其中,在协议(7)中,输入为秘密x,输出为ax,其中底数a为公开数。如果输入是被加性秘密分享技术所分享的,则具体步骤为:
(7.1.1)参与者
Figure BDA00027839475900000920
计算
Figure BDA00027839475900000921
(7.1.2)参与者
Figure BDA00027839475900000922
计算
Figure BDA00027839475900000923
(7.1.3)参与者
Figure BDA0002783947590000101
Figure BDA0002783947590000102
利用协议(2)将秘密f从乘性形式转换为加性形式。
如果输入是被乘性秘密分享技术所分享的,则具体步骤为:
(7.2.1)参与者
Figure BDA0002783947590000103
Figure BDA0002783947590000104
利用协议(2)将秘密x从乘性形式转换为加性形式。
(7.2.2)参与者
Figure BDA0002783947590000105
计算
Figure BDA0002783947590000106
(7.2.3)参与者
Figure BDA0002783947590000107
计算
Figure BDA0002783947590000108
其中,在协议(8)中,输入为秘密x,输出为loga|x|,其中底数a为公开数。如果输入是被加性秘密分享技术所分享的,则具体步骤为:
(8.1.1)参与者
Figure BDA0002783947590000109
Figure BDA00027839475900001010
利用协议(3)将秘密x从加性形式转换为乘性形式;
(8.1.2)参与者
Figure BDA00027839475900001011
计算f1←loga|x1|;
(8.1.3)参与者
Figure BDA00027839475900001012
计算f2←loga|x2|。
如果输入是被乘性秘密分享技术所分享的,则具体步骤为:
(8.1.1)参与者
Figure BDA00027839475900001013
计算f1←loga|x1|;
(8.1.2)参与者
Figure BDA00027839475900001014
计算f2←loga|x2|;
(8.1.3)参与者
Figure BDA00027839475900001015
Figure BDA00027839475900001016
利用协议(3)将秘密f从加性形式转换为乘性形式。
其中,在协议(9)中,输入为n个秘密x1,x2,…,xn和其公开的指数α12,…,αn,输出为
Figure BDA00027839475900001017
如果输入是被加性秘密分享技术所分享的,则具体步骤为:
(9.1.1)参与者
Figure BDA00027839475900001018
Figure BDA00027839475900001019
利用协议(3)将秘密x1,x2,…,xn并行地从加性形式转换为乘性形式;
(9.1.2)参与者
Figure BDA00027839475900001020
计算
Figure BDA00027839475900001021
(9.1.3)参与者
Figure BDA00027839475900001022
计算
Figure BDA00027839475900001023
(9.1.4)参与者
Figure BDA00027839475900001024
Figure BDA00027839475900001025
利用协议(2)将秘密f从乘性形式转换为加性形式。
如果输入是被乘性秘密分享技术所分享的,则具体步骤为:
(9.2.1)参与者
Figure BDA00027839475900001026
计算
Figure BDA00027839475900001027
(9.2.2)参与者
Figure BDA00027839475900001028
计算
Figure BDA00027839475900001029
其中,在协议(10)中,以sin函数为例,输入为秘密x,输出为sin(x)。如果秘密是被加性秘密分享技术所分享的,则具体步骤为:
(10.1.1)参与者
Figure BDA0002783947590000111
计算m1←sinx1,n1←cosx1
(10.1.2)参与者
Figure BDA0002783947590000112
计算n2←sinx2,m2←cosx2
(10.1.3)参与者
Figure BDA0002783947590000113
Figure BDA0002783947590000114
利用协议(2)将秘密m,n并行地从乘性形式转换为加性形式。
(10.1.4)参与者
Figure BDA0002783947590000115
计算f1←m1+n1
(10.1.5)参与者
Figure BDA0002783947590000116
计算f2←m2+n2
如果秘密是被乘性秘密分享技术所分享的,则具体步骤为:
(10.2.1)参与者
Figure BDA0002783947590000117
Figure BDA0002783947590000118
利用协议(2)将秘密x从乘性形式转换为加性形式;
(10.2.2)剩余步骤则和第一种情况一致;
(10.2.3)参与者
Figure BDA0002783947590000119
Figure BDA00027839475900001110
利用协议(3)将秘密f从加性形式转换为乘性形式。
其中,在协议(11)中,使用麦克劳林展开来计算反三角函数。以arcsin函数为例,输入为秘密x,输出为arcsin(x),该函数的麦克劳林展开:
Figure BDA00027839475900001111
如果秘密是被加性秘密分享技术所分享的,则具体步骤为:
(11.1.1)参与者
Figure BDA00027839475900001112
Figure BDA00027839475900001113
利用协议(9)并行地计算项
Figure BDA00027839475900001114
其中k∈[0,p],p为展开项数,p越大则精度越高;
(11.1.2)参与者
Figure BDA00027839475900001115
计算
Figure BDA00027839475900001116
(11.1.3)参与者
Figure BDA00027839475900001117
计算
Figure BDA00027839475900001118
如果秘密是被乘性秘密分享技术所分享的,则具体步骤为:
(11.2.1)参与者
Figure BDA00027839475900001119
计算项
Figure BDA00027839475900001120
其中k∈[0,p],p为展开项数;
(11.2.2)参与者
Figure BDA00027839475900001121
计算项
Figure BDA00027839475900001122
其中k∈[0,p],p为展开项数;
(11.2.3)参与者
Figure BDA00027839475900001123
Figure BDA00027839475900001124
利用协议(5)计算
Figure BDA00027839475900001125
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
需要说明的是,本申请实施例所涉及的术语“第一\第二\第三”仅仅是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序。应该理解“第一\第二\第三”区分的对象在适当情况下可以互换,以使这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
本申请实施例的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或模块的过程、方法、装置、产品或设备没有限定于已列出的步骤或模块,而是可选地还包括没有列出的步骤或模块,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或模块。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (2)

1.一种基于秘密分享的隐私保护计算方法,其特征在于,
所述隐私保护计算方法包括加性秘密分享方式和乘性秘密分享方式;
所述隐私保护计算方法包括安全乘性-加性重分享协议、安全加性-乘性重分享协议、安全比较协议、安全线性计算协议、安全乘法协议、安全指数协议、安全对数协议、安全幂协议、安全三角函数协议和安全反三角函数协议;其中:
(1)所述安全乘性-加性重分享协议的输入为:被乘性秘密分享的秘密u,输出为被加性秘密分享的秘密x,且满足x=u;
乘性-加性重分享协议的具体步骤包括:
预处理阶段:参与者
Figure FDA0003861202970000011
Figure FDA0003861202970000012
随机生成乘法三元组a,b,c,满足a·b=c,其中,a、b和c为随机数,所述参与者
Figure FDA0003861202970000013
Figure FDA0003861202970000014
对c进行加性秘密分享,且经过所述预处理操作后,所述参与者
Figure FDA0003861202970000015
持有a和c1,所述参与者
Figure FDA0003861202970000016
持有b和c2,其中,c1和c2为所述参与者
Figure FDA0003861202970000017
Figure FDA0003861202970000018
对所述秘密c的两个分享;
执行阶段:所述参与者
Figure FDA0003861202970000019
计算d←u1-a;所述参与者
Figure FDA00038612029700000110
计算e←u2-b;所述参与者
Figure FDA00038612029700000111
将d发送给参与者
Figure FDA00038612029700000112
所述参与者
Figure FDA00038612029700000113
将e发送给参与者
Figure FDA00038612029700000114
所述参与者
Figure FDA00038612029700000115
计算x1←c1-e·a;所述参与者
Figure FDA00038612029700000116
计算x2←c2-d·b+e·d;其中,d和e为中间变量,u1和u2为所述参与者
Figure FDA00038612029700000117
Figure FDA00038612029700000118
对所述秘密u的两个分享,x1和x2为所述参与者
Figure FDA00038612029700000119
Figure FDA00038612029700000120
对所述秘密x的两个分享;
(2)所述安全加性-乘性重分享协议的输入为:被加性秘密分享的秘密x,输出为:被乘性秘密分享的秘密u,且满足u=x;
所述安全加性-乘性重分享协议的具体步骤包括:
预处理阶段:参与者
Figure FDA00038612029700000121
Figure FDA00038612029700000122
随机生成乘法三元组a,b,c,满足a·b=c,其中,a、b和c为随机数,所述参与者
Figure FDA00038612029700000123
Figure FDA00038612029700000124
对c进行加性秘密分享,且经过所述预处理操作后,所述参与者
Figure FDA00038612029700000125
持有a和c1,参与者
Figure FDA00038612029700000126
持有b和c2
执行阶段:所述参与者
Figure FDA00038612029700000127
计算e←(x1-c1)/a;所述参与者
Figure FDA00038612029700000128
将e发送给所述参与者
Figure FDA00038612029700000129
所述参与者
Figure FDA00038612029700000130
计算u2←e+b,d←(x2-c2)/u2;所述参与者
Figure FDA00038612029700000131
将d发送给参与者
Figure FDA00038612029700000132
所述参与者
Figure FDA00038612029700000133
计算u1←d+a;
其中,x1和x2为参与者
Figure FDA00038612029700000134
Figure FDA00038612029700000135
对秘密x的两个分享,y1和y2为参与者
Figure FDA00038612029700000136
Figure FDA00038612029700000137
对秘密y的两个分享;
(3)所述安全比较协议包括两种情形:
情形一:输入为被加性秘密分享的秘密x和y时,所述安全比较协议的具体步骤包括:参与者
Figure FDA0003861202970000021
计算d1←x1-y1;参与者
Figure FDA0003861202970000022
计算d2←x2-y2;参与者
Figure FDA0003861202970000023
Figure FDA0003861202970000024
利用所述安全加性-乘性重分享协议将秘密d从加性形式转换为乘性形式;参与者
Figure FDA0003861202970000025
Figure FDA0003861202970000026
公开所述秘密d的乘性分享的符号;参与者
Figure FDA0003861202970000027
Figure FDA0003861202970000028
根据上述步骤公开的符号判断所述秘密x和y的大小;其中,d1和d2为参与者
Figure FDA0003861202970000029
Figure FDA00038612029700000210
对所述秘密d的两个分享;
情形二:输入为被乘性秘密分享秘密x和y时,所述安全比较协议的具体步骤包括:
参与者
Figure FDA00038612029700000211
计算d1←x1-y1;参与者
Figure FDA00038612029700000212
计算d2←x2-y2;参与者
Figure FDA00038612029700000213
Figure FDA00038612029700000214
利用所述安全乘性-加性重分享协议将秘密d从乘性形式转换为加性形式;参与者
Figure FDA00038612029700000215
Figure FDA00038612029700000216
公开所述秘密d的乘性分享的符号;参与者
Figure FDA00038612029700000217
Figure FDA00038612029700000218
根据上述步骤公开的符号判断所述秘密x和y的大小;
(4)所述安全线性计算协议的输入为:n个秘密x1,x2,...,xn、n个所述秘密对应的公开系数a1,a2,...,an和一个公开偏置b,所述安全线性计算协议的输出为:
Figure FDA00038612029700000219
其中,j=1,2,...,n,aj表示公开系数a1,a2,...,an,xj表示秘密x1,x2,...,xn
所述安全线性计算协议包括两种情形:
情形一:输入为被加性秘密分享的秘密xj时,所述安全线性计算协议的具体步骤包括:
所述参与者
Figure FDA00038612029700000220
计算
Figure FDA00038612029700000221
所述参与者
Figure FDA00038612029700000222
计算
Figure FDA00038612029700000223
其中,n=2,f1和f2表示所述参与者
Figure FDA00038612029700000224
Figure FDA00038612029700000225
对所述安全线性计算协议输出结果的两个分享,
Figure FDA00038612029700000226
表示所述参与者
Figure FDA00038612029700000227
对所述秘密xj的分享,
Figure FDA00038612029700000228
表示所述参与者
Figure FDA00038612029700000229
对所述秘密xj的分享;
情形二:输入为被乘性秘密分享的秘密xj时,所述安全线性计算协议的具体步骤包括:
所述参与者
Figure FDA00038612029700000230
Figure FDA00038612029700000231
并行地将所述秘密xj利用所述安全乘性-加性重分享协议从乘性形式转换为加性形式;所述参与者
Figure FDA00038612029700000232
计算
Figure FDA00038612029700000233
所述参与者
Figure FDA00038612029700000234
计算
Figure FDA00038612029700000235
Figure FDA00038612029700000236
所述参与者
Figure FDA00038612029700000237
Figure FDA00038612029700000238
利用所述安全加性-乘性重分享协议将输出结果转换为乘性形式;
(5)所述安全乘法协议包括两种情形:
情形一:输入为被加性秘密分享的秘密x和y时,所述安全乘法协议的具体步骤包括:
预处理阶段:参与者
Figure FDA0003861202970000031
Figure FDA0003861202970000032
随机生成乘法三元组a,b,c,满足a·b=c,其中,a、b和c为随机数,所述参与者
Figure FDA0003861202970000033
Figure FDA0003861202970000034
对a,b和c分别进行加性秘密分享,且经过所述预处理操作后,所述参与者
Figure FDA0003861202970000035
持有a1,b1和c1,所述参与者
Figure FDA0003861202970000036
持有a2,b2和c2,其中,a1和a2为所述参与者
Figure FDA0003861202970000037
Figure FDA0003861202970000038
对所述秘密a的两个分享,b1和b2为所述参与者
Figure FDA0003861202970000039
Figure FDA00038612029700000310
对所述秘密b的两个分享,c1和c2为所述参与者
Figure FDA00038612029700000311
Figure FDA00038612029700000312
对所述秘密c的两个分享;
执行阶段:所述参与者
Figure FDA00038612029700000313
计算d1←x1-a1,e1←y1-b1;所述参与者
Figure FDA00038612029700000314
计算d2←x2-a2,e2←y2-b2;所述参与者
Figure FDA00038612029700000315
Figure FDA00038612029700000316
公开秘密d,e;所述参与者
Figure FDA00038612029700000317
计算f1←c1+d·b1+e·a1;所述参与者
Figure FDA00038612029700000318
计算f2←c2+d·b2+e·a2+e·d;其中,d1和d2为所述参与者
Figure FDA00038612029700000319
Figure FDA00038612029700000320
对所述秘密d的两个分享,e1和e2为所述参与者
Figure FDA00038612029700000321
Figure FDA00038612029700000322
对所述秘密e的两个分享,f1和f2为所述参与者
Figure FDA00038612029700000323
Figure FDA00038612029700000324
对输出结果f的两个分享;
情形二:输入为被乘性秘密分享的秘密x和y时,所述安全乘法协议的具体步骤包括:所述参与者
Figure FDA00038612029700000325
计算f1←x1·y1;所述参与者
Figure FDA00038612029700000326
计算f2←x2·y2
(6)所述安全指数协议包括两种情形:
情形一:输入为被加性秘密分享的秘密x时,所述安全指数协议的具体步骤包括:
所述参与者
Figure FDA00038612029700000327
计算
Figure FDA00038612029700000328
所述参与者
Figure FDA00038612029700000329
计算
Figure FDA00038612029700000330
所述参与者
Figure FDA00038612029700000331
Figure FDA00038612029700000332
利用所述安全乘性-加性重分享协议将秘密f从乘性形式转换为加性形式;其中,f1和f2为所述参与者
Figure FDA00038612029700000333
Figure FDA00038612029700000334
对所述秘密f的两个分享,底数a是公开数,x1和x2为所述参与者
Figure FDA00038612029700000335
Figure FDA00038612029700000336
对所述秘密x的两个分享;
情形二:输入为被乘性秘密分享的秘密x时,所述安全指数协议的具体步骤包括:
所述参与者
Figure FDA00038612029700000337
Figure FDA00038612029700000338
利用所述安全乘性-加性重分享协议将所述秘密x从乘性形式转换为加性形式;所述参与者
Figure FDA00038612029700000339
计算
Figure FDA00038612029700000340
所述参与者
Figure FDA00038612029700000341
计算
Figure FDA00038612029700000342
(7)所述安全对数协议包括两种情形:
情形一:输入为被加性秘密分享的秘密x时,所述安全对数协议具体步骤包括:
所述参与者
Figure FDA00038612029700000343
Figure FDA00038612029700000344
利用所述安全加性-乘性重分享协议将所述秘密x从加性形式转换为乘性形式;所述参与者
Figure FDA00038612029700000345
计算f1←loga|x1|;所述参与者
Figure FDA00038612029700000346
计算f2←loga|x2|;
情形二:输入为被乘性秘密分享的秘密x时,所述安全对数协议具体步骤包括:
所述参与者
Figure FDA0003861202970000041
计算f1←loga|x1|;所述参与者
Figure FDA0003861202970000042
计算f2←loga|x2|;所述参与者
Figure FDA0003861202970000043
Figure FDA0003861202970000044
利用所述安全加性-乘性重分享协议将秘密f从加性形式转换为乘性形式;其中,f1和f2为所述参与者
Figure FDA0003861202970000045
Figure FDA0003861202970000046
对所述秘密f的两个分享,底数a是公开数,x1和x2为所述参与者
Figure FDA0003861202970000047
Figure FDA0003861202970000048
对所述秘密x的两个分享;
(8)所述安全幂协议包括两种情形:
情形一:输入为被加性秘密分享的n个秘密x1,x2,...,xn时,所述安全幂协议具体步骤包括:
所述参与者
Figure FDA0003861202970000049
Figure FDA00038612029700000410
利用所述安全加性-乘性重分享协议将所述秘密x1,x2,...,xn并行地从加性形式转换为乘性形式;所述参与者
Figure FDA00038612029700000411
计算
Figure FDA00038612029700000412
所述参与者
Figure FDA00038612029700000413
计算
Figure FDA00038612029700000414
所述参与者
Figure FDA00038612029700000415
Figure FDA00038612029700000416
利用所述安全乘性-加性重分享协议将上述步骤输出结果秘密f从乘性形式转换为加性形式;其中,n=2,f1和f2表示所述参与者
Figure FDA00038612029700000417
Figure FDA00038612029700000418
各自对输出秘密f的分享,α1,α2,...,αn表示公开指数,j=1,...,n,
Figure FDA00038612029700000419
表示所述参与者
Figure FDA00038612029700000420
对第j个秘密xj的分享,
Figure FDA00038612029700000421
表示所述参与者
Figure FDA00038612029700000422
对第j个秘密xj的分享;
情形二:输入为被乘性秘密分享的n个秘密x1,x2,...,xn时,所述安全幂协议具体步骤包括:
所述参与者
Figure FDA00038612029700000423
计算
Figure FDA00038612029700000424
所述参与者
Figure FDA00038612029700000425
计算
Figure FDA00038612029700000426
(9)所述安全三角函数协议包括两种情形:
情形一:输入为被加性秘密分享的秘密x时,所述安全三角函数协议的具体步骤包括:
所述参与者
Figure FDA00038612029700000427
计算m1←sinx1,n1←cosx1;所述参与者
Figure FDA00038612029700000428
计算n2←sinx2,m2←cosx2;所述参与者
Figure FDA00038612029700000429
Figure FDA00038612029700000430
利用所述安全乘性-加性重分享协议将输出的秘密m和秘密n并行地从乘性形式转换为加性形式;所述参与者
Figure FDA00038612029700000431
计算f1←m1+n1;所述参与者
Figure FDA00038612029700000432
计算f2←m2+n2;其中,m1和n1表示所述参与者
Figure FDA00038612029700000433
对输出的秘密m和n的分享,m2和n2表示参与者
Figure FDA00038612029700000434
对输出的秘密m和n的分享,x1和x2表示所述参与者
Figure FDA00038612029700000435
Figure FDA00038612029700000436
对所述秘密x的两个分享,f1和f2表示所述参与者
Figure FDA0003861202970000051
Figure FDA0003861202970000052
对输出结果秘密f的两个分享;
情形二:输入为被乘性秘密分享的秘密x时,所述安全三角函数协议的具体步骤包括:
所述参与者
Figure FDA0003861202970000053
Figure FDA0003861202970000054
利用所述安全乘性-加性重分享协议将所述秘密x从乘性形式转换为加性形式;所述参与者
Figure FDA0003861202970000055
计算m1←sinx1,n1←cosx1;所述参与者
Figure FDA0003861202970000056
计算n2←sinx2,m2←cosx2;所述参与者
Figure FDA0003861202970000057
Figure FDA0003861202970000058
利用所述安全乘性-加性重分享协议将输出的秘密m和秘密n并行地从乘性形式转换为加性形式;所述参与者
Figure FDA0003861202970000059
计算f1←m1+n1;所述参与者
Figure FDA00038612029700000510
计算f2←m2+n2;所述参与者
Figure FDA00038612029700000511
Figure FDA00038612029700000512
利用所述安全加性-乘性重分享协议将秘密f从加性形式转换为乘性形式;
(10)所述安全反三角函数协议包括两种情形:
情形一:输入为被加性秘密分享的秘密x时,所述安全反三角函数协议的具体步骤包括:
所述参与者
Figure FDA00038612029700000513
Figure FDA00038612029700000514
利用所述安全幂协议并行地计算项
Figure FDA00038612029700000515
所述参与者
Figure FDA00038612029700000516
计算
Figure FDA00038612029700000517
所述参与者
Figure FDA00038612029700000518
计算
Figure FDA00038612029700000519
其中,p为展开项数,k∈[0,p],tk1表示所述参与者
Figure FDA00038612029700000520
对所述项tk的分享,tk2表示所述参与者
Figure FDA00038612029700000521
对所述项tk的分享,f1和f2表示所述参与者
Figure FDA00038612029700000522
Figure FDA00038612029700000523
对输出秘密f的两个分享;
情形二:输入为被乘性秘密分享的秘密x时,所述安全反三角函数协议的具体步骤包括:
所述参与者
Figure FDA00038612029700000524
计算项
Figure FDA00038612029700000525
所述参与者
Figure FDA00038612029700000526
计算项
Figure FDA00038612029700000527
Figure FDA00038612029700000528
所述参与者
Figure FDA00038612029700000529
Figure FDA00038612029700000530
利用所述安全线性计算协议计算
Figure FDA00038612029700000531
2.根据权利要求1所述的基于秘密分享的隐私保护计算方法,其特征在于,
所述加性秘密分享方式:秘密发布者
Figure FDA00038612029700000532
将待分享的秘密s随机分成n份分享si,所述n份分享si满足:
Figure FDA00038612029700000533
其中,n为正整数,i=1,2,3...n;所述秘密发布者
Figure FDA00038612029700000534
将所述n份分享si分别发送给对应的n个参与者
Figure FDA0003861202970000061
所述的n个参与者
Figure FDA0003861202970000062
将各自的分享si通过累加的方式能够恢复秘密s;
所述乘性秘密分享方式:秘密发布者
Figure FDA0003861202970000063
将待分享的秘密s随机分成n份分享si,所述n份分享si满足:
Figure FDA0003861202970000064
所述秘密发布者
Figure FDA0003861202970000065
将所述n份分享si分别发送给对应的n个参与者
Figure FDA0003861202970000066
所述的n个参与者
Figure FDA0003861202970000067
将各自的分享si通过累乘的方式能够恢复秘密s。
CN202011291344.4A 2020-11-18 2020-11-18 一种基于秘密分享的隐私保护计算方法 Active CN112532383B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011291344.4A CN112532383B (zh) 2020-11-18 2020-11-18 一种基于秘密分享的隐私保护计算方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011291344.4A CN112532383B (zh) 2020-11-18 2020-11-18 一种基于秘密分享的隐私保护计算方法

Publications (2)

Publication Number Publication Date
CN112532383A CN112532383A (zh) 2021-03-19
CN112532383B true CN112532383B (zh) 2023-01-17

Family

ID=74981138

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011291344.4A Active CN112532383B (zh) 2020-11-18 2020-11-18 一种基于秘密分享的隐私保护计算方法

Country Status (1)

Country Link
CN (1) CN112532383B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113535122B (zh) * 2021-06-24 2022-03-18 复旦大学 基于秘密分享协议的安全高效数学对数计算的优化方法
CN114944935A (zh) * 2022-04-24 2022-08-26 华控清交信息科技(北京)有限公司 一种多方融合计算系统、多方融合计算方法和可读存储介质
CN115225264A (zh) * 2022-06-17 2022-10-21 上海富数科技有限公司广州分公司 一种安全多方计算方法、装置、电子设备及存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210167946A1 (en) * 2018-04-17 2021-06-03 B. G. Negev Technologies & Applications Ltd., At Ben-Gurion One-Round Secure Multiparty Computation of Arithmetic Streams and Evaluation of Functions
US11201734B2 (en) * 2018-06-04 2021-12-14 Robert Bosch Gmbh Method and system for fault tolerant and secure multiparty computation with SPDZ
CN110213231B (zh) * 2019-04-26 2021-11-30 西安电子科技大学 一种面向sgx的轻量级的外包数据访问控制方法及控制系统
CN111783130B (zh) * 2020-09-04 2021-01-29 支付宝(杭州)信息技术有限公司 隐私保护的数据处理方法、装置及服务器

Also Published As

Publication number Publication date
CN112532383A (zh) 2021-03-19

Similar Documents

Publication Publication Date Title
CN112532383B (zh) 一种基于秘密分享的隐私保护计算方法
Li et al. Privacy-preserving machine learning with multiple data providers
CN107196926B (zh) 一种云外包隐私集合比较方法与装置
CN110084063B (zh) 一种保护隐私数据的梯度下降计算方法
WO2015080896A1 (en) Server-aided private set intersection (psi) with data transfer
CN112822005A (zh) 基于同态加密的安全迁移学习系统
CN113434898B (zh) 一种非交互式的隐私保护逻辑回归联邦训练方法及系统
CN114154554A (zh) 一种基于非共谋双云服务器的隐私保护外包数据knn算法
CN117118617B (zh) 一种基于模分量同态的分布式门限加解密方法
CN115189878A (zh) 一种基于秘密分享的共享数据排序方法及电子设备
CN116561787A (zh) 视觉图像分类模型的训练方法、装置及电子设备
Zhao et al. SGBoost: An efficient and privacy-preserving vertical federated tree boosting framework
CN113780552A (zh) 一种双向隐私保护的安全多方计算方法
CN117353912A (zh) 基于双线性映射的三方隐私集合交集基数计算方法及系统
CN115510502B (zh) 一种隐私保护的pca方法及系统
CN115150055B (zh) 一种基于同态加密的隐私保护岭回归方法
CN114358323A (zh) 联邦学习环境中基于第三方高效皮尔森系数计算方法
CN109543451A (zh) 一种基于模分量同态的隐私保护处理方法
CN114465708A (zh) 隐私数据处理方法及装置、系统、电子设备、存储介质
Liu et al. Secure and verifiable outsourcing protocol for non-negative matrix factorisation
CN115001651A (zh) 适用于半诚实模型下基于全同态加密的多方计算方法
Jin et al. Towards end-to-end secure and efficient federated learning for xgboost
Trung et al. Design a cryptosystem using elliptic curves cryptography and Vigenère symmetry key
Rao et al. Secure and practical outsourcing of linear programming in cloud computing: A survey
Nikishova et al. Cryptographic Protection of Data Transmission Channel

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