[tahoe-lafs-trac-stream] [tahoe-lafs] #1408: accounting using bitcoins

tahoe-lafs trac at tahoe-lafs.org
Mon May 23 12:14:01 PDT 2011


#1408: accounting using bitcoins
-------------------------------------------------+-------------------------
 Reporter:  davidsarah                           |          Owner:
     Type:  defect                               |  somebody
 Priority:  major                                |         Status:  new
Component:  code                                 |      Milestone:
 Keywords:  bitcoin accounting performance       |  undecided
  leases security                                |        Version:  1.8.2
                                                 |  Launchpad Bug:
-------------------------------------------------+-------------------------
 A [http://forum.bitcoin.org/?topic=2236.0 post on the Bitcoin forum]
 pledges a bounty to:

 > Create an accounting system that will incentivize people to contribute
 HD space and make it easy to pay bitcoins for storage of data.

 Presumably, this would involve a storage client being configured with an
 URL for a Bitcoin [https://en.bitcoin.it/wiki/API_reference_%28JSON-RPC%29
 JSON-RPC API] server, which implies access to a Bitcoin
 [https://en.bitcoin.it/wiki/Accounts_explained account]. When it needs to
 send a share to a particular server or renew a lease on that server, it
 obtains the server's Bitcoin address and sends payment to that address
 using the API. (Alternatively, it has already sent payment and the
 transaction deducts from the amount it has prepaid.) The server similarly
 has an account and verifies that it has received payment before storing a
 share, or considering a lease to be renewed.

 Open questions:

  * who/what decides the rate at which bitcoins are used to pay for
 storage? (Perhaps each storage server can advertise its own rate, and that
 is one input to a more sophisticated server selection algorithm? But that
 sounds conplicated for an initial implementation.)

  * can a client verify that a server is upholding its storage contract,
 rather than just sending money and trusting the server?

  * are payments bound to particular transactions (storing a share or
 updating a lease), or are they bound to a connection between a storage
 client and server, and valid for any transaction on that connection?

  * how can the accounting system be made general enough to accomodate
 bitcoins and other likely accounting schemes, without being
 overcomplicated?

  * how do the Bitcoin-related operations affect performance?

 The Python-BitcoinRPC library is [https://github.com/jgarzik/python-
 bitcoinrpc here]. (Sigh, yet another dependency.)

-- 
Ticket URL: <http://tahoe-lafs.org/trac/tahoe-lafs/ticket/1408>
tahoe-lafs <http://tahoe-lafs.org>
secure decentralized storage


More information about the tahoe-lafs-trac-stream mailing list