聊到雲的資安問題,有興趣可以參考一下 Homomorphic Encryption (HE) 這東西。
===
「資料保密」這個題目可粗分為 3 大方向:
* 儲存(at rest)
* 運輸(in transit)
* 使用(in use)
HE 是「對正在使用中的資料保密」的一種解決方案。
===
簡單地說,「由 HE 加密的資料,可以不需解密就進行運算」。
例如,
var a = 10;
var b = 20;
var k = 產生HE密鑰();
var x = HE加密(a, k);
var y = HE加密(b, k);
var z = x + y; // 可以把 x,y 交給不信任的外人去算 x+y
// 外人很難從 x,y,z,+ 去得到 a,b,c,k
var c = HE解密(z, k); // c 會是 a+b 的值: 30
===
使用 HE 時的考量:
* 每種 HE 加密法支援的運算種類不一。
* 經過 HE 加密後的資料,通常會佔更多空間,而計算也多半會花更多時間。
===
想動手玩玩 HE 的人,可以參考這篇文中 "Paillier Cryptosystem" 章節所列舉的
Python 範例
https://www.freecodecamp.org/news/introduction-to-homomorphic-encryption/
想進一步了解 HE 的人,可以參考這篇文:
https://en.wikipedia.org/wiki/Homomorphic_encryption