PHP WebShell
Текущая директория: /usr/lib/node_modules/bitgo/node_modules/@bitgo/sdk-coin-xlm/dist/src/lib
Просмотр файла: keyPair.js
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.KeyPair = void 0;
const stellar = __importStar(require("stellar-sdk"));
const sdk_core_1 = require("@bitgo/sdk-core");
const utils_1 = require("./utils");
class KeyPair extends sdk_core_1.Ed25519KeyPair {
/**
* Public constructor. By default, creates a key pair with a random master seed.
*
* @param { KeyPairOptions } source Either a master seed, a private key, or a public key
*/
constructor(source) {
super(source);
}
getKeys(raw = false) {
const publicKey = (0, utils_1.encodePublicKey)(Buffer.from(this.keyPair.pub, 'hex'));
const result = {
pub: raw ? (0, utils_1.decodePublicKey)(publicKey).toString('hex') : publicKey,
};
if (this.keyPair.prv) {
const privateKey = (0, utils_1.encodePrivateKey)(Buffer.from(this.keyPair.prv, 'hex'));
result.prv = raw ? (0, utils_1.decodePrivateKey)(privateKey).toString('hex') : privateKey;
}
return result;
}
/** @inheritdoc */
getAddress() {
return (0, utils_1.encodePublicKey)(Buffer.from(this.keyPair.pub, 'hex'));
}
/** @inheritdoc */
recordKeysFromPublicKeyInProtocolFormat(pub) {
try {
const publicKey = (0, utils_1.decodePublicKey)(pub);
return { pub: publicKey.toString('hex') };
}
catch (e) {
throw new sdk_core_1.InvalidKey('Invalid public key: ' + pub);
}
}
/** @inheritdoc */
recordKeysFromPrivateKeyInProtocolFormat(prv) {
try {
const kp = stellar.Keypair.fromSecret(prv);
const publicKey = (0, utils_1.decodePublicKey)(kp.publicKey());
const privateKey = (0, utils_1.decodePrivateKey)(kp.secret());
return {
pub: publicKey.toString('hex'),
prv: privateKey.toString('hex'),
};
}
catch (e) {
throw new sdk_core_1.InvalidKey('Invalid private key: ' + prv);
}
}
}
exports.KeyPair = KeyPair;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5UGFpci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIva2V5UGFpci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxxREFBdUM7QUFDdkMsOENBQTBGO0FBQzFGLG1DQUErRjtBQUUvRixNQUFhLE9BQVEsU0FBUSx5QkFBYztJQUN6Qzs7OztPQUlHO0lBQ0gsWUFBWSxNQUF1QjtRQUNqQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDaEIsQ0FBQztJQUVELE9BQU8sQ0FBQyxHQUFHLEdBQUcsS0FBSztRQUNqQixNQUFNLFNBQVMsR0FBRyxJQUFBLHVCQUFlLEVBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ3hFLE1BQU0sTUFBTSxHQUFnQjtZQUMxQixHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFBLHVCQUFlLEVBQUMsU0FBUyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTO1NBQ2xFLENBQUM7UUFFRixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDckIsTUFBTSxVQUFVLEdBQUcsSUFBQSx3QkFBZ0IsRUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDMUUsTUFBTSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUEsd0JBQWdCLEVBQUMsVUFBVSxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUM7UUFDL0UsQ0FBQztRQUVELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsVUFBVTtRQUNSLE9BQU8sSUFBQSx1QkFBZSxFQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLHVDQUF1QyxDQUFDLEdBQVc7UUFDakQsSUFBSSxDQUFDO1lBQ0gsTUFBTSxTQUFTLEdBQUcsSUFBQSx1QkFBZSxFQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3ZDLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQzVDLENBQUM7UUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ1gsTUFBTSxJQUFJLHFCQUFVLENBQUMsc0JBQXNCLEdBQUcsR0FBRyxDQUFDLENBQUM7UUFDckQsQ0FBQztJQUNILENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsd0NBQXdDLENBQUMsR0FBVztRQUNsRCxJQUFJLENBQUM7WUFDSCxNQUFNLEVBQUUsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUMzQyxNQUFNLFNBQVMsR0FBRyxJQUFBLHVCQUFlLEVBQUMsRUFBRSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7WUFDbEQsTUFBTSxVQUFVLEdBQUcsSUFBQSx3QkFBZ0IsRUFBQyxFQUFFLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztZQUNqRCxPQUFPO2dCQUNMLEdBQUcsRUFBRSxTQUFTLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQztnQkFDOUIsR0FBRyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDO2FBQ2hDLENBQUM7UUFDSixDQUFDO1FBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNYLE1BQU0sSUFBSSxxQkFBVSxDQUFDLHVCQUF1QixHQUFHLEdBQUcsQ0FBQyxDQUFDO1FBQ3RELENBQUM7SUFDSCxDQUFDO0NBQ0Y7QUFyREQsMEJBcURDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgc3RlbGxhciBmcm9tICdzdGVsbGFyLXNkayc7XG5pbXBvcnQgeyBEZWZhdWx0S2V5cywgRWQyNTUxOUtleVBhaXIsIEludmFsaWRLZXksIEtleVBhaXJPcHRpb25zIH0gZnJvbSAnQGJpdGdvL3Nkay1jb3JlJztcbmltcG9ydCB7IGRlY29kZVByaXZhdGVLZXksIGRlY29kZVB1YmxpY0tleSwgZW5jb2RlUHJpdmF0ZUtleSwgZW5jb2RlUHVibGljS2V5IH0gZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCBjbGFzcyBLZXlQYWlyIGV4dGVuZHMgRWQyNTUxOUtleVBhaXIge1xuICAvKipcbiAgICogUHVibGljIGNvbnN0cnVjdG9yLiBCeSBkZWZhdWx0LCBjcmVhdGVzIGEga2V5IHBhaXIgd2l0aCBhIHJhbmRvbSBtYXN0ZXIgc2VlZC5cbiAgICpcbiAgICogQHBhcmFtIHsgS2V5UGFpck9wdGlvbnMgfSBzb3VyY2UgRWl0aGVyIGEgbWFzdGVyIHNlZWQsIGEgcHJpdmF0ZSBrZXksIG9yIGEgcHVibGljIGtleVxuICAgKi9cbiAgY29uc3RydWN0b3Ioc291cmNlPzogS2V5UGFpck9wdGlvbnMpIHtcbiAgICBzdXBlcihzb3VyY2UpO1xuICB9XG5cbiAgZ2V0S2V5cyhyYXcgPSBmYWxzZSk6IERlZmF1bHRLZXlzIHtcbiAgICBjb25zdCBwdWJsaWNLZXkgPSBlbmNvZGVQdWJsaWNLZXkoQnVmZmVyLmZyb20odGhpcy5rZXlQYWlyLnB1YiwgJ2hleCcpKTtcbiAgICBjb25zdCByZXN1bHQ6IERlZmF1bHRLZXlzID0ge1xuICAgICAgcHViOiByYXcgPyBkZWNvZGVQdWJsaWNLZXkocHVibGljS2V5KS50b1N0cmluZygnaGV4JykgOiBwdWJsaWNLZXksXG4gICAgfTtcblxuICAgIGlmICh0aGlzLmtleVBhaXIucHJ2KSB7XG4gICAgICBjb25zdCBwcml2YXRlS2V5ID0gZW5jb2RlUHJpdmF0ZUtleShCdWZmZXIuZnJvbSh0aGlzLmtleVBhaXIucHJ2LCAnaGV4JykpO1xuICAgICAgcmVzdWx0LnBydiA9IHJhdyA/IGRlY29kZVByaXZhdGVLZXkocHJpdmF0ZUtleSkudG9TdHJpbmcoJ2hleCcpIDogcHJpdmF0ZUtleTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldEFkZHJlc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gZW5jb2RlUHVibGljS2V5KEJ1ZmZlci5mcm9tKHRoaXMua2V5UGFpci5wdWIsICdoZXgnKSk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcmVjb3JkS2V5c0Zyb21QdWJsaWNLZXlJblByb3RvY29sRm9ybWF0KHB1Yjogc3RyaW5nKTogRGVmYXVsdEtleXMge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBwdWJsaWNLZXkgPSBkZWNvZGVQdWJsaWNLZXkocHViKTtcbiAgICAgIHJldHVybiB7IHB1YjogcHVibGljS2V5LnRvU3RyaW5nKCdoZXgnKSB9O1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkS2V5KCdJbnZhbGlkIHB1YmxpYyBrZXk6ICcgKyBwdWIpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICByZWNvcmRLZXlzRnJvbVByaXZhdGVLZXlJblByb3RvY29sRm9ybWF0KHBydjogc3RyaW5nKTogRGVmYXVsdEtleXMge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBrcCA9IHN0ZWxsYXIuS2V5cGFpci5mcm9tU2VjcmV0KHBydik7XG4gICAgICBjb25zdCBwdWJsaWNLZXkgPSBkZWNvZGVQdWJsaWNLZXkoa3AucHVibGljS2V5KCkpO1xuICAgICAgY29uc3QgcHJpdmF0ZUtleSA9IGRlY29kZVByaXZhdGVLZXkoa3Auc2VjcmV0KCkpO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgcHViOiBwdWJsaWNLZXkudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgICBwcnY6IHByaXZhdGVLZXkudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgfTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEtleSgnSW52YWxpZCBwcml2YXRlIGtleTogJyArIHBydik7XG4gICAgfVxuICB9XG59XG4iXX0=Выполнить команду
Для локальной разработки. Не используйте в интернете!