Mining RPCs
RPC commands for MatMul v4.7 mining, trusted attestation status and transfer, block templates, and difficulty monitoring.
هذه المرجعية جزء من طرح التشغيل في BTX.
ارجع إلى موقع Mine المصغر لتقرأ هذا الدليل داخل الأطروحة التشغيلية، وسياق بنية الذكاء الاصطناعي، وحزمة إطلاق التعدين.
MatMul v4.7 status and attestation RPCs
These v0.33.2 commands inspect or transfer the optional trusted-mirror sidecar. They do not create a block-level consensus proof and do not make a trusted mirror independently validating.
| RPC | Purpose |
|---|---|
getmatmultrustedstatus | Report node role, attestation version, replay-authority context, signer threshold, store counters, completed quorums, rejects, duplicates, and timeouts |
getmatmulattestations "blockhash" | Export the currently retained serialized attestations for one known Profile-1 block |
submitmatmulattestations '["hex", ...]' | Verify and import a bounded bundle; only distinct configured signatures matching local chain, height, hash, profile, and authority context can count |
exportmatmulattestations | Alias for getmatmulattestations |
importmatmulattestations | Alias for submitmatmulattestations |
btx-cli getmatmultrustedstatus
btx-cli getmatmulattestations <blockhash>
btx-cli submitmatmulattestations '["<serialized-attestation>", ...]'
Compare attestation_version and replay_authority_context across every archive
and mirror before admitting traffic. Read the trusted MatMul mirror guide for topology, key custody, quorum, and recovery rules.
getblocktemplate
Returns versioned data needed to construct a block. At height 185,000 the template selects MatMul v4.7 Profile 1; older templates retain the v3 fields described below.
btx-cli getblocktemplate '{"rules": ["segwit"]}' Key response fields for MatMul mining:
| Field | Description |
|---|---|
previousblockhash | Hash of the current chain tip |
target | Current difficulty target |
matmul_dim | Versioned consensus dimension: 512 for v3 and 4,096 for Epoch-A Profile 1 |
seed_a, seed_b | Deterministic base matrix seeds derived from chain state |
noncerange | 64-bit nonce range: 0000000000000000ffffffffffffffff |
Legacy v3 nonce flow (below height 185,000)
For each nonce candidate:
- Derive perturbation matrices E, F from candidate header + nonce
- Compute C' = (A+E)(B+F) over F(2^31 − 1)
- Hash the transcript: H(A+E ∥ B+F ∥ C')
- If hash < target, submit the block
submitblock
Submit a solved block to the network.
btx-cli submitblock "hexdata" getmininginfo
Returns current mining state including MatMul parameters.
btx-cli getmininginfo Response includes:
blocks— current block heightdifficulty— current network difficultymatmul_n— versioned matrix dimension (512 for v3, 4,096 for Epoch-A Profile 1)matmul_b— transcript block size (16)matmul_r— noise rank (8)networkhashps— estimated network hash rate
getdifficultyhealth
Returns comprehensive difficulty health metrics for network monitoring.
btx-cli getdifficultyhealth Response categories:
- recent_interval_stats — mean, p50, p90, p99, stddev of recent block intervals
- reward_distribution — HHI, Gini coefficient, top miner share, longest streak
- reorg_protection — configuration state and rejection counters
- consensus_guards — Freivalds transcript-binding, ASERT half-life visibility
getnetworkhashps
Returns estimated network hashes per second.
btx-cli getnetworkhashps [nblocks] [height] getmatmulchallenge
Get the current network-bound MatMul challenge with full header context.
btx-cli getmatmulchallenge Returns the exact header context for sigma reproduction, work profile metrics, and pre-hash lottery exposure.
generatetoaddress
Generate blocks to a specific address (regtest/testing only).
btx-cli generatetoaddress 1 "btx1z..." Note: Regtest uses
fSkipMatMulValidation=trueby default, so MatMul proofs are not verified in regtest mode.