Author

Topic: Could this idea address the scalability issue? (Read 1165 times)

legendary
Activity: 1722
Merit: 1217
Thanks for stopping by to check out my thread fp. I had a feeling that my idea was either broken or already on someones radar.

Can this be done with monero do you think? We have time locks already right? We just need multisig. Is the dev team hopeful about being able to work out a method of doing multisig in monero in future?

It can, and we have time locks already. Multisig is harder, and we've been trying to work through the problem with the gracious assistance of gmaxwell and andytoshi (who have done a truckload of work on it already). That said, we need to tread carefully with it, and anything like Lightning's scheme is probably a couple of years away:)

Yea lightning is proposing a soft fork in order to make it totally trust-less. Even the way bitcoin is now, with no fork of any kind, it could be made so that you only need to extend enough trust for a single small transaction. In fact the trust could be very tiny since you could just pay someone large amounts in the form of dozens or hundreds of very small micro payments. This is perfectly sufficient i think and a more realistic/better goal than something like lightning. All we need for that is multisig, a standard, and some entrepreneur service providers.
donator
Activity: 1274
Merit: 1060
GetMonero.org / MyMonero.com
It would be great if someone developed this on any altcoin. But they usually wait for Bitcoin to develop it because altcoins are all pump and dump scams. That's hyperbole, but probably true in most cases.

If Bitcoin developed it that wouldn't help us (Monero) one bit, we don't share a single line of code with Bitcoin:)
donator
Activity: 1274
Merit: 1060
GetMonero.org / MyMonero.com
Thanks for stopping by to check out my thread fp. I had a feeling that my idea was either broken or already on someones radar.

Can this be done with monero do you think? We have time locks already right? We just need multisig. Is the dev team hopeful about being able to work out a method of doing multisig in monero in future?

It can, and we have time locks already. Multisig is harder, and we've been trying to work through the problem with the gracious assistance of gmaxwell and andytoshi (who have done a truckload of work on it already). That said, we need to tread carefully with it, and anything like Lightning's scheme is probably a couple of years away:)
donator
Activity: 1736
Merit: 1014
Let's talk governance, lipstick, and pigs.
https://lightning.network
There are also discussion threads about it.

cool stuff. thanks for link!

Lightning is very cool, the whitepaper is a *little* difficult to parse if you're not switched on to that way of thinking. Thankfully, rusty has a series of posts he wrote explaining Lightning as he understands it:

http://rusty.ozlabs.org/?p=450
http://rusty.ozlabs.org/?p=462
http://rusty.ozlabs.org/?p=467
http://rusty.ozlabs.org/?p=477

It's imperative to understand *why* Lightning or something similar is important: it solves the scalability issue without sacrificing breaking Bitcoin's trustless model.

I was at the Bitcoin Africa conference over the past two days and I heard more than one speaker (Jonathan Levin from Chainalysis, in particular) say that in order to scale Bitcoin we need to add trust. Needless to say they earned my ire, and a good shafting of critical Tweets (such passive aggressive, much brave, wow;)

Thanks for stopping by to check out my thread fp. I had a feeling that my idea was either broken or already on someones radar.

Can this be done with monero do you think? We have time locks already right? We just need multisig. Is the dev team hopeful about being able to work out a method of doing multisig in monero in future?
It would be great if someone developed this on any altcoin. But they usually wait for Bitcoin to develop it because altcoins are all pump and dump scams. That's hyperbole, but probably true in most cases.
legendary
Activity: 1722
Merit: 1217
https://lightning.network
There are also discussion threads about it.

cool stuff. thanks for link!

Lightning is very cool, the whitepaper is a *little* difficult to parse if you're not switched on to that way of thinking. Thankfully, rusty has a series of posts he wrote explaining Lightning as he understands it:

http://rusty.ozlabs.org/?p=450
http://rusty.ozlabs.org/?p=462
http://rusty.ozlabs.org/?p=467
http://rusty.ozlabs.org/?p=477

It's imperative to understand *why* Lightning or something similar is important: it solves the scalability issue without sacrificing breaking Bitcoin's trustless model.

I was at the Bitcoin Africa conference over the past two days and I heard more than one speaker (Jonathan Levin from Chainalysis, in particular) say that in order to scale Bitcoin we need to add trust. Needless to say they earned my ire, and a good shafting of critical Tweets (such passive aggressive, much brave, wow;)

Thanks for stopping by to check out my thread fp. I had a feeling that my idea was either broken or already on someones radar.

Can this be done with monero do you think? We have time locks already right? We just need multisig. Is the dev team hopeful about being able to work out a method of doing multisig in monero in future?
donator
Activity: 1274
Merit: 1060
GetMonero.org / MyMonero.com
https://lightning.network
There are also discussion threads about it.

