SHA-256是否不敏感?

par*_*870 11 php sha256 ios

我正在运行一个在应用程序的两侧使用SHA-256的服务 - 一个是服务器端PHP实现,另一个是客户端iOS实现.在两侧使用算法的结果是相同的字母数字字符串,除了所有字母在iOS上大写并且在PHP上小写的情况.它们是相同的字母数字字符串这一事实使我相信SHA-256不区分大小写,但我找不到支持我的假设的任何文档.有人可以给我一些文件来证实吗?

Bra*_*rad 21

如果您指的是十六进制字符串输出,那么是,这是不区分大小写的.它是二进制数据的文本表示.

http://en.wikipedia.org/wiki/Hexadecimal

算法本身绝对区分大小写.


小智 6

没有一个像样的加密哈希函数是不区分大小写的,因为这样就更容易产生冲突。输出是另一回事。它基本上是一个很大的数字(因此大小写不适用),但为了方便起见,它以 16 为基数给出,即使用字母 a 到 f 作为附加数字。十六进制表示法确实不区分大小写,或者至少大写和小写变体都是常见和公认的。这并不重要,也不会改变所代表的数字。