Bitcoin Universe
Technical Whitepaper

🌌 Bitcoin Universe

A universe built from Bitcoin data
Project
Bitcoin Universe
A universe built from Bitcoin data — every block is a star system
Namespace
.bitcoin
Among the first to utilize the .bitcoin namespace on Ordinals parent-child hierarchy
Built by
BitBlock
The BitBlock team
Contact
x.com/bitblock_btc
Protocol
v0.3.0
Deterministic On-Chain Procedural Generation

Abstract

Bitcoin Universe is a deterministic, on-chain procedural generation engine that transforms raw Bitcoin consensus data into interactive 3D star systems. Every Bitcoin block — identified by its height — produces a unique, verifiable, and immutable cosmic visualization derived entirely from the block's intrinsic fields: hash, merkle_root, transaction_count, total_fee, subsidy, and timestamp.

By eliminating external randomness and anchoring all visual and trait outputs to consensus-verified block data, Bitcoin Universe creates a trustless digital-physical artifact class: on-chain worlds that anyone can reproduce independently given only a block height.

1. Introduction

1.1 Motivation

Bitcoin blocks are cryptographically sealed packets of entropy. Each block hash is an unpredictable, universally agreed-upon 64-byte hexadecimal string. Rather than treating this entropy as mere bookkeeping, Bitcoin Universe interprets it as the genome of a star system. The result is a cross-disciplinary bridge between blockchain consensus, procedural generation, and real-time 3D graphics.

1.2 Design Principles

PrincipleImplementation
DeterminismIdentical block height → identical output, every time, on any device.
VerifiabilityAll traits link to inspectable on-chain fields with explicit derivation formulas.
ImmutabilityOnce a block is mined, its cosmic representation is fixed forever.
AccessibilityZero installation; runs in any WebGL-capable browser.
ComposabilityNamespace system (<label>.<height>.bitcoin) allows child derivations. JSON metadata envelope ("p": "bitcoinuniverse") enables trustless indexing.

2. System Architecture

2.1 Data Layer

The canonical data source is the Ordinals block endpoint:

Endpoint
GET https://ordinals.com/r/blockinfo/{height}
FieldTypeRole
heightuint32System identifier & namespace root.
hashhex64Primary entropy source for biome, weather, stellar class, flags.
merkle_roothex64Secondary entropy for resource extraction.
transaction_countuint32Civilization density metric.
total_feeuint64Economic development metric.
subsidyuint64Historical era classification.
timestampuint32Temporal modifier & time-based flags.

Caching Strategy: Client-side Map with LRU eviction (capacity: 30 blocks). Eliminates redundant network requests.

2.2 Deterministic Randomness Engine

Bitcoin Universe does not use Math.random(). It employs a seeded PRNG initialized from the block hash.

Seed Derivation

seed = Σ(i=0..n-1)  hash.charCodeAt(i) × 31^(n-1-i)   (mod 2³²)

Mulberry32 PRNG

function mulberry32(a) {
    return function() {
        let t = a += 0x6D2B79F5;
        t = Math.imul(t ^ t >>> 15, t | 1);
        t ^= t + Math.imul(t ^ t >>> 7, t | 61);
        return ((t ^ t >>> 14) >>> 0) / 4294967296;
    };
}

3. Trait Generation Protocol

3.1 Surface Biome

🔬 Fair Distribution

Because modern Bitcoin block hashes begin with many zeros due to proof-of-work difficulty, using the first byte would produce 99% Ocean biomes. Entropy is extracted from hash byte 9 (characters 18–20), safely past the typical 18-character proof-of-work zero prefix.

biome_index = parseInt(hash[18:20], 16) % 5
IndexBiomeEmojiCore Palette
0Ocean🌊Cyan / Deep Blue / White
1Desert🏜️Amber / Orange / White
2Forest🌳Green / Emerald / White
3Snowfield❄️Ice Blue / Pale Cyan / White
4Volcano🌋Crimson / Magma / Gold

3.2 Atmosphere (Weather)

weather_index = parseInt(hash[2:4], 16) % 4
IndexWeather
0Sunny
1Rain
2Storm
3Snow

3.3 Civilization Density

Tx CountClassificationLevel
1Primordial / Empty0
2 – 100Ancient / Sparse1
101 – 1,000Settled / Medieval2
1,001 – 5,000Industrial / Dense3
5,001 – 7,000Metropolitan4
7,001 – 8,000Megacity5
8,001+Ecumenopolis6
🌆 Ecumenopolis (Level 6)

Extremely rare — receives distinctive visual upgrades: a thick, bright red pulsing ring, 60 city-light particles, 30 urban glow sprites, central core glow, +25% opacity, and 24 rotating satellite dots.

3.4 Economic Development

Derived from total_fee (satoshis). The three rarest tiers trigger a separate rendering pipeline layered on top of the base stellar class.

🪨
Tier 0 — Primordial
0 sats · Genesis block only
🌾
Tier 1 — Agricultural
1–10,000 sats · Very early era blocks
Tier 2 — Mercantile
10,001–1,000,000 sats · Low-activity periods
🏭
Tier 3 — Industrial Empire
1,000,001–50,000,000 sats · Typical modern block
💠
Tier 4 — Post-Scarcity
50,000,001–100,000,000 sats · High congestion
  • Cyan central orb · 80-particle spiral
  • 2 aura rings · +20% opacity · +20% field
🌀
Tier 5 — Singularity
100,000,001–499,999,999 sats · Extreme outliers
  • Crimson/gold dual orb · 120-particle spiral
  • 3 aura rings · +30% opacity · +40% field
Ω
Tier 6 — Ω OMEGA
500,000,000+ sats · 5+ BTC in a single block
  • Deep gold / white supernova orb
  • 160-particle spiral in 3 concentric shells
  • 5 aura rings · +40% opacity · +60% field
  • 12 energy arcs — electromagnetic discharge halo
⚛️ Stacking Note

Post-Scarcity, Singularity, and Omega tiers are detected at runtime from total_fee and layer on top of the base stellar class system. An Omega-economy Transcendent-class block accumulates all enhancements from both dimensions simultaneously.

3.5 Stellar Class (Rarity)

Derived from the count of leading zero characters in the block hash. Each additional zero is statistically 16× rarer.

leading_zeros = count of '0' chars before first non-zero char in hash
stellar_class  = lookup(leading_zeros)
M
Common
Zeros: 0–8
Radius: 1.2 · Core: 12 · Field: 20
0–8 zeros
G
Uncommon
Zeros: 9
Radius: 1.6 · Core: 28 · Field: 38
9 zeros
F
Rare
Zeros: 10
Radius: 2.0 · Core: 48 · Field: 60
10 zeros
A
Epic
Zeros: 11
Radius: 2.5 · Core: 72 · Field: 88
11 zeros
B
Legendary
Zeros: 12–20 · 2 cages · 2 rings
Radius: 3.2 · Core: 105 · Field: 128
12–20 zeros
O
Mythic
Zeros: 21–22 · 4 cages · 4 rings
Radius: 4.0 · Core: 200 · Field: 240
21–22 zeros
Ω
Transcendent
Zeros: 23+ · 5 cages · 6 rings
Radius: 5.0 · Core: 280 · Field: 320
23+ zeros
🔭 Statistical Note

Mythic and Transcendent classes are statistically extraordinary. Bitcoin's current proof-of-work yields hashes with 18–19 leading zeros as the baseline. Achieving 21–23+ zeros requires satisfying both standard difficulty and an additional cosmic lottery.

3.6 Resource Deposit

Derived from merkle_root[0:2] — an independent entropy source from the block hash, ensuring the mineral deposit is uncorrelated with biome, weather, and stellar class.

resource_byte = parseInt(merkle_root[0:2], 16)   // range 0–255
Stone
0x00–0x91 · ~57.0%
Iron
0x92–0xF3 · ~38.3%
Gold
0xF4–0xFB · ~3.1%
Crystal
0xFC–0xFE · ~1.2%
Void Matter
0xFF · ~0.4% (1-in-256)

3.7 Historical Era

Subsidy (sats)EraBlock Range
5,000,000,000Genesis Era0–209,999
2,500,000,000Pioneer Era210,000–419,999
1,250,000,000Growth Era420,000–629,999
625,000,000Maturity Era630,000–839,999
312,500,000Sovereign Era840,000–1,049,999
156,250,000Post-Sovereign Era1,050,000+
0Terminal Era~6,930,000+

3.8 Temporal Modifiers

ConditionModifier
Hour 0,1,23 + WeekendVoid Midnight
Hour 0,1,23Midnight
WeekendWeekend Pulse
OtherwiseStandard

3.9 Trait Summary

