【问题标题】:Simple Hash replacement for MD5MD5 的简单哈希替换
【发布时间】:2021-09-21 10:29:14
【问题描述】:

我有一个数据库,其中图像(byte[] - 通常小于 100k)存储在一个表中。 表中有一个 Hash 列,用于存储图像字节的 MD5 哈希。 此处没有安全隐患,它仅由应用程序用作快速检查图像是否已存在。

MD5Cng 类已从 .NET 5 中消失,因此我现在想替换 H​​ash 值以准备稍后迁移到 .NET 6。

什么是一个简单的算法,它将接受一个 byte[] 并返回 byte[16]?

【问题讨论】:

  • 取不同散列的前 16 个字节(选择你最喜欢的),或使用 CRC 之类的东西
  • 如果 MD5 已从 .NET 5 中删除,我会感到非常惊讶。
  • static readonly MD5 md5CSP = new MD5Cng(); 是代码中不再编译的行。而且我似乎误解了已弃用并不意味着已删除。感谢您的快速回复 - 我会弄清楚替换是什么。
  • MD5Cng 专门在 .NET Core 中被删除,但您应该使用 static readonly MD5 md5CSP = MD5.Create();

标签: c# hash


【解决方案1】:

Microsoft suggests 使用 Secure Hashing Algorithm 的一些变体而不是 MD5。但是,.NET 5 确实带有implementation of the MD5-algorithm

【讨论】:

    猜你喜欢
    • 2016-02-17
    • 2012-08-17
    • 1970-01-01
    • 1970-01-01
    • 2020-12-08
    • 1970-01-01
    • 1970-01-01
    • 2012-04-15
    相关资源
    最近更新 更多