VitoCoin Technical Documentation
VitoCoin is a decentralized, permissionless cryptocurrency built from scratch with a Bitcoin-compatible UTXO model, SHA-256d Proof-of-Work, and 1-minute block targets. This document is the primary technical reference for exchanges, developers, and independent auditors.
Protocol Parameters
| Parameter | Value | Notes |
|---|---|---|
| Consensus Algorithm | SHA-256d Proof-of-Work | Double SHA-256, same as Bitcoin |
| Target Block Time | 60 seconds | Difficulty retargets every 144 blocks (~2.4 hrs) |
| Block Size Limit | 4 MB | Soft limit; actual blocks typically <1 MB |
| Coinbase Maturity | 114 confirmations | ~1.9 hours before mined coins are spendable |
| Initial Block Reward | 50 VITO | Halving every 210,000 blocks (~4 years) |
| Maximum Supply | 21,000,000 VITO | Hard cap enforced at protocol level |
| Minimum Fee | 0.0001 VITO / tx | Mempool rejects sub-minimum transactions |
| P2P Port | 6334 TCP | Combined P2P + REST API port |
| Address Prefix | V | Vanity prefix for VITO addresses |
| Address Format | Base58Check (P2PKH) | Same encoding as Bitcoin legacy addresses |
| Script Types | P2PKH, P2SH | Pay-to-public-key-hash, pay-to-script-hash |
| Signature Scheme | ECDSA secp256k1 | Same curve as Bitcoin |
| Difficulty Adjustment | Every 144 blocks | Targets 60s average; clamped ×4/÷4 per period |
Supply Schedule
VitoCoin has a hard-capped maximum supply of 21,000,000 VITO. All issuance is through CPU Proof-of-Work block rewards. No premine, no ICO, no developer allocation beyond the 6-block genesis reserve for network bootstrap.
| Era | Block Range | Reward / Block | Total Issued | Cumulative % |
|---|---|---|---|---|
| Genesis Reserve | 0 – 6 | 50 VITO | 350 VITO | 0.002% |
| Era 1 | 7 – 210,000 | 50 VITO | 10,499,650 VITO | 50.0% |
| Era 2 | 210,001 – 420,000 | 25 VITO | 5,250,000 VITO | 75.0% |
| Era 3 | 420,001 – 630,000 | 12.5 VITO | 2,625,000 VITO | 87.5% |
| Era 4 | 630,001 – 840,000 | 6.25 VITO | 1,312,500 VITO | 93.75% |
| … | … | Halves every 210,000 blocks | … | → 100% |
| Terminal | ~6,720,000+ | 0 VITO | 0 (fee-only) | 100% |
Genesis Reserve
Blocks 0–6 were mined at network launch to establish the initial chain state and provide liquidity for early exchange pairs and node operators. These 350 VITO represent 0.0017% of maximum supply. All addresses are publicly verifiable on the block explorer.
VBURN000000000000000000000000000000 is the canonical VitoCoin burn address. Any VITO sent here is permanently destroyed and excluded from circulating supply in the /api/v1/summary feed. The burn balance is labeled in the Rich List and tracked transparently on-chain.
Proof-of-Work Algorithm
VitoCoin uses double SHA-256 (SHA-256d) — the same algorithm used by Bitcoin. This provides battle-tested security, broad hardware compatibility, and no dependence on ASIC-resistance assumptions that have historically proven fragile.
Hash Function
hash = SHA256( SHA256( block_header_bytes ) )
Validity Condition
# The resulting 256-bit hash interpreted as little-endian integer # must be strictly less than the current compact target: hash_integer < target # Where target is derived from the 'bits' field in the block header: target = mantissa * 256 ** (exponent - 3)
Difficulty Adjustment
Retargets every 144 blocks. The new difficulty is computed as:
actual_time = timestamp[n] - timestamp[n-144] expected_time = 144 * 60 # seconds new_target = old_target * (actual_time / expected_time) # Clamped: new_target ∈ [old_target/4, old_target*4]
Mining Protocol
External miners connect via the REST API at /mining/template and submit solved headers via /mining/submit. The node also exposes a Server-Sent Events stream for real-time NEW_BLOCK notifications.
Block Header Format
The 80-byte block header is identical in structure to Bitcoin's. All fields are little-endian.
| Field | Size | Encoding | Description |
|---|---|---|---|
| Version | 4 bytes | LE uint32 | Block version (currently 1) |
| PrevBlockHash | 32 bytes | LE bytes | SHA-256d hash of previous block header |
| MerkleRoot | 32 bytes | LE bytes | SHA-256d merkle root of all transactions |
| Timestamp | 4 bytes | LE uint32 | Unix epoch seconds (±2hr tolerance) |
| Bits | 4 bytes | LE uint32 | Compact difficulty target |
| Nonce | 4 bytes | LE uint32 | Miner-controlled search field |
Coinbase Transaction Format
# Coinbase txid (single-transaction block):
txid = sha256d( "coinbase:{height}:{miner_address}:{nonce}" )
# Merkle root for single-tx block:
merkle_root = reverse_bytes( txid )
UTXO Model
VitoCoin uses an Unspent Transaction Output (UTXO) model. Each transaction consumes previous outputs and creates new ones. The sum of inputs must equal the sum of outputs plus the transaction fee.
# Transaction validity rule: sum(inputs.value) = sum(outputs.value) + fee fee >= 0.0001 VITO # minimum relay fee
Double-Spend Protection
The node maintains a UTXO set in memory and on disk. Any attempt to reference an already-spent UTXO is rejected immediately with error double spend. The frontend wallet monitors for this rejection and broadcasts an alert to the admin command center.
Coinbase Maturity Rules
Coinbase (mined) outputs require 114 confirmations before they can be used as inputs in new transactions. This prevents miners from spending rewards from blocks that may be orphaned.
| Output Type | Spendable After | Enforcement |
|---|---|---|
| Standard Transfer (P2PKH) | 1 confirmation | Mempool + block validation |
| Coinbase / Mining Reward | 114 confirmations | Protocol-level UTXO age check |
| Genesis Reserve (blocks 0–6) | 114 confirmations from block 6 | Same as coinbase rule |
Mempool Policy
- Maximum mempool size: 10,000 transactions
- Minimum relay fee: 0.0001 VITO per transaction
- Transaction expiry: 72 hours from first broadcast
- Duplicate TXID: rejected
- Double-spend: rejected with explicit error code
- Coinbase transactions: only accepted in block context (not relayed standalone)
GET /api/v1/summary
This public, unauthenticated endpoint returns the data required by CoinMarketCap, CoinGecko, and Binance for listing applications. No API key required.
{ "loading": true }
Response Schema
| Field | Type | Description |
|---|---|---|
| total_supply | number | Hard cap — always 21,000,000 |
| circulating_supply | number | All VITO issued to date (mined coins, mature only) |
| block_height | integer | Current chain tip height |
| last_price_usd | number | Last known USD price (exchange-provided or estimated) |
| price_change_24h_pct | number | 24-hour price change percentage |
| volume_24h_usd | number | 24-hour trading volume in USD |
| market_cap_usd | number | circulating_supply × last_price_usd |
| difficulty | number | Current mining difficulty |
| hashrate_hps | number | Network hashrate (hashes/second) |
| avg_block_time_s | number | Average block time over last 100 blocks |
| last_block_ts | ISO 8601 | Timestamp of last confirmed block |
| updated_at | ISO 8601 | API response freshness timestamp |
Node REST API
Every VitoCoin node exposes a REST API on port 6334. The official nodes are proxied through Vercel at vitocoin.com/api/node/*.
Server-Sent Events (SSE)
The node exposes a real-time event stream at /events. Connect with EventSource:
const sse = new EventSource('https://vitocoin.com/api/node/events');
sse.addEventListener('NEW_BLOCK', e => {
const block = JSON.parse(e.data);
// { height, hash, timestamp, tx_count, reward_vito }
});
sse.addEventListener('NEW_TRANSACTION', e => {
const tx = JSON.parse(e.data);
// { txid, fee_vito, inputs, outputs }
});
sse.addEventListener('HASHRATE_UPDATE', e => {
const stats = JSON.parse(e.data);
// { hashrate_hps, miners, difficulty }
});
Bootstrap Nodes
New nodes bootstrap by connecting to the following seed peers. Peer discovery is fully automatic after initial connection.
| Region | City | Address | Role | Status |
|---|---|---|---|---|
| 🇩🇪 EU | Frankfurt | 84.201.20.90:6334 | Leader (canonical height) | Checking… |
| 🇯🇵 APAC | Tokyo | 151.245.104.152:6334 | Primary seed | Checking… |
| 🇺🇸 US | New York | 213.139.77.18:6334 | Secondary seed | Checking… |
| 🇸🇬 APAC | Singapore | 195.114.193.73:6334 | Secondary seed | Checking… |
Security
- Double-Spend Protection: UTXO set checked on every transaction; duplicate inputs rejected in both mempool and block validation
- 51% Attack Resistance: SHA-256d; any reorg attempt must outpace the honest chain's cumulative PoW
- Seed Encryption: Client-side BIP-39 mnemonics encrypted with AES-256-GCM + PBKDF2 (100,000 rounds, SHA-256) before storage
- Rate Limiting: API endpoints enforce 429 responses; the client rotates to backup nodes automatically
- No Admin Keys: No privileged API keys that bypass consensus — all rules enforced at the protocol layer
Full security audit log: vitocoin.com/security-audit · Report issues: security@vitocoin.com
CoinMarketCap Listing Data Feed
The /api/v1/summary endpoint is designed to satisfy the CMC and CoinGecko listing data requirements. It returns all mandatory fields in a single, cacheable JSON response.
# Example cURL
curl -s https://vitocoin.com/api/v1/summary | jq .
# Example Node.js
const res = await fetch('https://vitocoin.com/api/v1/summary');
const data = await res.json();
console.log(data.circulating_supply, data.last_price_usd);
Required Listing Links
| Resource | URL |
|---|---|
| Website | https://vitocoin.com |
| Block Explorer | https://vitocoin.com/explorer |
| Technical Docs | https://vitocoin.com/docs |
| Public API | https://vitocoin.com/api/v1/summary |
| Source Code | https://github.com/vitocoin/vitocoin |
| Whitepaper | https://vitocoin.com/whitepaper |
| Transparency | https://vitocoin.com/transparency |
| Security Policy | https://vitocoin.com/security-audit |
| Run a Node | https://vitocoin.com/run-a-node |
| Contact | contact@vitocoin.com |
Spending VITO
VITO is the native utility token of the VitoCoin network. Beyond peer-to-peer transfers and mining rewards, VITO is designed to power a growing ecosystem of real-world applications.
- ⛏️Mining Rewards — Miners earn VITO block subsidies (currently 50 VITO/block) plus transaction fees for securing the network.
- 💸Peer-to-Peer Payments — Send and receive VITO globally with sub-second confirmations and minimal fees.
- 🔄Exchange & Swap — VITO is tradable on partner exchanges and via the built-in Buy VITO gateway.