The EOS21 Protocol: Teleport Your ERC20 Tokens to EOS

At shEOS, our primary commitments remain flawless stewardship of our node, and supporting the success of the EOS network with technical input and testing at every stage of development. We are also thinking about “what’s next”, and what developments will move the needle not only for EOS, but for the blockchain movement as a whole. Recently, the importance of one specific development has become clear to us, and that is inter-blockchain communication and interoperability.

How empowering would it be for developers to have freedom to move their tokens to any chain they wanted to? To any chain they felt best addresses the needs of their particular project. It’s widely known that each blockchain offers certain qualities that make it more appealing depending on the needs of the dApp developer.

We think developers should have that technical and creative freedom, so we designed a protocol to make it possible. Introducing EOS21!

The EOS21 protocol, conceptualized by shEOS co-founder Crystal Rose, and constructed by shEOS Tech Lead Ben Sigman and a team of talented developers, is an open-source protocol and the first of its kind to enable seamless cross-chain token movement from ETH to EOS.

Stay tuned for a demo video to be released within the week. But here’s the nutshell…

Typically, the way this has been done is by using what we call the “snapshot” method. 📸 This method is commonly used by token “airdrops” to send to accounts on ETH or EOS chains that match certain criteria such as having an address with at least X balance of the chain’s native token. The EOS native token generation from the ERC20 was a snapshot airdrop. EOS was able to do this by expiring their ERC20 contract thereby making the ERC20 EOS tokens non-fungible.
In the EOS21 protocol, we are providing another option for ERC20 contracts that do not have a built-in pause/expiry function but who want to move their token to another chain. We are calling this action: teleportation. To teleport a token from one chain to another, it will exist on the destination chain, but no longer exist in a fungible form on the source chain.
As an open-source contribution, we encourage you to customize, fork, and use the code. We built this as an example case. For full technical description and instructions please visit our: https://sheos-org.github.io/eos21/

Some of the ideas we have for future development include:

*EOS21 contracts could be modified to power a snapshot distribution using
registration of EOS accounts or keys.
*EOS21 “teleporter” or “oracle” could be written to run entirely on an EOS chain (instead of node.js) and simplified payment verification (SPV) could be done entirely on-chain.
*EOS21 contracts could be modified to burn ETH tokens by sending them to a 0x00 address after the Oracle successfully moves them to EOS.
*EOS21 could be modified to allow tokens to travel both ways in the Teleporter ETH ↔ EOS by using a “2-way-peg” of tokens - locking the tokens inside of a contract on each chain.
*EOS21 could create public keys on either chain which share the same private key.
*EOS21 could be used to authenticate ETH transactions using EOS or vice-versa.
*EOS21 can be used to move tokens between EOS sister-chains.
*EOS21 BlackHole contract could be rewritten to support other Ethereum forks chains such as GoChain, or other chains that support tokens such as Stellar.

With real blockchain interoperability, the possibilities truly become endless. We are thrilled to introduce this new tool - and to see what YOU do with it. Please share your developments with our team on our social channels, and join us on Telegram with your questions.

To continue building amazing things, shEOS needs your vote. Vote ‘sheos21sheos’ for block producer. Learn more about our team and mission in this video..

Some dApps will be fine with constant requests for key authorizations, spending your Ether on gas fees. Others will undoubtedly run better on a blockchain with zero transaction fees (like EOS 😉). Given Ethereum's (relatively) long history, I can understand how/why many projects were/are being launched on Ethereum/EVM.

Developers now have the ability to do MVPs or PoCs or even beta test their dApps on their more "familiar" platform, and then easily migrate to EOS for final release/scale/etc. Kind of like how Docker enables devs to build "locally," and later have that same container installed in production.

This is why I love the EOS ecosystem so: it is all community-driven, and the community knows what the community wants and needs (with members incentivized to work together via BP elections, further driving development of high-quality software for EOS) with the end result being a platform that has matured quickly and continues to improve by the day — thanks in no small part to groups like shEOS! 👩‍💻👏