The exchange of non-fungible tokens (NFTs) traditionally occurs on centralized NFT marketplaces, which often wield significant control over transactions, as the imposition of restrictions and fees. Additionally, the current NFT standard (ERC-721) lacks certain functionalities that hinder the seamless direct exchange of NFTs between owners. This paper introduces a novel protocol that eliminates the need for an intermediary marketplace, as well as their intermediary smart contract or escrow contract, facilitating a fair exchange of NFTs as collectibles. The protocol is represented by an extension of the ERC-721 called Exchangeable NFTs (ExNFTs), which introduces the necessary functionalities to enable direct NFT exchanges. We analyze the limitations of the ERC-721 standard and build upon our previously proposed protocol of Rejectable NFTs (RejNFTs), which introduces a rejectable functionality empowering the receiver to reject the transfer of an NFT. Additionally, we discuss the reasons why achieving a fair direct exchange of NFTs is currently unattainable with the prevailing standards. We present the key functionalities of the ExNFT approach, along with a Solidity implementation of the ExNFTs. Furthermore, we evaluate the performance of the protocol, considering costs and security.
Gornals et al. (Fri,) studied this question.