首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

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

dongle 是一个轻量级、语义化、对开发者友好的 Golang 编码解码和加密解密库Dongle 已被 awesome-go 收录, 如果您觉得不错,请给个 star 吧github.com/golang-module.../donglegitee.com/golang-module/dongle更新日志增加对 tea 超长文本的加密、解密支持,如果加密明文超过 8 字节,进行空字符串填充分段加密增加 Empty 空字符串填充模式的支持更改...github.com/tjfoc/gmsm/sm3 为 github.com/emmansun/gmsm/sm3将 encrypt 方法从 encrypter.go 移动到 cipher.go, 将...Hex 编码、解码Base16 编码、解码Base32 编码、解码Base45 编码、解码Base58 编码、解码Base62 编码、解码Base64 编码、解码Base64URL 编码、解码SafeURL...加密Sha3-384 加密Sha3-512 加密Sha224 加密Sha256 加密Sha384 加密Sha512 加密Sha512-224 加密Sha512-256 加密Shake128 加密Shake256

75140
您找到你想要的搜索结果了吗?
是的
没有找到

Gin 框架之jwt 介绍基本使用

3.2.3 私有的声明 私有声明是提供者和消费者所共同定义的声明,一般建议存放敏感信息,因为base64是对称解密的,意味着该部分信息可以归类为明文信息。...编码后的 header base64 编码后的 payload secret : 秘钥 (只有服务端知道) 这个部分需要将base64加密后的header和base64加密后的payload使用.连接组成的字符串...package main import ( "crypto/hmac" "crypto/sha256" "encoding/base64" "encoding/json" "fmt" )...(点) 拼接成一个大字符串, 然后返回给客户端让其存储 package main import ( "crypto/hmac" "crypto/sha256" "encoding/base64"...json 字典, 采用 base64 编码得到头字符串 用关键信息存储 json 字典,采用 base64 编码得到体字符串 用头、体编码字符串再加安全码信息(secret)存储 json 字典,

14610

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

dongle 是一个轻量级、语义化、对开发者友好的 Golang 编码解码和加密解密库Dongle 已被 awesome-go 收录, 如果您觉得不错,请给个 star 吧github.com/golang-module...dongle.openssl.RSA.GenPKCS8KeyPair() 方法,生成 PKCS#8 格式 RSA 密钥对新增 dongle.openssl.RSA.VerifyKeyPair() 方法,验证 RSA 密钥对是否匹配新增...、解码Base16 编码、解码Base32 编码、解码Base45 编码、解码Base58 编码、解码Base62 编码、解码Base64 编码、解码Base64URL 编码、解码SafeURL 编码、...Sha3-384 加密Sha3-512 加密Sha224 加密Sha256 加密Sha384 加密Sha512 加密Sha512-224 加密Sha512-256 加密Shake128 加密Shake256...加密Hmac-sha1 加密Hmac-sha3-224 加密Hmac-sha3-256 加密Hmac-sha3-384 加密Hmac-sha3-512 加密Hmac-sha224 加密Hmac-sha256

61320

Go每日一库之169:dongle(编解码、加解密)

// SHAQH34TXJ2CBEBLBUN7BEBSKHEUWSTC // 对字符串进行 hmac-sha1 加密,输出经过 base64 编码字符串 dongle.Encrypt.FromString...() // []byte("4VueWn7MsfF9yB3AfJCaiRk23DQp3A2UCsy87A==") Sha256 加密 // 对字符串进行 sha256 加密,输出经过 hex 编码字符串...XFGSPOMTJU7ARJJOKLL5U7NL7LCIJ37DPJJYB3UQRD32ZYXPZXUQ==== // 对字符串进行 sha256 加密,输出经过 base64 编码字符串 dongle.Encrypt.FromString...====") // 对字节切片进行 sha256 加密,输出经过 base64 编码的字节切片 dongle.Encrypt.FromBytes([]byte("hello world")).BySha256...==== // 对字符串进行 hmac-sha256 加密,输出经过 base64 编码字符串 dongle.Encrypt.FromString("hello world").ByHmacSha256

39460

gin博客项目复盘--05 JWT全面解读、详细使用步骤

JWT ❝通俗地说,JWT的本质就是一个字符串,它是将用户信息保存到一个Json字符串中,然后进行编码后得到一个JWT token,并且这个JWT token带有签名信息,接收后可以校验是否被篡改,可以用于在各方之间安全地将信息作为...在传输的时候,会将JWT的3部分分别进行Base64编码后用.进行连接形成最终传输的字符串。...JWTString=Base64(Header).Base64(Payload).HMACSHA256(base64UrlEncode(header)+"."...+base64UrlEncode(payload),secret) Header JWT头是一个描述JWT元数据的JSON对象,alg 属性表示签名使用的算法,默认为HMAC SHA256(写为HS256...然后,使用 header 中指定的签名算法(默认情况下为HMAC SHA256)根据以下公式生成签名 HMACSHA256(base64UrlEncode(header)+"."

45530

100来行实现一套灵活可扩展的 JWT 库

比如: HS256 (HMAC + SHA-256) RS256 (RSA + SHA-256) 当然还有很多,你可以自己去组合,我们写的这个库支持你自定义。...下面我们就去实现一个最简单的 BS256 算法(生产环境一般不会使用),新建一个 bs.go 文件,内容如下: package jwt import ( "crypto/sha256" "encoding.../base64" "fmt" ) func NewBS256() IJwt { jwtM := Jwt{} //Sha256 jwtM.SetSignFunc(func(bytes []byte...去加密,签名采用 sha256 当然这种算法生成的 JWT 很容易被人篡改和模仿,不能用于生产的。...生产环境一般会使用会带有私钥的可逆加密算法去加密 header(头信息)和 payload(内容),比如: HMAC ,RSA ,再配合 MD5 或者 SHA 算法进行签名。

24640

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

dongle 是一个轻量级、语义化、对开发者友好的 Golang 编码解码和加密解密库Dongle 已被 awesome-go 收录, 如果您觉得不错,请给个 star 吧github.com/golang-module...移动到 dongle/rsa.go将 invalidRsaHashError 从 errors.go 移动到 dongle/rsa.go升级 golang.org/x/crypto 版本到 v0.4.0...修复备注错误功能清单Hex 编码、解码Base16 编码、解码Base32 编码、解码Base45 编码、解码Base58 编码、解码Base62 编码、解码Base64 编码、解码Base64URL...编码、解码SafeURL 编码、解码Base85 编码、解码Base91 编码、解码Base100 编码、解码Morse(摩斯) 编码、解码Md2 加密Md4 加密Md5 加密Sha1 加密Sha3-224...加密Sha3-256 加密Sha3-384 加密Sha3-512 加密Sha224 加密Sha256 加密Sha384 加密Sha512 加密Sha512-224 加密Sha512-256 加密Shake128

67730

DRF JWT认证(一)

校验:根据客户端带token的请求 反解出 user 对象 JWT的种类 nonsecure JWT JWS base64编码解码 DRF JWT认证(一) JWT认证 Json web token...在传输的时候,会将JWT的3部分分别进行Base64编码后用.进行连接形成最终传输的字符串。...最后,使用Base64 URL算法将上述JSON对象转换为字符串保存 第一段头部承载的信息: 声明类型,这里是jwt 声明加密的算法 通常直接使用 HMAC SHA256 完整的头部就像下面这样的JSON...私有的声明 : 私有声明是提供者和消费者所共同定义的声明,一般建议存放敏感信息,因为base64是对称解密的,意味着该部分信息可以归类为明文信息。.../RS384/RS512) ECDSA【椭圆曲线数据签名算法(非对称)】(ES256/ES384/ES512) base64编码解码 import base64 import json dic_info

38810

​易加密(easy_encryption_tool)小工具

easy_encryption_tool不仅支持对称加解密、非对称加解密、签名验签、证书解析、HMAC计算以及随机字符串生成等多种功能,还提供了对字符串base64编码的字节流、文件这三种输入输出方式的支持...对于非对称加解密,这款工具目前仅支持字符串base64编码的字节流作为输入输出,这是因为非对称加解密算法通常更适用于加密小量数据,如对称密钥等。尽管如此,这一设计依然能够满足大多数日常加密需求。...、base64编码的字节流和文件作为输入 支持文件和 base64 编码的字节流作为输出 提供证书解析和验证功能 实现HMAC计算,用于数据的完整性校验 交互设计 命令行界面: 设计简洁明了的命令行界面...,加密时允许输入:字符串base64 编码数据、文件路径,解密时允许输入:base64 编码数据、文件路径...-input-data 的值被 base64 编码过,则需要带上 -e 参数,-e -f 互斥 [default: False]

7372219

微服务项目:尚融宝(23)(后端搭建:上手JWT令牌)

{ "alg": "HS256", "typ": "JWT" } 在上面的代码中,alg属性表示签名使用的算法,默认为HMAC SHA256(写为HS256);typ属性表示令牌的类型,JWT令牌统一写为...最后,使用Base64 URL算法将上述JSON对象转换为字符串保存。 有效载荷 有效载荷部分,是JWT的主体内容部分,也是一个JSON对象,包含需要传递的数据。 JWT指定七个默认字段供选择。...然后,使用标头中指定的签名算法(默认情况下为HMAC SHA256)根据以下公式生成签名。...注意:base64编码,并不是加密,只是把明文信息变成了不可见的字符串。但是其实只要用一些工具就可以把base64编码解成明文,所以不要在JWT中放入涉及私密的信息。...6、为了减少盗用和窃取,JWT建议使用HTTP协议来传输代码,而是使用加密的HTTPS协议进行传输。

82920

Laravel中encrypt和decrypt的实现方法

:')) { //分析配置文件里的key里面有没有带'base64' $key = base64_decode(substr($key, 7)); //如果有的话,把key前面的base64:给取消,并且解析出原来的字符串...第一个参数是传入数据,第二个参数是传入加密方式,目前使用AES-256-CBC的加密方式,第三个参数是,返回加密后的原始数据,还是把加密的数据在经过一次base64编码,0的话表示base64位数据。...protected function hash($iv, $value) { // 生成签名 // 1、把随机值转为base64 // 2、使用hash_hmac生成sha256的加密值,用来验证参数是否更改...return hash_hmac('/【参考文章的时候,并不建议直接复制,应该尽量地读懂】/sha256', $iv....hash_hmac('sha256', $payload['mac'], $bytes, true), $calculated //根据原始数据里的签名在新生成一个签名 ); } calculateMac

2.2K20

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

dongle 是一个轻量级、语义化、对开发者友好的 Golang 编码解码和加密解密库Dongle 已被 awesome-go 收录, 如果您觉得不错,请给个 star 吧github.com/golang-module...、解码Base16 编码、解码Base32 编码、解码Base45 编码、解码Base58 编码、解码Base62 编码、解码Base64 编码、解码Base64URL 编码、解码SafeURL 编码、...解码Base85 编码、解码Base91 编码、解码Base100 编码、解码Morse(摩斯) 编码、解码Md2 加密Md4 加密Md5 加密Sha1 加密Sha3-224 加密Sha3-256 加密...Sha3-384 加密Sha3-512 加密Sha224 加密Sha256 加密Sha384 加密Sha512 加密Sha512-224 加密Sha512-256 加密Shake128 加密Shake256...加密Hmac-sha1 加密Hmac-sha3-224 加密Hmac-sha3-256 加密Hmac-sha3-384 加密Hmac-sha3-512 加密Hmac-sha224 加密Hmac-sha256

40240

一文入门JWT跨域认证

son Web令牌简称JWT 由Header+Payload+Signature组成 Header JWT头是一个描述JWT元数据的JSON对象,alg属性表示签名使用的算法,默认为HMAC SHA256...最后,使用Base64 URL算法将上述JSON对象转换为字符串保存 Payload 有效载荷部分,是JWT的主体内容部分,也是一个JSON对象,包含需要传递的数据。...JWT指定七个默认字段供选择 Signature 签名哈希部分是对上面两部分数据签名,需要使用base64编码后的header和payload数据,通过指定的算法生成哈希,以确保数据不会被篡改。...SHA256(写为HS256);typ属性表示令牌的类型,JWT令牌统一写为JWT。...最后,使用Base64 URL算法将上述JSON对象转换为字符串保存 {   "alg": "HS256",   "typ": "JWT" } Payload 有效载荷部分,是JWT的主体内容部分,也是一个

18500

访问令牌JWT

JWT的作用: JWT 最重要的作用就是对 token信息的防伪作用 JWT的原理: 一个JWT由三个部分组成:JWT头、有效载荷、签名哈希最后由这三者组合进行base64编码得到JWT ?...{ "alg": "HS256", "typ": "JWT" } 在上面的代码中,alg属性表示签名使用的算法,默认为HMAC SHA256(写为HS256);typ属性表示令牌的类型,JWT令牌统一写为...注意:base64编码,并不是加密,只是把明文信息变成了不可见的字符串。但是其实只要用一些工具就可以把base64编码解成明文,所以不要在JWT中放入涉及私密的信息。...然后,使用标头中指定的签名算法(默认情况下为HMAC SHA256)根据以下公式生成签名。...6、为了减少盗用和窃取,JWT建议使用HTTP协议来传输代码,而是使用加密的HTTPS协议进行传输。

1.7K21

学习go语言编程之标准库

文本处理 encoding,bytes,strings,strconv,text,mime,unicode,regexp,index,path 这个分类包括字符串和文本内容的处理,比如字符编码转换等。...strconv 本包提供字符串基本数据类型互转的能力。 os 本包提供了对操作系统功能的非平台相关访问接口。接口为Unix风格。提供的功能包括文件操作、进程管理、信号和用户账号等。...base32 实现了RFC 4648中所定义的base32编码 encoding base64 实现了RFC 4648中所定义的base64编码 encoding binary 实现了在无符号整数值和字节串之间的转化...)数据编码 encoding xml 实现了一个简单的可理解XML名字空间的XML 1.0解析器 go ast 声明了用于展示Go包中的语法树类型 go build 提供了构建Go包的工具 go doc...image png 实现了一个PNG图像解码器和编码器 index suffixarray 通过构建内存索引实现的高速字符串匹配查找算法 io ioutil 实现了一些实用的I/O函数 log syslog

39830
领券