Whitepaper

TrustCoin Whitepaper

Version 2.0 — March 2026

The full whitepaper is presented below. Download the full whitepaper as PDF.


1. Executive Summary

Current blockchains solve the double-spend problem but fail to address a more fundamental challenge in peer-to-peer commerce: how do strangers trust each other to transact honestly? A wallet address reveals nothing about its owner’s history or reliability, enabling exit scams, non-delivery fraud, and Sybil attacks via disposable identities.

TrustCoin is a blockchain built on Proof of Trust (PoT), a consensus mechanism where validators are selected based on reputation rather than raw capital or computational power. The core premise is that real-world trust — earned through consistent, honest behavior — is the most meaningful resource for securing a decentralized network.

Traditional blockchains face a fundamental trade-off: Proof of Work wastes energy and centralizes around mining pools, while Proof of Stake concentrates power in the hands of capital holders. TrustCoin offers a third path where reputation is the primary qualification for block production, with economic stake serving as a secondary commitment signal.

Key Properties

TrustCoin is currently running a live testnet with multiple validator nodes. The codebase is implemented in Rust with a Wasmtime-based smart contract runtime.


2. Proof of Trust Consensus

2.1 Overview

Proof of Trust selects validators based on their accumulated trust scores combined with economic stake. Unlike Proof of Work (which selects by computational power) or Proof of Stake (which selects by capital), PoT introduces reputation as the primary selection criterion.

PropertyProof of WorkProof of StakeProof of Trust
Primary resourceEnergyCapitalReputation
Barrier to entryHardwareTokensTime + behavior
Centralization riskMining poolsWhale dominationUnlikely
Attack cost51% hashrate51% stakeYears of earned trust
FinalityProbabilisticProbabilisticImmediate (BFT)

2.2 Validator Selection

Validators are selected for each block using a deterministic, weighted random selection algorithm. The selection weight for each validator is:

Selection Weight = trust_score * sqrt(stake)

This formula has two critical properties:

  1. Trust is linear — Doubling your trust score doubles your selection probability.
  2. Stake has diminishing returns — Doubling your stake only increases selection probability by approximately 41% (sqrt(2) - 1). This prevents capital from dominating reputation.

The selection process works as follows:

  1. A deterministic seed is derived from the parent block’s validator seed and height using SHA3-256.
  2. A ChaCha20 pseudorandom number generator is initialized with this seed.
  3. Each eligible validator’s selection weight is computed as trust_score * sqrt(stake).
  4. A weighted random selection picks the block proposer.

Note on formula variants: The selection weight for block proposer selection uses floating-point arithmetic (trust_score * sqrt(stake) in raw base units), which is acceptable because it is evaluated once per block and is not consensus-critical. The BFT voting power formula (Section 2.3) uses integer arithmetic for consensus safety.

This approach provides verifiable randomness — any node can independently verify that the correct validator was selected for a given block.

Eligibility Requirements

ParameterValue
Minimum trust score700 (70% on 0-1000 scale)
Minimum stake1,000 TC
Maximum validator pool100 validators

2.3 BFT Voting Protocol

TrustChain uses a two-phase BFT voting protocol inspired by Tendermint:

Phase 1: Pre-Vote

Phase 2: Pre-Commit

Voting Power is calculated using the same trust-weighted formula as selection:

Voting Power = (trust_score * isqrt(stake / ONE_TOKEN)) / 1000 * 1000

This ensures that consensus decisions are weighted by reputation, not just capital.

Supermajority threshold: A block requires more than two-thirds (>2/3) of total voting power in PreCommit votes to be finalized. This threshold is computed as (total_power * 2) / 3 + 1.

Equivocation detection: If a validator signs two different blocks at the same height and round (double signing), this is cryptographically provable and results in slashing.

2.4 Block Production

ParameterValue
Block time12 seconds
Maximum transactions per block1,000
Protocol version1
FinalityImmediate (no forks)

Each block header includes:


3. Trust Score System

3.1 Score Calculation

Every account on TrustChain has a trust score ranging from 0 to 1000 (representing 0% to 100%). The score is a weighted combination of six factors:

TrustScore = 0.30 * TransactionQuality
           + 0.20 * CounterpartyFeedback
           + 0.15 * TransactionVolume
           + 0.15 * TimeDecay
           + 0.15 * VouchScore
           + 0.05 * AccountAge

Each factor is independently calculated on a 0-1000 scale before weighting.

