HarryR / panautomata

Cross-chain proofs and atomic transactions
GNU General Public License v3.0
18 stars 2 forks source link

Proof of concept token exchange between Ropsten & Kovan #11

Open HarryR opened 6 years ago

HarryR commented 6 years ago

This project needs to demonstrate that the technology works on public chains to prove the viability of this project. But, in order to prove the viability there are some other things which need to be considered:

I'm choosing Ropsten and Kovan as the starting points because the Ether is free.

HarryR commented 6 years ago

So, this will depend on the ExampleSwap contract which performs an atomic swap between two parties on two different chains, mediated by the Lithium component and supplied proofs.

Alternatively I could bring back a separate Lock concept, which allows Ropsten Ether to be used in tokenized form on Kovan, and visa versa. e.g. you deposit Ropsten ether into a Lock contract, then supply proof of that to a RemoteEtherToken contract on Kovan which mints N tokens. After burning the tokens you can take the proof of burn back to Ropsten and supply proof to retrieve the equivalent ETH value.

May need to split this idea out into a separate ticket.

HarryR commented 6 years ago

The cross token (RemoteEtherToken) idea was proven in #17 and has been added to the end-to-end tests.

See:

The 'ExampleSwap' contract is still a work-in-progress / rough draft.

HarryR commented 6 years ago

Instead of the atomic swap contract (e.g. PvP) I will use extend the token proxy example to give tokenised Ropsten ether to a friend on Kovan.

The tokenproxy.py file will need to be extended to use multiple accounts, and to take parameters from the command-line.

Currently I'm annoyed with Truffle's inability to realistically deploy anything gracefully and without vomiting on its self, so I will need to either deploy the contracts by hand (via Parity UI) or via a non-shit deployment tool.