I have a use case where multiple parties need to generate a same ID based on trade details. However, there could be multiple trades with the same details and timestamp seem to be the only variable. The problem of timestamp is that it can only be generated by one party then shared with the other parties to consume.
Is there are way all parties could generate the same random number to use in generating the same ID based on trade details?
Some leads that I've considered - distributed/parallel random generator, nonce, google authenticator and related APIs.
Picking your brains on any means to generate a non-repeating, common yet unique number by multiple parties, preferably without going through internet (other solutions that seem to require a common network).
Update
I have a partial solution, but that is no longer stateful. Each trade party will keep a ledger keeping count of the contracts with different parties. So each time there is a trade, both sides would increment their counters of each other by 1. That number would be a representation of how many trades both parties have done, and that can be used as the unique salt. This allows both parties or multiple parties to generate the same hash with trade details and salt in different networks.