Skip to Content
IntegrationsExplorer Integration

Explorer Integration

Tidecoin block and transaction JSON is intentionally close to Bitcoin Core. The explorer-specific work is decoding Tidecoin address constants, post-quantum public keys and signatures, witness v1 P2WSH-512 outputs, and optional AuxPoW metadata.

This page is the explorer implementation guide. It is not the normative protocol spec; consensus rules belong in Protocol and command schemas belong in RPC Reference.

Ingestion model

A basic explorer can ingest blocks with:

tidecoin-cli getblock "<blockhash>" 2

Store at least:

FieldWhy it matters
hashCanonical block identifier.
heightUser-facing order and confirmation calculation.
previousblockhashReorg detection.
time, mediantimeBlock time displays and API filters.
version, bits, nonceHeader and mining displays.
merklerootBlock integrity display.
size, strippedsize, weightFee and block utilization metrics.
txTransaction indexing.
auxpowPresent only when the block carries AuxPoW data.

Track the active chain by block hash, not height alone. If a newly fetched block’s previousblockhash does not match the explorer’s stored tip, rewind to the common ancestor and mark disconnected blocks and transactions accordingly.

Transaction JSON

Verbose transaction JSON uses the familiar Bitcoin Core shape:

FieldMeaning
txidTransaction identifier without witness commitment.
hashWitness transaction hash when witness data is present.
version, locktimeTransaction-level fields.
size, vsize, weightSerialized size and virtual-size metrics.
vinInputs, including scriptSig and optional txinwitness.
voutOutputs, each with value, n, and scriptPubKey.
scriptPubKey.addressNode-derived address when the script maps to a known address type.
scriptPubKey.typeNode-derived output classification.

Use scriptPubKey.address when Tidecoin Core provides it. If the explorer has a custom address encoder, it must use the Tidecoin prefixes and HRPs from Address Validation.

PQ key and signature decoding

Tidecoin identifies the PQ signature scheme from the serialized public key, not from a separate scheme byte inside each signature. A serialized PQ public key is:

scheme_prefix || raw_scheme_public_key

Known prefixes:

PrefixSchemeSerialized public key bytes
0x07Falcon-512898
0x08Falcon-10241,794
0x09ML-DSA-441,313
0x0AML-DSA-651,953
0x0BML-DSA-872,593

Signatures are scheme-specific byte strings. For script paths with a standard sighash byte, display the final byte as the sighash type and decode the remaining bytes using the scheme selected by the public-key prefix.

Do not label the first signature byte as a Tidecoin scheme prefix. Falcon signatures have their own internal format byte; ML-DSA signatures are fixed-size scheme signatures. The canonical layout is documented in Signature Encoding.

Witness v1 P2WSH-512

Tidecoin’s post-AuxPoW witness v1 script-hash output uses a 64-byte SHA-512 script hash. Address encoding uses Bech32m with Tidecoin HRPs:

NetworkPQ witness v1 HRP
Mainnetq
Testnettq
Regtestrq

Mainnet recognizes the address syntax, but consensus activation matters for spending and wallet policy. Explorers can decode and display the script form even when mainnet AuxPoW has not activated, but APIs should expose activation state so integrators do not assume every syntactically valid output type is currently standard or spendable on mainnet.

AuxPoW block metadata

When a block carries AuxPoW data, getblock includes an auxpow object. Tidecoin Core serializes:

auxpow fieldMeaning
txParent-chain coinbase transaction used in the proof.
chainindexTidecoin’s index in the auxiliary-chain merkle tree.
merklebranchBranch linking the parent coinbase transaction to the parent block merkle root.
chainmerklebranchBranch linking the Tidecoin block hash to the auxiliary-chain commitment.
parentblockSerialized parent block header.

Explorers should store the full auxpow object for block detail pages and expose whether a block is standalone proof-of-work or AuxPoW. Tidecoin’s AuxPoW chain ID is 8; activation status is listed in Activation Status.

Address and script classification

Explorer displays should distinguish:

ClassDisplay guidance
Base58 P2PKH/P2SHShow address and network; reject Bitcoin prefixes in API parsers.
Witness v0Show Tidecoin Bech32 HRP and witness program length.
Witness v1 P2WSH-512Show Tidecoin Bech32m HRP, witness version 1, and 64-byte program length.
Raw PQ public-key spendsShow scheme prefix, scheme name, public-key byte length, and signature byte length when visible.
Unknown scriptsPreserve raw script hex and ASM without guessing an address.

For API consumers, include both the raw script hex and the node-derived classification. Raw fields let downstream indexers recover if explorer-level classification lags a future protocol upgrade.

API recommendations

Explorer APIs should make Tidecoin-specific fields explicit instead of hiding them in generic Bitcoin-compatible objects:

API fieldRecommendation
networkReturn mainnet, testnet, or regtest for addresses and blocks.
address_typeInclude p2pkh, p2sh, witness_v0, witness_v1_p2wsh512, or unknown.
pq_schemeInclude scheme name when a prefixed PQ public key is decoded.
sig_sizeExpose observed signature byte length for PQ spends.
has_auxpowBoolean block field for fast filtering.
auxpowFull object on detailed block endpoints.
activation_stateInclude AuxPoW/post-AuxPoW state in chain metadata endpoints.

Source of truth

TopicSource
Block and transaction JSON fields../tidecoin/src/rpc/blockchain.cpp, ../tidecoin/src/core_write.cpp
AuxPoW JSON fields../tidecoin/src/rpc/blockchain.cpp
Address constantsAddress Validation
PQ public-key and signature bytesSignature Encoding
Transaction size metricsTransaction Size & Fees

See also: RPC Integration Patterns, Address Validation, AuxPoW, Scheme Registry.

Last updated on