導航:首頁 > 源碼編譯 > 部分同態加密加密演算法

部分同態加密加密演算法

發布時間:2023-07-05 17:39:03

⑴ 隱私保護技術 同態加密

安全多方計算
同態加密
差分隱私

同態加密逐漸被認為是在 PPML 中實現安全多方計算的一種可行方法。

設 表示使用 作為加密密鑰的加密函數。設 表示明文空間, 且 表示密文空間。一個安全密碼系統若滿足以下條件,則可被稱為同態的(homomorphic):

對於 中的運算符 和 中的運算符 , 符號表示左邊項等於或可以直接由右邊項計算出來,而不需要任何中間解密。在本書中,我們將同態加密運算符設為 ,並且對密文的加法操作和乘法操作按如下方式重載:
加法:
標量乘法:

同態加密方法分為三類:部分同態加密 (Partially Homomorphic Encryption, PHE),些許同態加密 (Somewhat Homomorphic Encryption, SHE) 和全同態加密 (Fully Homomorphic Encryption, FHE)。
//待補充

⑵ 同態加密的實現原理是什麼在實際中有何應用

同態加密是一種加密形式,它允許人們對密文進滲輪衡行特定的代數運算得到仍然是加密的結果,將其解密所得到的結果與對明文進行同樣的運算結果一樣。換言之,這項技術令人們可以在加密的數據中進行諸如檢索、比較等操作,得出正確的結果,而在整個處理過程中無需對數據進行解密。其意義在於,真正從根本上解決將數據及其操作委託給第三方時的保密問題,例如對於各種雲計算的應用。

這一直是密碼學領域的一個重要課題,以往人們只找到一些部分實現這種操作的方法。而2009年9月桐族克雷格·金特里(Craig Gentry)的論文 從數學上提出了「全同態加密」的可行方法,即可以在不解密的條件下對加密數據進行任何可以在明文上進行的運算,使這項技術取得了決定性的叢做突破。人們正在此基礎上研究更完善的實用技術,這對信息技術產業具有重大價值。

⑶ 同態加密的同態加密的相關概念

同態加密的思想起源於私密同態,代數同態和算術同態是私密同態的子集。
R 和 S 是域,稱加密函數 E:R→S 為:
加法同態,如果存在有效演算法⊕,E(x+y)=E(x)⊕E(y)或者 x+y=D(E(x)⊕E(y))成立,
並且不泄漏 x 和 y。
乘法同態,如果存在有效演算法 ,E(x×y)=E(x) E(y)或者 xy=D(E(x) E(y))成立,
並且不泄漏 x 和 y。
混合乘法同態,如果存在有效演算法 ,E(x×y)=E(x) y 或者 xy=D(E(x) y)成立,並
且不泄漏 x。
減法同態,如果存在有效演算法○- ,E(x-y)=E(x)○- E(y)或者 x-y=D(E(x)○- E(y))成立,
並且不泄漏 x 和 y,則稱 E 為減法同態。
除法同態,如果存在有效演算法○/ ,E(x/y)=E(x)○/ E(y)或者 x/y=D(E(x)○/ E(y))成立,
並且不泄漏 x 和 y,則稱 E 為減法同態。
代數同態,如果 E 既是加法同態又是乘法同態。
算術同態,如果 E 同時為加法同態、減法同態、乘法同態和除法同態。

⑷ 同態加密簡介

同態加密是數據加密方式的一種,特點是允許數據在加密情況下實現數學或邏輯運算。

同態加密通常為非對稱性加密。因此在介紹同態加密之前,簡單介紹一下非對稱性加密。非對稱性加密分為三個步驟:

1. 生成一對鑰匙,一個公鑰pub和一個密鑰priv;

2. 使用公鑰pub加密原始數據,得到加密數據,公式:pub(原始數據)= 加密數據 ;

3. 使用密鑰priv解密加密數據,得到原始數據,公式:priv( 加密數據 )= 原始數據 ;

同態加密允許對 加密數據 進行處理,得到的解密結果等價於在原始數據下做運算。以聯邦學慣用到的Paillier演算法舉例,假設我有兩個數 和 ,我希望把它們扔給第三方做加法運算,即 + 。同時不希望第三方知道 、 及它們之和的具體值,同態加密可以派上用場,具體步驟如下:

1. (本地)生成一對鑰匙,公鑰pub和密鑰priv,公鑰用於加密,密鑰用於解密;

2. (本地)使用公鑰pub分別加密 和 ,得到 ( )和 ( );

3. (第三方)使用 函數處理 和 ,即 ;

