如何将MD5转换回图像?

时间:2020-05-02 09:41:01

标签: flutter dart flutter-layout

我发现了这个crypto软件包,它的功能真的很棒。

我现在已经完成了如何将 图像 转换为 MD5 的操作。到数据库。

现在,我的问题是我要以MD5的形式取回这些图像,而不能将它们显示为Image

我有个想法,我应该使用接受Image.memory的{​​{1}}。

我还看到我的MD5图像具有Uint8List bytes(例如.bytes)接受的功能myMD5Image.bytes(例如Image.memory

但是它给出了一个错误: Image.memory(myMD5Image.bytes)

我想征求建议或可能的解决方案。预先感谢!

编辑: 当用户在画布上绘制时,这是我代码的一部分

Exception: Could not instantiate image codec.

1 个答案:

答案 0 :(得分:0)

MD5是哈希函数,因此一旦将其应用于数据,它就不可逆。因此,MD5(或SHA-1,Whirlpool等)不适合您的用例。

哈希的典型用法是将用户凭据存储在数据库中。您希望存储其哈希值,而不是清除密码,以便在用户进行身份验证时,平台生成用户输入的密码的哈希值,并将其与数据库中存储的哈希值进行比较。如果匹配,则密码正确,但仍保留在数据库中。

以下是一些可以代替使用的加密算法: https://blog.storagecraft.com/5-common-encryption-algorithms/