将字符串转换为 CRC-32 时的不同结果
Different result when converting string to CRC-32
我正在尝试使用 perl 将字符串转换为 CRC-32。我发现 String::CRC32。但是该模块的结果与在线转换器不同。这是我的代码:
use strict;
use warnings;
use String::CRC32;
my $resi = "nawan";
print crc32($resi) . "\n"; # --output : 3840460347
该代码的输出是 3840460347。
但是当我尝试使用在线转换器 (this online converter) 转换 "nawan" 时,在线转换器的结果是 f082b8df.
我对 CRC-32 有什么想念的吗?为什么结果不同?
谢谢。
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 hash
我正在尝试使用 perl 将字符串转换为 CRC-32。我发现 String::CRC32。但是该模块的结果与在线转换器不同。这是我的代码:
use strict;
use warnings;
use String::CRC32;
my $resi = "nawan";
print crc32($resi) . "\n"; # --output : 3840460347
该代码的输出是 3840460347。
但是当我尝试使用在线转换器 (this online converter) 转换 "nawan" 时,在线转换器的结果是 f082b8df.
我对 CRC-32 有什么想念的吗?为什么结果不同?
谢谢。
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 hash