matrixbithash
Version:
Verify Matrixbit Hashing
35 lines (24 loc) • 850 B
JavaScript
var wasm = require('./mxbit.js');
var digest = function (ev) {
var inputBuffer = wasm._malloc(ev.length + 1);
var outputSizePtr = wasm._malloc(4); // eslint-disable-line
var outputBufferPtr;
var outputSize;
var outputContent;
var i;
wasm.writeArrayToMemory(ev, inputBuffer);
outputBufferPtr = wasm.convert(
inputBuffer, ev.length, outputSizePtr
);
outputSize = wasm.getValue(outputSizePtr, 'i32');
outputContent = Buffer.alloc(outputSize);
for (i = 0; i < outputSize; i++) {
outputContent[i] = wasm.getValue(outputBufferPtr + i, 'i8');
}
wasm.freePtrs(outputBufferPtr, outputSizePtr);
var data = new Buffer(outputContent, 'hex');
return data;
};
module.exports = {
digest: digest,
};