commit 84d677e19f28f50100e7712fe4bcaeaa1b38967e
parent 31e096c5a7aefdc87cb4798f9dd30a4c3acd62cc
Author: finwo <finwo@pm.me>
Date: Wed, 19 Jun 2019 10:58:57 +0200
Fully write out all variable names
Diffstat:
3 files changed, 51 insertions(+), 42 deletions(-)
diff --git a/index.js b/index.js
@@ -1,4 +1,5 @@
-var Module = require('./supercop.js');
+const Module = require('./supercop.js');
+const isBuffer = require('is-buffer');
function randomBytes(length) {
return Buffer.from(new Array(length).fill(0).map(()=>Math.floor(Math.random()*256)));
@@ -8,68 +9,68 @@ exports.createSeed = function(){
return randomBytes(32);
};
-exports.createKeyPair = function(seed){
+exports.createKeyPair = function(seed) {
if(!Buffer.isBuffer(seed)){
throw new Error('not buffers!');
}
- var seedPtr = Module._malloc(32);
- var seedBuf = new Uint8Array(Module.HEAPU8.buffer, seedPtr, 32);
- var pubKeyPtr = Module._malloc(32);
- var pubKey = new Uint8Array(Module.HEAPU8.buffer, pubKeyPtr, 32);
- var privKeyPtr = Module._malloc(64);
- var privKey = new Uint8Array(Module.HEAPU8.buffer, privKeyPtr, 64);
+ var seedPtr = Module._malloc(32);
+ var seedBuf = new Uint8Array(Module.HEAPU8.buffer, seedPtr, 32);
+ var publicKeyPtr = Module._malloc(32);
+ var publicKey = new Uint8Array(Module.HEAPU8.buffer, publicKeyPtr, 32);
+ var secretKeyPtr = Module._malloc(64);
+ var secretKey = new Uint8Array(Module.HEAPU8.buffer, secretKeyPtr, 64);
seedBuf.set(seed);
- Module._create_keypair(pubKeyPtr, privKeyPtr, seedPtr);
+ Module._create_keypair(publicKeyPtr, secretKeyPtr, seedPtr);
Module._free(seedPtr);
- Module._free(pubKeyPtr);
- Module._free(privKeyPtr);
+ Module._free(publicKeyPtr);
+ Module._free(secretKeyPtr);
return {
- publicKey: new Buffer(pubKey),
- secretKey: new Buffer(privKey),
+ publicKey: new Buffer(publicKey),
+ secretKey: new Buffer(secretKey),
};
};
-exports.sign = function(msg, pubKey, privKey){
- if(!Buffer.isBuffer(msg) || !Buffer.isBuffer(pubKey) || !Buffer.isBuffer(privKey)){
+exports.sign = function(message, publicKey, secretKey){
+ if(!Buffer.isBuffer(message) || !Buffer.isBuffer(publicKey) || !Buffer.isBuffer(secretKey)){
throw new Error('not buffers!');
}
- var msgLen = msg.length;
- var msgArrPtr = Module._malloc(msgLen);
- var msgArr = new Uint8Array(Module.HEAPU8.buffer, msgArrPtr, msgLen);
- var pubKeyArrPtr = Module._malloc(32);
- var pubKeyArr = new Uint8Array(Module.HEAPU8.buffer, pubKeyArrPtr, 32);
- var privKeyArrPtr = Module._malloc(64);
- var privKeyArr = new Uint8Array(Module.HEAPU8.buffer, privKeyArrPtr, 64);
+ var messageLen = message.length;
+ var messageArrPtr = Module._malloc(messageLen);
+ var messageArr = new Uint8Array(Module.HEAPU8.buffer, messageArrPtr, messageLen);
+ var publicKeyArrPtr = Module._malloc(32);
+ var publicKeyArr = new Uint8Array(Module.HEAPU8.buffer, publicKeyArrPtr, 32);
+ var secretKeyArrPtr = Module._malloc(64);
+ var secretKeyArr = new Uint8Array(Module.HEAPU8.buffer, secretKeyArrPtr, 64);
var sigPtr = Module._malloc(64);
var sig = new Uint8Array(Module.HEAPU8.buffer, sigPtr, 64);
- msgArr.set(msg);
- pubKeyArr.set(pubKey);
- privKeyArr.set(privKey);
- Module._sign(sigPtr, msgArrPtr, msgLen, pubKeyArrPtr, privKeyArrPtr);
- Module._free(msgArrPtr);
- Module._free(pubKeyArrPtr);
- Module._free(privKeyArrPtr);
+ messageArr.set(message);
+ publicKeyArr.set(publicKey);
+ secretKeyArr.set(secretKey);
+ Module._sign(sigPtr, messageArrPtr, messageLen, publicKeyArrPtr, secretKeyArrPtr);
+ Module._free(messageArrPtr);
+ Module._free(publicKeyArrPtr);
+ Module._free(secretKeyArrPtr);
Module._free(sigPtr);
return new Buffer(sig);
};
-exports.verify = function(sig, msg, pubKey){
- if(!Buffer.isBuffer(msg) || !Buffer.isBuffer(sig) || !Buffer.isBuffer(pubKey)){
+exports.verify = function(sig, message, publicKey){
+ if(!Buffer.isBuffer(message) || !Buffer.isBuffer(sig) || !Buffer.isBuffer(publicKey)){
throw new Error('not buffers!');
}
- var msgLen = msg.length;
- var msgArrPtr = Module._malloc(msgLen);
- var msgArr = new Uint8Array(Module.HEAPU8.buffer, msgArrPtr, msgLen);
+ var messageLen = message.length;
+ var messageArrPtr = Module._malloc(messageLen);
+ var messageArr = new Uint8Array(Module.HEAPU8.buffer, messageArrPtr, messageLen);
var sigArrPtr = Module._malloc(64);
var sigArr = new Uint8Array(Module.HEAPU8.buffer, sigArrPtr, 64);
- var pubKeyArrPtr = Module._malloc(32);
- var pubKeyArr = new Uint8Array(Module.HEAPU8.buffer, pubKeyArrPtr, 32);
- msgArr.set(msg);
+ var publicKeyArrPtr = Module._malloc(32);
+ var publicKeyArr = new Uint8Array(Module.HEAPU8.buffer, publicKeyArrPtr, 32);
+ messageArr.set(message);
sigArr.set(sig);
- pubKeyArr.set(pubKey);
- var res = Module._verify(sigArrPtr, msgArrPtr, msgLen, pubKeyArrPtr) === 1;
- Module._free(msgArrPtr);
+ publicKeyArr.set(publicKey);
+ var res = Module._verify(sigArrPtr, messageArrPtr, messageLen, publicKeyArrPtr) === 1;
+ Module._free(messageArrPtr);
Module._free(sigArrPtr);
- Module._free(pubKeyArrPtr);
+ Module._free(publicKeyArrPtr);
return res;
};
diff --git a/package-lock.json b/package-lock.json
@@ -138,6 +138,11 @@
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
"dev": true
},
+ "is-buffer": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.3.tgz",
+ "integrity": "sha512-U15Q7MXTuZlrbymiz95PJpZxu8IlipAp4dtS3wOdgPXx3mqBnslrWU14kxfHB+Py/+2PVKSr37dMAgM2A4uArw=="
+ },
"is-callable": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz",
diff --git a/package.json b/package.json
@@ -5,7 +5,7 @@
"main": "index.js",
"homepage": "http://git.finwo.net/supercop-js",
"scripts": {
- "test": "echo \"Error: no test specified\" && exit 1",
+ "test": "node test.js",
"postpublish": "PACKAGE_VERSION=$(cat package.json | grep \\\"version\\\" | head -1 | awk -F: '{print $2}' | sed 's/[\",]//g' | tr -d '[[:space:]]') && npm deprecate \"supercop@<${PACKAGE_VERSION}\" \"Rolling release, please update to ${PACKAGE_VERSION}\""
},
"repository": {
@@ -16,5 +16,8 @@
"license": "MIT",
"devDependencies": {
"tape": "^4.10.2"
+ },
+ "dependencies": {
+ "is-buffer": "^2.0.3"
}
}