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

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

github.com/golang-module/dongle

gitee.com/golang-module/dongle

更新日志

  • encode 结构体更名为 encoder
  • decode 结构体更名为 decoder
  • encrypt 结构体更名为 encrypter, 新增 ToRawString() 和 ToRawBytes()方法,输出未经编码的原始字符串和字节切片
  • decrypt 结构体更名为 decrypter, 新增 FromRawString() 和 FromRawBytes() 方法,对未经编码的原始字节切片和字符串进行解密
  • sign 结构体更名为 signer, 新增 ToRawString() 和 ToRawBytes()方法,输出未经编码的原始字符串和字节切片签名
  • verify 结构体更名为 verifier, 新增 FromRawString() 和 FromRawBytes() 方法,对未经编码的原始字节切片和字符串签名进行验证;新增 ToBool() 方法,输出验签结果布尔值
  • 增加对 sha3-224sha3-256sha3-384``、sha3-512` 加密支持
  • 增加对 sha512sha512-224sha512-256 加密支持
  • 增加对 rsa 签名、验签支持
  • base58.gobase62.gobase91.gobase100.go 独立成子包
  • 摩斯(morse)编码、解码支持指定分隔符,默认是 /
  • 统一单元测试格式

功能清单

  • Hex 编码、解码
  • Base16 编码、解码
  • Base32 编码、解码
  • Base58 编码、解码
  • Base62 编码、解码
  • Base64 编码、解码
  • Base64URL 编码、解码
  • SafeURL 编码、解码
  • Base85 编码、解码
  • Base91 编码、解码
  • Base100 编码、解码
  • Morse(摩斯) 编码、解码
  • Md4 加密
  • Md5 加密
  • Sha1 加密
  • Sha3-224 加密
  • Sha3-256 加密
  • Sha3-384 加密
  • Sha3-512 加密
  • Sha224 加密
  • Sha256 加密
  • Sha384 加密
  • Sha512 加密
  • Sha512-224 加密
  • Sha512-256 加密
  • Ripemd160 加密
  • Hmac-md4 加密
  • Hmac-md5 加密
  • Hmac-sha1 加密
  • Hmac-sha3-224 加密
  • Hmac-sha3-256 加密
  • Hmac-sha3-384 加密
  • Hmac-sha3-512 加密
  • Hmac-sha224 加密
  • Hmac-sha256 加密
  • Hmac-sha384 加密
  • Hmac-sha512 加密
  • Hmac-sha512-224 加密
  • Hmac-sha512-256 加密
  • Hmac-ripemd160 加密
  • Hmac-sm3 加密
  • Rc2 加密、解密
  • Rc4 加密、解密
  • Rc5 加密、解密
  • Rc6 加密、解密
  • Tea 加密、解密
  • Xtea 加密、解密
  • Aes 加密、解密
  • Des 加密、解密
  • 3Des 加密、解密
  • Rsa 加密、解密
  • Ecc 加密、解密
  • Sm2 加密、解密
  • Sm3 加密
  • Sm4 加密、解密
  • Sm7 加密、解密
  • Sm9 加密、解密
  • Bcrypt 签名、验签
  • Rsa 签名、验签
  • Dsa 签名、验签

go-dongle 0.2.0 版本发布了,一个轻量级、语义化的 golang 编码解码、加密解密库的更多相关文章

  1. 面向UI编程:ui.js 1.0 粗糙版本发布,分布式开发+容器化+组件化+配置化框架,从无到有的艰难创造

    时隔第一次被UI思路激励,到现在1.0的粗糙版本发布,掐指一算整整半年了.半年之间,有些细节不断推翻重做,再推翻再重做.时隔今日,终于能先出来个东西了,这个版本很粗糙,主体功能大概能实现了,但是还是有 ...

  2. 开源微信管家平台——JeeWx 捷微4.0 微服务版本发布,全新架构,全新UI,提供强大的图文编辑器

    JeeWx捷微4.0   微服务版本发布^_^ 换代产品(全新架构,全新UI,提供强大的图文编辑器) JEEWX 从4.0版本开始,技术架构全新换代,采用微服务架构,插件式开发,每个业务模块都是独立的 ...

  3. PEACHPIE 0.9.11 版本发布,可以上生产了

    PeachPie在官方博客(https://www.peachpie.io/2018/10/release-0911-visual-studio.html)发布了PeachPie的0.9.11版本 - ...

  4. redis终于有比较大的进展了,redis3.0.1 稳定版本发布,支持集群。

    原文地址:https://raw.githubusercontent.com/antirez/redis/3.0/00-RELEASENOTES Redis 3.0 release notes --[ ...

  5. 【Phylab2.0】Alpha版本发布说明

    新版本特性 更多的实验 Part Phylab2.0[Alpha] Phylab1.0 1011 1010113 缺失 1011 1010212 缺失 1021 1020113 1021 102021 ...

  6. 【Phylab2.0】Beta版本发布说明

    新版本特性 1. 新的物理实验 1020314等 2. 讨论区与报告界面的整合 3. 在线脚本管理功能 4. 管理员功能 有在线脚本管理功能的支持后加入了管理员模式,可以向其他学校开放,招募管理员并添 ...

  7. keleyi菜单0.1.5版本发布了

    keleyi菜单是一个让你轻松创建向上弹出菜单的jquery插件. 最新版本0.1.5增加了显示三角形的功能,当一级菜单包含有子菜单时,会在一级菜单的右侧显示一个小三角形.如图所示: 查看例子:htt ...

  8. 全平台 Chrome 浏览器 44.0.2403.89 版本下载

    全平台 Chrome 浏览器 44.0.2403.89 版本发布 详细更新日志请参见:https://chromium.googlesource.com/chromium/src/+log/43.0. ...

  9. net core体系-web应用程序-4asp.net core2.0 项目实战(1)-8项目加密解密方案

    本文目录1. 摘要2. MD5加密封装3. AES的加密.解密4. DES加密/解密5. 总结 1.  摘要 C#中常用的一些加密和解密方案,如:md5加密.RSA加密与解密和DES加密等,Asp.N ...

  10. 【翻译】Ext JS 6.2 早期访问版本发布

    原文:Announcing Ext JS 6.2 Early Access 非常开心,Sencha Ext JS 6.2早期访问版本今天发布了.早期访问版本的主要目的是为了让大家进行测试并评估Ext ...

随机推荐

  1. centos使用Yum安装postgresql 13

    rpm源安装 yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat ...

  2. 通过Thread Pool Executor类解析线程池执行任务的核心流程

    摘要:ThreadPoolExecutor是Java线程池中最核心的类之一,它能够保证线程池按照正常的业务逻辑执行任务,并通过原子方式更新线程池每个阶段的状态. 本文分享自华为云社区<[高并发] ...

  3. 云原生下基于K8S声明式GitOps持续部署工具ArgoCD实战-上

    @ 目录 概述 定义 工作原理 主要组件 核心概念 环境准备 概述 安装Kubekey 创建K8S 安装K9S OpenLB 安装ArgoCD 安装 ArgoCD CLI 从Git库中创建一个应用程序 ...

  4. POJ2533 Longest Ordered Subsequence (线性DP)

    设dp[i]表示以i结尾的最长上升子序列的长度. dp[i]=max(dp[i],dp[j]+1). 1 #include <map> 2 #include <set> 3 # ...

  5. Dytechlab Cup 2022 (A - C)

    Dytechlab Cup 2022 (A - C) A - Ela Sorting Books 分析:贪心,将字符串每一位都存在map里,从前往后尽量让每一个\(n / k\)的段\(mex\)值尽 ...

  6. java:找不到符号

    出现这种情况的原因之一:实体类的字段修改过.实体类中的变量名修改.然而其他地方调用的字段名还是修改之前的变量.

  7. VS2022连接Oracle数据库所需包和连接字符串

    VS连接ORACLE数据库 l  VS2022连接ORACLE数据库时,需要引入Oracle.ManagedDataAccess.Core包. l  引入方式:打开VS2022==>项目==&g ...

  8. ES6 学习笔记(八)基本类型Symbol

    1.前言 大家都知道,在ES5的时候JavaScript的基本类型有Number.String.Boolean.undefined.object.Null共6种,在es6中,新增了Symbol类型,用 ...

  9. Day13 note

    super注意点: 1.super调用父类的构造方法,必须在构造方法的第一行 2.super必须只能出现在子类的方法或者构造方法中 3.super和this不能同时调用构造方法对比this: 1.代表 ...

  10. python 基本使用 异常判断

    简单常用 isinstance 判断一个对象是否是一个已知的类型 arg=123 isinstance(arg, int) #输出True isinstance(arg, str) #输出False ...