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

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

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

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

github.com/golang-module/dongle

gitee.com/golang-module/dongle

更新日志

  • 增加对 tea 超长文本的加密、解密支持,如果加密明文超过 8 字节,进行空字符串填充分段加密
  • 增加 Empty 空字符串填充模式的支持
  • 更改 github.com/tjfoc/gmsm/sm3github.com/emmansun/gmsm/sm3
  • encrypt 方法从 encrypter.go 移动到 cipher.go, 将 decrypt 方法从 decrypter.go 移动到 cipher.go
  • 移除 invalidTeaSrcErrorinvalidModeErrorinvalidPaddingError

功能清单

  • [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 签名、验签
目录
相关文章
|
3月前
|
JSON Go 开发者
go-carbon v2.5.0 发布,轻量级、语义化、对开发者友好的 golang 时间处理库
carbon 是一个轻量级、语义化、对开发者友好的 Golang 时间处理库,提供了对时间穿越、时间差值、时间极值、时间判断、星座、星座、农历、儒略日 / 简化儒略日、波斯历 / 伊朗历的支持。
71 4
|
3月前
|
存储 Cloud Native Shell
go库介绍:Golang中的Viper库
Viper 是 Golang 中的一个强大配置管理库,支持环境变量、命令行参数、远程配置等多种配置来源。本文详细介绍了 Viper 的核心特点、应用场景及使用方法,并通过示例展示了其强大功能。无论是简单的 CLI 工具还是复杂的分布式系统,Viper 都能提供优雅的配置管理方案。
103 6
|
3月前
|
Unix Linux Go
go进阶编程:Golang中的文件与文件夹操作指南
本文详细介绍了Golang中文件与文件夹的基本操作,包括读取、写入、创建、删除和遍历等。通过示例代码展示了如何使用`os`和`io/ioutil`包进行文件操作,并强调了错误处理、权限控制和路径问题的重要性。适合初学者和有经验的开发者参考。
|
5月前
|
存储 Go
Golang语言基于go module方式管理包(package)
这篇文章详细介绍了Golang语言中基于go module方式管理包(package)的方法,包括Go Modules的发展历史、go module的介绍、常用命令和操作步骤,并通过代码示例展示了如何初始化项目、引入第三方包、组织代码结构以及运行测试。
140 3
|
2月前
|
存储 监控 算法
员工上网行为监控中的Go语言算法:布隆过滤器的应用
在信息化高速发展的时代,企业上网行为监管至关重要。布隆过滤器作为一种高效、节省空间的概率性数据结构,适用于大规模URL查询与匹配,是实现精准上网行为管理的理想选择。本文探讨了布隆过滤器的原理及其优缺点,并展示了如何使用Go语言实现该算法,以提升企业网络管理效率和安全性。尽管存在误报等局限性,但合理配置下,布隆过滤器为企业提供了经济有效的解决方案。
95 8
员工上网行为监控中的Go语言算法:布隆过滤器的应用
|
2月前
|
Go 开发工具
百炼-千问模型通过openai接口构建assistant 等 go语言
由于阿里百炼平台通义千问大模型没有完善的go语言兼容openapi示例,并且官方答复assistant是不兼容openapi sdk的。 实际使用中发现是能够支持的,所以自己写了一个demo test示例,给大家做一个参考。
|
5天前
|
监控 Linux PHP
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
53 20
|
3天前
|
存储 监控 算法
探秘员工泄密行为防线:基于Go语言的布隆过滤器算法解析
在信息爆炸时代,员工泄密行为对企业构成重大威胁。本文聚焦布隆过滤器(Bloom Filter)这一高效数据结构,结合Go语言实现算法,帮助企业识别和预防泄密风险。通过构建正常操作“指纹库”,实时监测员工操作,快速筛查可疑行为。示例代码展示了如何利用布隆过滤器检测异常操作,并提出优化建议,如调整参数、结合日志分析系统等,全方位筑牢企业信息安全防线,守护核心竞争力。
|
11天前
|
Go C语言
Go语言入门:分支结构
本文介绍了Go语言中的条件语句,包括`if...else`、`if...else if`和`switch`结构,并通过多个练习详细解释了它们的用法。`if...else`用于简单的条件判断;`if...else if`处理多条件分支;`switch`则适用于基于不同值的选择逻辑。特别地,文章还介绍了`fallthrough`关键字,用于优化重复代码。通过实例如判断年龄、奇偶数、公交乘车及成绩等级等,帮助读者更好地理解和应用这些结构。
34 14
|
2月前
|
程序员 Go
go语言中结构体(Struct)
go语言中结构体(Struct)
124 71

热门文章

最新文章