Wallets

ISPs, ASPs and Harry will not be able to work together without money.

A wallet is service representing a money-holder. Harry's netlets can carry their own wallets to pay for the services they use. For Harry's game netlet to pay, say, a database netlet:

  1. Harry's game netlet generates a warrant from its wallet. Since it is its own wallet it is permitted to do this. The warrant is for the right kind and quantity of payment needed.
  2. The game netlet passes the wallet warrant to the database netlet.
  3. The database netlet passes it to its own wallet.
  4. Recall that a warrant is a pass card to use a service in a particular way. This warrant is a pass card to extract a certain kind and quantity of payment. The database's wallet shows the warrant to the game's wallet, saying ``Look, I have permission to take this much money from you''.
  5. The game wallet and database wallet perform the money transfer.
The actual mechanics of the payment (step 5) are left to the wallets, leaving the applications (the game, and the database) to get on with their main jobs and, more importantly, wallets only need to trust each other, not the service they are paying for. All this is illustrated in Figure [*].

Figure: Harry's game netlet (top left) needs to buy services from a database (top right). Each has its own wallet netlet, which is their access to a banking service. To pay for the database Harry's game netlet takes a warrant from its wallet which allows access to an agreed sum. This is eventually passed back to the same wallet which then realises the payment can be settled with whatever presented it--in this case the database's wallet. Each step in the warrant's journey represents a trust relationship, which is why the wallets cannot talk directly at once. In this example the two wallets are part of the same service from the same bank, so the transaction is a simple money transfer from one account to another. However, in practice the mechanism used is entirely up to the wallet creators.
 
\resizebox*{0.6\textwidth}{!}{\includegraphics{images/wallets.eps}}

In reality a wallet would be implemented by a bank, while being carried by a netlet. This means:

Note also that wallets (and warrants) are not tied to any particular business models. This is completely at the discretion of the service providers and consumers.

Nik Silver 2001-10-15