Homomorphic-Encryption
加密實現位和字節
閱讀同態加密領域和密碼學中的許多論文,許多方案在位上操作 1 和 0。
如果我想實現一個方案,例如 Gentry 的 FHE,我是否必須將輸入編碼為“位”或只使用字節(C & C++ (char)、Golang(byte) 等)?
當實施此類方案時,該問題並不真正相關,因為明文通常僅用於加密,其中它們與需要編碼為大整數的大值組合在一起。
所有的同態操作都不應該依賴於明文,所以這裡選擇的編碼是無關緊要的。
即使解密輸出一個比特,解密函式中完成的所有操作也是在大整數上執行的。
例如,Leo Ducas 實現的方案使用正常 C 整數來編碼輸入位,正如您在他的 Github 儲存庫中的文件 LWE.h的第 29 和 30 行中看到的那樣。