go语言加密大全(md5、HmacSHA256、获取uuid、时间戳)

目录

一、MD5加解密

go 复制代码
import (
	"crypto/md5"
	"encoding/hex"
)

func md5Encrypt(txt string) string {
	m5 := md5.New()
	m5.Write([]byte(txt))
	txtHash := hex.EncodeToString(m5.Sum(nil))
	return txtHash
}

二、HmacSHA256加解密

go 复制代码
import (
	"crypto/hmac"
	"crypto/sha256"
	"encoding/base64"
)

func HmacSha256ToBase64(key string, data string) string {
	mac := hmac.New(sha256.New, []byte(key))
	_, _ = mac.Write([]byte(data))
	encode := mac.Sum(nil)
	return base64.StdEncoding.EncodeToString(encode)
}

三、获取uuid、时间戳

go 复制代码
import (
	"github.com/google/uuid"
	"strconv"
	"time"
)
func main() {
	now := time.Now()
	time_1 := strconv.FormatInt(now.Unix(), 10)      // 10位时间戳
	time_2 := strconv.FormatInt(now.UnixMilli(), 10) // 13位时间戳
	println(time_1)
	println(time_2)
	println(uuid.New().String())
}
相关推荐
沐晓时光13 小时前
C语言入门,内存函数知识讲解
c语言·开发语言
Gopher_HBo15 小时前
Go CPU 剖析的"地基":信号、CAS、写屏障、无锁环形缓冲
后端
panbook16 小时前
从0到1实现一个分布式时序数据库(二):写入成功之后,如何用 WAL 找回数据
后端
Swot16 小时前
上传一张 4MB 图片,我先后撞上了三层请求体限制
后端
IT_陈寒16 小时前
Vite的HMR把我整不会了:一个生产环境的热更新坑
前端·人工智能·后端
OLRainM16 小时前
实习复盘:大模型网关渠道质量评分实战(二)—— 报错了到底算谁的锅?流式归因与 Token 补账踩过的 8 个真坑
后端
梦想恒远16 小时前
Spring Boot + LangChain4j 统计 token 成本:ChatModelListener 实测与单价口径
spring boot·后端
努力的小郑17 小时前
数据查到了,回答去哪儿了?一次百炼 + LangChain 排查实录
后端·langchain·agent
isfox18 小时前
Python 虚拟环境:别再把所有项目塞进一个"大仓库"了
后端
易师傅18 小时前
技术面试已死?AI 时代,真正拉开程序员差距的是什么?
前端·后端·程序员