Skip to content

XCLAIM(BTC,ETH): Solidity implementation for Bitcoin backed tokens on Ethereum

License

Notifications You must be signed in to change notification settings

crossclaim/xclaim-sol

Repository files navigation

XCLAIM(BTC,ETH)

Gitter chat

Disclaimer: this project is still under development and not safe to use!

Overview

XCLAIM is a framework for achieving trustless and efficient cross-chain exchanges using cryptocurrency-backed assets (CbAs). XCLAIM allows to create assets which are 1:1 backed by existing cryptocurrencies, without requiring trust in a central operator. While this approach is applicable to a wide range of cryptocurrencies, we currently focus on implementing Bitcoin-backed tokens on Ethereum, i.e. XCLAIM(BTC,ETH).

XCLAIM introduces three main protocols to achieve decentralized, transparent, consistent, atomic, and censorship resistant blockchain interoperability for cryptocurrencies:

  • Issue: Create Bitcoin-backed tokens on Ethereum.
  • Swap: Swap Bitcoin-backed tokens on Ethereum with Ether.
  • Redeem: Burn Bitcoin-backed tokens on Ethereum and receive Bitcoins in return,

The current XCLAIM prototype is compliant with the ERC20 standard. An overview of the protocols is presented below:

overview of XCLAIM issue, swap and redeem protocols

XCLAIM guarantees that Bitcoin-backed tokens can be redeemed for the corresponding amount of Bitcoin, or the equivalent economic value in Ethereum. Thereby, XCLAIM overcomes the limitations of centralized approaches through three primary techniques:

  • Secure audit logs: Logs are constructed to record actions of all users both on Bitcoin and Ethereum.
  • Transaction inclusion proofs: Chain relays are used to prove correct behavior on Bitcoin to the smart contract on Ethereum.
  • Over-collateralization: Incentivize honest behavior following a proof-or-punishment approach. All involved parties must actively prove correct behaviour to the smart contract, e.g. by providing inclusion proofs for Bitcoin transactions.

Paper

Read more about XCLAIM in our paper (currently under submission).

Protocol Summary and Components

A concise overview is coming soon. For now, please refer to the paper.

API

Coming soon. For now, please refer to the paper.

Installation

Make sure ganache-cli and truffle are installed as global packages. Then, install the required packages with:

npm install

Testing

Start ganache:

ganache-cli

Migrate contracts:

truffle migrate

Run tests:

truffle test

This will also re-run migration scripts.

About

XCLAIM(BTC,ETH): Solidity implementation for Bitcoin backed tokens on Ethereum

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published