MD5基础知识:如何知道哈希位长和对称性?

Basics of MD5: How to know hash bit length and symmetry?

我很好奇一些 MD5 加密的基础知识,我无法从 Google、Java 这里的问题或密集的法律文件中获得:

1-如何以字节为单位测量 MD5 哈希字符串?这取决于字符串是 UNICODE 还是 ANSI?

2-MD5是非对称算法吗?

示例:如果我的应用程序使用密钥(MD5_128 散列字符串,由 9 个字符组成的 ANSI)与 REST 网络服务对话 (http) 以解密接收到的数据,这是否占 9x8=72 字节不对称算法?

我在 Windows 中使用 Windevs 25,使用 Encrypt 和 HashString 等函数,但我缺乏有关加密的知识。

编辑: 尚未得到答复,但似乎在跳转到哈希和加密之前我需要了解更多有关字符集的信息。 https://www.joelonsoftware.com/2003/10/08/the-absolute-minimum-every-software-developer-absolutely-positively-must-know-about-unicode-and-character-sets-no-excuses/

MD5 散列为 128 位,16 字节。结果是二进制的,不是文本,所以它既不是“ANSI”也不是“Unicode”。与所有散列一样,它是不对称的,这一点从您可以对超过 128 位的输入进行散列这一事实中显而易见。由于它是非对称的,因此您无法“解密”(解密)它。这是有意设计的。