본문으로 건너뛰기

Mining RPCs

RPC commands for MatMul v4.7 mining, trusted attestation status and transfer, block templates, and difficulty monitoring.

Mine 맥락

이 참고 문서는 BTX 운영 전개의 일부입니다.

Mine 마이크로사이트로 돌아가면 이 가이드를 운영 논지, AI 인프라 관점, 채굴 시작 키트 속에서 다시 볼 수 있습니다.

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.

RPCPurpose
getmatmultrustedstatusReport 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
exportmatmulattestationsAlias for getmatmulattestations
importmatmulattestationsAlias 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:

FieldDescription
previousblockhashHash of the current chain tip
targetCurrent difficulty target
matmul_dimVersioned consensus dimension: 512 for v3 and 4,096 for Epoch-A Profile 1
seed_a, seed_bDeterministic base matrix seeds derived from chain state
noncerange64-bit nonce range: 0000000000000000ffffffffffffffff

Legacy v3 nonce flow (below height 185,000)

For each nonce candidate:

  1. Derive perturbation matrices E, F from candidate header + nonce
  2. Compute C' = (A+E)(B+F) over F(2^31 − 1)
  3. Hash the transcript: H(A+E ∥ B+F ∥ C')
  4. 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 height
  • difficulty — current network difficulty
  • matmul_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=true by default, so MatMul proofs are not verified in regtest mode.