プリミティブの選択

ユースケースを選択して正しいプリミティブを特定し、リンクをクリックしてプリミティブの使用に関するガイダンスをご覧ください。

データを暗号化...

基本ロール 詳細
標準サイズの場合 関連データを伴う認証付き暗号化(AEAD) - ほとんどのニーズに適切
- 最大 232 バイトの平文に対応
- 平文の機密性を確保し、完全性と真正性を検証
大きなファイルやデータ ストリームの場合 ストリーミング AEAD - データが大きすぎて 1 ステップでは処理できない場合
...決定論的に 確定的な AEAD - 指定された平文と鍵に対して同じ暗号テキストを生成します
KMS で保護された鍵を使用する場合 Key Management System(KMS)エンベロープ AEAD - すべての平文を新しい AEAD 鍵で暗号化する
- すべての AEAD 鍵を KMS で暗号化する
公開鍵を使用する場合、秘密鍵でデータを復号する場合 ハイブリッド暗号化
- 未認証
- 送信者がシークレット(秘密鍵)を保存できない場合に便利です

これらのプリミティブはすべて、暗号テキストをそのコンテキストにバインドできます。

データの信頼性と整合性を確保するために...

基本ロール 詳細
1 つの鍵で MAC を作成して検証する メッセージ認証コード(MAC) - 非常に速い
- MAC を作成できる当事者のみが検証可能
...秘密鍵で署名を作成し、公開鍵で検証する デジタル署名 - 署名を作成できない関係者による検証が可能

その他

基本ロール 詳細
JWT を作成して検証する JSON Web Token(JWT) - 追加で JSON Web Key(JWK)形式に変換可能
KMS を使用してプリミティブの鍵セットを暗号化する KMS-Encrypted プリミティブ - KMS エンベロープ AEAD とは異なり、プリミティブが使用されるたびに KMS を操作する必要がない(平文の暗号化など)

ご質問

Tink の組織ページにリンクされている、言語別の GitHub リポジトリでイシューを作成します。