-
Notifications
You must be signed in to change notification settings - Fork 453
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Blockchain Engineering - class of 2022 - Team Atomic Swap #6774
Comments
Meeting notes (21-02-21):
Task for the next meeting:
|
Week 3 progress Atomic swap:
IPv8:
Android:
|
Meeting notes 02-03-2022:
Next sprint goals:
|
Basic atomic swap with yourself: Me and Mariana got an atomic swap contract to kindoff work. Instead of using multiple transactions, one transaction is used to create an output that can either be reclaimed (timelock) or claimed (hash).
contract creation tx : https://www.blockchain.com/btc-testnet/tx/a07c39fb50b017ca4927750167b5f5bc9f798cf7a37e97fdd1010265f29a70b2 using contract as input tx: https://www.blockchain.com/btc-testnet/tx/91ef3ebc4124b970e6c66f47717d088e911d703b6e9a717a8d310980eff2c207 try "try swap" button creates the swap contract and prints out the tx hash and key used to create the transaction. the "try to refund" button claims the tx with the hash preimage. You need to give it the privatekey we used to create the contract, transaction hash and output index of the contract. That info is then used to spend the contract. |
Week 4 progress update Atomic swap:
IPv8:
Android:
|
Meeting notes 08-02:
Focusses for the next sprint:
|
Android:
|
Meeting notes 15-03-2022:
Proposal for TrustChain block structure:
Suggestions for next sprint:
|
Week 7
|
Meeting notes 22-03-2022:
Next steps:
|
Week8 Atomic swap:
IPv8 & TrustChain:
Android & DevOps:
|
Meeting notes 29-03-2022:
For the next sprint:
|
I estimated the gas costs for Ethereum and the fees for Bitcon. Claiming money from the contract costs 42907 gas. Locking ETH costs 113950 gas. Locking Bitcoin takes ~ 223 bytes. claiming Bitcoin takes ~ 306 bytes. As far as I know, we are not doing segwit transactions. |
Meeting notes 08-04-22:
Final actions:
|
Final demo has been given 🎉 . The Superapp now has support for atomic swaps between BTC/ETH wallets. To make the conditional grade that I gave official, please open a PR today or tomorrow so it can be reviewed and merged. 👍 |
👏 Atomic swap is a great primitive for understanding blockchain. Goal is to get code running on Android devices, using non-custodial approaches, using pure Peer-2-Peer technology, no server permitted. First task is to implement an old algorithm for atomic swaps from over 8 years ago fully operational in Kotlin code. Read about hashlocks. There is some existing Bitcoin script you might re-use. Use the Taproot multisig ability, native Schnorr support now.
Explore other options; is CoinJoin cool?
Approach: Use the Kotlin Superapp as foundation. Store commitments on Trustchain {code} and use IPv8 for coordination between the 3 parties. Superior approaches are obviously very welcome. Please re-use as much as existing code as possible.
Milestone: install your app on 3 devices. Activate the 3 different roles on each devices. Transfer a minimal amount of real Bitcoins. Wait hours... Success!?! 🥇
The expected deliverables are:
References:
bitcoinj
library. Documentation can be found here.The text was updated successfully, but these errors were encountered: