Saturday, May 19, 2007

Social policy bonds

Two earlier posts (one on DRM, the other on amortizing development cost) deal with cases where today's free market does a poor job of compensating somebody for something of value. I think these are what economists might call "missing market" problems -- it's not that a free market couldn't work in this situation, it's simply that we don't have the right market mechanisms in place yet.

One more approach to the missing market problem is the social policy bond, invented by New Zealand economist Ronnie Horesh. It works a bit like the X Prize or the Methuselah Mouse Prize, in that when something good is accomplished, somebody gets money. But with the X Prize, all the money goes to the winner (in that case Burt Rutan, who won the prize in 2004 flying SpaceShipOne), and none goes to the runners-up, or to the subcontractors who helped the winner win. The incentives in a one-winner prize therefore punish anybody who doesn't win.

Social policy bonds spread the winning money more fairly. Everybody who puts in time or money can get something back. In Horesh's vision it works like this. A deep-pocketed government announces that attaining some goal is a desirable social good. Tax money is put aside to bring about that goal in an economically efficient way. The government prints bonds which are redeemable for some large-ish amount of money when the goal is accomplished, and sells those bonds at a lower price to anybody who wants to buy them. The free market does the rest -- compensations will arrange themselves so that people work toward bringing about the goal, so that they can collect on the redemption of their bonds. People who would be potential prize winners (if the government were using a prize) can use the bonds as loan collateral to pay subcontractors.

This strikes me as a brilliant idea, although Horesh recognizes a potential free-rider problem with the scheme. When social policy bonds have been used in real life a few times, we'll have a better idea how big a problem that will be.

I like the idea that a social policy bond could be issued not by a government, but by an individual or private organization. There are two potential problems. One, an individual can't command the huge sums of money that a government can, so it might take thousands or millions of people each issuing privately-backed bonds to make something happen. Two, the issuer of a bond needs to have people believe that he/she/it will make good on the redemption, and there isn't an obvious mechanism how an individual can do this. Maybe there is some trustworthhy organization (like a bank? or Lloyd's of London?) that could hold the money in escrow. I've discussed the notion of privately-backed social policy bonds with Horesh in email, and he feels these two problems are prohibitive, but I still think it's worth a shot.

Monday, May 07, 2007

Anonymous e-cash

I once interviewed at a place called NTRU Cryptosystems. They have a very fast public key algorithm suitable for implementation in slow, memory-limited embedded systems. One of the interesting aspects of their algorithm is that creating public/private key pairs is a very quick operation. If you've used PGP or GPG, you've probably noticed that with traditional RSA, the key generation process is annoyingly slow. Recalling that cryptography's version of a person's identity is a private key, this made me think about what might be possible if key generation were a very inexpensive operation, and what you get is a kind of anonymity that could make electronic cash work really well. But you don't really need fast key generation. You can set up your home computer to generate many key pairs overnight, and save them all on a USB flash drive for use the following day.

How do you get from plentiful key pairs to anonymity? You start a bank that accepts public keys as proofs of identity, and therefore associates accounts with public keys. The bank does not ask a client for any identification other than a public key. The bank allows the money to be withdrawn by any party who can prove ownership of the public key by using the corresponding private key to sign documents, which signatures the bank can verify using the public key. The bank will transfer the money to the ownership of a different public key, given a digitally signed transfer request from the original holder. The transfer document could be presented in email, which could be routed through any number of anonymous remailers.

If I wish to transfer anonymously, I can send the bank a series of emails transferring the money from one identity to another, each identity represented by one of the key pairs I generated last night. Going through several anonymous identities provides plausible deniability that I still have the money.

All it takes to create such a bank is to set up a database that associates public keys with cash balances, and a website that performs redemptions and transfers as discussed above. One would want to locate the bank in a country or region with a favorable tax and regulatory climate.

Thursday, May 03, 2007

6.432, one of my favorite MIT courses

MIT has put the materials for 6.432 online. This is a BRILLIANT course. It covers the application of Bayes' theorem to a wide variety of problems in engineering and communication. It explains a lot of the math behind radar, and those wierd noises that modems make. I really want to say more about this but presently I don't have the time to do justice to just how cool this stuff is.

Hmm, as I quickly review the notes they've posted, it looks like they didn't actually put up the real contents of the course. I've started assembling some notes in a user page on Wikipedia, and I hope they will eventually address the pieces that are missing.