gpt4 book ai didi

go - 如何在golang中使用SHA1PRNG算法生成aes key ?

转载 作者:行者123 更新时间:2023-12-03 03:29:52 38 4
gpt4 key购买 nike

原谅我的台球英语。服务器程序是由java编写的,我需要向它发送一个密码来生成aes key 。密码是一个随机字节数组。服务器程序使用密码作为随机种子,通过 SHA1PRNG 算法生成 128 位 AES key 。相同的密码与生成相同的 key 。现在我正在使用 golang 编写客户端程序。如何在golang中使用随机字节数组生成AES key ?

最佳答案

您可以尝试下面的代码

func SHA1(data []byte) []byte {
h := sha1.New()
h.Write(data)
return h.Sum(nil)
}

func aesKeySecureRandom(keyword string) (key []byte) {
data := []byte(keyword)

hashs := SHA1(SHA1(data))
key = hashs[0:16]

return key
}

可以使用java或者golang来验证

示例:

关键字:123456

纯文本:abc111abc

key 十六进制:6bb4837eb74329105ee4568dda7dc67e

key base64:a7SDfrdDKRBe5FaN2n3Gfg==

密文base64:7ke0HhU5KnkCaPBilYsMiw==

关于go - 如何在golang中使用SHA1PRNG算法生成aes key ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53844466/

38 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com