For a confidential blockchain, suppose there are three people which join a series of transactions. To hide the number of transactions among them, they need to do some dummy transactions. Suppose the IDs of real transactions (generate by one of the three join people) is in order and the IDs of dummy transactions are random numbers, and they must be indistinguish (other people in the network may know the rule of order of real transactions). So we need to encrypt the ID. However, if we want to store neither the encrypted transaction IDs nor the IDs or PKs of the other two people in these transactions. All I know are ID of one transaction and my PK/SK, how can I use ID to get encrypted ID, then use this encrypted ID to get the transaction information (not store in local, other two people also need to get the transaction by the encrypted ID even the ID is nor generated by them)? Is there any ciphers can meet this? Thank you.

  • In case you didn't knew this already: There is a cryptocurrency called Monero, it even has its own SE Forum. Maybe this meets your criterias. – AleksanderRas Nov 28 at 8:15
  • Encrypted ID with random / in-order IDs is not the only solution for hiding the number of "valid" transactions. It might be reasonable to create perfectly valid zero-value transactions, hiding value, in Zcash "notes". – Vadym Fedyukovych Nov 28 at 11:31

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Browse other questions tagged or ask your own question.