有没有可能颠倒一架SHA-1? [英] Is it possible to reverse a SHA-1?

查看:18
本文介绍了有没有可能颠倒一架SHA-1?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

是否可以颠倒SHA-1?

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

假设我使用来自密钥&q;的输入创建了一个这样的SHA1,并用时间戳为其添加了趣味性,以便SHA-1将始终更改。

sha1("My Secret Key"+"a timestamp")
然后,我将此SHA-1包含在通信和服务器中,它可以执行相同的计算。希望没有人能够破解&q;密钥&。

但这真的是真的吗?

如果您知道我就是这样做的,您就会知道我确实在里面放了一个时间戳,您会看到SHA-1。 然后,您是否可以使用这两个密钥并计算出&q;密钥&q;?

secret_key = bruteforce_sha1(sha1, timestamp)

注意1: 我猜你可以在某种程度上使用暴力,但实际上需要做多少工作呢?

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

推荐答案

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

不过,您绝对应该做的是将传输的消息包括到散列计算中。否则,中间人可能会截获该消息,并使用签名(仅包含发送者的密钥和时间戳)将其附加到假消息(在该消息仍然有效的情况下)。

您现在可能应该将SHA-256用于新系统。

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

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

暴力破解是否可行取决于您的密钥长度。

您整个系统的安全性将依赖于这个共享的秘密(因为发送者和接收者都需要知道,而其他人不需要知道)。攻击者会试图破解密钥(只能暴力猜测,或者试图从您的设备中获取),而不是试图破解SHA-1。

这篇关于有没有可能颠倒一架SHA-1?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