PHP WebShell

Текущая директория: /opt/BitGoJS/modules/bitgo/dist/test/unit

Просмотр файла: bip32util.js

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
/**
 * @prettier
 */
const sdk_core_1 = require("@bitgo/sdk-core");
const crypto = require("crypto");
const utxo_lib_1 = require("@bitgo/utxo-lib");
require("should");
const utxolib = require("@bitgo/utxo-lib");
describe('bip32util', function () {
    function getSeedBuffers(length) {
        return Array.from({ length }).map((_, i) => crypto.createHash('sha256').update(`${i}`).digest());
    }
    it('signMessage/verifyMessage', function () {
        const keys = getSeedBuffers(4).map((seed) => utxo_lib_1.bip32.fromSeed(seed));
        const messages = ['hello', 'goodbye'];
        keys.forEach((key) => {
            messages.forEach((message) => {
                const signature = (0, sdk_core_1.signMessage)(message, key, utxolib.networks.bitcoin);
                keys.forEach((otherKey) => {
                    messages.forEach((otherMessage) => {
                        (0, sdk_core_1.verifyMessage)(otherMessage, otherKey, signature, utxolib.networks.bitcoin).should.eql(message === otherMessage && key === otherKey);
                    });
                });
            });
        });
    });
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmlwMzJ1dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vdGVzdC91bml0L2JpcDMydXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBOztHQUVHO0FBQ0gsOENBQTZEO0FBQzdELGlDQUFpQztBQUNqQyw4Q0FBd0M7QUFDeEMsa0JBQWdCO0FBRWhCLDJDQUEyQztBQUUzQyxRQUFRLENBQUMsV0FBVyxFQUFFO0lBQ3BCLFNBQVMsY0FBYyxDQUFDLE1BQWM7UUFDcEMsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUNuRyxDQUFDO0lBQ0QsRUFBRSxDQUFDLDJCQUEyQixFQUFFO1FBQzlCLE1BQU0sSUFBSSxHQUFHLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLGdCQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDbkUsTUFBTSxRQUFRLEdBQUcsQ0FBQyxPQUFPLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDdEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ25CLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtnQkFDM0IsTUFBTSxTQUFTLEdBQUcsSUFBQSxzQkFBVyxFQUFDLE9BQU8sRUFBRSxHQUFHLEVBQUUsT0FBTyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFFdEUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO29CQUN4QixRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsWUFBWSxFQUFFLEVBQUU7d0JBQ2hDLElBQUEsd0JBQWEsRUFBQyxZQUFZLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQ25GLE9BQU8sS0FBSyxZQUFZLElBQUksR0FBRyxLQUFLLFFBQVEsQ0FDN0MsQ0FBQztvQkFDSixDQUFDLENBQUMsQ0FBQztnQkFDTCxDQUFDLENBQUMsQ0FBQztZQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcHJldHRpZXJcbiAqL1xuaW1wb3J0IHsgc2lnbk1lc3NhZ2UsIHZlcmlmeU1lc3NhZ2UgfSBmcm9tICdAYml0Z28vc2RrLWNvcmUnO1xuaW1wb3J0ICogYXMgY3J5cHRvIGZyb20gJ2NyeXB0byc7XG5pbXBvcnQgeyBiaXAzMiB9IGZyb20gJ0BiaXRnby91dHhvLWxpYic7XG5pbXBvcnQgJ3Nob3VsZCc7XG5cbmltcG9ydCAqIGFzIHV0eG9saWIgZnJvbSAnQGJpdGdvL3V0eG8tbGliJztcblxuZGVzY3JpYmUoJ2JpcDMydXRpbCcsIGZ1bmN0aW9uICgpIHtcbiAgZnVuY3Rpb24gZ2V0U2VlZEJ1ZmZlcnMobGVuZ3RoOiBudW1iZXIpIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh7IGxlbmd0aCB9KS5tYXAoKF8sIGkpID0+IGNyeXB0by5jcmVhdGVIYXNoKCdzaGEyNTYnKS51cGRhdGUoYCR7aX1gKS5kaWdlc3QoKSk7XG4gIH1cbiAgaXQoJ3NpZ25NZXNzYWdlL3ZlcmlmeU1lc3NhZ2UnLCBmdW5jdGlvbiAoKSB7XG4gICAgY29uc3Qga2V5cyA9IGdldFNlZWRCdWZmZXJzKDQpLm1hcCgoc2VlZCkgPT4gYmlwMzIuZnJvbVNlZWQoc2VlZCkpO1xuICAgIGNvbnN0IG1lc3NhZ2VzID0gWydoZWxsbycsICdnb29kYnllJ107XG4gICAga2V5cy5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgIG1lc3NhZ2VzLmZvckVhY2goKG1lc3NhZ2UpID0+IHtcbiAgICAgICAgY29uc3Qgc2lnbmF0dXJlID0gc2lnbk1lc3NhZ2UobWVzc2FnZSwga2V5LCB1dHhvbGliLm5ldHdvcmtzLmJpdGNvaW4pO1xuXG4gICAgICAgIGtleXMuZm9yRWFjaCgob3RoZXJLZXkpID0+IHtcbiAgICAgICAgICBtZXNzYWdlcy5mb3JFYWNoKChvdGhlck1lc3NhZ2UpID0+IHtcbiAgICAgICAgICAgIHZlcmlmeU1lc3NhZ2Uob3RoZXJNZXNzYWdlLCBvdGhlcktleSwgc2lnbmF0dXJlLCB1dHhvbGliLm5ldHdvcmtzLmJpdGNvaW4pLnNob3VsZC5lcWwoXG4gICAgICAgICAgICAgIG1lc3NhZ2UgPT09IG90aGVyTWVzc2FnZSAmJiBrZXkgPT09IG90aGVyS2V5XG4gICAgICAgICAgICApO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl19

Выполнить команду


Для локальной разработки. Не используйте в интернете!