go-dongle 0.2.7 版本发布,一个轻量级、语义化的 golang 编码解码、加密解密库

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: dongle 是一个轻量级、语义化、对开发者友好的 Golang 编码解码和加密解密库

dongle 是一个轻量级、语义化、对开发者友好的 Golang 编码解码和加密解密库

Dongle 已被 awesome-go 收录, 如果您觉得不错,请给个 star 吧

github.com/golang-module/dongle

gitee.com/golang-module/dongle

更新日志

  • 新增 dongle.openssl.RSA.GenPKCS1KeyPair() 方法,生成 PKCS#1 格式 RSA 密钥对
  • 新增 dongle.openssl.RSA.GenPKCS8KeyPair() 方法,生成 PKCS#8 格式 RSA 密钥对
  • 新增 dongle.openssl.RSA.VerifyKeyPair() 方法,验证 RSA 密钥对是否匹配
  • 新增 dongle.openssl.RSA.IsPublicKey() 方法,判断是否是 RSA 公钥
  • 新增 dongle.openssl.RSA.IsPrivateKey() 方法,判断是否是 RSA 私钥
  • 新增 dongle.openssl.RSA.ParsePublicKey() 方法,解析 RSA 公钥
  • 新增 dongle.openssl.RSA.ParsePrivateKey() 方法,解析 RSA 私钥
  • 新增 dongle.openssl.RSA.ExportPublicKey() 方法,从 RSA 私钥里导出公钥

功能清单

  • [x] Hex 编码、解码
  • [x] Base16 编码、解码
  • [x] Base32 编码、解码
  • [x] Base45 编码、解码
  • [x] Base58 编码、解码
  • [x] Base62 编码、解码
  • [x] Base64 编码、解码
  • [x] Base64URL 编码、解码
  • [x] SafeURL 编码、解码
  • [x] Base85 编码、解码
  • [x] Base91 编码、解码
  • [x] Base100 编码、解码
  • [x] Morse(摩斯) 编码、解码
  • [x] Md2 加密
  • [x] Md4 加密
  • [x] Md5 加密
  • [x] Sha1 加密
  • [x] Sha3-224 加密
  • [x] Sha3-256 加密
  • [x] Sha3-384 加密
  • [x] Sha3-512 加密
  • [x] Sha224 加密
  • [x] Sha256 加密
  • [x] Sha384 加密
  • [x] Sha512 加密
  • [x] Sha512-224 加密
  • [x] Sha512-256 加密
  • [x] Shake128 加密
  • [x] Shake256 加密
  • [x] Ripemd160 加密
  • [x] Blake2b-256 加密
  • [x] Blake2b-384 加密
  • [x] Blake2b-512 加密
  • [x] Blake2s-256 加密
  • [x] Hmac-md2 加密
  • [x] Hmac-md4 加密
  • [x] Hmac-md5 加密
  • [x] Hmac-sha1 加密
  • [x] Hmac-sha3-224 加密
  • [x] Hmac-sha3-256 加密
  • [x] Hmac-sha3-384 加密
  • [x] Hmac-sha3-512 加密
  • [x] Hmac-sha224 加密
  • [x] Hmac-sha256 加密
  • [x] Hmac-sha384 加密
  • [x] Hmac-sha512 加密
  • [x] Hmac-sha512-224 加密
  • [x] Hmac-sha512-256 加密
  • [x] Hmac-ripemd160 加密
  • [x] Hmac-sm3 加密
  • [ ] Rc2 加密、解密
  • [x] Rc4 加密、解密
  • [ ] Rc5 加密、解密
  • [ ] Rc6 加密、解密
  • [x] Tea 加密、解密
  • [ ] Xtea 加密、解密
  • [x] Aes 加密、解密
  • [x] Blowfish 加密、解密
  • [x] Des 加密、解密
  • [x] 3Des 加密、解密
  • [x] Rsa 加密、解密
  • [ ] Ecc 加密、解密
  • [ ] Sm2 加密、解密
  • [x] Sm3 加密
  • [ ] Sm4 加密、解密
  • [ ] Sm7 加密、解密
  • [ ] Sm9 加密、解密
  • [x] Bcrypt 签名、验签
  • [x] Ed25519 签名、验签
  • [x] Rsa 签名、验签
  • [ ] Dsa 签名、验签
目录
相关文章
|
23天前
|
存储 算法 数据库
使用python hashlib模块给明文字符串加密,以及如何撞库破解密码
`hashlib` 是 Python 中用于实现哈希功能的模块,它可以将任意长度的输入通过哈希算法转换为固定长度的输出,即散列值。该模块主要用于字符串加密,例如将用户名和密码转换为不可逆的散列值存储,从而提高安全性。`hashlib` 提供了多种哈希算法,如 `md5`、`sha1`、`sha256` 等。
35 1
|
1月前
|
Rust 安全 算法
Go标准库的新 math/rand
Go标准库的新 math/rand
|
17天前
|
Unix Go
Golang语言标准库time之日期和时间相关函数
这篇文章是关于Go语言日期和时间处理的文章,介绍了如何使用Go标准库中的time包来处理日期和时间。
29 3
|
1月前
|
JSON 中间件 Go
go语言后端开发学习(四) —— 在go项目中使用Zap日志库
本文详细介绍了如何在Go项目中集成并配置Zap日志库。首先通过`go get -u go.uber.org/zap`命令安装Zap,接着展示了`Logger`与`Sugared Logger`两种日志记录器的基本用法。随后深入探讨了Zap的高级配置,包括如何将日志输出至文件、调整时间格式、记录调用者信息以及日志分割等。最后,文章演示了如何在gin框架中集成Zap,通过自定义中间件实现了日志记录和异常恢复功能。通过这些步骤,读者可以掌握Zap在实际项目中的应用与定制方法
go语言后端开发学习(四) —— 在go项目中使用Zap日志库
|
23天前
|
Ubuntu Linux 数据安全/隐私保护
使用Cython库包对python的py文件(源码)进行加密,把python的.py文件生成.so文件并调用
本文介绍了在Linux系统(Ubuntu 18.04)下将Python源代码(`.py文件`)加密为`.so文件`的方法。首先安装必要的工具如`python3-dev`、`gcc`和`Cython`。然后通过`setup.py`脚本使用Cython将`.py文件`转化为`.so文件`,从而实现源代码的加密保护。文中详细描述了从编写源代码到生成及调用`.so文件`的具体步骤。此方法相较于转化为`.pyc文件`提供了更高的安全性。
33 2
|
2天前
|
Shell Go API
Go语言grequests库并发请求的实战案例
Go语言grequests库并发请求的实战案例
|
1月前
|
存储 JSON 前端开发
一文搞懂 Go 1.21 的日志标准库 - slog
一文搞懂 Go 1.21 的日志标准库 - slog
40 2
|
1月前
|
JSON Go API
一文搞懂 Golang 高性能日志库 - Zap
一文搞懂 Golang 高性能日志库 - Zap
52 2
|
1月前
|
Prometheus Cloud Native Go
Go 1.22 标准库 slices 新增函数和一些旧函数增加新特性
Go 1.22 标准库 slices 新增函数和一些旧函数增加新特性
|
21天前
|
XML Go 数据库