cool stuff. thanks for link!

Lightning is very cool, the whitepaper is a *little* difficult to parse if you're not switched on to that way of thinking. Thankfully, rusty has a series of posts he wrote explaining Lightning as he understands it:

http://rusty.ozlabs.org/?p=450
http://rusty.ozlabs.org/?p=462
http://rusty.ozlabs.org/?p=467
http://rusty.ozlabs.org/?p=477

It's imperative to understand *why* Lightning or something similar is important: it solves the scalability issue without sacrificing breaking Bitcoin's trustless model.

I was at the Bitcoin Africa conference over the past two days and I heard more than one speaker (Jonathan Levin from Chainalysis, in particular) say that in order to scale Bitcoin we need to add trust. Needless to say they earned my ire, and a good shafting of critical Tweets (such passive aggressive, much brave, wow;)
legendary
Activity: 1722
Merit: 1217
https://lightning.network
There are also discussion threads about it.

cool stuff. thanks for link!
donator
Activity: 1736
Merit: 1014
Let's talk governance, lipstick, and pigs.
http://Https://lightning.network
There are also discussion threads about it.
legendary
Activity: 1722
Merit: 1217
So as I understand it we have a solution for how to do trustless micro-payments in bitcoin. See here: https://bitcoinj.github.io/working-with-micropayments What we are going to do is leverage up this concept. From the website.

Quote
The micropayment protocol allows one party (the client) to make repeated micropayments to another party (the server). It works in two stages. Firstly, some value is locked up with a multi-signature transaction that places it under the control of both parties. The parties collaborate to create a signed refund transaction that spends all the value back to the client, but is time locked using the nLockTime feature of the Bitcoin protocol. This ensures that the refund won’t become valid until some period of time has passed (currently, one day).

The refund transaction is prepared in such a way that the client gets a fully signed copy before the initial multi-signature transaction (the contract) is sent to the server. In this way, we avoid a potential crash/attack that could cause the client to lose money - once the client receives the refund transaction, only then is the money locked to both parties control. If the server halts at any point in the protocol, the client can always get their money back.

Once the refund transaction has been obtained by the client, it transmits the multi-signature contract to the server which then signs it and broadcasts it, thus locking in the money and opening the channel. To make a payment the client prepares and signs a new copy of the refund transaction that refunds slightly less money than before. The signature is sent to the server, which then verifies the signature is correct and stores it. The signature uses fairly lax SIGHASH modes so the server has a lot of leeway to modify the refund transaction as it wishes, but normally it will just add an output that sends back to its own wallet.

In this way once the payment channel is established, a micropayment can be made with just one signature operation by the client and one verify by the server.

Eventually the client will decide that it is done. At this point it sends a message to the server asking it to close the channel. The server then signs the final version of the contract with its own key and broadcasts it, resulting in the final state of the channel being confirmed in the block chain. If the server doesn’t co-operate or has vanished before the client gets a chance to cleanly close the channel then the client must wait 24 hours until the initial refund transaction becomes valid.

This idea is great so long as actors have regular dealings, but what about one time exchanges, or infrequent exchanges between parties. What if for infrequent exchanges, both parties used an intermediary. A trustless clearing house if you will. Alice and bob both have long term open payment channels with charlies clearing house. Alice and bob tell charlie what they believe are the terms of the exchange, charlie makes sure everyone is on the same page, charlie creates two new versions of the contract, one paying paying from alice to charlie and one from charlie to bob. Alice signs the updated contract and charlie signs the updated contract.

Now in order to facilitate competition in the market. Assume that alice and bob chose their clearing house from a long list of service providers. Alice chooses charlie and bob chooses dave. All of the clearing houses have open payment channels with all of the other clearing houses. Alice signs an updated contract with charlie, charlie signs an updated contract with dave, and dave signs an updated contract with bob.

Now im not saying this is the end all be all solution. It's just one possible solution. I do think, unless i have missed something, we can say this is reasonable contingency plan. If all else fails, this is good enough to allow bitcoin to scale as big as we need it to with manageable drawbacks.

Now you might be thinking. "Your solution to bitcoin scalability is BANKS!?!?, we are going to just make bitcoin like the legacy system it is intended to replace in order to save it? This sounds a lot like when bush said we have to kill capitalism to save it." However these clearing houses would not be like banks. They would have very little capacity to get up to mischief. They certainly wouldn't be betting depositors funds on risky investments with 10% reserve for privatized profits and socialist government guarantees against losses. They wouldn't be custodians over your funds. They would just be processing transactions. The most that a clearing house could ever scam anyone is a single transaction. And the whole point is that these are small transactions, if they were very large than they would just be placed on the blockchain.

Thanks once again for humoring my inane ramblings! - Anon.
Jump to: