  In a decentralized environment, exchanging resources requires users to
bargain until an agreement is found. Moreover, human agreements involve a
combination of collaborative and selfish behavior and often induce circularity,
complicating the evaluation of exchange requests. We introduce MuAC, a policy
language that allows users to state in isolation under which conditions they
are open to grant their resources and what they require in return. In MuAC,
exchange requests are evaluated automatically with the guarantee that the only
exchanges that will take place are those that mutually satisfy users'
conditions. Moreover, MuAC can be used as an enforcement mechanism to prevent
users from cheating. As a proof of concept, we implement a blockchain smart
contract that allows users to exchange their non-fungible tokens.
