当前位置:网站首页> Golang实现sha256或sha512加密
Golang实现sha256或sha512加密
2022-08-08 08:36:00 【Golang中文社区】
# 代码实现sha-256加密算法 sha-256.go```gopackage toolsimport ( "crypto/sha256" "encoding/hex")//SHA256生成哈希值func GetSHA256HashCode(stringMessage string) string { message := []byte(stringMessage) //字符串转化字节数组 //创建一个基于SHA256算法的hash.Hash接口的对象 hash := sha256.New() //sha-256加密 //hash := sha512.New() //SHA-512加密 //输入数据 hash.Write(message) //计算哈希值 bytes := hash.Sum(nil) //将字符串编码为16进制格式,返回字符串 hashCode := hex.EncodeToString(bytes) //返回哈希值 return hashCode}```# 调用用main方法调用sha-256 main.go```gopackage mainimport ( "GraduationProject/tools" "fmt")func main() { txt := "Hello World!" code := tools.GetSHA256HashCode(txt) fmt.Println("\n加密前的明文\n", txt, "\nSHA-256加密后的密文:\n", code)}```控制台```go加密前的明文 Hello World!SHA-256加密后的密文: 7f83b1657ff1fc53b92dc18148a1d65dfc2d4b1fa3d677284addd200126d9069```# 代码实现sha-512 将sha-256.go文件的第15行加上注释,16行去掉注释```gopackage toolsimport ( "crypto/sha256" "encoding/hex")//SHA256生成哈希值func GetSHA256HashCode(stringMessage string) string { message := []byte(stringMessage) //字符串转化字节数组 //创建一个基于SHA256算法的hash.Hash接口的对象 //hash := sha256.New() //sha-256加密 hash := sha512.New() //SHA-512加密 //输入数据 hash.Write(message) //计算哈希值 bytes := hash.Sum(nil) //将字符串编码为16进制格式,返回字符串 hashCode := hex.EncodeToString(bytes) //返回哈希值 return hashCode}```
边栏推荐
猜你喜欢
随机推荐
多态案例2 制作饮品
[ 深度学习 ] 课程学习(Curriculum Learning)
斯坦福21秋季:实用机器学习【第5章】
Why is HTTS safer?
包含漏洞-读写文件以及执行命令
Offensive and defensive world - fakebook
【树莓派】vim编辑器
P7214 [JOISC2020] 治療計画 题解
攻防世界——lottery
【vulhub】PostGresql高权限命令执行漏洞复现(CVE-2019-9193)
Database_JDBC
lvm建立逻辑卷
笔记2022
ACWing 198. Antiprime Problem Solution
Datawhale社区黑板报(第二期)
最强分布式锁工具:Redisson
anormly detection资料汇总
优先队列的实现原理
Raspberry pie 】 【 without WIFI even under the condition of the computer screen
idea big data tools 提交flink任务