如何测量PBKDF2 SHA256哈希计算时间

时间:2018-05-16 12:36:47

标签: 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) {
            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;
}

我使用promise.all循环遍历此函数几百次,每次传递一个新的secretPhrase。

我正在使用Firebase Functions http请求来触发此功能。当keylen为1000时,以下是我的日志:

enter image description here

如果keylen是500000

,这是我的日志

enter image description here

计算时间只是每个' TIMESTAMP Hash Finished&#39 ;?之间的差异或者是整个功能完成所需的时间(在日志顶部)?

即使用500000键盘的计算时间是1526473894031 - 1526473893718 = 313ms?

0 个答案:

没有答案