Selling timestamps (via payment points and scalars + Pedersen commitments ) [try2]



Summary:

The author, a high school student, has come up with a solution to timestamp messages on the Bitcoin blockchain using a Pedersen commit. If multiple messages need to be timestamped, they can be aggregated in a Merkle tree and charged relatively low fees per message. However, if only one message needs to be timestamped occasionally, relying on free services or paying high fees is necessary. The solution proposed involves buying a place in a Merkle tree "risk-free." To do so, the user sends the hash x of their message to the timestamping server, which then calculates a Pedersen commit, builds a Merkle tree with other commits in it, and publishes a valid transaction containing the Merkle root to the Bitcoin blockchain. After a certain number of block confirmations, the commitment C is confirmed as part of the Bitcoin blockchain, and the user sends a lightning payment with C-x*H=r*G as the payment point to the timestamping server. As proof of payment, the server must reveal r to receive the money. This scheme shifts the risk of a timestamping service from the buyer to the seller, who will most likely charge a small fee upfront. While this introduces an additional security assumption to Bitcoin timestamps, if the discrete logarithm is broken, Bitcoin has bigger problems than broken timestamps.


Updated on: 2023-06-02T20:25:38.256958+00:00