go 常用加密解密库(Rsa/SM2/Aes/Des/TripleDes/SM4/Tea/Twofish)
项目介绍
- go-cryptobin 包括常用的对称加密和非对称加密及签名验证
- 对称加密解密(Aes/Des/TripleDes/SM4/Tea/Twofish/Xts)
- 对称加密解密模式(ECB/CBC/PCBC/CFB/OFB/CTR/GCM/CCM)
- 对称加密解密补码(NoPadding/ZeroPadding/PKCS5Padding/PKCS7Padding/X923Padding/ISO10126Padding/ISO97971Padding/ISO7816_4Padding/TBCPadding/PKCS1Padding)
- 非对称加密解密(RSA/SM2)
- 非对称签名验证(RSA/PSS/DSA/Ecdsa/EdDSA/SM2)
- 默认 Aes, ECB, NoPadding
- 如果对你有帮助或者喜欢可以点个星星支持下 项目地址: https://github.com/deatil/go-cryptobin
更新功能
- v1.0.2011 重构了pkcs 相关加密的逻辑
- 添加了更多的 pkcs 加密类型
- 使用文档 https://github.com/deatil/go-cryptobin/blob/main/docs/README.md
下载安装
go get -u github.com/deatil/go-cryptobin
开始使用
package main
import (
"fmt"
"github.com/deatil/go-cryptobin/cryptobin/crypto"
)
func main() {
// 加密
cypt := crypto.
FromString("useData").
SetKey("dfertf12dfertf12").
Aes().
ECB().
PKCS7Padding().
Encrypt().
ToBase64String()
// 解密
cyptde := crypto.
FromBase64String("i3FhtTp5v6aPJx0wTbarwg==").
SetKey("dfertf12dfertf12").
Aes().
ECB().
PKCS7Padding().
Decrypt().
ToString()
// i3FhtTp5v6aPJx0wTbarwg==
fmt.Println("加密结果:", cypt)
fmt.Println("解密结果:", cyptde)
}
有疑问加站长微信联系(非本文作者)

之前用了很多加密解密的库,都不咋行,最后只能自己组装,修改了。
比如哪些方面会不符合需求需要自己修改?