For those who care, I've added a little docco to Lucre. Here's the explanation of the executable demos. Also available is the theory, such as it is (check out the CVS for that, or shout at me). bank-new <key length> <bank private file> <bank public file> Create a bank. The stuff you should guard with your life is added to <bank private file> and the stuff you can give to Joe Public ends up in <bank public file>. coin-request <bank public file> <coin private file> <coin request> Create a coin (or at least, a request for one. What is sometimes known as a protocoin). The <bank public file> is the bank info generated by bank-new. The <coin private file> is the bit that will be worth money once the bank has signed stuff. The <coin request> is what the bank will sign. bank-sign <bank private file> <coin request> <coin signature> Having received a coin request, the bank signs it (after due deliberation, of course). Here's how it does it. <coin signature> is what you send back to the victim, err, customer. coin-unblind <bank public file> <coin private file> <coin signature> <coin> Now that the bank believes we are worth something, we've got a <coin signature> back from it. Here's how we convert that, plus other bits, to an actual blinded <coin>. bank-verify <bank private file> <coin> Naturally, a <coin> is worth nothing unless the bank will stand behind it. This is how you check the coin isn't crap. Cheers, Ben. -- http://www.apache-ssl.org/ben.html "My grandfather once told me that there are two kinds of people: those who work and those who take the credit. He told me to try to be in the first group; there was less competition there." - Indira Gandhi