Wrapping Cryptocurrencies for interoperability sakeUnderstanding TokenCreator/OwnedToken example from Solidity documentationCategorising tokens: is there pros and cons of ERC20 described anywhere & comparison with other subcurrency impl?How excatly Bancor works (for non-economists)how does a lightweight node interact with smart contracts?are the ERC721 smart contracts compatible with Zk-SNARKs?fallback function is accepting more than 2300 gasHow can the cost of changing 2 state variables and emitting 1 event reach 50K gas units?What is a common pattern to work with a large number of complex Things: make a Thing a contract, or a struct in a mapping?Smart contract - require token balance in constructorSolidity 0.5.x - make address array payable
Can someone explain how this makes sense electrically?
Create all possible words using a set or letters
Why did the HMS Bounty go back to a time when whales are already rare?
Find last 3 digits of this monster number
If a character with the Alert feat rolls a crit fail on their Perception check, are they surprised?
Transformation of random variables and joint distributions
How do I extrude a face to a single vertex
Is XSS in canonical link possible?
Why does Async/Await work properly when the loop is inside the async function and not the other way around?
What is the grammatical term for “‑ed” words like these?
What major Native American tribes were around Santa Fe during the late 1850s?
Gibbs free energy in standard state vs. equilibrium
Will adding a BY-SA image to a blog post make the entire post BY-SA?
Is possible to search in vim history?
Proof of Lemma: Every nonzero integer can be written as a product of primes
Folder comparison
Visiting the UK as unmarried couple
Is it improper etiquette to ask your opponent what his/her rating is before the game?
Should I stop contributing to retirement accounts?
What does this horizontal bar at the first measure mean?
How must one send away the mother bird?
Reply 'no position' while the job posting is still there
How will losing mobility of one hand affect my career as a programmer?
My friend sent me a screenshot of a transaction hash, but when I search for it I find divergent data. What happened?
Wrapping Cryptocurrencies for interoperability sake
Understanding TokenCreator/OwnedToken example from Solidity documentationCategorising tokens: is there pros and cons of ERC20 described anywhere & comparison with other subcurrency impl?How excatly Bancor works (for non-economists)how does a lightweight node interact with smart contracts?are the ERC721 smart contracts compatible with Zk-SNARKs?fallback function is accepting more than 2300 gasHow can the cost of changing 2 state variables and emitting 1 event reach 50K gas units?What is a common pattern to work with a large number of complex Things: make a Thing a contract, or a struct in a mapping?Smart contract - require token balance in constructorSolidity 0.5.x - make address array payable
How is it possible to standardize bitcoin and wrap it to the ERC20 format, creating smart contracts for Bitcoin. This should make it easier to write smart contracts that integrate bitcoin transfers apparently, but for my understanding this makes no sense since the code bases are alien to each other. Can someone elaborate? this seems rather complex?
solidity go-ethereum contract-development contract-design tokens
add a comment |
How is it possible to standardize bitcoin and wrap it to the ERC20 format, creating smart contracts for Bitcoin. This should make it easier to write smart contracts that integrate bitcoin transfers apparently, but for my understanding this makes no sense since the code bases are alien to each other. Can someone elaborate? this seems rather complex?
solidity go-ethereum contract-development contract-design tokens
add a comment |
How is it possible to standardize bitcoin and wrap it to the ERC20 format, creating smart contracts for Bitcoin. This should make it easier to write smart contracts that integrate bitcoin transfers apparently, but for my understanding this makes no sense since the code bases are alien to each other. Can someone elaborate? this seems rather complex?
solidity go-ethereum contract-development contract-design tokens
How is it possible to standardize bitcoin and wrap it to the ERC20 format, creating smart contracts for Bitcoin. This should make it easier to write smart contracts that integrate bitcoin transfers apparently, but for my understanding this makes no sense since the code bases are alien to each other. Can someone elaborate? this seems rather complex?
solidity go-ethereum contract-development contract-design tokens
solidity go-ethereum contract-development contract-design tokens
asked 4 hours ago
NowsyMeNowsyMe
331418
331418
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
If you're referring to Wrapped BTC (WBTC), it has nothing to do with the Bitcoin Network. 1 WBTC is equal to 1 BTC purely through a custodial pegging system. To mint a WBTC ERC-20 token, you must lock-up a BTC.
This lets BTC be 'represented' on the Ethereum blockchain and can be used in different dApps, commonly financial ones.
If you're familiar with Wrapped ETH (WETH) it is the exact same concept except the process to wrap ETH is trust-less and done on the Ethereum blockchain (b/c ETH is native to the blockchain). The process to wrap BTC is not currently trust-less, you need to send your BTC to BitGo, a Bitcoin custodial exchange.
Then with the ERC-20 version of BTC, you can do with it whatever you can do with any ERC-20 in smart contracts.
This should make it easier to write smart contracts that integrate bitcoin transfers apparently,
With the ERC-20 version of BTC, you can call safeTransferFrom()
like with any ERC-20 token. This'll transfer the WBTC to whichever Ethereum address chosen. Now this Ethereum address has 1 WBTC (in this example) but the Bitcoin Network doesn't somehow credit this Ethereum address with 1 BTC. As far as the Bitcoin Network knows, the BTC is still held by BitGo (the BTC exchange you lock-up BTC for WBTC).
How does this person who just received 1 WBTC get credit with 1 true BTC, and have their ownership of the BTC registered with the Bitcoin Network? They go to BitGo and 'cash-in' their WBTC. The rate will always be 1 WBTC:1 BTC, so BitGo will send their Bitcoin address of choice the 1 BTC.
Standardizing and wrapping any non-native coin as an ERC-20 on Ethereum doesn't have 'real' interoperability with the other blockchain. As you stated, this would be way more complex than the process I described above, and the process used currently (pegging).
For true interoperability, as you may be envisioning, check out Cosmos Network. They are trying to build an 'internet of blockchains' and just launched main-net. They standardize blockchains, not tokens/coins, to allow true interoperability (basically so the code bases are the same). I think you'd find the project interesting!
I hope this answered your question. Here is WBTC's official site where you can read more about the process they use: https://www.wbtc.network/
great answer thanks! spot on
– NowsyMe
2 hours ago
Awesome, glad to help!
– savard
2 hours ago
add a comment |
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "642"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fethereum.stackexchange.com%2fquestions%2f68756%2fwrapping-cryptocurrencies-for-interoperability-sake%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
If you're referring to Wrapped BTC (WBTC), it has nothing to do with the Bitcoin Network. 1 WBTC is equal to 1 BTC purely through a custodial pegging system. To mint a WBTC ERC-20 token, you must lock-up a BTC.
This lets BTC be 'represented' on the Ethereum blockchain and can be used in different dApps, commonly financial ones.
If you're familiar with Wrapped ETH (WETH) it is the exact same concept except the process to wrap ETH is trust-less and done on the Ethereum blockchain (b/c ETH is native to the blockchain). The process to wrap BTC is not currently trust-less, you need to send your BTC to BitGo, a Bitcoin custodial exchange.
Then with the ERC-20 version of BTC, you can do with it whatever you can do with any ERC-20 in smart contracts.
This should make it easier to write smart contracts that integrate bitcoin transfers apparently,
With the ERC-20 version of BTC, you can call safeTransferFrom()
like with any ERC-20 token. This'll transfer the WBTC to whichever Ethereum address chosen. Now this Ethereum address has 1 WBTC (in this example) but the Bitcoin Network doesn't somehow credit this Ethereum address with 1 BTC. As far as the Bitcoin Network knows, the BTC is still held by BitGo (the BTC exchange you lock-up BTC for WBTC).
How does this person who just received 1 WBTC get credit with 1 true BTC, and have their ownership of the BTC registered with the Bitcoin Network? They go to BitGo and 'cash-in' their WBTC. The rate will always be 1 WBTC:1 BTC, so BitGo will send their Bitcoin address of choice the 1 BTC.
Standardizing and wrapping any non-native coin as an ERC-20 on Ethereum doesn't have 'real' interoperability with the other blockchain. As you stated, this would be way more complex than the process I described above, and the process used currently (pegging).
For true interoperability, as you may be envisioning, check out Cosmos Network. They are trying to build an 'internet of blockchains' and just launched main-net. They standardize blockchains, not tokens/coins, to allow true interoperability (basically so the code bases are the same). I think you'd find the project interesting!
I hope this answered your question. Here is WBTC's official site where you can read more about the process they use: https://www.wbtc.network/
great answer thanks! spot on
– NowsyMe
2 hours ago
Awesome, glad to help!
– savard
2 hours ago
add a comment |
If you're referring to Wrapped BTC (WBTC), it has nothing to do with the Bitcoin Network. 1 WBTC is equal to 1 BTC purely through a custodial pegging system. To mint a WBTC ERC-20 token, you must lock-up a BTC.
This lets BTC be 'represented' on the Ethereum blockchain and can be used in different dApps, commonly financial ones.
If you're familiar with Wrapped ETH (WETH) it is the exact same concept except the process to wrap ETH is trust-less and done on the Ethereum blockchain (b/c ETH is native to the blockchain). The process to wrap BTC is not currently trust-less, you need to send your BTC to BitGo, a Bitcoin custodial exchange.
Then with the ERC-20 version of BTC, you can do with it whatever you can do with any ERC-20 in smart contracts.
This should make it easier to write smart contracts that integrate bitcoin transfers apparently,
With the ERC-20 version of BTC, you can call safeTransferFrom()
like with any ERC-20 token. This'll transfer the WBTC to whichever Ethereum address chosen. Now this Ethereum address has 1 WBTC (in this example) but the Bitcoin Network doesn't somehow credit this Ethereum address with 1 BTC. As far as the Bitcoin Network knows, the BTC is still held by BitGo (the BTC exchange you lock-up BTC for WBTC).
How does this person who just received 1 WBTC get credit with 1 true BTC, and have their ownership of the BTC registered with the Bitcoin Network? They go to BitGo and 'cash-in' their WBTC. The rate will always be 1 WBTC:1 BTC, so BitGo will send their Bitcoin address of choice the 1 BTC.
Standardizing and wrapping any non-native coin as an ERC-20 on Ethereum doesn't have 'real' interoperability with the other blockchain. As you stated, this would be way more complex than the process I described above, and the process used currently (pegging).
For true interoperability, as you may be envisioning, check out Cosmos Network. They are trying to build an 'internet of blockchains' and just launched main-net. They standardize blockchains, not tokens/coins, to allow true interoperability (basically so the code bases are the same). I think you'd find the project interesting!
I hope this answered your question. Here is WBTC's official site where you can read more about the process they use: https://www.wbtc.network/
great answer thanks! spot on
– NowsyMe
2 hours ago
Awesome, glad to help!
– savard
2 hours ago
add a comment |
If you're referring to Wrapped BTC (WBTC), it has nothing to do with the Bitcoin Network. 1 WBTC is equal to 1 BTC purely through a custodial pegging system. To mint a WBTC ERC-20 token, you must lock-up a BTC.
This lets BTC be 'represented' on the Ethereum blockchain and can be used in different dApps, commonly financial ones.
If you're familiar with Wrapped ETH (WETH) it is the exact same concept except the process to wrap ETH is trust-less and done on the Ethereum blockchain (b/c ETH is native to the blockchain). The process to wrap BTC is not currently trust-less, you need to send your BTC to BitGo, a Bitcoin custodial exchange.
Then with the ERC-20 version of BTC, you can do with it whatever you can do with any ERC-20 in smart contracts.
This should make it easier to write smart contracts that integrate bitcoin transfers apparently,
With the ERC-20 version of BTC, you can call safeTransferFrom()
like with any ERC-20 token. This'll transfer the WBTC to whichever Ethereum address chosen. Now this Ethereum address has 1 WBTC (in this example) but the Bitcoin Network doesn't somehow credit this Ethereum address with 1 BTC. As far as the Bitcoin Network knows, the BTC is still held by BitGo (the BTC exchange you lock-up BTC for WBTC).
How does this person who just received 1 WBTC get credit with 1 true BTC, and have their ownership of the BTC registered with the Bitcoin Network? They go to BitGo and 'cash-in' their WBTC. The rate will always be 1 WBTC:1 BTC, so BitGo will send their Bitcoin address of choice the 1 BTC.
Standardizing and wrapping any non-native coin as an ERC-20 on Ethereum doesn't have 'real' interoperability with the other blockchain. As you stated, this would be way more complex than the process I described above, and the process used currently (pegging).
For true interoperability, as you may be envisioning, check out Cosmos Network. They are trying to build an 'internet of blockchains' and just launched main-net. They standardize blockchains, not tokens/coins, to allow true interoperability (basically so the code bases are the same). I think you'd find the project interesting!
I hope this answered your question. Here is WBTC's official site where you can read more about the process they use: https://www.wbtc.network/
If you're referring to Wrapped BTC (WBTC), it has nothing to do with the Bitcoin Network. 1 WBTC is equal to 1 BTC purely through a custodial pegging system. To mint a WBTC ERC-20 token, you must lock-up a BTC.
This lets BTC be 'represented' on the Ethereum blockchain and can be used in different dApps, commonly financial ones.
If you're familiar with Wrapped ETH (WETH) it is the exact same concept except the process to wrap ETH is trust-less and done on the Ethereum blockchain (b/c ETH is native to the blockchain). The process to wrap BTC is not currently trust-less, you need to send your BTC to BitGo, a Bitcoin custodial exchange.
Then with the ERC-20 version of BTC, you can do with it whatever you can do with any ERC-20 in smart contracts.
This should make it easier to write smart contracts that integrate bitcoin transfers apparently,
With the ERC-20 version of BTC, you can call safeTransferFrom()
like with any ERC-20 token. This'll transfer the WBTC to whichever Ethereum address chosen. Now this Ethereum address has 1 WBTC (in this example) but the Bitcoin Network doesn't somehow credit this Ethereum address with 1 BTC. As far as the Bitcoin Network knows, the BTC is still held by BitGo (the BTC exchange you lock-up BTC for WBTC).
How does this person who just received 1 WBTC get credit with 1 true BTC, and have their ownership of the BTC registered with the Bitcoin Network? They go to BitGo and 'cash-in' their WBTC. The rate will always be 1 WBTC:1 BTC, so BitGo will send their Bitcoin address of choice the 1 BTC.
Standardizing and wrapping any non-native coin as an ERC-20 on Ethereum doesn't have 'real' interoperability with the other blockchain. As you stated, this would be way more complex than the process I described above, and the process used currently (pegging).
For true interoperability, as you may be envisioning, check out Cosmos Network. They are trying to build an 'internet of blockchains' and just launched main-net. They standardize blockchains, not tokens/coins, to allow true interoperability (basically so the code bases are the same). I think you'd find the project interesting!
I hope this answered your question. Here is WBTC's official site where you can read more about the process they use: https://www.wbtc.network/
edited 2 hours ago
answered 3 hours ago
savardsavard
829
829
great answer thanks! spot on
– NowsyMe
2 hours ago
Awesome, glad to help!
– savard
2 hours ago
add a comment |
great answer thanks! spot on
– NowsyMe
2 hours ago
Awesome, glad to help!
– savard
2 hours ago
great answer thanks! spot on
– NowsyMe
2 hours ago
great answer thanks! spot on
– NowsyMe
2 hours ago
Awesome, glad to help!
– savard
2 hours ago
Awesome, glad to help!
– savard
2 hours ago
add a comment |
Thanks for contributing an answer to Ethereum Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fethereum.stackexchange.com%2fquestions%2f68756%2fwrapping-cryptocurrencies-for-interoperability-sake%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown