UNPKG

apostille-library

Version:

A novel & holistic blockchain notarization and timestamping with transferable, updatable, branded, and conjointly owned notarizations.

35 lines 1.5 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; var __importStar = (this && this.__importStar) || function (mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; result["default"] = mod; return result; }; Object.defineProperty(exports, "__esModule", { value: true }); const crypto_js_1 = __importDefault(require("crypto-js")); const nemSDK = __importStar(require("nem-sdk")); const nem2_sdk_1 = require("nem2-sdk"); const HashFunction_1 = require("./HashFunction"); const nem = nemSDK.default; class KECCAK512 extends HashFunction_1.HashFunction { constructor() { super('89'); } signedHashing(data, signerPrivateKey, networkType) { const dataHash = crypto_js_1.default.SHA3(data, { outputLength: 512 }).toString(); if (networkType === nem2_sdk_1.NetworkType.MAIN_NET || networkType === nem2_sdk_1.NetworkType.TEST_NET) { const keyPair = nem.crypto.keyPair.create(signerPrivateKey); return this.checksum + keyPair.sign(dataHash).toString(); } else { const signer = nem2_sdk_1.Account.createFromPrivateKey(signerPrivateKey, networkType); return this.checksum + signer.signData(dataHash); } } } exports.KECCAK512 = KECCAK512; //# sourceMappingURL=keccak-512.js.map