CN113535122B - 基于秘密分享协议的安全高效数学对数计算的优化方法 - Google Patents
基于秘密分享协议的安全高效数学对数计算的优化方法 Download PDFInfo
- Publication number
- CN113535122B CN113535122B CN202110700522.2A CN202110700522A CN113535122B CN 113535122 B CN113535122 B CN 113535122B CN 202110700522 A CN202110700522 A CN 202110700522A CN 113535122 B CN113535122 B CN 113535122B
- Authority
- CN
- China
- Prior art keywords
- protocol
- calculation
- secret sharing
- log
- optimization method
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/544—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
- G06F7/556—Logarithmic or exponential functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Pure & Applied Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Mathematical Optimization (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Computer And Data Communications (AREA)
- Complex Calculations (AREA)
Abstract
本发明属于网络空间安全技术领域,具体为一种基于秘密分享协议的安全高效数学对数计算协议的优化方法。本发明基本步骤为:首先依据BGW秘密分享协议编码计算数据,将明文数据加密成不同的分享,在此基础上使用线性拟合和位运算的方法,对数学对数计算进行近似,定义更为高效并且更加精准的计算协议;结合线下预计算和在线通信交互,依据上述协议进行函数计算,并输出最终的计算结果。本发明的优点在于:基于BGW协议进行设计实现,具备良好的扩展性,支持任意多个计算方联合计算;优化设计的计算协议能够以更高的准确度线性近似对数计算,同时保证输入的隐私安全。
Description
技术领域
本发明属于网络空间安全技术领域,具体涉及一种基于秘密分享协议的安全高效数学对数函数计算的优化方法。
背景技术
Shamir秘密共享[2]是安全多方计算(MPC:Secure Multi-Party Computation)[1]中核心的底层协议之一,其中心思想在于通过把秘密进行分割,并把秘密在所有n个参与者中分享,使得只有多于特定个数t的参与者合作才可以计算出或是恢复秘密。简单来说,其允许多个数据所有者在互不信任的情况下进行协同计算,输出计算结果,并保证任何一方均无法得到除应得的计算结果之外的其他任何信息。Shamir秘密共享是基于多项式插值算法设计的,假设一个有限域Fp,秘密s∈Fp,其中s<p且p为素数,在域中随机选择t个元素记为a1,...,at,令a0=s,通过这些元素可以构建多项式f(x)=a0+a1x+a2x2+...+atxt,并生成n个点{i,f(i)|i=1,...,n},将这些点相应地分发给每一方,每一个点就称为秘密s的一个秘密分享,记为[s],这样给定任何n个秘密分享中t+1的子集,就可以通过拉格朗日插值法求解多项式f(x)的系数最终重构秘密s。
而BGW协议[3]是一个基于Shamir秘密共享,支持三个及以上参与方的安全计算协议。它提供在有限域中的加法,乘法等线性运算的方案。由多项式的性质可知,两个秘密之间的加法,以及与常数的乘法,都可以在本地直接进行运算:假设秘密s1,s2分别由t阶多项式f(x)和g(x)进行秘密分享,那么各参与方只需要直接将各自持有的f(i)和g(i)相加,就可以得到s1+s2的秘密分享;相似地,要计算秘密s1与常数a的乘法,只需在本地将f(i)与a相乘,那么a*f(i)即为a*f(i)的秘密分享。
除此之外,BGW协议还提供了两个秘密值相乘的解决方法。假设要计算s1*s2的秘密分享,首先所有参与方各自计算h(i)=f(i)*g(i)。可以知道,{i,h(i)|i=1,...,n}为多项式h(x)=f(x)*g(x)上的点,其中h(x)为2t阶的多项式且h(0)=s1*s2。由于BGW秘密共享的要求是给定任意t+1个秘密分享都能重新计算出多项式的系数并重构被分享的秘密,显然2t阶的多项式不满足这一要求,因此接下来还需要对多项式h(x)进行降阶操作得到t阶多项式h′(x),并保证h′(x)常数项仍为s1*s2。
假设向量S=(h(i),...,h(n)),R=(h′(i),...,h′(n)),要将S转换为R还需要执行一系列操作。假设矩阵B为n×n维的范德蒙矩阵,T是一个n×n维的对角矩阵,其中对于i=j≤t,T(i,j)=1,其余的T(i,j)=0。基于以上条件,可以推算出R=BTB-1S,由此就完成了降阶操作。这样,只需经过有限次线性运算,2t阶的多项式就可以被降为t阶的多项式,从而也就完成了两个秘密的乘法运算。
发明内容
本发明的目的在于提供基于BGW秘密分享协议的安全高效的对数函数计算的优化方法。
本发明提供的基于BGW秘密分享协议的安全高效的对数函数计算的优化方法,利用线性拟合和位运算,对非线性对数计算提供高精度的近似计算。具体地,给定密文输入[x],输出密文[y],其计算过程可以公式化地表示为[y]←log2([x])。这里,我们考虑以定点数统一编码计算数据,使用k个比特表示数据,同时以小数点后固定f比特位数表示精度2-f。
(1)首先,观察到可以将x∈[2m-1,2m-1]转换得到x=x′*2exp,其中x′∈[1,2),因此根据对数函数计算的性质,我们可以得到log2(x)=log2(x′)+exp;
(2)其次,为了计算非线性函数log2(x′),使用多项式线性拟合的方式,采用一个二阶的多项式f(x)=a0+a1x+a2x2对[1,2)区间的log(x)函数进行拟合。由于log函数在此区间上能够以一个较低阶的多项式较为准确地拟合,因此可以节省高阶函数计算所带来的多次乘法的开销。
基于上述两点,可以通过以下步骤得到x′和exp:
(5)计算x′*2f=b*x/2k-f-2∈[2f,2f+1-1],其中x′∈[1,2);
(6)将上述x′代入在[1,2)区间上log(x)函数拟合的f(x)中进行计算,可得y=f(x′)+exp。
本发明中,基于线性拟合和位运算的非线性对数高精度近似计算,将非线性的对数计算通过线性拟合的方式转化为线性多项式计算,其中关键是将输入数据进行变换,将拟合区间缩减到[1,2),因此可以使用一个低阶的多项式(2阶)拟合达到较高的准确率,减少所需乘法导致的开销,参见表1。
表1
协议 | 通信回合数 | 通信量大小 |
对数计算(Log) | 7 | 4k |
本发明中,计算协议输入的密文即为秘密分享。持有隐私数据的n个参与方将在执行计算前,基于BGW秘密共享协议将隐私数据拆分成n份发送给其余参与方。
本发明中,定点数都会被映射到域中进行运算。映射构造过程如下:假设为有理数域Q<k,f>中的有理数,其中k表示的比特位数,f为小数点后的精度。需要将映射到整数域,令则可以得到Q<k,f>→Z<k>的映射;接着对进行模运算,使得则完成了Z<k>→Fp的映射,其中p为域Fp的大小且p>2k。上述协议中的所有运算都是在域Fp上完成的。
本发明中,采用的安全模型的是半诚实敌手模型,即假设各敌手不会偏离规定的协议,但会尝试收集和推导其收到的中间信息。
本发明中,若t<n/2,则此协议可以保证信息论安全,此结论在BGW协议的证明中可以得到。
本发明提供的基于BGW秘密分享协议的对数函数计算的优化方法,能够高效地计算出计算结果:
(1)对数函数计算协议通过变换输入数据,将x∈[2m-1,2m-1]转换得到x=x′*2exp,从而使拟合区间缩减到[1,2),因此可以用一个低阶的多项式(2阶)拟合log函数达到较高的准确率,同时减少所需乘法导致的开销;
(2)采用位分解和位运算的方式,在没有x明文信息的情况下,以秘密分享形式得到x的最高位;同时在此基础上,得到转换后的x′,使其值属于区间[1,2)。
附图说明
图1为参与方共同进行对数函数计算的流程。
具体实施方式
下面结合附图详细描述本发明。
(1)首先各参与方将自己手中所持有的隐私数据通过上文提到的秘密分享的方法,交互分享给其余参与方,这样每个参与方都将会持有隐私数据的秘密分享。后续将在此基础上执行计算,以达到保护数据隐私的目的。此外,在计算过程中,我们考虑以定点数统一编码计算数据,使用k表示数据的比特位数,f表示小数固定的精度。
(2)各参与方执行对数函数计算协议时,则执行以下步骤:
v.计算b*[x]/2k-f-2。因为b*[x]∈[2k-2,2k-1-1],所以[x′]*2f=b*[x]/2k-f-2∈[2f,2f+1-1],在此调用Div2mP协议对b*[x]的后k-f-2位个比特进行截断,即[x′]=Div2mP(b*[x],k,k-f-2)。可以推得[x]=[x′]*2exp,其中[x′]∈[1,2)。
vi.计算最终结果[y]=Appro([x′])+exp*Trank,f(1),其中Appro表示对[1,2)区间的log(x)的拟合函数,Trank,f(1)表示2f,即可得到[y]=log2[x]。
算法伪代码见附件。
附件:
安全对数计算协议
参考文献
[1]A.C.Yao,"Protocols for secure computations,"23rd Annual Symposiumon Foundations of Computer Science(sfcs 1982),1982,pp.160-164.
[2]Shamir,A.(1979).How to share a secret.Communications of the ACM,22(11),612-613.
[3]Ben-Or,M.,Goldwasser,S.,&Wigderson,A.(2019).Completeness theoremsfor non-cryptographic fault-tolerant distributed computation.In ProvidingSound Foundations for Cryptography:On the Work of Shafi Goldwasser and SilvioMicali(pp.351-371)。
Claims (3)
1.一种基于BGW秘密分享协议的安全高效的对数计算的优化方法,其特征在于,利用线性拟合和位运算,对非线性对数计算提供高精度的近似计算;具体地,给定密文输入[x],输出密文[y],其计算过程公式化地表示为[y]←log2([x]);考虑以定点数统一编码计算数据,使用k个比特表示数据,同时以小数点后固定f比特位数表示精度2-f;
(1)首先,观察到可以将x∈[2m-1,2m-1]转换得到x=x′*2exp,其中x′∈[1,2),根据对数函数计算的性质,得到log2(x)=log2(x′)+exp;
(2)其次,为了计算非线性函数log2(x′),使用多项式线性拟合的方式,采用一个二阶的多项式f(x)=a0+a1x+a2x2对[1,2)区间的log(x)函数进行拟合;
于是通过以下步骤得到x′和exp:
(5)计算x′*2f=b*x/2k-f-2∈[2f,2f+1-1],其中x′∈[1,2);
(6)将上述x′代入在[1,2)区间上log(x)函数拟合的f(x)中进行计算,得y=f(x′)+exp。
2.根据权利要求1所述的优化方法,其特征在于,输入的密文即为秘密分享;持有隐私数据的n个参与方将在执行计算前,基于BGW秘密共享协议将隐私数据拆分成n份发送给其余参与方。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110700522.2A CN113535122B (zh) | 2021-06-24 | 2021-06-24 | 基于秘密分享协议的安全高效数学对数计算的优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110700522.2A CN113535122B (zh) | 2021-06-24 | 2021-06-24 | 基于秘密分享协议的安全高效数学对数计算的优化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113535122A CN113535122A (zh) | 2021-10-22 |
CN113535122B true CN113535122B (zh) | 2022-03-18 |
Family
ID=78096560
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110700522.2A Active CN113535122B (zh) | 2021-06-24 | 2021-06-24 | 基于秘密分享协议的安全高效数学对数计算的优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113535122B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114422116B (zh) * | 2021-12-14 | 2023-11-28 | 阿里巴巴(中国)有限公司 | 数据处理方法及装置 |
CN114494803B (zh) * | 2022-04-18 | 2022-07-05 | 山东师范大学 | 基于安全计算的图像数据标注方法及系统 |
CN116070282B (zh) * | 2023-04-04 | 2023-06-16 | 华控清交信息科技(北京)有限公司 | 一种隐私计算中的数据处理方法、装置及电子设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111857649A (zh) * | 2020-06-22 | 2020-10-30 | 复旦大学 | 一种用于隐私保护机器学习的定点数编码及运算系统 |
CN112532383A (zh) * | 2020-11-18 | 2021-03-19 | 南京信息工程大学 | 一种基于秘密分享的隐私保护计算方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210135855A1 (en) * | 2019-10-30 | 2021-05-06 | EMC IP Holding Company LLC | Threshold-Based Override of Data Privacy Using Distributed Ledgers and Key Shares |
-
2021
- 2021-06-24 CN CN202110700522.2A patent/CN113535122B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111857649A (zh) * | 2020-06-22 | 2020-10-30 | 复旦大学 | 一种用于隐私保护机器学习的定点数编码及运算系统 |
CN112532383A (zh) * | 2020-11-18 | 2021-03-19 | 南京信息工程大学 | 一种基于秘密分享的隐私保护计算方法 |
Non-Patent Citations (1)
Title |
---|
一个安全两方共享秘密的乘法协议;荆巍巍等;《小型微型计算机系统》;20090315(第03期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113535122A (zh) | 2021-10-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113535122B (zh) | 基于秘密分享协议的安全高效数学对数计算的优化方法 | |
JP5297688B2 (ja) | ベクトル秘匿型内積計算システム、ベクトル秘匿型内積計算方法及び暗号鍵共有システム | |
US10003460B2 (en) | Secret quotient transfer device, secret bit decomposition device, secret modulus conversion device, secret quotient transfer method, secret bit decomposition method, secret modulus conversion method, and programs therefor | |
CN109067538B (zh) | 安全协议方法、计算机设备及存储介质 | |
CN110147681B (zh) | 一种支持灵活访问控制的隐私保护大数据处理方法及系统 | |
US20040179686A1 (en) | Method of reconstructing a secret, shared secret reconstruction apparatus, and secret reconstruction system | |
CN111857649B (zh) | 一种用于隐私保护机器学习的定点数编码及运算系统 | |
CN106850183A (zh) | 一种全同态加密密文除法实现方法 | |
CN114817958B (zh) | 一种基于联邦学习的模型训练方法、装置、设备及介质 | |
WO2016155804A1 (en) | Method for verifying information | |
CN111368336B (zh) | 基于秘密共享的训练方法、装置、电子设备及存储介质 | |
US20110060901A1 (en) | Cryptographic System for Performing Secure Iterative Matrix Inversions and Solving Systems of Linear Equations | |
CN113158239B (zh) | 保护数据隐私的选择问题处理方法 | |
CN111783129A (zh) | 一种保护隐私的数据处理方法及系统 | |
Boruah et al. | Implementation of ElGamal Elliptic Curve Cryptography over prime field using C | |
CN112769542A (zh) | 基于椭圆曲线的乘法三元组生成方法、装置、设备及介质 | |
CN113535121B (zh) | 基于秘密分享协议的安全高效数学除法计算的优化方法 | |
Rao et al. | A New Modular Multiplication Method in Public Key Cryptosystem. | |
US20220069980A1 (en) | Information processing apparatus, secure computation method, and program | |
CN113434886B (zh) | 联合生成用于安全计算的数据元组的方法及装置 | |
Branco et al. | Multiparty cardinality testing for threshold private set intersection | |
Skuratovskii et al. | Criterions of supersinguliarity and groups of Montgomery and Edwards curves in cryptography | |
Pang et al. | A secure and efficient secret sharing scheme with general access structures | |
Rao et al. | A novel modular multiplication algorithm and its application to RSA decryption | |
CN110943828B (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 |