Finalis Core

Payments that are final the moment validators sign them: no waiting for confirmations, no reorgs. Confidential amounts from genesis, and wallets that check the validators' signatures instead of trusting a server.

Built in the open by Reikagi Takashi. No premine, no sale.

πŸš€ Run a Testnet Node β†’ πŸ’¬ Join Discord View Source on GitHub
🚧 Status: pre-launch. Mainnet has not launched and its genesis is not frozen. The public testnet, testnet-3, started on 29 October 2026 at 06:00 UTC and replaces testnet-2 (testnet coins have no value). It has one validator today; I am looking for operators to bring it to four. Running a testnet-2 node? Move it to testnet-3 β†’ Join the testnet β†’ Β· Mainnet plan β†’
Language: C++
License: MIT
Finality: BFT (⌊2N/3βŒ‹+1)
Blocks: ~3 min, final on arrival
Supply Cap: 7,000,000 FLS
Premine: none

🌐 Testnet Snapshot

Live data from the testnet-3 explorers (finalis.self-link.com and 159.200.236.114, with automatic failover). Mainnet has not launched, so this is not mainnet data.

checking...
Verdict: checking
Waiting for explorer response…
Epoch
-
Height
-
Transition
-
Protocol Reserve
-
Ticket PoW
-
Committee
-
Recent Tx Count
-

Address Validation (Finalized State)

πŸ§ͺ Why Run a Testnet Node?

⚑ Deterministic Finality

No live fork choice: a block is final once ⌊2N/3βŒ‹+1 validators precommit it, and it can never be reversed. Two-phase voting (prevote, then precommit) on (height, round, transition_id); every signature commits to this chain. Design β†’

πŸ”„ Adaptive Committee

Committee size, minimum bond, and eligibility thresholds adjust deterministically based on qualified operator depth.

πŸ“¦ UTXO Ledger

UTXO model with P2PKH addresses and Ed25519 signatures. Two transaction formats, both valid from genesis: Tx (transparent) and TxV2 (confidential-capable).

πŸ“‘ Your Wallet Verifies

The wallet does not take a server's word for its balance. It starts from the genesis built into it, follows each validator committee, and checks every coin against the validators' signatures. It asks several servers: none can invent a coin, and one honest server is enough to reveal a hidden one. How it works β†’

⏳ Time-Locked Transactions

Send a transaction sealed until a chosen block height: nobody can read or execute it earlier. Validators sign each height once it is final, and those signatures open it (BLS12-381 signature-based witness encryption). Sealed data can be revealed the same way, for example sealed bids. A small bond is forfeited if the sealed body is invalid, and a validator that signs a height early is slashed. Height-locked coins cover vesting and inheritance. Design β†’

πŸ” Address Format

Ed25519 keys β†’ HASH160(pubkey) β†’ Bech32-like encoding (not standard SegWit Bech32) with a 4-byte SHA256d checksum. HRP: sc (mainnet) / tsc (testnet).

βš–οΈ A Fair Launch, by Published Rules

Who holds the coins decides whether a chain can be trusted, so these rules are fixed in the code and the published launch plan, where anyone can check them:

πŸ•ΆοΈ Confidential UTXOs (enabled from genesis)

Confidential outputs hide their amount (Pedersen commitment + range proof, no trusted setup) and pay a one-time key instead of an address. The wallet supports shield (transparent β†’ confidential), confidential β†’ confidential, and unshield (confidential β†’ transparent).

Amounts are private only in confidential β†’ confidential transfers; shield and unshield amounts can be computed from their public parts. The transaction graph, fees and the total confidential supply are always public. There is no sender anonymity.

Feature Bitcoin Monero Ethereum Solana Finalis
BFT finality no no yes yes yes
No live fork choice runtime no no no no yes
UTXO model yes yes no no yes
Confidential amounts no yes no no yes (confidential β†’ confidential)
One-time recipient keys no yes no no yes
Transparent ↔ confidential no n/a no no yes
Sender anonymity no yes no no no
No trusted setup yes yes n/a n/a yes

Read the confidential UTXO spec

πŸš€ Quick Start: Testnet Node (Linux)

Mainnet has not launched. Until it does, run a node on the public testnet. One command installs the dependencies, builds, and starts the node as a background service:

git clone https://github.com/FinalisCore/finalis-core.git
cd finalis-core
FINALIS_NETWORK=testnet SERVICE_NAME=finalis-testnet ./scripts/start.sh

# Watch it sync
sudo journalctl -u finalis-testnet -f

Default ports: testnet P2P 19540 Β· Lightserver 19544  |  mainnet (after launch) P2P 19440 Β· Lightserver 19444

Check you are on testnet-3: get_status shows a genesis_hash starting with f68c3097. Prebuilt packages (x86_64 and ARM64) and Docker are also covered in the joining guide.

Becoming a testnet validator, opening ports, troubleshooting: the joining guide. Never reuse a testnet validator key on mainnet.


πŸš€ Windows

Check GitHub Releases for current builds. Older releases were built for a development network that has been retired, so always confirm network_name and genesis_hash with get_status before relying on a node.

πŸ“Š Economic Model

Fixed supply of 7,000,000 FLS. 12-year emission schedule with 20% annual decay; 30% of emission is saved into a protocol reserve. Fees are pooled per epoch from block 1: half to that epoch's validators, half to the reserve. Slashed bonds return to the reserve. After emission ends, the reserve pays validators 5% of its balance a year, so it never runs dry. The base fee is zero while blocks are less than half full and rises only under congestion.

πŸ“ Repository Components

finalis-node Β· finalis-lightserver Β· finalis-explorer Β· finalis-wallet Β· finalis-cli Β· Formal TLA+ models Β· Attack simulations Β· Python conformance tests

πŸ’¬ Get Involved

Questions or bugs? Reach out. I am building Finalis in the open, toward mainnet, and every change is public on GitHub. Report security issues privately per SECURITY.md.

πŸ“š Key Documentation

Whitepaper Β· Consensus Overview Β· Two-Phase Finality Β· Wallet Verification Β· Live Protocol Spec Β· Checkpoint Derivation Β· Exchange Integration Β· Address Format Β· Confidential UTXO Spec Β· Economics


πŸ” Review Wanted

I am looking for independent review of the consensus safety rules and the confidential transaction cryptography before mainnet, and I will publish the findings and fixes. Start with the reviewer guide, and report vulnerabilities privately as described in SECURITY.md.


πŸ”— Resources

GitHub Repository Β· Join the Testnet Β· Testnet Reference Β· Mainnet Plan Β· Mainnet Reference (RPC) Β· Build Guide

🀝 Community Help Wanted

Tutorials. If you make a clear, step-by-step video on installing and running a node (Linux or Windows), publish it and share the link in Discord. I will sponsor the best ones with enough FLS to cover a validator registration.

Bugs and contributions. Meaningful bug reports and contributions will be rewarded in FLS. Please include reproducible evidence: steps, a patch, or a video. I review every submission in public and settle transparently.

Where those rewards come from. This is not a giveaway, and nobody, including me, holds coins in advance. Rewards are paid from FLS I earn as a validator after mainnet launches, under the same public emission schedule as everyone else. Every other holder decides freely what to do with their own coins.

I am not building Finalis to enrich myself. I am building it so that finality, and the rules behind it, can be checked by anyone.

Bitcointalk thread