Perl Data :: UUID是一个强大的对称密钥源吗?

pfa*_*ber 1 perl uuid sha1 key hmac

我正在考虑使用Data :: UUID Perl模块生成256位对称密钥,以便与HMAC_SHA256算法一起使用.每个调用应该给我一个128位的唯一字符串,所以我想做类似以下的事情:

use Data::UUID;

my $ug = new Data::UUID;

my $uuid1 = $ug->to_hexstring($ug->create());

my $uuid2 = $ug->to_hexstring($ug->create());

my $256_bit_key = $uuid1 . $uuid2;

这个密钥密码强吗?

Pau*_*han 6

没有.

使用Crypt :: OpenSSL :: Random或其他加密强随机数生成器.

更准确地说,您可以从CRNG获取一些字节,将它们转换为ASCII字符串,然后使用它来执行散列.

  • UUID 的目的是唯一性,而不是随机性。这些不是同一件事。事实上,添加非随机性元素(例如生成标识符的机器的 MAC 地址)实际上“提高”了唯一性。 (2认同)