PHP WebShell
Текущая директория: /opt/BitGoJS/node_modules/@substrate/txwrapper-core/lib/core/util
Просмотр файла: deriveAddress.js
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.deriveAddress = void 0;
const keyring_1 = require("@polkadot/keyring");
const util_1 = require("@polkadot/util");
const util_crypto_1 = require("@polkadot/util-crypto");
/**
* Copyright 2023 via polkadot-js/common
*
* The slightly modified below logic is copyrighted from polkadot-js/common . The exact path to the code can be seen here:
* https://github.com/polkadot-js/common/blob/e5cb0ba2b4a6b5817626cc964b4f66334f2410e4/packages/keyring/src/pair/index.ts#L44-L49
*/
const TYPE_ADDRESS = {
ecdsa: (p) => (p.length > 32 ? (0, util_crypto_1.blake2AsU8a)(p) : p),
ed25519: (p) => p,
sr25519: (p) => p,
};
/**
* Derive an address from a cryptographic public key offline.
*
* @param publicKey - The public key to derive from.
* @param ss58Format - The SS58 format to use.
* @param scheme - The scheme in which you want to apply. It defaults to sr25519
*/
function deriveAddress(publicKey, ss58Format, scheme = 'sr25519') {
const raw = (0, util_1.isHex)(publicKey)
? (0, util_1.hexToU8a)(publicKey)
: publicKey;
const input = TYPE_ADDRESS[scheme](raw);
const keyring = new keyring_1.Keyring({ type: scheme, ss58Format: ss58Format });
const address = keyring.encodeAddress(input, ss58Format);
return address;
}
exports.deriveAddress = deriveAddress;
//# sourceMappingURL=deriveAddress.js.mapВыполнить команду
Для локальной разработки. Не используйте в интернете!