[eng] Contract signing is a fundamental security service for both business and personal transactions. One of the essential properties of contract signing protocols is fairness. Numerous electronic contract signing protocols have been proposed, typically involving a Trusted Third Party (TTP) to ensure fairness and resolve any conflicts between the involved parties. Efficiency is another critical feature of these protocols, often measured by the number of steps required to complete the contract signature. According to the literature, the minimum number of steps required for signing a contract among n parties is 3(n − 1). This document introduces an innovative contract signing protocol for two signers that reduces the number of steps needed for a fair contract signature to just two: the proposal of the signature and its acceptance. This two-step protocol guarantees fairness and confidentiality, along with several other notable features. The two-party contract signing protocol is made possible by the use of a special type of token, a rejectable non-transferable nonfungible token, named RejSBT. Furthermore, with the integration of blockchain technology, our protocol eliminates the need for a TTP, which is typically required in other electronic contract signing protocols.