项目简介
dongle
是一个轻量级、语义化、对开发者友好的 golang
编码&密码库,100%
单元测试覆盖率,已被 awesome-go 和 hello-github 收录,并获得 gitee
2024 年最有价值项目(GVP
)和 gitcode
2024 年度开源摘星计划 (G-Star
) 项目


项目特性
- 丰富的编码算法支持:支持 Base32/Base45/Base58/Base62/Base64/Base85/Base91/Base100/Hex/Morse 等多种编码格式
- 强大的哈希算法支持:支持 MD2/MD4/MD5、SHA1/SHA2/SHA3、RIPEMD160 等多种哈希算法和 HMAC 消息认证
- 完整的加密算法支持:支持 RC4、AES、DES、3DES、Blowfish 等对称加密算法和 RSA 等非对称加密算法
- 可靠的签名验证支持:支持数字签名和验证,提供 PKCS1/PKCS8 密钥格式支持,确保数据完整性和身份认证
- 高效的流式处理:支持大文件的流式编码解码、加密解密,边读边处理,无需等待全部数据,内存占用低
- 全面的测试覆盖:100%单元测试覆盖率,所有编码/解码、加密/解密、HASH/HMAC、签名/验证模块均有全面单元测试,覆盖所有边界和异常情况
- 安全可靠的设计:提供输入验证、错误处理、内存安全等安全特性,支持密钥管理和错误消息统一
- 详细的错误处理:提供详细的错误信息和类型,支持错误链追踪,便于调试和问题定位