[cap-talk] IOU Protocol

Toby Murray toby.murray at comlab.ox.ac.uk
Fri Jan 9 05:19:46 EST 2009


Hi all,

I've been looking into the IOU object-capability protocol recently. In
particular, I've read the description in 

"Credit Transfer for Market-Based Infrastructure" by Tyler Close, from
the Financial Cryptography '06 Conference. 
http://www.springerlink.com/content/3r80k833638m47n3/

This paper has been really useful in understanding the overall structure
of IOU but it doesn't provide any details about how one normally
implements it in an object-capability system. The associated HP Tech
Report [1] that is the full-length version of the paper above provides
no further guidance on implementation.

The current E distribution includes an IOU implementation as part of the
DonutLab [2] code in com.hp.donutLab.makeIOUIssuerAuthor [3]. This
implementation seems to be cluttered, however, with donutLab extras
(like lamportSlots and other such things beyond my comprehension) that I
presume are not a necessary part of an object-capability IOU
implementation.

Is there a "reference" implementation for IOU anywhere? Is there e.g. a
Joe-E implementation, which would presumably be simpler than the
DonutLab one in E? I've not found one looking through the current
Waterken server distribution.

Any pointers or descriptions along the lines of "here is the general
idea about how to implement this protocol using object-capability
primitives X, Y and Z (e.g. Sealer-Unsealers or whatever)" would be very
much appreciated.

Cheers heaps

Toby


[1] http://www.hpl.hp.com/techreports/2006/HPL-2006-5.html

[2] http://www.erights.org/smart-contracts/donut-lab/

[3]
svn://svn.synchrona.org/erights/e/trunk/src/esrc/com/hp/donutLab/makeIOUIssuerAuthor.emaker




More information about the cap-talk mailing list