How OpenSea is going off-chain to build a more flexible blockchain game item marketplace
CTO Alex Atallah explains all
Until updates such as Casper and Sharding hit the Ethereum mainnet, the blockchain will continue to be vulnerable to irregular congestion, which have raised gas prices as high as $1 on occasions.
We eliminate transactions from the order matching process.
That’s bad news for users of all distributed apps but a particular issue for marketplaces such as OpenSea.
Riding high thanks to a recent $2 million injection of venture capital, the US secondary game item marketplace is proving reactive to such issues however, and has released an interesting tech fix to solve the problem.
It works by cutting out gas costs entirely for item sellers by storing sell orders off-chain.
According to CTO Alex Atallah, this change further streamlines the selling process, as owners can continue to use their items until they are sold. Previously, for sale items were locked down to an escrow smart contract.
“We eliminate transactions from the order matching process,” Atallah explains.
“For example, instead of having to send your item to an escrow contract, now you keep your item until it sells, so that eliminates the need for a transaction.”
OpenSea takes selling off-chain
Of course, while this saves the gas cost for sellers, it does so by taking the first part of any transaction off the blockchain, potentially adding security issues.
Atallah reckons this downside is limited, however.
“Someone could hack our database and hide or invalidate legitimate orders, but they wouldn’t be able to make new ones since the users’ signatures wouldn’t validate,” he says.
Other ongoing changes to OpenSea’s underlying technology see it building a new, more flexible exchange to enable programmable trading using the Wyvern protocol.
Similar to decentralized token exchange protocols such as 0x, this extends such off-chain functionality from ERC20 fungible tokens to ERC721 non-fungible tokens.
You can keep up-to-date with OpenSea via its Medium.