js-libp2p-crypto/benchmarks/ephemeral-keys.js

29 lines
681 B
JavaScript
Raw Normal View History

2018-11-01 14:55:52 +01:00
/* eslint-disable no-console */
'use strict'
const Benchmark = require('benchmark')
const crypto = require('../src')
const suite = new Benchmark.Suite('ephemeral-keys')
const secrets = []
const curves = ['P-256', 'P-384', 'P-521']
curves.forEach((curve) => {
suite.add(`ephemeral key with secrect ${curve}`, (d) => {
2017-07-22 10:57:27 -07:00
crypto.keys.generateEphemeralKeyPair('P-256', (err, res) => {
if (err) { throw err }
res.genSharedKey(res.key, (err, secret) => {
2017-07-22 10:57:27 -07:00
if (err) { throw err }
secrets.push(secret)
d.resolve()
})
})
2017-07-22 10:57:27 -07:00
}, { defer: true })
})
suite
.on('cycle', (event) => console.log(String(event.target)))
.run({async: true})