我正在尝试使用perl将字符串转换为CRC-32。我找到了String :: CRC32。但该模块的结果与在线转换器不同。这是我的代码:
https://graph.microsoft.com/v1.0/sites/siteid/drives/driveid/items/itemid/workbook
该代码的输出为 3840460347 。
但是当我尝试转换" nawan"使用在线转换器(this online converter),该在线转换器的结果为 f082b8df 。
我对CRC-32有什么看法吗?为什么结果不同?
谢谢。
答案 0 :(得分:4)
String::CRC32
的结果对应于该网站crc32b版本输出的十进制值。
use strict;
use warnings;
use String::CRC32;
my $resi = "nawan";
print sprintf("Decimal: %d, Hex: %x\n",crc32($resi), crc32($resi));
<强>输出强>
Decimal: 3840460347, Hex: e4e8c63b
e4e8c63b 对应于该网站上获取的'nawan'的crc32b哈希值。