4. (本地)使用密鑰priv解密 ,即 ;

4中  =  + 。第三方通過上述步驟3實現了 和 在加密狀態下做加法的操作。

為了更直觀認識上述步驟,假設 =100, =200,步驟就變成:

1. (本地)生成一對鑰匙,公鑰pub和密鑰priv,公鑰用於加密,密鑰用於解密;

2. (本地)使用公鑰pub分別加密 和 ,得到 =1234, =4321 (舉例);

3.(第三方) 使用 函數處理 和 ,即 =12345678;

4. (本地)使用解密priv解密 ,得到  = 300。

第三方在不知道 =100和 =200,但是通過 函數依然可以在加密情況下實現相加運算。

⑸ 隱私計算-密碼學-同態加密

近年來,隨著大數據與人工智慧的盛行,針對個人的個性化的推薦技術的不斷發展,人們在享受便利的同時,也深深的感覺到無處不在的監控與監事,比如剛剛瀏覽了一個網站的商品,當去其他網站訪問的時候就會推薦類似的產品;剛剛搜索了某件商品,在很多其他的場景中都會給你推薦。這種體驗,談不上不好,也談不上多壞,但是如果仔細想想,就感覺自己的網上進行裸奔,個人隱私,一清二楚,毫無隱私可言,細思極恐。

不過隨著廣大用戶對於個人隱私的重視程度不斷加強,以及法律法規的不斷完善,針對個人隱私的保護提出了更高的要求,什麼樣的數據可以採集、收集與使用,如何使用都是一個比較敏感的問題。十三屆全國人大常委會第三十次會議表決通過了《 中華人民共和國個人信息保護法 》,並與2021年11月1日起施行。確立個人信息保護原則、規范處理活動保障權益、禁止「大數據殺熟」規范自動化決策、嚴格保護敏感個人信息、賦予個人充分權利等。新規施行後,違法的主體將 最高可處五千萬以下或者上一年度營業額百分之五 以下的罰款。

鑒於上述情況,近年來隱私計算技術被不斷的提及,源於其有優秀的數據保護作用,使得 「數據不出域、數據可用不可見、數據可算不可見」 ,限定了數據的使用場景,防止了數據的泄露,而引起了業界的熱捧。

隱私計算技術的演進歷程如下圖描述,以下是楊強教授在KDD 2021中國區的分享材料:

可以看到,隱私計算技術從1979年就開始了,最開始是安全多方計算、到差分隱私、到TEE, 再到最近火的不能再火的聯邦學習 ,一系列的技術應運而生。那為啥現在隱私計算這么火呢。

註:隱私計算技術成熟度曲線

但是這些技術本身的安全加密都是採用共同的方法與策略,下面講述下隱私計算的加密技術。

本文主要介紹同態加密,

眾所周知,優秀的程序員需要 嚴謹的邏輯思維與具象能力 ,當然在材料的時候,可能需要適當的渲染。但是對於技術的理解,對技術的探索,嚴謹的邏輯與堅實的推理是非常重要的。所以,對於「數據加密」這個命題,需要進行一番探索。

如此三態合一,即可保障數據的全鏈路的生命周期安全

那麼有沒有辦法解決數據計算的安全問題呢?答案就是 同態加密技術 。保障數據的運行態的安全,那麼同態加密技術具體是如何實現,如何應用,並且有哪些限制呢?

什麼是同態加密? ,引用Gentry大佬的原話:

同態加密(Homomorphic Encryption, HE),指滿足密文同態運算性質的加密演算法,即數據經過同態加密之後,對密文進行某些特定的計算,得到的密文計算結果在進行對應的同態解密後的明文等同於對明文數據直接進行相同的計算, 實現數據的「可算不可見」 。同態加密的實現效果如圖所示。

舉個例子: 國內某家大型的三甲醫院,由於歷史悠久,並且醫術精湛,歷史遺留了大量的用戶病例數據 。如今思考基於這些病例數據進行建模分析。但是由於數據量特別巨大,醫院本身的IT資源有限,計算能力不足。

這個時候,雲廠商找了過來。但是對於醫院來說,這些數據本身是用戶的隱私信息,並且也是醫院的核心價值,所以盡管雲廠商再三保證數據安全, 但是醫院還是不能夠放心的將數據上傳到雲廠商進行計算

