江蘇大學韓牟獲國家專利權
買專利賣專利找龍圖騰,真高效! 查專利查商標用IPTOP,全免費!專利年費監控用IP管家,真方便!
龍圖騰網獲悉江蘇大學申請的專利一種基于代理重加密的TEE聯邦學習隱私保護方法獲國家發明授權專利權,本發明授權專利權由國家知識產權局授予,授權公告號為:CN116436593B 。
龍圖騰網通過國家知識產權局官網在2025-08-29發布的發明授權授權公告中獲悉:該發明授權的專利申請號/專利號為:202310221039.5,技術領域涉及:H04L9/06;該發明授權一種基于代理重加密的TEE聯邦學習隱私保護方法是由韓牟;謝宜江設計研發完成,并于2023-03-09向國家知識產權局提交的專利申請。
本一種基于代理重加密的TEE聯邦學習隱私保護方法在說明書摘要公布了:本發明公開了一種基于代理重加密的TEE聯邦學習隱私保護方法,屬于公鑰密碼體制領域。包括以下步驟:1建立代理重加密通信;2服務器下發聯邦策略;3參與方進行本地學習得到梯度參數后加密并發送至代理方;4代理方對消息進行重加密運算并發送至服務器方;5服務器方解密消息;6服務器方對梯度參數進行聚合并加密發送至代理方;7代理方對消息進行重加密運算并發送至參與方;8參與方解密消息得到梯度參數并繼續進行模型訓練;9重復3—8直到聯邦學習收斂。本申請傳輸過程中使用的代理重加密方案屬于NTRU格公鑰密碼體制,滿足抗量子安全性且抗合謀;端點處的計算在TEE中進行保證端點的隱私安全。
本發明授權一種基于代理重加密的TEE聯邦學習隱私保護方法在權利要求書中公布了:1.一種基于代理重加密的TEE聯邦學習隱私保護方法,其特征在于:包括以下步驟: 1進行聯邦學習的參與方與服務器方建立代理重加密通信; 2服務器下發聯邦策略至各參與方; 3參與方根據策略在TEE環境中對本地數據進行學習得到梯度參數,對梯度參數進行加密并發送至代理方; 4代理方對收到的消息進行重加密運算并發送至服務器方; 5服務器方在TEE中對收到的消息進行解密; 6服務器方對梯度參數進行聚合并加密發送至代理方; 7代理方對收到的消息進行重加密運算并發送至參與方; 8參與方解密消息得到梯度參數并繼續進行模型訓練; 9根據聯邦學習策略重復步驟3—8,直到聯邦學習收斂; 所述步驟1進行聯邦學習的參與方與服務器方之間建立代理重加密通信;其步驟如下: 步驟1.1:輸入安全參數k,選取多項式環R為整系數多項式環,為有限環域,xn為具體多項式形式,n為2的冪次方,q為大素數,令Gt為Rq上系數取自的多項式集合,t為整數且t2,令明文空間M為Rq上系數取自{-1,0,1}的多項式集合,其中p為小素數且pq,選取采樣自Υα分布的隨機噪聲多項式集合χq,輸出公共參數{n,q,p,t,α}; 步驟1.2:本地密鑰生成KeyGen:從Gt上隨機均勻的選取多項式B∈Rq,從Gt上隨機選取小系數多項式g∈Rq,g滿足以下兩個條件:gq·g≡1modq,g≡1modp,其中gq為g的模q運算,如果g不滿足條件則重新進行選取,從χq上隨機選取小系數多項式e′∈Rq,計算公鑰PK=gqB+e′modq,私鑰SK為g; 步驟1.3:代理重密鑰生成ReKeyGen:參與方與服務器方的私鑰分別為Sku和Sks,參與方需要先從Rq中選取一個隨機多項式從χq中選擇隨機多項式es,計算 將發送給服務器方,并將發給代理方,服務器方對收到的進行計算并將發送給代理方,代理方根據收到的和計算出重加密密鑰:同理得到rks→u; 所述步驟2服務器下發聯邦策略至各參與方;其步驟如下: 步驟2.1:確定參與方的本地訓練策略,其中包括對于loss函數的控制,與服務器端對齊問題,梯度或者參數如何上行傳輸,TEE選用的哈希函數; 步驟2.2:確定服務器方相應策略,其中包括如何對參與方上傳的梯度或參數如何聚合,如何更新,如何下行分發,TEE選用的哈希函數; 所述步驟3參與方根據策略在TEE環境中對本地數據進行學習得到梯度參數,對梯度參數進行加密并發送至代理方;其步驟如下: 步驟3.1:利用intelSGX構建TEE,通過IntelSGXPSW導出的API:sgx_enable_device創建enclave,本地訓練的相應代碼和數據運行于enclave中,運行在enclave模式下的CPU將不會直接響應中斷、錯誤或者VM退出操作,參與方根據策略中的算法對數據進行學習,得到模型的梯度參數m; 步驟3.2:在enclave中計算s=hashm,使用本地的公鑰對Ms,m和進行加密:從Gt中選取隨機數u和eu,計算消息密文Cu=puPki+eu+Mmodq;其中,s為參數的哈希值,Pki表示第i個參與方的公鑰; 步驟3.3:將計算得到的消息密文Cu發送至代理方; 步驟3.4:調用sgx_destroy_enclave函數銷毀相應的enclave,回收EPC內存以及enclave使用的不可信內存; 所述步驟4代理方對收到的消息進行重加密運算并發送至服務器方;其步驟如下: 步驟4.1:代理方收到密文消息Cu后,利用rku→s進行重加密運算,將由Pku加密的密文Cu轉變為由Pks加密的密文Cs:Cs=Curku→s;其中,Pku為參與方公鑰,Pks為服務器方公鑰,rku→s為代理中心的代理重密鑰; 步驟4.2:將轉換后的密文Cs發送至服務器方; 所述步驟5服務器方在TEE中對收到的消息進行解密;其步驟如下: 步驟5.1:服務器方收到密文Cs,利用intelSGX形成TEE,通過IntelSGXPSW導出的API:sgx_enable_device創建enclave,解密密文Cs和聚合參數的相應代碼及數據將運行于構建的enclave中; 步驟5.2:在enclave中對密文Cs進行解密:計算M′=CsSksmodq,通過M′得到M=M′modp;得到M后根據策略對消息m進行數字簽名驗證,其中Sks為服務器方私鑰; 所述步驟6服務器方對梯度參數進行聚合并加密發送至代理方;其步驟如下: 步驟6.1:根據策略中具體的聚合算法FedAvg或者FedProx對梯度參數進行聚合,得到新的梯度參數m1; 步驟6.2:計算s1=hashm1,使用服務器方的公鑰對M1s1,m1進行加密:從Gt中選取隨機數u和e1,計算消息密文Cs1=puPki+e1+M1modq;其中,s1為新的梯度參數m1的哈希值; 步驟6.3:將計算得到的消息密文C1發送至代理方; 步驟6.4:調用sgx_destroy_enclave函數銷毀相應的enclave,回收EPC內存以及enclave使用的不可信內存; 所述步驟7代理方對收到的消息進行重加密運算并發送至參與方;其步驟如下: 步驟7.1:代理方收到消息Cs1后,利用rks→u進行重加密運算,將由Pks加密的密文Cs1轉變為由Pks加密的密文Cu1:Cu1=Cs1rks→u;rks→u為將服務器方密文轉換為參與方密文的重密鑰; 步驟7.2:將轉換后的密文Cu1發送至參與方; 所述步驟8參與方解密消息得到梯度參數并繼續進行模型訓練;其步驟如下: 步驟8.1:參與方收到密文Cu1,利用intelSGX構建TEE,通過IntelSGXPSW導出的API:sgx_enable_device創建一個enclave,本地訓練的相應代碼和數據將運行于enclave中,運行在enclave模式下的CPU將不會直接響應中斷、錯誤或者VM退出操作; 步驟8.2:在enclave中對密文Cu1進行解密:計算M1′=Cu1Skumodq,通過M1′得到M1=M1′modp;得到M1后根據策略對消息m1進行數字簽名驗證;其中,M1′為計算中間值,Cu1為收到的密文消息,Sku為本地私鑰; 步驟8.3:在TEE中基于得到的新參數m1繼續對數據進行學習,訓練模型。
如需購買、轉讓、實施、許可或投資類似專利技術,可聯系本專利的申請人或專利權人江蘇大學,其通訊地址為:212013 江蘇省鎮江市京口區學府路301號;或者聯系龍圖騰網官方客服,聯系龍圖騰網可撥打電話0551-65771310或微信搜索“龍圖騰網”。
1、本報告根據公開、合法渠道獲得相關數據和信息,力求客觀、公正,但并不保證數據的最終完整性和準確性。
2、報告中的分析和結論僅反映本公司于發布本報告當日的職業理解,僅供參考使用,不能作為本公司承擔任何法律責任的依據或者憑證。