Consider the following scenario

User A stores an image on a DHT and receives a SHA-256 hash in return.

User A wants to prove ownership of the data has, so he registers a username on the namecoin blockchain and receives a public-private key pair in return.

User B want proof that user A owns the DHT hash.

2 Questions

  1. How does User A 'sign' the DHT hash with his namecoin private key?
  2. How does User B get proof that User A signed the DHT hash with their namecoin private key?

closed as off-topic by Andrew Chow Jul 17 at 20:55

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions about cryptocurrencies or projects that are not Bitcoin, and are not applicable to Bitcoin, are off-topic. For more information, see this meta-discussion." – Andrew Chow
If this question can be reworded to fit the rules in the help center, please edit the question.

  • How do you prevent people from claiming ownership of hashes of data that they don't own? – Nick ODell Feb 27 '15 at 8:24
  • by signing it with your namecoin private key – guestdude Feb 27 '15 at 8:46
  • But anyone who has the hash can sign it. For example, following the exchange you describe, User B has a copy of the hash (he had to, in order to verify the signature), and now he can sign it himself and try to convince some User C that the data actually "belongs" to him. – Nate Eldredge Feb 27 '15 at 14:48
  • The only way you can do something like this is if you keep the data AND sha256 secret. You could maybe make the sha256 into the private key for the secp256k1 curve and only publish the public key (output point on the curve). Then you can prove that you own the data that hashes to the private key by signing with it. Of course, once you actually reveal the data, everything is now known to the world, so I'm not sure what you'd accomplish. In any case, the objections above hold. Unless you keep the hash secret, your scheme won't work. – Jimmy Song Feb 27 '15 at 16:52