wip: implement BigNumber wrapper

This commit is contained in:
nanov 2019-11-06 17:16:15 +02:00
parent d21d89fb36
commit cda36bfcb3

20
lib/BigNumber.js Normal file
View File

@ -0,0 +1,20 @@
'use strict';
const { jsbn: { BigInteger } } = require('node-forge');
class BigNumber {
constructor(value = '') {
this._n = new BigInteger(value);
}
toBEBuffer(length = undefined) {
const arr = this._n.toByteArray();
if (length && arr.length > length)
throw new Error('Number out of range.');
while (arr.length < length)
arr.unshift(0);
return Buffer.from(arr);
}
}
module.exports = BigNumber;