暗号テキストをコンテキストにバインドしたい
最新の暗号化モードは、認証はされるが暗号化されない関連データをサポートしています。これを使用して、暗号テキストを特定のコンテキストにバインドできます。
暗号文を関連データにバインドする例としては、次のようなものがあります。
データベースをセル単位(または列単位)で暗号化する。これにより、セルの暗号テキストがその特定のセルでのみ有効になります。これにより、攻撃者が暗号テキストをセル間で移動できなくなります。この例では、暗号テキストは、指定されたデータベース セルの column_id
と row_id
にバインドする必要があります。
暗号文を異なるクライアントに保存すると、クライアント A がクライアント B の暗号文を復号に提供した場合に不正行為を検出できます。ここで、暗号文はクライアントの名前にバインドする必要があります。
Tink には、暗号テキストをコンテキストにバインドする方法がいくつかあります。
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2025-03-04 UTC。
[null,null,["最終更新日 2025-03-04 UTC。"],[[["Modern encryption techniques can authenticate additional data without encrypting it, ensuring data integrity and context."],["This \"associated data\" links ciphertext to its specific location or user, preventing unauthorized use or manipulation."],["Tink offers multiple encryption options, including AEAD, Streaming AEAD, Deterministic AEAD, and Hybrid Encryption, that support binding ciphertext to its context for enhanced security."],["Developers can utilize associated data to prevent attacks like ciphertext movement or unauthorized decryption by ensuring the ciphertext remains tied to its intended context."]]],["Encryption modes utilize associated data to authenticate but not encrypt, binding ciphertexts to specific contexts. This prevents ciphertext misuse. Examples include binding database cell data to `column_id` and `row_id` or binding data to a client's name. Tink offers this functionality through AEAD, Streaming AEAD, Deterministic AEAD with an associated data input and Hybrid encryption with a context info parameter. Decryption fails if the correct associated data is not provided.\n"]]