gpt4 book ai didi

security - 是否可以反转 SHA-1 哈希值?

转载 作者:行者123 更新时间:2023-12-02 16:51:49 25 4
gpt4 key购买 nike

是否可以反转 SHA-1?

我正在考虑使用 SHA-1 创建一个简单的轻量级系统来验证通过未加密连接进行通信的小型嵌入式系统。

假设我使用来自“ secret key ”的输入创建了一个像这样的 sha1,并为其添加了时间戳,以便 SHA-1 会一直更改。

sha1("My Secret Key"+"a timestamp")

然后我将这个SHA-1包含在通信和服务器中,它们可以进行相同的计算。希望没有人能够找出“ secret key ”。

但这真的是真的吗?

如果您知道我是这样做的,您就会知道我确实在其中放置了时间戳,并且您会看到 SHA-1。然后你能用这两个来找出“ secret key ”吗?

secret_key = bruteforce_sha1(sha1, timestamp)
<小时/>

注1:我猜你可以通过某种方式进行暴力破解,但这实际上需要做多少工作?

注2:我不打算加密任何数据,我只是想知道是谁发送的。

最佳答案

不,您无法反转 SHA-1,这正是它被称为安全哈希算法的原因。

不过,您绝对应该做的是将正在传输的消息包含到哈希计算中。否则,中间人可以拦截该消息,并使用签名(仅包含发送者的 key 和时间戳)将其附加到假消息(该消息仍然有效)。

您现在可能应该在新系统中使用 SHA-256。

sha("My Secret Key"+"a timestamp" + the whole message to be signed)

您还需要另外以明文方式传输时间戳,因为否则您无法验证摘要(除了尝试大量可信的时间戳)。

暴力攻击是否可行取决于您的 key 的长度。

整个系统的安全性将依赖于这个共享 secret (因为发送者和接收者都需要知道,但其他人都不需要知道)。攻击者会尝试获取 key (要么通过暴力猜测,要么尝试从您的设备获取 key ),而不是尝试破坏 SHA-1。

关于security - 是否可以反转 SHA-1 哈希值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2235079/

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