服务器协议要求我使用有限的密钥大小派生密码哈希。这是给定的JavaScript + CryptoJS实现:
var params = {keySize: size/32, hasher: CryptoJS.algo.SHA512, iterations: 5000}
var output = CryptoJS.PBKDF2(password, salt, params).toString();
我想使用Passlib在Python中重新实现它,例如
from passlib.hash import pkbdf2_sha512
output = pbkdf2_sha512.hash(password, salt=salt, rounds=5000)
Passlib API不允许我指定密钥大小。怎么办呢?
答案 0 :(得分:0)
如果派生键长,只需将其截断为所需长度即可。每个字节和其他每个字节一样有效,它使用哪个字节没有区别,没有排序。