19

I'm looking for the name of a concept that works as follows:

  1. I post a hash of a file publically e.g. on Twitter
  2. Whenever needed, I provide the file with the contents that make up the given hash

The purpose is maybe to proof ownership or otherwise proof that something was known to me in the past before it became public.

Knowing the name will enable me reading more about it.

4
  • That concept looks like a simple verification, the only new step that I see is that you are using twitter as proof of the content of the file via hash if I understand correctly. Basically you rely on twitter that nobody can change the message that contains the hash that you publish on twitter, and you trust security measures of twitter on the basis that nobody can modify that message.
    – camp0
    Aug 18, 2022 at 13:00
  • @camp0: that's one thing why I want to read more about it. Potentially one would better post the hash on 2 platforms of different vendor to make it harder for a hash to be compromised or deleted. Aug 18, 2022 at 13:39
  • Related: security.stackexchange.com/questions/220247/…
    – mti2935
    Aug 18, 2022 at 15:16
  • If you want to prove that you had the file in the past, you don't just need to worry about someone else compromising the hash you published, you need to make sure you can't edit the publication later either (at least not invisibly). Why would anyone trust your "proof" that you had this file earlier if you could potentially have updated the hash? I wouldn't necessarily trust Twitter itself for this purpose, but maybe the fact that other independent parties might have made copies of your original tweet and could spot if it was altered.
    – Ben
    Aug 21, 2022 at 2:44

5 Answers 5

34

To me this sounds like a commitment scheme:

A commitment scheme is a cryptographic primitive that allows one to commit to a chosen value (or chosen statement) while keeping it hidden to others, with the ability to reveal the committed value later

...

Interactions in a commitment scheme take place in two phases:

  1. the commit phase during which a value is chosen and committed to
  2. the reveal phase during which the value is revealed by the sender, then the receiver verifies its authenticity

You can see this term being used by several of the answers to this question, for example.

0
20

This makes me think about time-stamping service (see RFC3161).

A time-stamping service supports assertions of proof that a datum existed before a particular time.

12

This idiom is called dropping a hash by Patrick McKenzie, who uses the technique frequently.

1

another option thats similar to the situation you describe could be the idea of a "zero knowledge proof". These are essentially ways to prove to someone else that you know something without revealing the contents of what you know. in your example you eventually do reveal the contents so im no

0

This sounds like it could be a “proof of existence” method. Since data inside of a blockchain is verifiable using the the uniqueness characteristics of hash functions, over time, many users of the Bitcoin Blockchain have embedded all sorts of messages and content directly inside the blockchain, often times in order to prove the existence of something in a decentralized and censorship-proof way.

0

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .