大家好,又见面了,我是你们的朋友全栈君。
QS,为了整合常用的各大加解密工具,把各大常用加密方式集合成一个工具库,目前包括:
1 RSA
2 AES
3 3DES/DES
4 HMAC_SHA1
5 国密SM2/SM3/SM4
6 MD5
7 DSA
使用简例
调用eg1(SM4对称加密):
AbstractCoder cipher=EncryptionManager.getCipher(EncryptionManager.Model.SM4);
//调用简单加密方法
String cipherText = cipher.simpleEnCode(plainText,key);
//解密
plainText = cipher.simpleDeCode(cipherText,key);
调用eg2(DSA验签):
//密钥对生成种子
String seed="akjh93124kjasfwe23423sd323";
//生成密钥对
DSAKeyHelper.KeyPass keyPass=DSAKeyHelper.genKeyPair(seed);
//获取加密器
AbstractCoder abstractCoder=EncryptionManager.getCipher(EncryptionManager.Model.DSA);
//计算签名
String sign=abstractCoder.digestSignature(value,keyPass.getPrivateKeyHex());
//验证签名
boolean flag=abstractCoder.verifyWithDSA(value.getBytes(),sign,Utils.hexStringToBytes(keyPass.getPublicKeyHex()));
加解密入口在EncryptionManager类中,也可以单独使用其中某一个模块,如:
Sm2Kit sm2kit=new Sm2Kit()
String sign=sm2kit.digestSignature(value,keyPass.getPrivateKeyHex());
更多使用详见github项目地址:
github:https://github.com/lambertlei/UOpenCryption.git
欢迎大家fork,并优化和添加更多加解密工具将其更加完善。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/145642.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...