是否可以使用perl内置包打包128位或256位数字(使用Crypt :: Random :: makerandom生成的AES键/ ivs)?如果是的话,我的模板X应该是什么
pack('X', ($256_bit_number));
Run Code Online (Sandbox Code Playgroud)
是?
谢谢.
ike*_*ami 11
Perl不能容纳那么大的数字,所以它不可能打包它们.
那么让我们看一下makerandom实际返回的内容.
$ perl -MData::Dumper -MCrypt::Random=makerandom \
-e'print(Dumper(makerandom(Size => 256, Strength => 1)));'
$VAR1 = bless( do{\(my $o = 148076988)}, 'Math::Pari' );
Run Code Online (Sandbox Code Playgroud)
啊,一个Math :: Pari对象.看一下这些文档,似乎没有一种简单的方法来打包它们.但看起来我们没有必要.Crypt :: Random提供makerandom_octet返回"打包"的数字.
$ perl -MCrypt::Random=makerandom_octet \
-e'print(unpack("H*", makerandom_octet(Size => 256, Strength => 1)));'
1432698ef28c63d9cb0bba474c1644b4a6f9736616bd070102a612785332e94bb4
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
801 次 |
| 最近记录: |