正當這個事情推進不下去的時候,雲廠商從密碼行業花大價錢招來某個大牛,大牛提出一個方案,這樣吧,我們現在有 這樣一門技術,不需要傳輸明文數據,只需要傳輸密文就好,而且加密秘鑰由醫院自己保存,我們基於上傳的密文數據做不解密的密態運算( 並計算函數醫院提供就好),這樣數據不會泄露,雲廠商對數據無感知,之後傳回密文結果,醫院自己解密就好 。醫院一聽非常高興,那就這么辦吧。

下面將核心流程描述下。

這里,大家可能有個問題,這個f應該是什麼樣的函數,有什麼樣的限制條件?HE方案是支持任意的數據處理方法f,還是說只支持滿足一定條件的f呢?根據f的限制條件不同,HE方案實際上分為了兩類:

Paillier加密演算法是Pascal paillier[1]在1999年發明的概率公鑰加密演算法,該演算法 基於復合剩餘類的困難問題,是一種滿足加法的同態加密演算法 ,已經廣泛應用在加密信號處理或第三方數據處理領域。

前面我們分析過 同態加密的核心流程 ,大家可以一起回憶一下。核心的函數包括:秘鑰生成、明文加密、密文解密,下面我們來一步一步的分析,並且描述下,

秘鑰的生成主要有如下的步驟,

下面介紹一個完整的同態運算,m由 組成,介紹下同態加密的是如何使用密文計算的。

⑹ 全同態加密和部分同態的加密有什麼區別

區別:

1、部分同態既能做乘法又能做加法,但是不能同態計算任意的函數;全同態加密可以對密文進行無限次數的任意同態操作,也就是說它可以同態計算任意的函數。

2、部分同態加密能做的事情,全同態加密也能做;但是全同態加密一般計算開銷比較大,所以部分同態加密方案夠用的時候沒必要選用全同態加密;

3、設計出全同態加密的協議是比設計部分同態加密的演算法要難的。

同態加密規定

如果有一個加密函數f,把明文A變成密文A』,把明文B變成密文B』,也就是說f(A)=A』,f(B)=B』。另外還有一個解密函數,能夠將f加密後的密文解密成加密前的明文。

對於一般的加密函數,如果我們將A』和B』相加,得到C』。我們用對C』進行解密得到的結果一般是毫無意義的亂碼。

但是,如果f是個可以進行同態加密的加密函數, 我們對C』使用進行解密得到結果C, 這時候的C = A + B。這樣,數據處理權與數據所有權可以分離,這樣企業可以防止自身數據泄露的同時,利用雲服務的算力。

⑺ Paillier同態加密演算法

Paillier加密是一種公鑰加密演算法,基於復合剩餘類的困難問題。其滿足於加法同態,即密文相乘等於明文相加,即:

密鑰生成

快速生成私鑰

在密鑰相同的情況下,可以快速生成密鑰:

, 為歐拉函數,即

加密

解密

加法同態

Paillier加密的兩個密文消息相乘的結果解密後得到兩個消息相加的結果。

對於兩個密文 和

其中 和 都是 中的元素,因此 也屬於 , 並具有相同的性質,所以 可以看作是 加密的密文, 的解密結果為 。

總結

常見的同態加密演算法中,Paillier演算法和Benaloh演算法僅滿足加法同態,RSA演算法和ElGamal演算法只滿足乘法同態,而Gentry演算法則是全同態的。

https://en.wikipedia.org/wiki/Paillier_cryptosystem

https://blog.csdn.net/sinianluoye/article/details/82855059

http://www.cs.tau.ac.il/~fiat/crypt07/papers/Pai99pai.pdf

閱讀全文

與部分同態加密加密演算法相關的資料

熱點內容
可編程式控制制器教材 瀏覽:335
java實現快捷鍵 瀏覽:94
程序員打代碼最佳時間 瀏覽:569
怎麼裝原生態安卓 瀏覽:847
工程圖學pdf 瀏覽:398
開放的程序員 瀏覽:952
胡希恕傷寒論講座pdf 瀏覽:766
aspnet程序員薪水 瀏覽:76
蘋果為什麼屏幕看得比安卓舒服 瀏覽:119
蘋果數據線怎麼轉安卓 瀏覽:656
黑格爾pdf下載 瀏覽:959
備忘錄里新建文件夾怎麼刪除 瀏覽:12
伺服器黑名單怎麼處理 瀏覽:842
程序員電視劇25集 瀏覽:214
80351單片機 瀏覽:958
advancedwifi源碼 瀏覽:577
maczip解壓成文件夾後怎麼打開 瀏覽:120
androidapp內存大小 瀏覽:451
程序員干私活網站 瀏覽:379
未來軟體加密鎖驅動 瀏覽:930