Download for macOS

Features

BScriptView is one window onto a transaction: its fields, its scripts, its bytes and what nodes would make of it. Here is each part, with what it does and where it stops.

  1. Decode & Edit

    Edit the fields or the hex; the other side follows.

    Paste a raw transaction and it splits into version, inputs, outputs, scripts, witnesses and lock time. Change any field and the hex is rewritten, byte for byte.

    Two-wayEvery byte has a fieldByte-exactErrors in place
    BScriptView with a SegWit transaction: its fields above and its hex below, an output amount marked in the hexBScriptView with a SegWit transaction: its fields above and its hex below, an output amount marked in the hex
  2. Script Editor

    Scripts one operation per line, explained as you go.

    Unlocking and locking scripts in TransactionBuilder's line format, with syntax colours, the bytes of the caret's line marked in the hex and a note for every pushed item.

    The original formatType data, not lengthsPaste ASMEvery item described
    A legacy input's unlocking script, one operation per line, its signature line marked in the hexA legacy input's unlocking script, one operation per line, its signature line marked in the hex
  3. Witness & Taproot

    SegWit and Taproot, item by item.

    Witness stacks one item per line next to the scriptSig, with Schnorr signatures, leaf scripts, control blocks and annexes recognised.

    BIP 144 serializationTaprootAddressesTwo ids
    A Taproot script-path spend: the witness items with the leaf script and the control block describedA Taproot script-path spend: the witness items with the leaf script and the control block described
  4. Structure

    Every field, its offset and its value.

    A table of every field and group with its offset, size and decoded value, and a byte map of the whole transaction above the hex.

    Offsets and sizesDecoded valuesClick to findCoinbases too
    The Structure tab listing every field of a coinbase transaction with offset, size and valueThe Structure tab listing every field of a coinbase transaction with offset, size and value
  5. Checks

    Would a node accept it, and would it relay it?

    Consensus rules and, on Bitcoin, the relay policy of Bitcoin Core 30: versions, weight, dust, TRUC, OP_RETURN and more, each linked to its field.

    Current policyEncoding errorsLinked to fieldsHonest limits
    The Checks tab for a version 3 transaction with a pay-to-anchor outputThe Checks tab for a version 3 transaction with a pay-to-anchor output
  6. Crafting

    Build the transaction a node should refuse.

    Unlock a count or a script length to write any value, add bytes no parser expects, and see exactly how a node would read the result.

    OverridesRaw bytesRead backMalformed input welcome
    An overridden script length shown in salmon, with the parser's warningAn overridden script length shown in salmon, with the parser's warning
  7. Networks

    Bitcoin first, other chains by their layout.

    Bitcoin, testnet and signet, Litecoin, Dogecoin and Stratis, with their own address prefixes and, for Stratis, the proof-of-stake timestamp field.

    Detects the right oneAddresses per chainCoinstake dataIts own parser
    A Stratis transaction read as Bitcoin: the unread bytes struck through and Stratis offeredA Stratis transaction read as Bitcoin: the unread bytes struck through and Stratis offered