目前我使用128,这是否足够安全?
dnssec-keygen -a hmac-md5 -b 128 -n host foobar.com
另外我不确定“host”是否是-n arg的正确值。 我相信最后一个参数“foobar.com”只是文件名 – 对吗?
HMAC-XXX的上限是位数。 如果您使用的是HMAC-MD5,并且select使用128位以上的真实随机数据(如使用示例命令行生成的),则会浪费。 HMAC要做的第一件事是,如果密钥长度超过散列函数的长度(在你的情况下是MD5),那么首先运行散列,这将返回128位。
如果您的密码是ASCII文本,就像input密码一样,那么更长的时间可能是有用的,但对于您的使用,128是您需要的最大值。
BIND还支持其他HMACfunction:HMAC-SHA1,HMAC-SHA256和HMAC-512。 对于SHA1,160位是最大有用长度,SHA256和SHA512是256位和512位。
请注意,对于所有实际的目的,使用HMAC,MD5可能就足够了。
我也相信你的命令行是正确的。