3

我想知道,我如何解密,md5 加密反应原生的数据。愿你帮助我。我无法在网络上找到任何教程。我添加了用于加密的 md5 库,但我无法解密该 cod。如果你也知道加密,请解释一下。我如何在反应原生鳕鱼中使用。谢谢

4

1 回答 1

2

MD5不是加密算法!它是一种用作散列函数的消息摘要算法。

加密散列函数是一种随机行为的单向、确定性压缩函数。

  • 单向意味着不存在反函数,
  • 确定性意味着相同的输入导致相同的输出,
  • 压缩意味着输入大小可以是任意长度,但输出大小由散列函数固定。MD5 的摘要大小为 128 位。
  • 随机意味着哈希函数输出在计算之前是不可预测的。

MD5原像电阻理论上是坏的,但实际上并不好。不是具有 2 128复杂度的通用原像攻击,而是需要 2 123.4复杂度的攻击。然而,MD5 实际上并没有被破坏。您无法在有意义的时间内到达 123 位搜索空间。考虑比特币矿工的集体力量;在 2020/1/17 他们达到每秒 126.1314 Exahashes,这使得

  • 2 67 SHA256 双哈希在一秒钟内,和
  • 2 92 SHA256 双哈希一年。所以你需要 2 21年才能拥有这种力量。

但是,您可以找到MD5 的冲突。有两个好的库,两个产生冲突; corkamihashclash

对于加密,请使用具有适当模式的 AES 或 ChaCha20,如 AES-GCM 或 AES-GCM-SIV,ChaCha20-Poly1305 bot 提供经过身份验证的加密,您将获得机密性、完整性和身份验证。

于 2019-05-08T20:44:00.767 回答