Every Bitcoin block deterministically produces the following cosmic traits. Each trait is derived from a single on-chain field, with no external input.

#Cosmic NameBitcoin FieldDerivation
1Surface BiomehashparseInt(hash[18:20], 16) % 5
2Atmosphere (Weather)hashparseInt(hash[2:4], 16) % 4
3Civilization Densitytransaction_countRange lookup → 7 levels (Primordial → Ecumenopolis)
4Economic Developmenttotal_feeRange lookup → 7 tiers (Primordial → Omega)
5Stellar ClasshashCount leading zeros → 7 classes (Common → Transcendent)
6Resource Depositmerkle_rootparseInt(merkle_root[0:2], 16) → range lookup
7Historical ErasubsidyExact value match → halving epoch
8Temporal ModifiertimestampUTC hour + weekday → Midnight / Weekend / Void Midnight / Standard
9Special Flagsheight, hash, timestampBoolean checks → up to 14 compounding flags

4. Special Flags & Cosmic Phenomena

Special flags are boolean properties layered onto any block, independent of Stellar Class or Economy. Active flags trigger dedicated visual effects in both the 3D star map and the sidebar trait panel. Flags are not mutually exclusive.

🌅 4.0 — GENESIS SIGNAL
2 0 0 9 0 1 0 3
AttributeValue
Display nameGenesis Signal
Icon🌅
Pattern20090103 — found inside transaction hashes on the block page
What it encodesJanuary 3, 2009 — the date Satoshi Nakamoto mined the Bitcoin Genesis Block (Block 0)
Supply23 confirmed blocks of ~950,000 mined (<0.003% — rarest flag in the system)
Some known blocks
350315, 351614, 450967, etc

How to manually verify a block

  1. Navigate to ordinals.com/block/{height} in your browser — e.g. ordinals.com/block/851335
  2. Open your browser's find bar — Menu → Find and edit, or press Ctrl+F / ⌘F
  3. Type 20090103 and press Enter
  4. If the pattern exists in one of the block's transaction hashes, your browser will highlight and jump to it — shown as "1/1" or higher in the search bar

Visual effects when active

Sidebar: Full-width premium card with animated gold border pulse, the pattern in spaced monospace, encoded date, and rarity note.

3D star map — seven stacked layers:

LayerDetail
Blazing core orbWhite-gold at 2.5× coreRadius — brightest center in the system
Gold bloomSecondary warm glow at 4.5× coreRadius
3× sunrise ringsConcentric tilted tori at 1.55×, 1.95×, 2.42× coreRadius, each spinning independently
Sacred icosahedronGold wireframe at 1.2× coreRadius, dual-axis rotation
16 dawn beamsRadial light lines pulsing outward, individual frequencies
24 orbit particlesGolden dots revolving in warm orbital band, twinkle-animated
Outer haloDiffuse gold at 8× coreRadius — tints entire scene warm gold

All pre-existing nebula particles receive a +0.30 opacity boost. Field particles scale ×1.5 and shift to #ffd700.

Verification — Pattern highlighted in browser

Browser find tool highlighting 20090103 in transaction hashes on ordinals.com/block/350315
▲  ordinals.com/block/350315 — browser Ctrl+F highlighting 20090103 inside a transaction hash (1/1 match)

4.1 All Special Flags

FlagTriggerRarityDescription
🌅 Genesis SignalHeight in confirmed Genesis Signal listUltra-rare · ~0.003%Pattern 20090103 in tx hashes — Bitcoin's birthday
💥 Nova Eventheight % 210,000 == 0Every 210k blocksBitcoin halving
⚛️ Quantum Shiftheight % 2,016 == 0~Every 2 weeksDifficulty adjustment epoch
📅 Weekend Pulseday ∈ {0,6}~28%Mined on weekend
🌙 Void Midnighthour ∈ {0,1,23}~12.5%Near UTC midnight
✨ Cosmic Signaturehash contains 21e8~0.05%Sacred pattern
🔁 Cosmic Echohash has 4+ repeated hex chars~18%Resonance anomaly
🪞 Symmetric NebulaFull block height palindrome (≥3 digits)VariableStructural symmetry
🔢 Prime AlignmentisPrime(height)~13%Mathematical rarity
📐 Harmonic SequenceisFibonacci(height)RareGolden ratio alignment
🔥 Primordial Ageheight < 10000.1%First 1,000 blocks
2️⃣ Binary NexusPower of twoRareBinary perfection
3️⃣ Ternary ResonancePower of threeRareTernary harmonic
! Exponential CrestFactorial (n!)Ultra-rareExponential milestone

