为什么我使用 Perl's Digest::MD5 对于看似不同的输入得到相同的 MD5 校验和?
在我的 Linux 平台上,重新编译了 64 位的 perl
和 SSHing Mac 终端(我猜是 UTF-8)。我提供所有这些信息只是为了以防万一它们可能相关。
# perl -e 'use Digest::MD5 qw/md5_hex/; print(md5_hex("alex@vi\n") ."\n");' 756e98065cb8cbf603a3dbef2afe9261 # perl -e 'use Digest::MD5 qw/md5_hex/; print(md5_hex("alex@visi\n") ."\n");' 756e98065cb8cbf603a3dbef2afe9261 # perl -e 'use Digest::MD5 qw/md5_hex/; print(md5_hex("alex@vision\n") ."\n");' 756e98065cb8cbf603a3dbef2afe9261 # perl -e 'use Digest::MD5 qw/md5_hex/; print(md5_hex("alex@visionten\n") ."\n");' 756e98065cb8cbf603a3dbef2afe9261 # perl -e 'use Digest::MD5 qw/md5_hex/; print(md5_hex("alex@visionten.\n") ."\n");' d32e04de6906b3f284c6834b4d1d77c1 # perl -e 'use Digest::MD5 qw/md5_hex/; print(md5_hex("alex@\n") ."\n");' 264eca1047ccc6272ac2e338c695379e
On my Linux platform with 64bits recompiled perl
and SSHing Mac terminal (I guess UTF-8). I am giving all this information just in case it might be relevant.
# perl -e 'use Digest::MD5 qw/md5_hex/; print(md5_hex("alex@vi\n") ."\n");' 756e98065cb8cbf603a3dbef2afe9261 # perl -e 'use Digest::MD5 qw/md5_hex/; print(md5_hex("alex@visi\n") ."\n");' 756e98065cb8cbf603a3dbef2afe9261 # perl -e 'use Digest::MD5 qw/md5_hex/; print(md5_hex("alex@vision\n") ."\n");' 756e98065cb8cbf603a3dbef2afe9261 # perl -e 'use Digest::MD5 qw/md5_hex/; print(md5_hex("alex@visionten\n") ."\n");' 756e98065cb8cbf603a3dbef2afe9261 # perl -e 'use Digest::MD5 qw/md5_hex/; print(md5_hex("alex@visionten.\n") ."\n");' d32e04de6906b3f284c6834b4d1d77c1 # perl -e 'use Digest::MD5 qw/md5_hex/; print(md5_hex("alex@\n") ."\n");' 264eca1047ccc6272ac2e338c695379e
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您在双引号字符串内使用@。所有 @vision 和 @visionten 事物的评估结果都是相同的。
You are using @ inside a double-quoted string. All of the @vision and @visionten things are evaluating to the same thing.