OpenMined/TenSEAL
A library for doing homomorphic encryption operations on tensors
解決的問題
TenSEAL 允許開發者在不需先解密資料的情況下對加密資料執行數學運算。這確保了資料隱私,使伺服器或服務能在資料保持加密狀態下處理資訊(例如執行點積或矩陣乘法)。
工作原理
這是一個基於 Microsoft SEAL 建構的 Python 庫,實作了 BFV(用於整數)和 CKKS(用於實數)等同態加密(HE)方案。它提供了一個張量層,讓使用者能將加密資料視為向量或 N 維張量,支援元素級加法、減法、乘法與矩陣乘法等運算。核心運算以 C++ 實作以確保效率,而 Python API 則使該庫易於使用。
適用對象
從事隱私保護機器學習與安全運算的開發者與研究人員,特別是需要在加密張量上執行線性代數運算者。
主要特色
- 同態加密支援:支援用於加密整數與實數的 BFV 與 CKKS 方案。
- 張量運算:提供
CKKSTensor與BFVTensor以支援 N 維運算,包含重塑、廣播與轉置。 - 線性代數:內建支援點積與向量-矩陣乘法。
- SEAL 整合:透過
tenseal.sealapi提供對底層 Microsoft SEAL API 的完整存取。 - 序列化:可將上下文、金鑰與加密張量序列化,以供儲存或傳輸。
相關
- 專案
- 專案
- 專案
- 專案
- 專案