PHP WebShell
Текущая директория: /opt/BitGoJS/modules/secp256k1/dist/test
Просмотр файла: index.js
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const assert = require("assert");
const secp256k1 = require("../src");
describe('secp256k1', function () {
describe('bip32', function () {
// https://github.com/bitcoinjs/bip32/blob/master/test/fixtures/index.json
const fixture = {
seed: '000102030405060708090a0b0c0d0e0f',
wif: 'L52XzL2cMkHxqxBXRyEpnPQZGUs3uKiL3R11XbAdHigRzDozKZeW',
pubKey: '0339a36013301597daef41fbe593a02cc513d0b55527ec2df1050e2e8ff49c85c2',
privKey: 'e8f32e723decf4051aefac8e2c93c9c5b214313817cdb01a1494b917c8436b35',
chainCode: '873dff81c02f525623fd1fe5167eac3a55a049de3d314bb42ee227ffed37d508',
base58: 'xpub661MyMwAqRbcFtXgS5sYJABqqG9YLmC4Q1Rdap9gSE8NqtwybGhePY2gZ29ESFjqJoCu1Rupje8YtGqsefD265TMg7usUDFdp6W1EGMcet8',
base58Priv: 'xprv9s21ZrQH143K3QTDL4LXw2F7HEK3wJUD2nW2nRk4stbPy6cq3jPPqjiChkVvvNKmPGJxWUtg6LnF5kejMRNNU3TGtRBeJgk33yuGBxrMPHi',
identifier: '3442193e1bb70916e914552172cd4e2dbc9df811',
fingerprint: '3442193e',
};
it('has expected value', function () {
const key = secp256k1.bip32.fromSeed(Buffer.from(fixture.seed, 'hex'));
assert.strictEqual(key.toWIF(), fixture.wif);
assert.strictEqual(key.publicKey.toString('hex'), fixture.pubKey);
assert.strictEqual(key.privateKey?.toString('hex'), fixture.privKey);
assert.strictEqual(key.chainCode.toString('hex'), fixture.chainCode);
assert.strictEqual(key.neutered().toBase58(), fixture.base58);
assert.strictEqual(key.toBase58(), fixture.base58Priv);
assert.strictEqual(key.identifier.toString('hex'), fixture.identifier);
assert.strictEqual(key.fingerprint.toString('hex'), fixture.fingerprint);
});
});
describe('ecpair', function () {
// https://github.com/bitcoinjs/ecpair/blob/master/test/ecpair.spec.ts
it('has expected value', function () {
const ONE = Buffer.from('0000000000000000000000000000000000000000000000000000000000000001', 'hex');
const keyPair = secp256k1.ECPair.fromPrivateKey(ONE);
assert.strictEqual(keyPair.publicKey.toString('hex'), '0279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798');
});
});
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90ZXN0L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsaUNBQWlDO0FBRWpDLG9DQUFvQztBQUVwQyxRQUFRLENBQUMsV0FBVyxFQUFFO0lBQ3BCLFFBQVEsQ0FBQyxPQUFPLEVBQUU7UUFDaEIsMEVBQTBFO1FBQzFFLE1BQU0sT0FBTyxHQUFHO1lBQ2QsSUFBSSxFQUFFLGtDQUFrQztZQUN4QyxHQUFHLEVBQUUsc0RBQXNEO1lBQzNELE1BQU0sRUFBRSxvRUFBb0U7WUFDNUUsT0FBTyxFQUFFLGtFQUFrRTtZQUMzRSxTQUFTLEVBQUUsa0VBQWtFO1lBQzdFLE1BQU0sRUFDSixpSEFBaUg7WUFDbkgsVUFBVSxFQUNSLGlIQUFpSDtZQUNuSCxVQUFVLEVBQUUsMENBQTBDO1lBQ3RELFdBQVcsRUFBRSxVQUFVO1NBQ3hCLENBQUM7UUFDRixFQUFFLENBQUMsb0JBQW9CLEVBQUU7WUFDdkIsTUFBTSxHQUFHLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDdkUsTUFBTSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzdDLE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ2xFLE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3JFLE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3JFLE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsRUFBRSxFQUFFLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUM5RCxNQUFNLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsRUFBRSxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDdkQsTUFBTSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDdkUsTUFBTSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDM0UsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztJQUVILFFBQVEsQ0FBQyxRQUFRLEVBQUU7UUFDakIsc0VBQXNFO1FBQ3RFLEVBQUUsQ0FBQyxvQkFBb0IsRUFBRTtZQUN2QixNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLGtFQUFrRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQ25HLE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3JELE1BQU0sQ0FBQyxXQUFXLENBQ2hCLE9BQU8sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUNqQyxvRUFBb0UsQ0FDckUsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGFzc2VydCBmcm9tICdhc3NlcnQnO1xuXG5pbXBvcnQgKiBhcyBzZWNwMjU2azEgZnJvbSAnLi4vc3JjJztcblxuZGVzY3JpYmUoJ3NlY3AyNTZrMScsIGZ1bmN0aW9uICgpIHtcbiAgZGVzY3JpYmUoJ2JpcDMyJywgZnVuY3Rpb24gKCkge1xuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9iaXRjb2luanMvYmlwMzIvYmxvYi9tYXN0ZXIvdGVzdC9maXh0dXJlcy9pbmRleC5qc29uXG4gICAgY29uc3QgZml4dHVyZSA9IHtcbiAgICAgIHNlZWQ6ICcwMDAxMDIwMzA0MDUwNjA3MDgwOTBhMGIwYzBkMGUwZicsXG4gICAgICB3aWY6ICdMNTJYekwyY01rSHhxeEJYUnlFcG5QUVpHVXMzdUtpTDNSMTFYYkFkSGlnUnpEb3pLWmVXJyxcbiAgICAgIHB1YktleTogJzAzMzlhMzYwMTMzMDE1OTdkYWVmNDFmYmU1OTNhMDJjYzUxM2QwYjU1NTI3ZWMyZGYxMDUwZTJlOGZmNDljODVjMicsXG4gICAgICBwcml2S2V5OiAnZThmMzJlNzIzZGVjZjQwNTFhZWZhYzhlMmM5M2M5YzViMjE0MzEzODE3Y2RiMDFhMTQ5NGI5MTdjODQzNmIzNScsXG4gICAgICBjaGFpbkNvZGU6ICc4NzNkZmY4MWMwMmY1MjU2MjNmZDFmZTUxNjdlYWMzYTU1YTA0OWRlM2QzMTRiYjQyZWUyMjdmZmVkMzdkNTA4JyxcbiAgICAgIGJhc2U1ODpcbiAgICAgICAgJ3hwdWI2NjFNeU13QXFSYmNGdFhnUzVzWUpBQnFxRzlZTG1DNFExUmRhcDlnU0U4TnF0d3liR2hlUFkyZ1oyOUVTRmpxSm9DdTFSdXBqZThZdEdxc2VmRDI2NVRNZzd1c1VERmRwNlcxRUdNY2V0OCcsXG4gICAgICBiYXNlNThQcml2OlxuICAgICAgICAneHBydjlzMjFaclFIMTQzSzNRVERMNExYdzJGN0hFSzN3SlVEMm5XMm5SazRzdGJQeTZjcTNqUFBxamlDaGtWdnZOS21QR0p4V1V0ZzZMbkY1a2VqTVJOTlUzVEd0UkJlSmdrMzN5dUdCeHJNUEhpJyxcbiAgICAgIGlkZW50aWZpZXI6ICczNDQyMTkzZTFiYjcwOTE2ZTkxNDU1MjE3MmNkNGUyZGJjOWRmODExJyxcbiAgICAgIGZpbmdlcnByaW50OiAnMzQ0MjE5M2UnLFxuICAgIH07XG4gICAgaXQoJ2hhcyBleHBlY3RlZCB2YWx1ZScsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGNvbnN0IGtleSA9IHNlY3AyNTZrMS5iaXAzMi5mcm9tU2VlZChCdWZmZXIuZnJvbShmaXh0dXJlLnNlZWQsICdoZXgnKSk7XG4gICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoa2V5LnRvV0lGKCksIGZpeHR1cmUud2lmKTtcbiAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChrZXkucHVibGljS2V5LnRvU3RyaW5nKCdoZXgnKSwgZml4dHVyZS5wdWJLZXkpO1xuICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKGtleS5wcml2YXRlS2V5Py50b1N0cmluZygnaGV4JyksIGZpeHR1cmUucHJpdktleSk7XG4gICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoa2V5LmNoYWluQ29kZS50b1N0cmluZygnaGV4JyksIGZpeHR1cmUuY2hhaW5Db2RlKTtcbiAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChrZXkubmV1dGVyZWQoKS50b0Jhc2U1OCgpLCBmaXh0dXJlLmJhc2U1OCk7XG4gICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoa2V5LnRvQmFzZTU4KCksIGZpeHR1cmUuYmFzZTU4UHJpdik7XG4gICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoa2V5LmlkZW50aWZpZXIudG9TdHJpbmcoJ2hleCcpLCBmaXh0dXJlLmlkZW50aWZpZXIpO1xuICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKGtleS5maW5nZXJwcmludC50b1N0cmluZygnaGV4JyksIGZpeHR1cmUuZmluZ2VycHJpbnQpO1xuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZSgnZWNwYWlyJywgZnVuY3Rpb24gKCkge1xuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9iaXRjb2luanMvZWNwYWlyL2Jsb2IvbWFzdGVyL3Rlc3QvZWNwYWlyLnNwZWMudHNcbiAgICBpdCgnaGFzIGV4cGVjdGVkIHZhbHVlJywgZnVuY3Rpb24gKCkge1xuICAgICAgY29uc3QgT05FID0gQnVmZmVyLmZyb20oJzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDEnLCAnaGV4Jyk7XG4gICAgICBjb25zdCBrZXlQYWlyID0gc2VjcDI1NmsxLkVDUGFpci5mcm9tUHJpdmF0ZUtleShPTkUpO1xuICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgICAgICBrZXlQYWlyLnB1YmxpY0tleS50b1N0cmluZygnaGV4JyksXG4gICAgICAgICcwMjc5YmU2NjdlZjlkY2JiYWM1NWEwNjI5NWNlODcwYjA3MDI5YmZjZGIyZGNlMjhkOTU5ZjI4MTViMTZmODE3OTgnXG4gICAgICApO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl19Выполнить команду
Для локальной разработки. Не используйте в интернете!