PHP WebShell

Текущая директория: /usr/lib/node_modules/bitgo/node_modules/@bitgo/sdk-coin-cosmos/dist/src/lib

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

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.KeyPair = void 0;
const amino_1 = require("@cosmjs/amino");
const abstract_cosmos_1 = require("@bitgo/abstract-cosmos");
/**
 * Cosmos keys and address management for the shared Cosmos SDK.
 */
class KeyPair extends abstract_cosmos_1.CosmosKeyPair {
    /**
     * Public constructor. By default, creates a key pair with a random master seed.
     *
     * @param source Either a master seed, a private key (extended or raw), or a public key
     * @param coin The coin configuration for this key pair
     */
    constructor(source, coin) {
        super(source);
        this._coin = coin;
    }
    /** @inheritdoc */
    getAddress() {
        if (!this._coin) {
            throw new Error('Coin configuration is required to derive address');
        }
        const network = this._coin.network;
        if (!network || !network.addressPrefix) {
            throw new Error('Invalid network configuration: missing addressPrefix');
        }
        const addressPrefix = network.addressPrefix;
        const base64String = Buffer.from(this.getKeys().pub.slice(0, 66), 'hex').toString('base64');
        return (0, amino_1.pubkeyToAddress)({
            type: 'tendermint/PubKeySecp256k1',
            value: base64String,
        }, addressPrefix);
    }
}
exports.KeyPair = KeyPair;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5UGFpci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIva2V5UGFpci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSx5Q0FBZ0Q7QUFDaEQsNERBQXVEO0FBR3ZEOztHQUVHO0FBQ0gsTUFBYSxPQUFRLFNBQVEsK0JBQWE7SUFHeEM7Ozs7O09BS0c7SUFDSCxZQUFZLE1BQXVCLEVBQUUsSUFBeUI7UUFDNUQsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2QsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7SUFDcEIsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixVQUFVO1FBQ1IsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNoQixNQUFNLElBQUksS0FBSyxDQUFDLGtEQUFrRCxDQUFDLENBQUM7UUFDdEUsQ0FBQztRQUVELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBd0IsQ0FBQztRQUNwRCxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3ZDLE1BQU0sSUFBSSxLQUFLLENBQUMsc0RBQXNELENBQUMsQ0FBQztRQUMxRSxDQUFDO1FBRUQsTUFBTSxhQUFhLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQztRQUM1QyxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFNUYsT0FBTyxJQUFBLHVCQUFlLEVBQ3BCO1lBQ0UsSUFBSSxFQUFFLDRCQUE0QjtZQUNsQyxLQUFLLEVBQUUsWUFBWTtTQUNwQixFQUNELGFBQWEsQ0FDZCxDQUFDO0lBQ0osQ0FBQztDQUNGO0FBcENELDBCQW9DQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEtleVBhaXJPcHRpb25zIH0gZnJvbSAnQGJpdGdvL3Nkay1jb3JlJztcbmltcG9ydCB7IHB1YmtleVRvQWRkcmVzcyB9IGZyb20gJ0Bjb3NtanMvYW1pbm8nO1xuaW1wb3J0IHsgQ29zbW9zS2V5UGFpciB9IGZyb20gJ0BiaXRnby9hYnN0cmFjdC1jb3Ntb3MnO1xuaW1wb3J0IHsgQmFzZUNvaW4sIENvc21vc05ldHdvcmsgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5cbi8qKlxuICogQ29zbW9zIGtleXMgYW5kIGFkZHJlc3MgbWFuYWdlbWVudCBmb3IgdGhlIHNoYXJlZCBDb3Ntb3MgU0RLLlxuICovXG5leHBvcnQgY2xhc3MgS2V5UGFpciBleHRlbmRzIENvc21vc0tleVBhaXIge1xuICBwcml2YXRlIHJlYWRvbmx5IF9jb2luPzogUmVhZG9ubHk8QmFzZUNvaW4+O1xuXG4gIC8qKlxuICAgKiBQdWJsaWMgY29uc3RydWN0b3IuIEJ5IGRlZmF1bHQsIGNyZWF0ZXMgYSBrZXkgcGFpciB3aXRoIGEgcmFuZG9tIG1hc3RlciBzZWVkLlxuICAgKlxuICAgKiBAcGFyYW0gc291cmNlIEVpdGhlciBhIG1hc3RlciBzZWVkLCBhIHByaXZhdGUga2V5IChleHRlbmRlZCBvciByYXcpLCBvciBhIHB1YmxpYyBrZXlcbiAgICogQHBhcmFtIGNvaW4gVGhlIGNvaW4gY29uZmlndXJhdGlvbiBmb3IgdGhpcyBrZXkgcGFpclxuICAgKi9cbiAgY29uc3RydWN0b3Ioc291cmNlPzogS2V5UGFpck9wdGlvbnMsIGNvaW4/OiBSZWFkb25seTxCYXNlQ29pbj4pIHtcbiAgICBzdXBlcihzb3VyY2UpO1xuICAgIHRoaXMuX2NvaW4gPSBjb2luO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldEFkZHJlc3MoKTogc3RyaW5nIHtcbiAgICBpZiAoIXRoaXMuX2NvaW4pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignQ29pbiBjb25maWd1cmF0aW9uIGlzIHJlcXVpcmVkIHRvIGRlcml2ZSBhZGRyZXNzJyk7XG4gICAgfVxuXG4gICAgY29uc3QgbmV0d29yayA9IHRoaXMuX2NvaW4ubmV0d29yayBhcyBDb3Ntb3NOZXR3b3JrO1xuICAgIGlmICghbmV0d29yayB8fCAhbmV0d29yay5hZGRyZXNzUHJlZml4KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgbmV0d29yayBjb25maWd1cmF0aW9uOiBtaXNzaW5nIGFkZHJlc3NQcmVmaXgnKTtcbiAgICB9XG5cbiAgICBjb25zdCBhZGRyZXNzUHJlZml4ID0gbmV0d29yay5hZGRyZXNzUHJlZml4O1xuICAgIGNvbnN0IGJhc2U2NFN0cmluZyA9IEJ1ZmZlci5mcm9tKHRoaXMuZ2V0S2V5cygpLnB1Yi5zbGljZSgwLCA2NiksICdoZXgnKS50b1N0cmluZygnYmFzZTY0Jyk7XG5cbiAgICByZXR1cm4gcHVia2V5VG9BZGRyZXNzKFxuICAgICAge1xuICAgICAgICB0eXBlOiAndGVuZGVybWludC9QdWJLZXlTZWNwMjU2azEnLFxuICAgICAgICB2YWx1ZTogYmFzZTY0U3RyaW5nLFxuICAgICAgfSxcbiAgICAgIGFkZHJlc3NQcmVmaXhcbiAgICApO1xuICB9XG59XG4iXX0=

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


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