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())
}
相关推荐
赏金术士9 分钟前
Kotlin 习题集 · 高级篇
android·开发语言·kotlin
子兮曰1 小时前
Bun v1.3.14 深度解析:Image API、HTTP/3、全局虚拟存储与五十项变革
前端·后端·bun
ltl1 小时前
Self-Attention:让序列自己看自己
后端
楼兰公子1 小时前
buildroot 在编译rust时裁剪平台类型数量的方法
开发语言·后端·rust
吴声子夜歌2 小时前
Go——并发编程
开发语言·后端·golang
释怀°Believe2 小时前
Spring解析
java·后端·spring
ooseabiscuit2 小时前
Laravel4.x:现代PHP框架的奠基之作
java·开发语言·php
Cosolar2 小时前
大模型应用开发面试 • 每日三题|Day 003|多Agent系统中的通信协议、冲突解决和一致性保障
人工智能·后端·面试
汪汪大队u2 小时前
续:从 Docker Compose 到 Kubernetes(2)—— 服务优化与排错
网络·后端·物联网·struts·容器
c1s2d3n4cs3 小时前
Qt模仿nlohmann::json进行序列化和反序列化
开发语言·qt·json