5. 3D Rendering Engine

Stack: Three.js r160, OrbitControls, WebGL 2.0.

Scene layers: background stars, inner nebula (particle count scales with civilization & rarity), bright heart, geodesic cages (Rare+), field particles, aura rings (Legendary+), and a resource deposit ring (all classes) — a thin orbital torus and clustered particles colored by mineral type.

5.1 Resource Deposit Visuals

Every star system renders a mineral deposit ring at coreRadius × 1.75. Opacity and particle count scale with rarity:

ResourceColorRing OpacityParticles
Stone#8B7D6B12%6
Iron#70809015%8
Gold#FFD70035%14
Crystal#E0FFFF55%22
Void Matter#4B008275%32

5.2 Standout Visuals for Rare Resources

Crystal (Rare — ~1.2% of blocks)

Rotating wireframe octahedron (cyan), prismatic counter-rotating ring, 18 independently-twinkling sparkle particles.

Void Matter (Epic — ~0.4% of blocks)

Solid black event horizon sphere, dark purple accretion disk spinning at 0.015 rad/frame, 40-particle inward spiral arms, dark outer halo.

6. User Interface & Interaction

Controls: block height input, prev/next navigation, random warp, keyboard arrows, R key for random, mouse drag to orbit, scroll to zoom. URL persistence via ?block=. Verification link to ordinals.com/r/blockinfo/{height}.

Resource badges: Crystal and Void Matter trait cards receive animated borders, glowing badges, and CSS pulse animations so users immediately spot rare mineral deposits.

7. Namespace & Ownership

  • Parent
    <height>.bitcoin — the world's deed; first confirmed inscription wins permanently.
    Rule: The block height must exist at inscription time (≤ current block height). Pre‑inscribing future blocks is not permitted – the namespace is only valid for already‑mined blocks.
  • Child 1
    image.png inscribed under <height>.bitcoin — the visual artifact, cryptographically linked to ownership
  • Child 2
    metadata.json sibling child under <height>.bitcoin — protocol envelope for indexers; carries "p": "bitcoinuniverse", "op": "artifact", "block", "hash", "traits"

The namespace inscription is the ownership claim. Without it, a visual artifact carries no binding on-chain identity. The image inscribed as a child of the namespace is provably linked to the owner — anyone can trace the child's parent and verify provenance without trusting any platform.

8. Security & Trust Model

All generation is client-side, deterministic, and verifiable. Source: ordinals.com public endpoint. Caching prevents replay attacks. No private keys, no wallets, no backend.

9. Performance Characteristics

MetricValue
Initial load~150 KB
Block fetch50–200 ms
Scene build<100–500 ms
Frame rate60 fps on integrated graphics
GPU memory~30–45 MB

10. Conclusion

Bitcoin Universe transforms block consensus data into trustless, immutable, and procedurally generated digital universes. The deterministic protocol ensures every block height maps to exactly one star system — reproducible by anyone, anchored forever in the blockchain.

Every block is a universe. The namespace is the deed. The child inscription is the artifact. What you do with them is up to you.

11. Ordinals Artifact & Inscription

Bitcoin Universe worlds are fully deterministic and publicly verifiable. Any holder who wishes to make their block's star system a permanent on-chain artifact may do so independently and permissionlessly using standard Ordinals tooling.

11.1 The Parent-Child Model

The canonical ownership structure uses three linked inscriptions:

Inscription Flow
  1. Explore & Verify — Confirm the block's traits in the explorer: stellar class, flags, biome, resource
  2. Capture — Export a clean 1200×1200 PNG via the Export button (no UI chrome)
  3. Inscribe the parent namespace — Inscribe <height>.bitcoin. This is the deed to the world. First confirmed inscription wins, permanently, as determined by Bitcoin consensus.
    Block existence check: The numeric part of the namespace must be ≤ the block height in which the inscription is confirmed. Future blocks cannot be claimed. This follows the same convention as Bitmap.
  4. Inscribe the image as a child — Inscribe the PNG as a child of <height>.bitcoin. The image is now cryptographically linked to the ownership claim on-chain — it lives under the deed, provably and permanently
  5. Inscribe the metadata as a sibling child — Inscribe a JSON file as a second child of <height>.bitcoin. This is the protocol envelope that lets indexers and marketplaces discover and verify the artifact without trusting any server:
    {
      "p": "bitcoinuniverse",
      "op": "artifact",
      "block": <height>,
      "type": "image",
      "traits": { ... }
    }
Why Child Inscription — Not Standalone?

A standalone image inscription has no binding to any block. Two people could each inscribe a screenshot of the same block and neither is provably the owner. When the image is inscribed as a child of <height>.bitcoin, it is permanently and cryptographically linked to the namespace. Anyone can trace the child's parent and verify provenance without trusting any platform. The parent-child link is what makes the artifact canonical.

11.2 Two Distinct Sellable Assets

The parent-child model creates two independent on-chain assets with different ownership semantics:

Asset What It Represents If Sold/Transferred
Parent
840000.bitcoin
The world's deed and namespace root. The most authoritative asset — holds the block's identity and the right to issue further children Buyer inherits the world's identity and namespace authority. Seller relinquishes all claims
Child
image.png ↳ 840000.bitcoin
The visual artifact — the canonical render of the world, provably linked to its parent namespace Buyer holds the canonical image artifact. Parent namespace remains with original owner unless separately transferred

An owner could keep the parent (holding the world's identity forever) while selling the child artifact to a collector. Or sell the parent and transfer everything. This creates two tiers of ownership with genuinely different value propositions — decided entirely by the owner, with no platform involvement.

11.3 Convention

Convention Recommendation
Image formatPNG, 1200×1200 px minimum, square, no UI chrome
Image inscriptionMust be a child of <height>.bitcoin — not standalone
Metadata inscriptionJSON sibling child of <height>.bitcoin — protocol envelope for indexers
Required JSON fields"p": "bitcoinuniverse", "op": "artifact", "block", "hash", "type": "image"
Optional JSON fields"traits": { ... } — recommended; anchors visual properties for marketplaces and verifiers
Priority ruleFirst confirmed namespace inscription wins — enforced by Bitcoin consensus
Block existenceThe numeric part of the namespace must be ≤ the block height in which the inscription is confirmed. Future blocks cannot be claimed.
No platformAny standard Ordinals tool: ord CLI, OrdinalsBot, Gamma.io
No Platform Custody

Bitcoin Universe operates no marketplace, holds no custody of any inscription, and has no admin key over any namespace or artifact. Once inscribed on Bitcoin, the outcome is permanent and outside the control of any party — including this project.

12. Disclaimer

Bitcoin Universe is an experimental, open, and community-driven project. Please read the following carefully before interacting with any aspect of this protocol.

  • Experimental status. Bitcoin Universe is experimental software. The protocol, visual renderer, trait generation rules, and namespace conventions are subject to change without notice. No version of this software should be considered production-ready or final.
  • No financial advice. Nothing in this whitepaper, the Bitcoin Universe explorer, or any associated materials constitutes financial, investment, or legal advice. Ordinals inscriptions and Bitcoin-native assets carry real monetary risk. Always conduct your own research.
  • No guarantees of value. The existence of a deterministic world trait or a rarity classification does not confer, imply, or guarantee any monetary value. Rarity is a protocol-defined property, not a market promise.
  • First-inscription-wins. Ownership of a namespace inscription (e.g. 840000.bitcoin) is determined solely by the Ordinals protocol's first-inscription-wins convention. Bitcoin Universe does not operate, control, or adjudicate any marketplace, registry, or ownership dispute.
  • No central authority. Bitcoin Universe has no central server, no admin key, no ability to freeze, reverse, or modify inscriptions. Once a block's traits are computed and an inscription is confirmed on Bitcoin, neither BitBlock nor any other party can alter the outcome.
  • Ordinals dependency. This protocol depends on the continued availability of the ordinals.com/r/blockinfo endpoint. While this endpoint carries backward-compatibility guarantees within the Ordinals protocol, its long-term availability cannot be guaranteed by Bitcoin Universe.
  • Use at your own risk. Interacting with Bitcoin, Ordinals inscriptions, or any on-chain protocol carries technical, financial, and regulatory risk that varies by jurisdiction. Bitcoin Universe contributors accept no liability for losses arising from use of this software or protocol.
  • Open protocol. The Bitcoin Universe trait generation rules are fully open and deterministic. Anyone may build on, fork, or extend this protocol. The project welcomes community contributions and independent implementations.

Protocol v0.3.0 · May 2026 · Bitcoin Universe is experimental. Continue at your own understanding.