This is done by using a one-way function to change a string into a hash. This is called the "commit phase". Later, if someone needs to prove that they were the one who made the commitment, then they can tell people the original string they used. This is called the "reveal phase".