[foaf-dev] A FOAF 2 FOAF (micro) payment system

Melvin Carvalho melvincarvalho at gmail.com
Sat Jul 24 14:02:01 CEST 2010


Introduction
===========

I would like to propose a simple FOAF 2 FOAF payment system, also describing
a reference implementation.

The system should be as easy as typing on the command line :

$ pay toby 1.23

>> Processing ...
>> Payment Successful!  $1.23 has been paid to Toby Inskster


Design
======

1. For this exepriment I'm going to use FOAF / WebID [1] as the primary key,
and bitcoin P2P crypto currency [2] as a reference payment system.

2. Setup: the system will have your WEBID set as an environment variable,
and also the bitcoin payment system running on your machine

3. A command script pay <recipient> <amount> will invoke a script that will
continue processing

4. Recipient is checked against entries in your foaf:knows via sparql.  It
can be a webid or a partial name match.

5. Once the recipient webid is known a payment system is looked for via
SPARQL.  Here is a proposal of how bitcoin will look:

  <rdf:Description rdf:about="http://foaf.me/melvincarvalho#bitcoin1">
      <ns0:accountServiceHomepage
               rdf:resource="http://www.bitcoin.org/"/>
      <ns0:accountName>1J4F6Beb2zFSuoyj15mdhw3HA7KkEVa8DS</ns0:accountName>
  </rdf:Description>

6. SPARQL for the account name and use that as the payment address

7. Run the payment command such as ./bitcoin sendtoaddress
1J4F6Beb2zFSuoyj15mdhw3HA7KkEVa8DS <amount>

8. Report success / failure


Extending the system
=================

I think this system would work fine for FOAF using the bitcoin system.  But
further work could be to extend to other payment systems and delivery
mechanisms.  For example, email, much like paypal do.

I'd encourage FOAFers to play around with bitcoin, and I'm very happy if
anyone wants to experiment further with this tech.


[1] http://esw.w3.org/WebID
[2] http://www.bitcoin.org/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.foaf-project.org/pipermail/foaf-dev/attachments/20100724/796fe0ce/attachment.htm 


More information about the foaf-dev mailing list