UNPKG

sodium-prebuilt

Version:
42 lines (33 loc) 1.23 kB
/** * Created by bmf on 11/2/13. */ var should = require('should'); var sodium = require('../build/Release/sodium'); var ECDH = require('../lib/ecdh'); var DHKey = require('../lib/keys/dh-key'); if (process.env.COVERAGE) { ECDH = require('../lib-cov/ecdh'); DHKey = require('../lib-cov/keys/dh-key'); } describe("ECDH", function () { it("should calculate the same secret", function (done) { var bob = new DHKey(); var alice = new DHKey(); var aliceDH = new ECDH(bob.pk().get(), alice.sk().get()); var bobDH = new ECDH(alice.pk().get(), bob.sk().get()); var bobSecret = bobDH.secret(); var aliceSecret = aliceDH.secret(); bobSecret.should.eql(aliceSecret); done(); }); it("should calculate the same session key", function (done) { var bob = new DHKey(); var alice = new DHKey(); var aliceDH = new ECDH(bob.pk().get(), alice.sk().get()); var bobDH = new ECDH(alice.pk().get(), bob.sk().get()); var bobSecret = bobDH.sessionKey(); var aliceSecret = aliceDH.sessionKey(); bobSecret.should.eql(aliceSecret); done(); }); });