Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: remmy on September 15, 2011, 06:13:15 PM



Title: Bitcoin Protocol Extension For Credit
Post by: remmy on September 15, 2011, 06:13:15 PM
Bitcoin may be able to incorporate a simple credit system using only a couple of new messages.

1. Announce Credit.

Each Bitcoin client generates a private credit key for signing IOUs, and a public key for accepting credit.  A credit announcement might look like this:

Code:
{
    key MyPublicKey
    key YourPublicKey
    uint64_t Amount
}

Signed by MyPrivateKey

This would replace all previous credit announcements between MyPublicKey and YourPublicKey.  It would be broadcast in the same way as transactions, and included in blocks (you could attach a fee to a credit announcement as an incentive to miners).

2. Use Credit

When you want to use some credit you find a path through the announcements you have collected, and build a credit transaction.

Code:
{
    var_int Length
    key MyPublicKey
    key ChainPublicKey1
    key ChainPublicKey2
    ...
    key ChainPublicKeyN
    uint64_t Amount
}

Signed by MyPrivateKey

When a use credit is found in a block, the announcement table is walked to ensure that enough credit exists along the chain and that the keys match.  Again, a fee is attached to use some credit as an incentive to include these items in a block.



Title: Re: Bitcoin Protocol Extension For Credit
Post by: casascius on September 16, 2011, 04:40:34 AM
You could start a new blockchain for this.  You will probably find that most people will consider this to be junk in the block chain.  There are many things that could be integrated into the Bitcoin block chain but most of us see a value in keeping it as simple and to-the-point as possible.  It's a payment system.  Nothing more.

This was discussed when others were proposing that DNS information could be registered in the Bitcoin block chain.  The result was the creation of the (separate) Namecoin block chain.


Title: Re: Bitcoin Protocol Extension For Credit
Post by: remmy on September 16, 2011, 11:55:17 AM
Namecoin mining ground to a halt due to being independent.  The blockchain protocol is not very good at handling large drops in demand.  I have about "merged mining" which essentially adds only a tiny bit of junk into the bitcoin blockchain in order to facilitate piggybacking off the hashing power of the network.

That leads me to the idea of creating a master block chain with no data in it.  It just stores references to auxiliary block chains as described by merged mining.


Title: Re: Bitcoin Protocol Extension For Credit
Post by: Lolcust on September 16, 2011, 05:12:39 PM
Um, why would people mine that master blockchain ?


Title: Re: Bitcoin Protocol Extension For Credit
Post by: remmy on September 16, 2011, 05:19:35 PM
I have explained the idea a bit more in the topic here.

https://bitcointalk.org/index.php?topic=44314.0 (https://bitcointalk.org/index.php?topic=44314.0)

Basically, in the same way namecoin is proposed to just have a "pointer" in bitcoin's blockchain, bitcoin itself could just be a pointer in this universal-blockchain, and the chain itself would be useful due to the multitude of chain-based services that run on it.


Title: Re: Bitcoin Protocol Extension For Credit
Post by: remmy on September 16, 2011, 05:48:21 PM
Ok, the namecoin developers want to "back" their hash power using the bitcoin network.  that to me seems like it could be a good idea.  I'm trying to explain how you could take it one step further and abstract the block chain from all coin-variants, so that a single hash can be worth something to all chains.