[發明專利]秘密數運算轉換方法及系統有效
| 申請號: | 201911070089.8 | 申請日: | 2019-11-05 |
| 公開(公告)號: | CN110943828B | 公開(公告)日: | 2021-01-08 |
| 發明(設計)人: | 龍毅宏 | 申請(專利權)人: | 武漢理工大學 |
| 主分類號: | H04L9/08 | 分類號: | H04L9/08;H04L9/00 |
| 代理公司: | 武漢開元知識產權代理有限公司 42104 | 代理人: | 劉琳 |
| 地址: | 430070 湖*** | 國省代碼: | 湖北;42 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 秘密 運算 轉換 方法 系統 | ||
1.一種秘密數相乘運算轉換為相加運算的方法,其特征是:
所述方法涉及第1裝置、第2裝置;
第1裝置有非0整數秘密b1,第2裝置有非0整數秘密b2;
兩個裝置按如下方式之一將b1與b2的相乘項,即b1b2,轉化為第1裝置在[1,n-1]內的整數秘密d1和第2裝置在[0,n-1]內的整數秘密d2的相加項,即d1+d2,且保持模n運算結果不變,即(d1+d2)mod n=(b1b2)mod n,其中n是一個素數:
方式一:
第2裝置在[1,n-1]內隨機選擇一個整數a2,計算c0=E(a2),c1=E((a2b2)mod n),其中E(·)表示使用第2裝置的同態加密公鑰進行加法同態加密的加密運算;
第2裝置將c0、c1發送給第1裝置;
第1裝置檢查確定c0、c1是否是0的加密結果,若c0或c1是0的加密結果,則報錯,否則,繼續進行如下計算:
第1裝置在[1,n-1]內隨機選擇一個整數d1作為秘密,計算
c2=E(z1n)⊕((-d1)⊙c0)⊕(((b1 mod n)+z0n)⊙c1);
第1裝置將c2傳遞給第2裝置;
第2裝置計算d2=((a2)-1(D(c2)mod n))mod n,其中D(·)表示使用第2裝置的同態加密私鑰進行加法同態加密的解密運算,(a2)-1是a2的模n乘法逆;
方式二:
第2裝置在[1,n-1]內隨機選擇一個整數a2,計算c0=E(a2),c1=(a2b2)mod n,其中E(·)表示使用第2裝置的同態加密公鑰進行加法同態加密的加密運算;
第2裝置將c0、c1發送給第1裝置;
第1裝置檢查確定c0是否是0的加密結果、c1是否是0,若c0是0的加密結果或c1是0,則報錯,否則,繼續進行如下計算:
第1裝置在[1,n-1]內隨機選擇一個整數d1作為秘密,在[0,n-1]內隨機選擇一個整數t,計算
c2=E(t+z1n)⊕((-d1+z0n)⊙c0),
c3=(b1c1-t)mod n;
第1裝置將c2、c3傳遞給第2裝置;
第2裝置計算d2=((a2)-1((D(c2)+c3)mod n))mod n,其中D(·)表示使用第2裝置的同態加密私鑰進行加法同態加密的解密運算,(a2)-1是a2的模n乘法逆;
之后,在需要計算b1b2的模n運算式中使用d1+d2替換b1b2;
在以上計算過程中,⊕表示同態加密的密文數的加運算,⊙表示同態加密中的明文數與密文數的乘運算;
所述z0是第1裝置隨機選擇的整數,或者是第1裝置按預定的規則選擇的整數,或者是第1裝置按約定或要求固定選擇的整數,而所述z1是第1裝置隨機選擇的整數;
所述z0、z1的取值范圍不限于[1,n-1],且z0、z1的取值是整數;
對于所述方式一,當c0、c1對應的明文數在[1,n-1]內時,z0、z1的取值使得c2對應的明文數不超出加法同態加密的明文數的補數的表示范圍,或者使得c2對應的明文數超出加法同態加密的明文數的補數的表示范圍的概率極小;
對于所述方式二,當c0對應的明文數在[1,n-1]內時,z0、z1的取值使得c2對應的明文數不超出加法同態加密的明文數的補數的表示范圍,或者使得c2對應的明文數超出加法同態加密的明文數的補數的表示范圍的概率極小;
所述概率極小指具體應用中所確定的允許的概率;
以上計算過程中所使用的加法同態加密針對被加密的明文數進行運算所對應的模m大于n。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于武漢理工大學,未經武漢理工大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201911070089.8/1.html,轉載請聲明來源鉆瓜專利網。





