PHP WebShell

Текущая директория: /usr/lib/node_modules/bitgo/node_modules/@bitgo/utxo-lib/dist/src/templates/witnessscripthash

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

"use strict";
// <scriptSig> {serialized scriptPubKey script}
Object.defineProperty(exports, "__esModule", { value: true });
exports.check = check;
const __1 = require("../../");
const typeforce = require('typeforce');
const p2ms = require("../multisig");
const p2pk = require("../pubkey");
const p2pkh = require("../pubkeyhash");
function check(chunks, allowIncomplete) {
    typeforce(typeforce.Array, chunks);
    if (chunks.length < 1)
        return false;
    const witnessScript = chunks[chunks.length - 1];
    if (!Buffer.isBuffer(witnessScript))
        return false;
    const witnessScriptChunks = __1.script.decompile(witnessScript);
    // is witnessScript a valid script?
    if (!witnessScriptChunks || witnessScriptChunks.length === 0)
        return false;
    const witnessRawScriptSig = __1.script.compile(chunks.slice(0, -1));
    // match types
    if (p2pkh.input.check(witnessRawScriptSig) && p2pkh.output.check(witnessScriptChunks))
        return true;
    if (p2ms.input.check(witnessRawScriptSig, allowIncomplete) && p2ms.output.check(witnessScriptChunks))
        return true;
    if (p2pk.input.check(witnessRawScriptSig) && p2pk.output.check(witnessScriptChunks))
        return true;
    return false;
}
check.toJSON = () => {
    return 'witnessScriptHash input';
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL3dpdG5lc3NzY3JpcHRoYXNoL2lucHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSwrQ0FBK0M7O0FBUy9DLHNCQXNCQztBQTdCRCw4QkFBMkM7QUFDM0MsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0FBRXZDLG9DQUFvQztBQUNwQyxrQ0FBa0M7QUFDbEMsdUNBQXVDO0FBRXZDLFNBQWdCLEtBQUssQ0FBQyxNQUFnQixFQUFFLGVBQXlCO0lBQy9ELFNBQVMsQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ25DLElBQUksTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDO1FBQUUsT0FBTyxLQUFLLENBQUM7SUFFcEMsTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDaEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDO1FBQUUsT0FBTyxLQUFLLENBQUM7SUFFbEQsTUFBTSxtQkFBbUIsR0FBRyxVQUFPLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBRTdELG1DQUFtQztJQUNuQyxJQUFJLENBQUMsbUJBQW1CLElBQUksbUJBQW1CLENBQUMsTUFBTSxLQUFLLENBQUM7UUFBRSxPQUFPLEtBQUssQ0FBQztJQUUzRSxNQUFNLG1CQUFtQixHQUFHLFVBQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRWpFLGNBQWM7SUFDZCxJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUFDLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsbUJBQW1CLENBQUM7UUFBRSxPQUFPLElBQUksQ0FBQztJQUVuRyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLG1CQUFtQixFQUFFLGVBQWUsQ0FBQyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUFDO1FBQUUsT0FBTyxJQUFJLENBQUM7SUFFbEgsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUFDO1FBQUUsT0FBTyxJQUFJLENBQUM7SUFFakcsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDO0FBQ0QsS0FBSyxDQUFDLE1BQU0sR0FBRyxHQUFXLEVBQUU7SUFDMUIsT0FBTyx5QkFBeUIsQ0FBQztBQUNuQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyA8c2NyaXB0U2lnPiB7c2VyaWFsaXplZCBzY3JpcHRQdWJLZXkgc2NyaXB0fVxuXG5pbXBvcnQgeyBzY3JpcHQgYXMgYnNjcmlwdCB9IGZyb20gJy4uLy4uLyc7XG5jb25zdCB0eXBlZm9yY2UgPSByZXF1aXJlKCd0eXBlZm9yY2UnKTtcblxuaW1wb3J0ICogYXMgcDJtcyBmcm9tICcuLi9tdWx0aXNpZyc7XG5pbXBvcnQgKiBhcyBwMnBrIGZyb20gJy4uL3B1YmtleSc7XG5pbXBvcnQgKiBhcyBwMnBraCBmcm9tICcuLi9wdWJrZXloYXNoJztcblxuZXhwb3J0IGZ1bmN0aW9uIGNoZWNrKGNodW5rczogQnVmZmVyW10sIGFsbG93SW5jb21wbGV0ZT86IGJvb2xlYW4pOiBib29sZWFuIHtcbiAgdHlwZWZvcmNlKHR5cGVmb3JjZS5BcnJheSwgY2h1bmtzKTtcbiAgaWYgKGNodW5rcy5sZW5ndGggPCAxKSByZXR1cm4gZmFsc2U7XG5cbiAgY29uc3Qgd2l0bmVzc1NjcmlwdCA9IGNodW5rc1tjaHVua3MubGVuZ3RoIC0gMV07XG4gIGlmICghQnVmZmVyLmlzQnVmZmVyKHdpdG5lc3NTY3JpcHQpKSByZXR1cm4gZmFsc2U7XG5cbiAgY29uc3Qgd2l0bmVzc1NjcmlwdENodW5rcyA9IGJzY3JpcHQuZGVjb21waWxlKHdpdG5lc3NTY3JpcHQpO1xuXG4gIC8vIGlzIHdpdG5lc3NTY3JpcHQgYSB2YWxpZCBzY3JpcHQ/XG4gIGlmICghd2l0bmVzc1NjcmlwdENodW5rcyB8fCB3aXRuZXNzU2NyaXB0Q2h1bmtzLmxlbmd0aCA9PT0gMCkgcmV0dXJuIGZhbHNlO1xuXG4gIGNvbnN0IHdpdG5lc3NSYXdTY3JpcHRTaWcgPSBic2NyaXB0LmNvbXBpbGUoY2h1bmtzLnNsaWNlKDAsIC0xKSk7XG5cbiAgLy8gbWF0Y2ggdHlwZXNcbiAgaWYgKHAycGtoLmlucHV0LmNoZWNrKHdpdG5lc3NSYXdTY3JpcHRTaWcpICYmIHAycGtoLm91dHB1dC5jaGVjayh3aXRuZXNzU2NyaXB0Q2h1bmtzKSkgcmV0dXJuIHRydWU7XG5cbiAgaWYgKHAybXMuaW5wdXQuY2hlY2sod2l0bmVzc1Jhd1NjcmlwdFNpZywgYWxsb3dJbmNvbXBsZXRlKSAmJiBwMm1zLm91dHB1dC5jaGVjayh3aXRuZXNzU2NyaXB0Q2h1bmtzKSkgcmV0dXJuIHRydWU7XG5cbiAgaWYgKHAycGsuaW5wdXQuY2hlY2sod2l0bmVzc1Jhd1NjcmlwdFNpZykgJiYgcDJway5vdXRwdXQuY2hlY2sod2l0bmVzc1NjcmlwdENodW5rcykpIHJldHVybiB0cnVlO1xuXG4gIHJldHVybiBmYWxzZTtcbn1cbmNoZWNrLnRvSlNPTiA9ICgpOiBzdHJpbmcgPT4ge1xuICByZXR1cm4gJ3dpdG5lc3NTY3JpcHRIYXNoIGlucHV0Jztcbn07XG4iXX0=

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


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