选择基元

选择您的使用场景以确定正确的原语,然后点击相应链接,获取有关使用该原语的指南。

加密数据…

原初 详细信息
...采用标准尺寸 关联数据加密的身份验证 (AEAD) - 适合大多数需求
- 接受最大 232 字节的明文
- 提供明文机密性,并验证完整性和真实性
...在大型文件或数据流中 流式 AEAD - 对于过大而无法在单个步骤中处理的数据
...确定性地 确定性 AEAD - 对于给定的纯文本和密钥,生成相同的密文
...使用受 KMS 保护的密钥 Key Management System (KMS) Envelope AEAD - 使用新的 AEAD 密钥
加密每个明文- 使用 KMS 加密每个 AEAD 密钥
...使用公钥加密,使用私钥解密 混合加密
- 未经过身份验证
- 当发送者无法存储密钥(私钥)时很有用

所有这些原语都能够将密文绑定到其上下文

通过以下方式确保数据的真实性和完整性:

原初 详细信息
...使用一个密钥创建和验证 MAC 消息身份验证码 (MAC) - 速度非常快
- 只能由可以创建 MAC 的相关方进行验证
...使用私钥创建签名,使用公钥进行验证 数字签名 - 可由无法创建签名的各方验证

其他

原初 详细信息
创建和验证 JWT JSON Web 令牌 (JWT) - 还可以转换为 JSON Web 密钥 (JWK) 格式或从该格式转换
使用 KMS 加密任何原语的密钥集 KMS 加密的基元 - 不需要每次使用原语时都与 KMS 互动(例如,加密明文),这与 KMS Envelope AEAD 不同

有问题吗?

Tink 组织页面上链接的特定语言 GitHub 代码库中创建问题。