Tink 藍圖
透過集合功能整理內容
你可以依據偏好儲存及分類內容。
(上次更新日期:2023 年 7 月)
本頁面詳細說明 Tink 團隊的概要目標。隨著目標達成或變更,系統會定期更新這項資料。
多個 GitHub 存放區
我們會將專案分割為多個以語言分隔的 GitHub 存放區。這項機制有以下好處:
- 每種語言的分離版本 (例如 C++ 中的問題不會導致無法執行 Java 版本)
- 發布頻率更高
- 每個程式庫可下載的依附元件組合較少 (例如,多個雲端服務供應商的 SDK)
說明文件改善項目
我們正努力改善 Tink 說明文件。包括整合 Tink 說明文件來源 (讓這個網站成為 Tink 說明文件的可靠資料來源)、提供更新且易於遵循的範例,以及填補可能存在的任何說明文件缺漏。歡迎提出任何說明文件改善建議。請使用下方連結內的問卷調查,或是按照「競賽」頁面所述方式回報錯誤或提出功能要求。
重新設計金鑰組和登錄檔
我們希望讓使用者能夠更有效地管理金鑰組中的金鑰。這麼做可更輕鬆地實作金鑰管理系統,並且可以更全面支援將金鑰匯入及匯出為不同格式 (例如 PEM 或 JWK),同時確保 API 避免造成安全漏洞的常見錯誤。這項作業進行中。
我們也致力在 Tink 中支援多個註冊資料庫。這不僅可更輕鬆根據 Tink 開發程式庫,也能輕鬆移除及淘汰不安全的演算法。詳情請參閱註冊資料庫頁面。
Monitoring 支援
我們已將監控掛鉤新增至 Tink。使用者可以運用這些掛鉤,收集並分析加密作業的非機密資料,例如使用的金鑰類型,或以特定金鑰進行的加密呼叫次數。
這些資訊有助於確保金鑰充分輪替,或是建立可能容易遭受量子電腦安全漏洞的金鑰清單。之後,我們會提供教學課程,教您如何使用這些掛鉤。
後量子密碼編譯 (PQC)
我們正積極開發低階的 NIST 選擇 PQC 演算法實作。其中包括金鑰封裝機制 (KEM),特別是 Kyber/ML-KEM 和數位簽名,也就是 Dilithium/ML-DSA 和 SPHINCS+/SLH-DSA。準備就緒後,我們將為 Tink 中的這些後量子演算法提供官方 API。針對參加 PQC 有興趣的使用者,Tink 已在 C++ 中提供實驗性 PQC 演算法,涵蓋 NIST 選定的數位簽章,以及 NTRU-HRSS KEM (即 NIST KEM 候選項目,最終並未選取)。
我們打算微調 Tink 效能評估結果,並為使用者提供適當的效能基準。我們也開始調查 Tink 的潛在效能提升。
歡迎提供寶貴意見!
我們想瞭解您使用 Tink 的方式,或是哪些功能最實用。歡迎參加我們的問卷調查。
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
上次更新時間:2025-07-25 (世界標準時間)。
[null,null,["上次更新時間:2025-07-25 (世界標準時間)。"],[[["\u003cp\u003eTink is being split into multiple GitHub repositories by language to allow for decoupled releases and more frequent updates.\u003c/p\u003e\n"],["\u003cp\u003eTink documentation is being improved and consolidated with updated examples and addressed gaps.\u003c/p\u003e\n"],["\u003cp\u003eKeyset and registry are undergoing a redesign to enhance key management and support importing/exporting keys in various formats.\u003c/p\u003e\n"],["\u003cp\u003eMonitoring support has been added, enabling users to collect data on cryptographic operations for key rotation and security analysis.\u003c/p\u003e\n"],["\u003cp\u003eTink is actively integrating post-quantum cryptography algorithms and provides experimental access to some PQC algorithms in C++.\u003c/p\u003e\n"]]],["The Tink team is restructuring the project into multiple language-specific GitHub repositories for decoupled and frequent releases. They are overhauling documentation, consolidating sources and creating examples. Key management is being redesigned within keysets, including better support for various key formats, and multiple registries are being enabled. Monitoring hooks have been added for cryptographic operation analysis. They're implementing NIST-selected post-quantum cryptography algorithms, and working to benchmark and enhance Tink's performance.\n"],null,["# Tink Roadmap\n\n*(Last updated July 2023)*\n\nThis page details the high-level goals of the Tink team. It will be periodically\nupdated as the goals are achieved or changed.\n\nMultiple GitHub repositories\n----------------------------\n\nWe are splitting the project into multiple GitHub repositories, separated by\nlanguage. This provides the following benefits:\n\n- decoupled releases for each language (meaning an issue in C++ doesn't prevent performing a release for Java, for example)\n- more frequent releases\n- a reduced set of dependencies to download for each library (for example, SDKs for several cloud providers)\n\nDocumentation improvements\n--------------------------\n\nWe are undertaking an effort to improve the Tink documentation. This involves\nconsolidating Tink documentation sources (making this site the source of truth\nfor Tink documentation), providing updated and easy-to-follow examples, and\nfilling any documentation gaps that may exist. We welcome any documentation\nimprovement suggestions. Please use the survey linked below or file a bug or\nfeature request as outlined in the [Contibutions](/tink/contributing) page.\n\nKeyset and registry redesign\n----------------------------\n\nWe want to give users a better way to manage keys within a keyset. This will\nmake it easier to implement key management systems and will enable more\ncomprehensive support for importing and exporting keys to different formats like\nPEM or JWK (while ensuring the API prevents common mistakes that could result in\nsecurity vulnerabilities). This work is underway.\n\nWe are also working on allowing multiple registries in Tink. This will make it\neasier to develop libraries based on Tink and will also allow for the easy\nremoval and deprecation of insecure algorithms. See more on the\n[Registry](/design/registry) page.\n\nMonitoring support\n------------------\n\nWe have added monitoring hooks to Tink. Users can employ these hooks to collect\nand analyze non-sensitive data about their cryptographic operations, such as\nwhich key types are in use, or the number of encryption calls made with a\nspecific key.\n\nThis type of information is useful to ensure adequate key rotation, or to create\na list of keys that may be vulnerable to quantum computers. We will be providing\na tutorial on how to use these hooks in due course.\n\nPost-quantum cryptography (PQC)\n-------------------------------\n\nWe are actively working on low-level implementations of the\n[NIST-selected](https://csrc.nist.gov/projects/post-quantum-cryptography/selected-algorithms-2022) PQC algorithms. These include key\nencapsulation mechanisms (KEMs), specifically Kyber/ML-KEM, and digital\nsignatures, namely Dilithium/ML-DSA and SPHINCS+/SLH-DSA. Once ready, we will\nprovide official APIs for these post-quantum algorithms in Tink. For anyone\ninterested in starting with PQC, Tink already provides experimental PQC\nalgorithms in C++, covering the NIST-selected digital signatures, and the\nNTRU-HRSS KEM (a NIST KEM candidate which was ultimately not selected).\n\nPerformance\n-----------\n\nWe intend to fine-tune our Tink performance measurements and provide appropriate\nperformance benchmarks for our users. We are also starting to investigate\npossible performance enhancements to Tink.\n\nTell us what you think!\n-----------------------\n\nWe would love to hear about how you use Tink or which features would be most\nuseful for your implementation. Let us know by taking [our survey](https://docs.google.com/forms/d/1mhHvyNJQgTXFDnqOermB7-BD8GQSyvtFPUAhILRbYcA/ \"Tink Developer Survey\")."]]