學習記錄 2020 8 3

2021-10-08 19:31:09 字數 1093 閱讀 9845

研一

全同態加密演算法指可滿足密文同態下無限次加乘的演算法。這種加密演算法將現有資料進行同態變換,變換後也可進行相同的資料處理,但對處理方來說無法讀取同態資料,達到了可算不可讀的作用。同態演算法現在分為半同態和完全同態兩種,半同態指只能進行加或乘或有限次加乘的同態變換及演算法,現有的半同態演算法有滿足乘法運算的elgamal,rsa,滿足加法運算的paillier演算法以及可進行有限次乘法和一次加法的bgn演算法;全同態則指滿足所有運算型別,並且計算次數也不受限制的同態演算法,這種演算法存在但速度很慢,2023年12月halevi-polyakov-shoup報道採用中國剩餘定理(crt)實現bfv同態加密演算法。他們使用e5 cpu的系統在62毫秒內可以在密文上完成20次乘法(1次乘法約3毫秒,5次乘法約10毫秒),一次乘法運算的速度佔兩毫秒在實際工程中是不可接受的,事實上,即使是半同態演算法的rsa在工程當中也僅僅只是完成給對稱進行加密的作用,實際對資料的加密是由對稱金鑰來完成的。目前存在的全同態演算法有gsw,ckks等,以上提到的兩種演算法是最新的第三代演算法以及支援浮點數運算的演算法。

半同態及全同態演算法目前的應用場景有云計算,物聯網,區塊鏈以及聯邦學習幾個場景。在雲計算中資料擁有方將資料進行同態變換後上傳給雲計算伺服器進行計算,伺服器呼叫演算法計算生成結果後返回給計算請求方。該過程由於同態變換的存在保證了資料隱私及加密性。但具體的實現仍需提高演算法計算速度才能進行大規模實施。

在研究同態加密的時候看到了加法半同態加密的應用場景式聯邦學習,所以稍微看了下這個概念。

聯邦學習是機器學習的乙個變種應用,滿足多個使用者在不共享其資料的情況下共同建立機器學習模型。paillier加法半同態加密的應用場景估計也是用在對不同方資料的加密上。

當機器學習需要提供的資料分布在不同使用者手中,而且各使用者要求滿足對資料的保密性時,便可以使用聯邦學習正規化來完成機器模型的建立。聯邦學習可使使用者將資料匯聚到一起建立起乙個虛擬的模型,同時並不需要使用者將本地的資料上傳。虛擬模型無限接近於各使用者將自己的資料上傳之後建立的真實資料模型。該虛擬模型建立後可為各參與者提供服務,參與者的身份地位相同。

聯邦學習三要素是使用者,資料來源和學習系統。這點我沒太理清楚,猜測大概每個使用者持有乙個資料來源,資料來源屬於本地不可上傳的,但資料來源可以通過計算得到乙個初始的機器學習模型,各個模型彙總後再通過處理得到虛擬聯邦學習模型,即學習系統。

2020 8 3 暑期 揹包專題

01 揹包從前i個物品中選擇總重量小於w 的總價值最大 二維的寫法 int dp n m for int i 1 i n i for int j 0 j w j if j w i j 注 意 內 層 循 環 的 方 向 dp j max dp j dp j w i v i cout 完全揹包 在 0...

mysql學習記錄 MySQL學習記錄 2

in 子查詢 select from student where id in 1,2 not in 不在其中 select from student where id not in 1,2 is null 是空 select from student where age is null is not...

java學習記錄

陣列雖然是引用資料型別,但它不是類 所以數字中沒有length 方法 只有length屬性。string型別 是乙個類 jdk中已經封裝好的類,是個final類,你可以去查api 類就有屬性和方法但是 string類中沒有length屬性,只有length 方法 1。陣列雖然是引用資料型別,但它不是...