我试图在Go中找到以下C#代码的等效项。
pwd = "abc123"; encoding = Encoding.UTF8; SHA1 sha1 = SHA1.Create(); byte[] hash = sha1.ComputeHash(encoding.GetBytes(text));
我知道Go 中有一个crypto / sha1软件包。我知道我可以跑步:
pwd := "abc123" hasher := sha1.New() // SHA1.Create(); hasher.Write([]byte(pwd)) // sha1.ComputeHash but without encoding in UTF8 ?
我不确定散列时如何获得正确的编码。我想知道是否可以得到一些帮助来转换此
根据文档:
缺少字节级转义的字符串文字始终包含有效的UTF-8序列。
因此,如果在Golang源代码中,则无需将字符串编码为utf8。但是,如果字符串来自输入,则utf8包是您的朋友。