Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

trinity-bittensor

BIT-0011 Conviction Attestor — Hardware-attested validators for Bittensor Subnet 11 (pre-silicon mock)


What is BIT-0011 Conviction?

BIT-0011 is a Bittensor Improvement Proposal that introduces conviction attestation: validators cryptographically commit to their scoring decisions using verifiable hardware signatures, raising the cost of Sybil attacks and score manipulation on Bittensor subnets. See the full proposal index at opentensor/bips. Under BIT-0011, a conforming validator must produce a two-signature attestation bundle — one from the validator's hot-key wallet and one from a trusted hardware root — for every job it scores; this bundle is anchored on-chain at a deterministic offset (anchor 0x47C0) so that any peer can verify both the hardware provenance and the validator's identity without trusting the validator's software stack.

Why Hardware Attestation Matters

Software-only validators can be trivially forked, replayed, or bribed. A hardware root-of-trust (the Trinity chip) binds attestation to a physical device whose ternary compute fabric cannot be emulated at cost: ~1 GOPS @ ~50 MHz @ ~1 W ternary (projected, pending tape-out 2026-12-16). Every attestation carries a signature from the Trinity chip that commits to the job hash, the validator wallet, and the hardware anchor 0x47C0, making retroactive score manipulation detectable on-chain.

Pre-silicon note: This repository uses trinity_sdk.TrinityChip in mock mode until the Trinity chip reaches tape-out (target 2026-12-16). All signatures are software-simulated but structurally identical to the production attestation format.

Quick Start

# 1. Install (Python ≥ 3.10)
pip install git+https://github.com/gHashTag/trinity-bittensor.git

# 2. Configure your Bittensor wallet (testnet by default)
btcli wallet new_coldkey --wallet.name validator
btcli wallet new_hotkey  --wallet.name validator --wallet.hotkey default

# 3. Register on subnet 11 testnet
btcli subnet register --netuid 11 --subtensor.network test \
  --wallet.name validator --wallet.hotkey default

# 4. Submit a single conviction attestation
trinity-bittensor attest <job_id>

# 5. Run the continuous validator loop
trinity-bittensor run-validator

Programmatic Usage

from trinity_bittensor import ConvictionAttestor

attestor = ConvictionAttestor()
attestor.connect(wallet_name="validator", netuid=11, network="test")
tx_hash = attestor.submit_attestation(job_id="abc123")
print(f"Attested: {tx_hash}")

Repository Layout

trinity_bittensor/
├── conviction_attestor.py   # Core BIT-0011 attestation logic
├── validator_node.py        # Async 30-second validator loop
└── cli.py                   # CLI entry-points

docs/
├── sub11_integration.md     # Subnet 11 registration & scoring
└── architecture.md          # Component data-flow diagram

tests/
└── test_attestor.py         # Unit tests (mocked TrinityChip)

License

Apache-2.0 — see LICENSE.

Author: Dmitrii Vasilev <admin@t27.ai>

About

Trinity ↔ Bittensor BIT-0011 conviction attestor. Hardware-attested validators (pre-silicon mock).

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages