I have a supply chain scenario in which I'd like to track the transfer of an asset between multiple parties. The main reason for doing this is to ensure that I can track the location of the asset and to know who to blame in case the asset is lost or stolen.
So I have two main problems:
- The representation of the asset. For example, Party1 issues an asset and sends it to himself to signal that he is the current owner.
- Ensure the validity of a transfer. Party1 now wants to send this asset to Party2.
For problem 1, I suppose simply using the asset API will fit my needs. In this case, I simply creating 1 unit of the asset and preventing more units from being created will be enough.
However for problem 2, I need to prevent invalid transfers. For example, I would like to allow Party2 to confirm that it really received the asset before the transaction is closed, otherwise Party1 could send the asset to Party2 in the blockchain while keeping possession of it in the real world, and then Party2 could be accused of stealing the asset. Any suggestions for solving problem 2?