Encryption 如何测量PBKDF2 SHA256哈希计算时间
我需要测量用x次迭代计算散列需要多长时间。以下是代码:Encryption 如何测量PBKDF2 SHA256哈希计算时间,encryption,hash,google-cloud-functions,pbkdf2,Encryption,Hash,Google Cloud Functions,Pbkdf2,我需要测量用x次迭代计算散列需要多长时间。以下是代码: function hashPromise(secretPhrase, keylen) { let hashedKey var promise = new Promise(function(resolve, reject) { crypto.pbkdf2(secretPhrase, 'salt', keylen, 256, 'sha256', (err, key) => { if (err) {
function hashPromise(secretPhrase, keylen) {
let hashedKey
var promise = new Promise(function(resolve, reject) {
crypto.pbkdf2(secretPhrase, 'salt', keylen, 256,
'sha256', (err, key) => {
if (err) {
console.log(err)
reject(err);
} else {
hashedKey = key.toString('hex')
let time = new Date().getTime()
console.log('keylen: ' + keylen)
console.log('TIMESTAMP Hash Finished: ' + time)
console.log('hashedKey: ' + hashedKey)
resolve( hashedSSN )
}
})
})
return promise;
}
我带着承诺在这个函数中循环了几百次,每次都传递一个新的秘密短语
我正在使用Firebase函数http请求触发此函数。以下是我在keylen为1000时的日志:
如果凯伦是500000,这是我的日志
计算时间仅仅是每个“时间戳哈希完成”之间的差异吗?或者是整个函数完成所需的时间(在日志顶部)
Ie-使用500000 keylen的计算时间是1526473894031-1526473893718=313ms?FWIW:您将keylen硬编码为256,名为keylen的变量实际上是迭代。哇,捕捉得好。谢谢关于计算时间有什么想法吗?