Fairness implies that the participants finish the transaction for transferring eCoins in a fair state. Fairness (simplified) happened if after the transaction both payee and payer got what they want or none of them got any payment and receipt at all. The fairCASH-way of how this gets achieved is called delayed-true-fair. The 'delayed' comes from the fact that the fairness recreation is done later, separated from the transfer protocol through the mechanism of affidavits, ‘true’ indicates the feature of revocability and generatability with unconditional non-repudiation.
Affidavits are vouchers in form of attestations for an external arbiter (eMint) to be exchanged for new value (eCoins). fairCASH uses this mechanism to compensate a party with a fairness deficit to recreate fairness. Affidavits are similarly constructed as eCoins, however lacking the property of "transferability".
It is proven impossible to conduct true fair exchange without a Third Party (TP). In our case, this is reduced to the recovery procedure for the reacquisition of lost eCoins only. In case of faultless exchange, our protocol does not involve any TP.
Our overall fairness strategy adapts the following basic approach:
SUCCESS: Both peers exchanged their eCoins against a receipt. No TP gets involved, a simple P2P off-line connection is sufficient.
FAILURE, NO LOSS: No eCoins are exchanged for none of the peers or gone lost. A hardware-based auto recovering inside the eWallets takes place using rollback capabilities to restore internal states. No loss for both, also none TP involvement.
FAILURE, WITH LOSS: eCoins are destroyed, an inconsistence constellation - potentially causing a dispute - happened, fCCP fails. This is the most interesting case. eWallets with a loss generate locally non-repudiation evidence information that has to be forwarded to the eMint for resolve and fairness reconstruction.
eCoins have to stay clandestine and unique, even during transportation. This simple fact limits our possibilities in the case their transportation fails. Due to the inevitability of loosing messages, our underlying strategy is compensation for loss. This can be also regarded as method of 'error correction' for value transmission errors over unreliably message channels. If something went wrong, we cannot reiterate the transmission across the channel. This is the main reason why we need a system immanent ‘error correction’ solution to handle lost eCoins.
If in rare cases the failure is not recoverable with the local (knowledge) resources of a single party, then, regarding our heuristic policy 'no profit from any failure', the affected eCoins are "controlled annihilated". Our protocol creates an acceptable proof (affidavit) for an external arbiter (eMint) to auto-resolve the dispute later assuming there is then a reliable communication channel. The recovery phase is not a part of our P2P transfer protocol. Nevertheless, all of these disputed actions can be done automatically without any user involvement.
Formally, this is referred and known in computer science literature as "distributed atomic commit protocol" for fair exchange transmissions of the type "abuse-free", however with a small enhancement: Due to the fact, that our fairness reconstruction is not done during the teleportation protocol itself, such a single transfer can end 'unfair'. However, we created an environment able to postpone fairness through the further usage of the system. This guarantees the ability to restore fairness as soon as the TTP (eMint) can be contacted and is regarded as late fairness or as 'delayed-true fair exchange'. As a specialty of our implementation the anonymous transfer is done by a P2P based sealed hardware approach for minimizing TP usage.
Applying to the directive 'pacta sunt servanda' fairCASH provides delayed-true fair exchange of a payment for a receipt under the circumstances contemplated by the above facts.