安全利器之Tink(探索-Java)

本文介绍了Google的开源加密库Tink,详细解析了Tink在Java中的使用,包括Aead、DeterministicAead、Hybrid、Mac和Signature的加密支持,并提供了相关的加密算法模板和工厂类。此外,还提到了Tink在不同加密场景中的应用和注意事项。
摘要由CSDN通过智能技术生成

Tink,Google开源的专业加密库

github 密码学是一门复杂的学科,对于开发人员来说应该做到的大概是

  1. 加密算法的特点
    • 适用场景
    • 优点、缺点
  2. 加密算法的使用

在开发中我们可以直接使用Tink进行一些加密相关操作

Tink中的加密支持

在Tink中提供了Aead、DeterministicDead、Hybrid、Mac及signature的支持。从包结构看Tink的构成

  • aead, (Authenticated Encryption with Associated Data) 使用关联数据进行身法认证加密
  • annotations
  • config
  • daead, (Deterministic Authenticated Encryption with Associated Data)使用关联数据进行确定性认证加密
  • hybrid, 混合型加密
  • integration
  • mac, 带秘钥的hash
  • proto
  • signature, 签名
  • streamingaead, 使用关联数据进行流认证加密
  • subtle
  • util

通过官方demo我们可以知道Tink的使用方式。

// 运行时必须先使用Tink注册基元,以便让Tink知道所需的实现。
TinkConfig.register();

// 1.加载或生成加密密钥材料(Tink术语表示的KeySet)
KeysetHandle keysetHandle = KeysetHandle.generateNew(Aea
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值