Computing acoustic fingerprint in a distributed manner without exposing the whole file to any participant

98 views Asked by At

Let's say I have an audio file foo.wav on which I would like to compute the Acoustic Fingerprint Fingerprint(foo.wav):

I have n un-trusted, non-colluding participants in the computation which cannot see the whole of the file, only small blocks. I would like each of them to compute a little piece of the fingerprint and then combine the results to get the final fingerprint, such that I can prove to any one that this is the correct fingerprint of foo.wav without ever exposing the whole file to anyone.

Is is possible to achieve using cryptographic tools (hashes,encryption,blockchain)?

1

There are 1 answers

2
VincBreaker On

Having such a distributed fingerprint isn't that hard:

  1. Divide the message (your file into n parts)
  2. Calculate the checksum (hash) of each part
  3. Append all the hashes to one long string and hash it, this is your fingerprint

The participiants each receive one part and the final fingerprint

  1. Everyone calculates the checksum of his part
  2. The participiants exchange these checksums in a way you can't affect (maybe peer to peer network)
  3. They append the checksums in the correct order and hash it

Now they can compare the fingerprint they calculated as a network with the fingerprint you provided earlier and can ensure that you know the whole message without them knowing more than one part of it as long as they don't exchange they're parts.