ユースケースを選択して適切なプリミティブを特定し、リンク先でプリミティブの使用に関するガイダンスを確認します。
データを暗号化する
基本ロール | 詳細 | |
---|---|---|
...標準サイズ | 関連データを伴う認証付き暗号化(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 で暗号化されたプリミティブ | - KMS エンベロープ AEAD とは異なり、プリミティブを使用するたびに(平文を暗号化するなど)KMS を操作する必要はありません。 |
ご不明な点がある場合は、
Tink 組織ページにリンクされている言語固有の GitHub リポジトリで、問題を作成します。