tink 是google 多年加密实践的框架,提供了安全的加密处理方法,可以简化不少我们的加密处理
参考使用
public static void main(String[] args) throws GeneralSecurityException, IOException {AeadConfig.register();// 1. Generate the key material.KeysetHandle keysetHandle = KeysetHandle.generateNew(AeadKeyTemplates.AES256_GCM);// 2. Get the primitive.Aead aead = AeadFactory.getPrimitive(keysetHandle);byte[] plaintext = " dddddddddddddd".getBytes();byte[] additionalData = "dalongdemo".getBytes();byte[] ciphertext = aead.encrypt(plaintext, additionalData);System.out.println(new String(ciphertext, UTF_8));byte[] message = aead.decrypt(ciphertext,additionalData);System.out.println(new String(message, UTF_8));
}说明
tink 已经开源多年了,而且在不少讲google内部软件实践的书籍中都有介绍到,还是很值得使用的,而且tink 支持kms,我们可以很好的进行key 管理
参考资料
https://github.com/google/tink
https://github.com/tink-crypto/tink-java
