Themis 是一個開源高級加密服務庫,用於在身份驗證、儲存、訊息傳遞、網路交換等過程中保護資料。
Themis 有助於輕鬆、快速、安全地建立簡單和複雜的加密功能。 Themis 讓開發人員專注於主要事情:開發他們的應用程式。
加密應用程式和後端中儲存的機密:API 金鑰、會話令牌、檔案。
在儲存到資料庫之前對敏感資料欄位進行加密( “應用程式端欄位級加密” )。
使用 Themis 和 Acra 支援可搜尋加密、資料標記化和資料脫敏。
安全地交換秘密:在各方之間共享敏感數據,在患者和醫生之間建立簡單的聊天應用程式。
使用集中式或分散式架構建立端對端加密方案:在一個應用程式上本地加密數據,在任何地方使用加密數據,僅對經過身份驗證的用戶進行解密。
維護即時安全會話:發送加密訊息以從您的應用程式控制連接的設備,從您的應用程式接收即時敏感資料到後端。
比較各方之間的秘密而不洩露它們(基於零知識證明的身份驗證)。
一個適合所有這些的加密庫:Themis 最適合多平台應用程式(例如,帶有Node.js 後端的iOS+Android+Electron 應用程式),因為它提供100% 相容的API,並且在所有支援的平台上以相同的方式工作。
Themis 提供現成的建置區塊(「加密系統」) ,可簡化核心加密安全操作的使用。
Themis 提供 4 種重要的加密服務:
我們創建 Themis 是為了在其之上構建其他產品 - 即 Acra 和 Hermes。
請參閱安裝頁面,為您的行動、Web、桌面或伺服器端應用程式安裝 Themis。我們強烈推薦安裝包而不是從原始碼建置。
Themis 適用於以下語言/平台,請參閱每種語言/平台的語言說明:
平台 | 文件 | 範例 | 版本 |
---|---|---|---|
⚛️ React Native(iOS、Android) | 反應本機指南 | 文件/範例/react-native | |
?斯威夫特(iOS、macOS) | 史威夫特指南 | 文件/範例/swift | |
Objective-C(iOS、macOS) | Objective-C 指南 | 文件/範例/objc | |
☕️ Java(桌面) | Java(桌面)指南 | 文檔/範例/java | |
☎️ Java(安卓) | Java (Android) 指南 | 文件/範例/android | |
?科特林(安卓) | Kotlin (Android) 指南 | 文件/範例/android | |
?紅寶石 | 紅寶石指南 | 文件/範例/ruby | |
? Python | Python 指南 | 文件/範例/python | |
? PHP | PHP 指南 | 文件/範例/php | |
➕ C++ | CPP 指南 | 文件/範例/c++ | |
? Node.js | JavaScript (Node.js) 指南 | 文件/範例/js | |
?網路組裝 | Javascript (WebAssembly) 指南 | 文件/範例/js | |
?去 | 轉到指南 | 文件/範例/go | |
?鏽 | Rust 指南 | 文件/範例/rust | |
?適用於 Google Chrome 的 С++ PNaCI | WebThemis項目 |
Themis 支援下列 CPU 架構:x86_64/i386、ARM、Apple Silicon (ARM64)、各種 Android 架構。
我們在最新的穩定作業系統版本上建置並驗證 Themis:
我們計劃透過更廣泛的平台來擴展此列表。如果您想協助改進 Themis 或將其引入您最喜歡的平台或語言 - 請聯絡我們。
Themis 的文檔包含不斷發展的官方文檔,涵蓋從部署指南到用例的所有內容,並對主要 Themis 庫背後的密碼系統和架構進行了簡要說明。
請參閱文件以了解更多資訊:
Themis 依賴 OpenSSL、LibreSSL、BoringSSL 等知名加密庫實現的經過驗證的加密演算法。請參閱 Themis 文件中的密碼學以了解更多資訊。
該發行版包括加密軟體。您目前居住的國家/地區可能對加密軟體的進口、擁有、使用和/或再出口到另一個國家/地區有限制。在使用任何加密軟體之前,請檢查您所在國家/地區有關進口、擁有或使用以及再出口加密軟體的法律、法規和政策,以了解是否允許這樣做。請參閱 http://www.wassenaar.org/ 以了解更多資訊。
美國政府商務部工業與安全局 (BIS) 已將此軟體分類為出口商品控制編號 (ECCN) 5D002.C.1,其中包括使用非對稱演算法或執行加密功能的資訊安全軟體。此分發的形式和方式使其符合目標代碼和原始代碼的許可證例外 ENC 技術軟體無限制 (TSU) 例外(請參閱 BIS 出口管理條例,第 740.13 節)的出口資格。
如果您的應用程式使用 Themis 並且您想將其提交到 Apple App Store,則聲明使用任何加密技術都有一定的要求。
請閱讀有關 Themis 密碼學的 Apple 出口法規,以了解該怎麼做。
Themis 核心庫中的每項變更都正在由我們內部的密碼學家和安全工程師團隊進行審查和批准。對於每個版本,我們都會由不在 Themis 工作的密碼學家進行內部稽核。
我們使用大量自動化安全測試,即靜態程式碼分析器、模糊測試工具、記憶體分析器、單元測試(每個平台)、整合測試(以查找Themis 支援的不同語言、作業系統和x86/x64 架構之間的相容性問題)。在 Themis 安全文件中閱讀有關我們安全測試實踐的更多資訊。
如果您認為發現了與安全相關的問題,請給我們發送電子郵件至 [email protected]。錯誤賞金計畫可能適用。
作為行動和伺服器平台的加密服務庫,Themis 是一種「最先進」的加密工具,可提供安全的資料交換和儲存。
使用 Themis,您可以更好地遵守當前的資料隱私法規,例如:
閱讀文件中有關法規的更多資訊。
Themis 被 OWASP 推薦作為行動平台的資料加密庫。
Themis 廣泛用於非商業和商業項目,一些公共應用程式和程式庫可以在這裡找到。
也想出現在我們的部落格和貢獻者名單中嗎?請寫信給我們您使用 Themis 建立的專案!
如果您正在尋找一些可以做出貢獻並獲得永恆尊重的東西,只需在問題清單中選擇即可。請以我們的貢獻指南為起點。
為所有這些眾多平台支持 Themis 是一項艱鉅的工作,但我們盡力讓每個人都能輕鬆使用 Themis。我們的用戶遇到的大多數問題都與安裝過程和依賴關係管理有關。如果您面臨任何挑戰,請告訴我們。
在 Cossack Labs,我們為 Themis 和使用 Themis 的應用程式提供專業支援服務。
這種支援包括但不限於圖書館集成,重點是網路和行動應用程式;為行動應用程式設計和建構端對端加密方案;安全審計,用於內部圖書館整合或高級協議;需要加密技術的客製化應用程式開發;諮詢和培訓服務。
請發送電子郵件至 [email protected] 或查看 Cossack Labs 網路安全服務。
如果您想提出技術問題、報告錯誤或建議功能,請隨時在 GitHub 上發起討論、在問題追蹤器中提出問題,或寫信至 [email protected]。
如需與 Cossack Labs Limited 的業務部門聯繫,請發送電子郵件至 [email protected]。