UNPKG

@bitgo/bls

Version:

Implementation of bls signature verification for ethereum 2.0

31 lines (25 loc) 1 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.padLeft = padLeft; exports.EMPTY_SIGNATURE = exports.EMPTY_PUBLIC_KEY = void 0; var _assert = _interopRequireDefault(require("assert")); var _constants = require("../constants"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } /** * Pads byte array with zeroes on left side up to desired length. * Throws if source is larger than desired result. * @param source * @param length */ function padLeft(source, length) { (0, _assert.default)(source.length <= length, "Given array must be smaller or equal to desired array size"); const result = Buffer.alloc(length, 0); result.set(source, length - source.length); return result; } const EMPTY_PUBLIC_KEY = Buffer.alloc(_constants.PUBLIC_KEY_LENGTH); exports.EMPTY_PUBLIC_KEY = EMPTY_PUBLIC_KEY; const EMPTY_SIGNATURE = Buffer.alloc(_constants.SIGNATURE_LENGTH); exports.EMPTY_SIGNATURE = EMPTY_SIGNATURE;