On December 7th, 2018 at the TenX Summit, a group of developers showcased the first atomic swap between a native bitcoin asset and a non-native asset, the ERC20 PAY token from TenX.
A “non-native asset” is defined as an asset that is not the base currency of the network on which it was created.
For this reason, an atomic swap between bitcoin and an ERC20 token had never been carried out before: although it was theoretically possible, it was not easy to implement, unlike for example, a trustless conversion between ERC20 tokens and ETHs.
This was done by CoBloX, a TenX research and development laboratory, which showed the summit audience that it used Lightning Network and their proprietary COMIT software to exchange 10 PAYs for 71,240 satoshi.
On December 12th, a post was also published on their official blog that better clarifies the dynamics of the process.
All this happened thanks to a single-use smart contract, easy to create between native assets (such as ETH and BTC), but far from simple for ERC20 tokens because they are managed by special smart contracts that must be invoked to transfer ownership of the tokens themselves.
For now, they have been able to run it from ERC20 to Lightning, but not vice versa, and that’s why Lightning will not be part of the open source release of the COMIT software.
This means that we will have to wait a while before this technology can become commonplace, because at the moment, the limitations due to the lack of bidirectionality may not allow many uses.
For example, atomic swaps between native and non-native assets could be very useful for decentralized exchanges (the so-called DEX), because they allow trustless trading not only between native assets, such as BTC and ETH, but also with non-native assets such as ERC20 tokens.
A true decentralized exchange, in fact, should not be based on any centralized platform, and should ensure trustless trading with any type of asset.