Home » How

How

Don’t Trust, Verify

Cereneum is 100% trustless and verifiable. The creators have no more power than a normal user once the contract is launched.

How it Works

On May 31, 2019, snapshots of BTC, BCH, BSV, ETH and LTC were taken. The blockheights of each blockchain snapshot are listed below. Non-BTC chains were given an equivalent BTC ratio. All UTXOs and wallet balances for each chain were exported to CSV files and made publicly available for verification. These values were used to generate a UTXO Merkle Tree for each chain. The leaves of the Merkle Trees are a hash of the public address and the wallet balance. These files were also made publicly available for verification. The Merkle Roots of each chain were hard coded into the contract at launch time and users can verify that the Merkle Root of each UTXO set matches the Merkle Roots in the contract.

When a user wants to claim their tokens they will sign a unique message such as “Claim_Cereneum_to_ETHADDRESS”. Our backend code will compute the public address that signed the message and retrieve the necessary Merkle Tree branches for verification. Users may do all of this on their own if they wish to, but our website will simplify this process for the average user. The contract takes the public address and the amount of the claim and verifies it is a valid claim in the Merkle Tree. Since the Merkle Leaf is a hash of the public address and the wallet balance, if a user tries to submit a claim for a higher value than they had in their wallet, the leaf will not exist in the tree and the verification process will fail.

Signing a unique message is a very safe and common feature in many wallets and WILL NOT expose your private keys in any way.

Snapshot Blockheights

  • Bitcoin: 578691
  • Bitcoin Cash: 585009
  • Bitcoin SV: 577957
  • Ethereum: 7869351
  • Litecoin: 1641768