Arising from my interest in impulse control, hyperbolic discounting, and will power I have been nursing an interest in how people enforce their personal rules. Say you wish to promise to go to bed at 10pm, or not to drink before 5pm, or to save 10% of your income, or call your mom once a week what tools exist to help you keep those promises. The literature highlights the amusing point that you can’t write contracts with your self as the counter party and then expect to have recourse to the courts when you break those contracts.
If you keep your eyes open you will notice assorted tools for self binding. To do lists, reminder services, and date books are simple examples. There are software applications that will lock out your internet access. There are savings plans that include a penalty for early withdrawal. In Arizona you can sign onto a list that requires the casino to deny you access.
Some of the promise keeping aids involve enlisting a third party. There is a horrible scheme that addicts fall into where they enlist a friend and license him to punish them in some awful manner if they break their promise. For example they might write a letter which will ruin their professional life if revealed and then give it to the third party. Once you introduce the third party there is all kinds of risk for abuse. The third party might extract a promise from a victim during an irrational moment by coercion. A light weight example of that is how the salesman at the health club pressures customers into signing up for a subscription. And then, there are chastity belts.
Some of these promise or binding technologies are designed to remove the temptation entirely. For example: living in the dry town, never buying the liquor, and avoiding the pub. And those come in degrees – for example moving the ice cream to the back of the freezer.
I’ve been stewing on what might be the lightest weight service a third party could offer to help individuals with this class of problems. And I have a theory. It’s based on the time-lock example used for bank vaults. In that case the bank want’s to remove any possibility of opening the vault for some period of time – usually while the bank is closed. While obviously the bank’s intent is to keep criminals from stealing their money they actually promise not to open the vault under any circumstances. They are self binding. They could of locked the vault with a one time password and given it to a trusted officer of the bank. They don’t trust themselves. Apparently the only thing they trust is the people who built the vault. It’s interesting that if you look at pictures of these time locks they are usually in transparent cases so anybody can visually inspect the mechanism. They are over engineered and simple which encourages that inspection.
Say you wanted to lock up a present for christmas day. You put it in a safe, put it under the tree, and christmas morning you hand the key to the recipient. But what if you want to wrap up a present for yourself and you don’t trust yourself not to open it too soon. Now what? You could ask the help of a friend, but that’s got other complications. Can you solve this problem without a third party? You could if you could buy a time-lock. I’d love to know of a vendor. I’ve not found one. I find that bizarre; surely there are lots of people who’d like to lock things overnight etc.
Anyhow, I’ve built one for you. It’s based on a bit-o-crypto. You lock up things up by encrypting them, and later when the timer runs out you can decrypt them. Frustratingly this does involve a third party, my little service. You get the means to encrypt by going to the service, and later once the timer has run out, you go back to get the means to decrypt. This depends on public/private keys. You use the public key to encrypt and the private key to decrypt.
For example say you want to make it much harder to play that damn addictive video game until next tuesday. You go grab the public key for next tuesday and lock away the damn game by encrypting it. Next tuesday, or sometime after, you go grab the private key and decrypt the stupid game.
Of course this requires that you trust me to keep the service running and not loose the keys it gin’d up. I wouldn’t recommend trusting me, yet. For example I really haven’t tested it much :).
Here’s the service http://hang-on.appspot.com/. I’d love to hear suggestions for things to do with this, or ways to improve it.
Here’s an alternative that doesn’t depend on a third party: Once you’ve encrypted the stuff you want to keep safe, you keep only a part of the private key. The more bits you keep (or the more CPU power you have), the faster you can get your data back through brute force.
Oh – neat – that’s sort of like putting the ice cream at the back of the fridge. There are some amusing examples of people addressing the temptation problem by making it tediously difficult like your example.
Similar to Jukka’s suggestion, I’ve seriously considered patching libc to blacklist time-wasting hostnames. It takes a bit more effort to reverse than changes to /etc/hosts.
I think this is an awesome idea. Your site could use a faq/tutorial section to remind me how to encrypt/decrypt my stuff.
I once encrypted my IM client in college and had my friend choose the password and promise to only reveal it to me after I’d finished my term paper.
This comment really isn’t about your service, but about the entire idea of self binding. I struggle with this myself all the time… I can’t decide whether it’s better to create a system to try and force myself to do the things I want to do, or rather to work on my will-power and just do them. I have this vision of turning myself into a robot, and while I know that is crazy, I find the structure/flexibility trade-off difficult. Any insights here? Readings you’d recommend?
Brendan – Oh hacking base libraries, sneaky. Fun. There is an app for the mac Mac Freedom that locks out the internet entirely for a period. Don’t tell, but it tinkers with the firewall. I use it.
Cory – I love it when people admit to the tricks they use for this stuff, thanks!
Your right, some tutorial stuff would be good.
Tyler – My favorite book about this is Anisle’s Breakdown of Will. It’s a bit dense, but short. If you click on the will power link at the top you can read my other postings on the topic and I’ve got a little half formed wiki of notes.
Funny that you should mention the robot thing. He actually talks about a syndrome where people get extremely good at the self control thing, but they loose all spontaneity and hence much of the joy in life is drained away.
For the encryption key, if there is a good reason to get it back earlier, you can enlist your friends to help (cf the TI calculator key). But if not, your friends will (hopefully) refuse to help.
I notice that Google retired the service(s) that my hack depended on. Oh hell.