Factor Details

FactorWeightScaleDescription
Transaction Quality30%0-1000Success rate adjusted by dispute and failure penalties. New accounts start at 500 (neutral). 30% penalty per dispute, 50% penalty per failure.
Counterparty Feedback20%0-1000Time-weighted average of star ratings (1-5) from transaction counterparties. Recent ratings count more than old ones (half-life of approximately 6 months). Accounts with 10 or more lifetime negative ratings are permanently flagged and capped at 250.
Transaction Volume15%0-1000Logarithmic scaling of successful transactions. 1 tx is approximately 100, 10 tx is approximately 400, 100 tx is approximately 700, 1000+ tx approaches 1000.
Time Decay15%0-1000Recovery time since last negative event. Exponential recovery: approximately 50% at 30 days, approximately 90% at 90 days, approximately 99% at 150 days. 1000 if no negative events.
Vouch Score15%0-1000Trust-weighted vouches with quadratic diminishing returns (see Section 4).
Account Age5%0-1000Linear scaling up to 365 days, then capped at maximum.

Display Score Curve

TrustChain applies a logarithmic curve to raw scores for display purposes. This makes early tier progression feel more rewarding while keeping premium tiers difficult to achieve. Security-critical thresholds (validator eligibility, vouch permissions) use raw scores to maintain strict requirements.

3.2 Trust Tiers

Trust tiers provide a gamified progression system tied to display scores:

TierDisplay ScoreDescription
Unranked0-499New accounts; basic transactions only
Bronze500-799Established presence
Silver800-899Active, trusted participant
Gold900-939Highly trusted
Diamond940-979Elite reputation
Platinum980-997Exceptional track record
Unobtanium998-1000Near-perfect trust; extremely rare

Tier demotions have a 7-day grace period (50,400 blocks at 12-second block times) to prevent temporary score fluctuations from causing abrupt privilege changes.

3.3 Role-Based Trust

Trust scores can be filtered by role context (Host, Guest, Worker, General, etc.), allowing counterparties to assess trust for specific interaction types. A user might have high trust as a marketplace seller but lower trust as a service provider. Role-specific feedback is aggregated separately, and the General role serves as a cross-cutting baseline.

3.4 Earning and Losing Trust

Earning trust:

Losing trust:


4. Vouching and Accountability

4.1 How Vouching Works

The vouching system allows established users to help newcomers build initial reputation by staking tokens as a guarantee of the newcomer’s trustworthiness.

When a user vouches for another:

  1. The voucher locks stake in escrow (minimum 10,000 base units).
  2. If the vouchee misbehaves, the voucher’s stake is slashed at 25%.
  3. Maximum 10 vouches can be given per user, maximum 5 received.
  4. Stake is returned after a 100-block cooldown (~20 minutes) when the vouch is revoked.

4.2 Vouching Requirements

ParameterValue
Minimum voucher trust600/1000 (60%)
Minimum vouch stake10,000 base units
Maximum vouches given10 per user
Maximum vouches received5 per user
Maximum vouch chain depth3 hops
Misbehavior slash rate25% of staked amount
Unlock cooldown100 blocks (~20 minutes)

4.3 Sybil Resistance

The vouch system includes multiple layers of Sybil resistance:

Quadratic diminishing returns: Each additional vouch on an account is worth less than the previous one. Vouches are sorted by voucher trust (highest first), and the nth vouch contributes only 1/sqrt(n) of the weight of the first:

PositionWeightCumulative
1st vouch100%1.00
2nd vouch71%1.71
3rd vouch58%2.29
4th vouch50%2.79
5th vouch45%3.24

Five identical Sybil vouches provide only approximately 3.24 times the benefit of a single vouch (not 5 times), making Sybil attacks economically inefficient.

High minimum stake: At 10,000 base units per vouch, a 5-account Sybil attack costs at least 50,000 base units. A single legitimate vouch from a highly trusted account with higher stake produces comparable trust benefit.

Trust threshold for vouching: Vouchers must have at least 60% trust (600/1000), which itself requires genuine participation history.

4.4 Circular Vouch Detection

The system uses depth-limited breadth-first search to detect circular vouching patterns. Before any vouch is created, the algorithm checks whether the vouchee has directly or indirectly vouched for the voucher, up to the maximum chain depth of 3 hops. If a cycle is detected, the vouch is rejected.

4.5 Stake Escrow

All vouch stake is locked in escrow (enforced at the protocol level). Vouchers cannot withdraw their stake while a vouch is active. This prevents withdrawal attacks where a voucher removes their stake after vouching but before the vouchee could misbehave.


5. Validator Economics

5.1 Block Reward Distribution

Each block reward is split among four recipients:

RecipientShareEra 0 Amount (per block)
Block Validator80%1.6 TC
Participation Pool10%0.2 TC
Foundation Treasury5%0.1 TC
Burn5%0.1 TC

5.2 Transaction Fee Distribution

Transaction fees are distributed separately:

RecipientShare
Burned50%
Block Validator40%
Foundation Treasury10%

Users may also include a priority fee (tip) of up to 1 TC per transaction, 100% of which goes to the block validator.

5.3 Slashing

Validators face escalating penalties for misbehavior:

Double Signing (Equivocation)

OffenseStake PenaltyConsequence
1st10%Warning
2nd25%Warning
3rd+25%Permanent ban

Downtime (Missed Blocks)

OffenseStake PenaltyConsequence
1st0% (warning only)Warning
2nd5%Warning
3rd+10%30-day temporary ban

Invalid Block Production

OffenseStake PenaltyConsequence
1st15%Warning
2nd30%Warning
3rd+30%Permanent ban

Additional penalties: Each slash event incurs a trust score penalty of -50 points. Offense counters reset after a 90-day clean period. Evidence reporters receive 10% of slashed amounts (90% is burned).

5.4 Subsidy Schedule

During the first year after mainnet launch, the Foundation provides subsidies to validators:

ParameterValue
Duration1 year from mainnet
Subsidy pool1,000,000 TC
Minimum monthly threshold100 TC
Target monthly reward150 TC

If a validator earns less than 100 TC per month from block rewards, they receive a subsidy up to 150 TC total for that month.

5.5 Projected APY

PhaseTimelineTarget APY
BootstrapMonths 0-6~12%
GrowthMonths 6-186-8%
Mature18+ months3-5%

These projections assume a growing validator set and increasing network activity.


6. Token Economics

6.1 Supply Parameters

ParameterValue
Token symbolTC
Decimals18
Maximum supply21,000,000 TC
Block time12 seconds
Initial block reward2.0 TC
Blocks per year~2,628,000
Halving period~4 years (10,512,000 blocks)

6.2 Emission Schedule

Block rewards follow a Bitcoin-style halving schedule:

EraYearsBlock RewardApproximate Era Emission
00-42.0 TC~21.0M TC (capped at 21M)
14-81.0 TC~10.5M TC
28-120.5 TC~5.25M TC
312-160.25 TC~2.6M TC
416-200.125 TC~1.3M TC
10+40+0 TC0 TC

The 21 million TC maximum supply is enforced as a hard cap at the protocol level. The total_emitted function ensures cumulative emissions never exceed MAX_SUPPLY.

6.3 Burn Mechanics

Multiple burn mechanisms create deflationary pressure:

SourceBurn Rate
Block rewards5% of each block reward
Transaction fees50% of all fees
Slashing90% of slashed stake (10% to reporter)
Contract deployment50% of 0.1 TC deploy fee

Projected annual burns (Era 0): Approximately 263,000 TC from block rewards alone, plus variable amounts from transaction fees and slashing.

As block rewards decrease through halvings, transaction fee burns become the dominant deflationary force. Long-term circulating supply will stabilize below 21 million TC due to accumulated burns.

6.4 Circulating Supply

Circulating Supply = Total Emitted - Total Burned - Locked Stake

Where locked stake includes both validator stake and vouch stake held in escrow.

6.5 Foundation Treasury

The Foundation Treasury is funded by:

Treasury funds are allocated to protocol development, security audits, ecosystem grants, marketing, and legal compliance. Governance will transition to community oversight through a planned DAO structure.

6.6 Trust-Tiered Fees

Certain operations offer fee discounts based on trust score, rewarding established users:

Trust ScoreApp Registration FeeDiscount
0-299500 TC0%
300-499400 TC20%
500-699250 TC50%
700-899100 TC80%
900+25 TC95%

7. Smart Contract Architecture

7.1 WASM Runtime

TrustChain runs smart contracts compiled to WebAssembly (WASM) using the Wasmtime runtime engine. Contracts are written in Rust using the TrustChain Contract SDK.

Key properties:

7.2 Contract SDK

The TrustChain Contract SDK provides:

7.3 Transaction Types

TrustChain supports a rich set of native transaction types beyond simple transfers:

7.4 Transaction Fees and Gas Costs

Each transaction type has a base fee plus an execution fee based on gas consumed:

Transaction TypeBase FeeGas Cost
Transfer0.0001 TC21,000 gas
Vouch0.0002 TC30,000 gas
Contract Deploy0.1 TC100,000 gas
Contract Call0.001 TC50,000 gas

Gas is priced at approximately 0.000001 TC per gas unit (default), with bounds of 0.0000001 TC (minimum) to 0.0001 TC (maximum) per gas unit. Additional data costs 16 gas per byte. Users may also include a priority fee (tip) of up to 1 TC, 100% of which goes to the block validator.

7.5 Deployed dApps (Testnet)

Two reference dApps are deployed on the testnet:


8. Network Architecture

8.1 Peer-to-Peer Networking

TrustChain uses libp2p for peer-to-peer networking with:

8.2 Network Parameters

ParameterValue
Default P2P port9000
Default RPC port8545
Default metrics port9615
Testnet chain ID7878
Devnet chain ID31337

8.3 Bootstrap and Sync

Nodes join the network by connecting to bootstrap peers. The foundation maintains a bootstrap.json endpoint that provides current bootstrap peer multiaddresses. Nodes can also specify custom bootstrap peers via the --bootstrap command-line flag.

Block synchronization uses a request-response protocol where syncing nodes request block ranges from peers and verify each block’s validator signature, BFT commit proof, and state transitions.

8.4 Cross-Chain Relay (Planned)

A cross-chain relay system is under development to enable interoperability with other blockchains including Bitcoin and Ethereum. The relay uses SPV (Simplified Payment Verification) proofs to verify cross-chain transactions without requiring full node operation on partner chains.


9. Security Model

9.1 Sybil Protection

Creating fake accounts is ineffective because:

9.2 Consensus Security

9.3 Smart Contract Security

9.4 Cost of Attack Analysis

51% Trust Attack: An attacker would need to control validators holding more than one-third of total voting power. Since voting power depends on both trust and stake, the attacker must:

  1. Build trust scores above 700 on multiple accounts (requires months of genuine participation per account).
  2. Acquire significant stake for each account.
  3. Avoid detection — any slashing event resets the trust-building process.

Sybil Attack: With minimum vouch stake of 10,000 units, a 5-account Sybil attack costs at least 50,000 units in locked stake, plus months of trust-building per account. The quadratic diminishing returns on vouches mean 5 Sybil vouches provide only approximately 3.24 times the benefit of one legitimate vouch.


10. Roadmap

Current: Testnet (v0.3.4)

Planned: Mainnet Preparation

Future


Appendix A: Protocol Constants

ConstantValueSource
TOKEN_DECIMALS18trustchain-primitives
ONE_TOKEN10^18 base unitstrustchain-primitives
MAX_SUPPLY21,000,000 TCtrustchain-primitives
BLOCK_TIME_MS12,000 (12 seconds)trustchain-primitives
PROTOCOL_VERSION1trustchain-primitives
P2P_PROTOCOL_VERSION1trustchain-primitives
INITIAL_BLOCK_REWARD2 TCtrustchain-tokenomics
BLOCKS_PER_ERA10,512,000trustchain-tokenomics
MAX_ERAS10trustchain-tokenomics
VALIDATOR_THRESHOLD700 (70%)trustchain-primitives
VOUCH_THRESHOLD500 (50% display)trustchain-primitives
DEFAULT_MIN_VOUCH_STAKE10,000 unitstrustchain-trust
DEFAULT_MIN_VOUCHER_TRUST600 (60%)trustchain-trust

Appendix B: Trust Factor Weights

FactorWeightNew Account Default
Transaction Quality0.30500 (neutral)
Counterparty Feedback0.20500 (neutral)
Transaction Volume0.150
Time Decay0.151000 (no negative events)
Vouch Score0.150
Account Age0.050

A brand-new account starts with a raw score of 400 (0.30500 + 0.20500 + 0.150 + 0.151000 + 0.150 + 0.050 = 150 + 100 + 0 + 150 + 0 + 0 = 400).


This whitepaper (v2.0) describes the TrustChain protocol as implemented in software version 0.3.4. The protocol is under active development and parameters may change before mainnet launch. All claims in this document have been verified against the codebase.

Last updated: March 2026