Introduction to fair exchange
 The challenge with fair exchange is to 
 develop protocols that can help two (possible more) participants
 to exchange items fairly. 
 
 Fair exchange is a fundamental distributed system problem that 
 repeatedly manifest itself in several practical applications
 such as online business transactions. For example, Bob 
 is willing to give money (payment) to Alice in return for an 
 item. Naturally, Bob should not give his money to Alice if he does 
 not receive Alice's item; neither Alice should give her item to 
 Bob if she does not receive Bob's money.
 
Definition of fair exchange
 To generalise and understand the difficulty, imagine
 that Alice and Bob are in posession of items
 IA and IB respectively and
 that they wish to swap them. Upon completion
 of a fair exchange protocol, either the two items
 change owners or, if the protocol is aborted, none of
 them does. 
 
 
 Fair exchange protocols are needed in
 several practical applications. In online business
 IA can be an item sold online and
 IB can be Bob's payment; similarly,
 IA can be a document and  IB
 a delivery receipt. Take another example, IA
 and IB can be, respectively,  Alice and Bob's 
 covid certificates, that they agree to exchange before
 meeting up for coffee.
 
Limitations of existing fair exchage protocols
Protocols that have been suggested in the literature share a serious inconvenience: they rely on Trusted Third Parties (TTP) to resolve potential disputes. The protocol that we are developing (Fair Exchange Without Disputes, FEWD) is capable of avoiding the emergence of disputes, notably, without relaying on traditional TTPs. Instead of involving a traditional TTP and suffering from all the invonviniences that they inevitably introduce, FEWD uses two pieces of trusted computing environments (one for each participant) for exacuting highly sensitive operations such as deposit and release of items.
Fair exchange and cheri capabilities
We believe that these trusted execution environments, that we call attestables, can be implemented as compartments based on cheri capabilities.