Smart Contract Versions
The code hash of every contract deployed on Libre mainnet, so anyone can check what is actually running.
Every account with a contract on it publishes the hash of the exact WebAssembly the chain is executing. You do not have to trust this page — you can ask the chain directly:
curl -s -X POST https://api.libre.cryptobloks.io/v1/chain/get_code \
-d '{"account_name":"loan","code_as_wasm":true}' | jq -r .code_hashUse https://api.testnet.libre.cryptobloks.io for testnet.
To confirm a contract matches its published source, build that source and compare the sha256sum of the resulting .wasm with the hash below.
Mainnet, verified 2026-09-07
loan
9c47725ddc592009e7bb7f18b12062028b47e9f6d131ed0eb3109a57f17c5152
2026-09-03
lending, vaults, liquidation
oracle
de1169edf99847791a7c77c249b3489d51385bddae1fc293bd3a763f75a1ae98
2026-06-17
BTC/USD price feed
dex.libre
f46ee5dc401991a2fe96228544e1041ddf2414c9c072b19bb9e685963947dc09
2026-07-13
orderbook DEX
v.libre
0152d0d9da662b081e90c2eaab42905d8493f7a22b5f74fc46b75fe3dc33e7f3
2026-08-21
Bitcoin vault bridge
x.libre
cc5774b27071104ce5a041e41c39c32de7aae094f44aa6db33aa4f81aba03b99
2026-08-21
wrapped BTC bridge
t.libre
0765d5e8e56739804fd8d6b0dc5fbe0c024b32d74923358e8a182d1d562b39aa
2026-07-30
USDT bridge
eosio
5fc505eba82849b55ea6e3b3666298ec57371a6488cccc902d912012d08354e6
2026-04-04
btc.libre · cbtc.libre · tp.libre
7fc7ec5501ecf307a5275d8f9196ab87abc41d00b84d03429d1ab2741e195abb
2025-02
shared token contract
usdt.libre
d51f96e08e7e8320d4ec7cedf4b2cf831a50be834a1db704ff5e5e435bf418e6
2026-04-16
token contract
Why this page used to be wrong
Until 2026-09-07 this table carried hashes that were correct when written and never revisited. stake.libre and dao.libre had both been upgraded since, so the published hashes did not match the running code — on the one page whose entire purpose is verification. mining.libre was listed with no hash at all, and the current lending, DEX, oracle and bridge contracts were missing entirely.
The hashes above are now checked by CI (scripts/check-constants.mjs) against mainnet on every merge request, so the table cannot drift silently again. If a contract is upgraded, that check fails and this page must be updated with it.
Last updated