Tweetstamp.org Use OpenTimestamps for Tweets Against the Bitcoin Blockchain
Tweetstamp.org is a twitter bot that uses OpenTimestamps to append the hash of a tweet to the bitcoin blockchain.
A timestamp proves that a message existed prior to some point in time; timestamps are occasionally referred to as “proofs-of-existence”. Being able to prove that data existed prior to a point in time is surprisingly useful.
Peter Todd’s announcement on OpenTimestamps gives a clear explanation on the uses of a trust-minimized timestamping infrastructure. For more info check out lopp.net/bitcoin Data Anchoring section.
Anyone can Inspect Element to edit and take a screenshot of the hot takes found on twitter dot com. Screenshots should not be trusted, yet are sometimes the only thing people will see in a viral tweet. With tweetstamp.org, I hope to provide people with useful data on the existence of a tweet.
My philosopy for creating this service:
- Everything you post online is permanent. No backsies.
- Tweets are becoming more significant in importance than ever before in all fields.
- Deleted tweets and the act of deleting a tweet can be considered more important in context.
- I want to preserve the tweets I really like forever even after deletion, removal, or author suspension and then reference them in the future.
Here are just some of my favorite tweets that would a tragety if they were lost.
"im not owned! im not owned!!", i continue to insist as i slowly shrink and transform into a corn cob
— wint (@dril) November 11, 2011
First we will restore sound money.
— Michael Goldstein (@bitstein) May 10, 2018
Then we will restore the American West.
A Bitcoin carnivory future awaits us. pic.twitter.com/6xdMg3W9eK
Joke: political correctness
— Jameson Lopp (@lopp) April 1, 2018
Woke: critical thinking
Bespoke: using political incorrectness to trigger critical thinking
Give it a try
This app definitely needs some real world stress testing so I can see the limits of the Twitter Webhook API and any bottlenecks within tweetstamp. DM @tweet_stamp with the link of the tweet you want to stamp or reply to a tweet you want stamped by mentioning @tweet_stamp and the keyword stamp.
Balancing the replying rules was a challenge I noticed right away after the announcement tweet. I initially setup the reply logic so that tweetstamp would respond if it was the only mentioned user in a reply. This is to prevent unintentional stamping of every tweet in a thread and to also not clutter peoples mentions. The problem is most people don’t do this so I added the rule where you have to use the keyword stamp (demo) so the user is explictly requesting engagement.
In Development
Ideal would probably be to have a bundle of the tweet text and any images etc. Run sha256sums over that, then PGP sign the sigests and timestamp the signature. Finally, put it all in a zip file to download.
— OpenTimestamps (@opentimestamps) February 24, 2019
I wanted to put out something simple and working to then iterate on. This tweet above is one of the many things I want to add like:
- Tweet deletion detection
- Automatically render a screenshot from the status page of a tweet on twitter.com
- Relay media content within a tweet to archiving services.
- (Broader Idea) Enhance Your Twitter archive so a user could upload their data and have it all stamped.