首页  >  文章  >  后端开发  >  如何在 Golang 中为给定字符串生成 SHA 哈希?

如何在 Golang 中为给定字符串生成 SHA 哈希?

DDD
DDD原创
2024-11-19 21:07:02856浏览

How do you generate a SHA hash for a given string in Golang?

在 Golang 中为给定字符串生成 SHA 哈希

对字符串执行的最典型的加密操作之一是计算其 SHA 哈希。 SHA(安全哈希算法)算法通过将字符串作为输入来生成唯一的指纹。在 Golang 中,创建 SHA 哈希是一个简单的过程。

示例用法

例如,让我们计算字符串“beautiful”的 SHA 哈希。以下代码片段提供了一个实际示例:

import (
    "crypto/sha1"
    "encoding/base64"
)

func main() {
    myPassword := "beautiful"

    hasher := sha1.New()
    hasher.Write([]byte(myPassword))
    sha := base64.URLEncoding.EncodeToString(hasher.Sum(nil))

    println(sha)
}

此代码演示:

  • 使用 []byte(myPassword) 将字符串“beautiful”编码为字节数组
  • 使用sha1.new() 使用hasher.write()创建新的SHA1 HASHER,将字符串馈送到Hasher
  • >使用Hasher获得哈希的原始字节。 Sum(nil)
  • 可选地,使用base64.URLEncoding.EncodeToString()以base64编码哈希字节以方便人类阅读
  • 生成的sha变量包含base64编码的SHA哈希原始字符串,方便显示或比较。

以上是如何在 Golang 中为给定字符串生成 SHA 哈希?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn