bitcoinaddict (OP)
Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 75
Merit: 10
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
June 21, 2011, 02:58:24 AM |
|
With confirmations taking minutes instead of milliseconds as typical credit card transactions do, I don't see bitcoin being a viable alternative for vending machines, convenience stores, etc.
How would it be possible to create a new coin, tied to bitcoin (but at a fraction of the value) that is updated more regularly. Instead of 10 blocks an hour they go for 10 blocks a minute? Obviously the difficulty would have to be way down. At least this way a merchant could possibly get 2 or 3 confirmations before releasing any product to a consumer.
Any ideas?
|
|
|
|
bji
Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 112
Merit: 10
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
June 21, 2011, 03:05:05 AM |
|
With confirmations taking minutes instead of milliseconds as typical credit card transactions do, I don't see bitcoin being a viable alternative for vending machines, convenience stores, etc.
How would it be possible to create a new coin, tied to bitcoin (but at a fraction of the value) that is updated more regularly. Instead of 10 blocks an hour they go for 10 blocks a minute? Obviously the difficulty would have to be way down. At least this way a merchant could possibly get 2 or 3 confirmations before releasing any product to a consumer.
Any ideas?
The shorter the average interval for signing blocks, the greater the chance of fragmentation of the block chain. Simply put, it could (and probably does) take quite a bit longer than 6 seconds for a solved block to propogate around the network to all miners. In the meantime, other miners would have gone on to add other blocks to the chain. The block chain would be in a constant state of fragmentation. Nobody would have any confidence that a verified transaction really was verified; even if you wanted for 10 verifications (1 minute), the chance of the block eventually being invalidated because some other chain won out would be pretty high.
|
|
|
|
ByteCoin
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
June 21, 2011, 03:23:57 AM |
|
... [It] takes quite a bit longer than 6 seconds for a solved block to propagate around the network to all miners. ...
The miners should take care to relay their solved blocks directly to the other miners. It's in all the miners best interests to do so. This is true of the current system too. Propagation is so slow in the current network because each node verifies all the transactions and blocks before relaying them. In reality only the miners really need to verify anything. The nodes just need to take adequate steps to ensure they're not either being attacked or being used to attack someone else. There's no evidence to back up the assertion that fragmentation and reorganizations would be inevitable. How would it be possible to create a new coin, tied to bitcoin (but at a fraction of the value) that is updated more regularly.
One would have to change or augment the existing bitcoin system with the new coin scheme. The network would agree to create bitcoins out of thin air in response to the new coin scheme destroying coins and vice versa in a similar fashion to creating coins when mining blocks. Hashing power would be split between both systems and the overall behaviour would be complex. A better, simpler solution would be a replacement scheme similar to bitcoin that would facilitate a higher block generation rate. ByteCoin
|
|
|
|
bji
Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 112
Merit: 10
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
June 21, 2011, 03:39:04 AM |
|
... [It] takes quite a bit longer than 6 seconds for a solved block to propagate around the network to all miners. ...
The miners should take care to relay their solved blocks directly to the other miners. It's in all the miners best interests to do so. This is true of the current system too. Propagation is so slow in the current network because each node verifies all the transactions and blocks before relaying them. In reality only the miners really need to verify anything. The nodes just need to take adequate steps to ensure they're not either being attacked or being used to attack someone else. There's no evidence to back up the assertion that fragmentation and reorganizations would be inevitable. ByteCoin There's no evidence to back up the assertion that fragmentation and reorganizations would not be inevitable when bitcoin is big enough to be used commonly at point-of-sale and the block publish interval is 6 seconds, either. I claim it would be. At 500 transactions per second, that's 3000 transactions every 6 seconds being verified by some miner somewhere. When a block is published each miner then has to validate it as well (what, they're supposed to just "trust" each other? Bad idea ...). The system only works now because 10 minutes is such a long time for events to propogate across the currently very small bitcoin network. Make the network much bigger and the block solutions much more frequent and it will just fall apart. Also, if all peers don't validate transactions before sending them on, then it becomes very easy for a well crafted attack to absolutely flood the network with bogus transactions with all of the non-miners hammering the miners with tons of bogus transactions that they just gladly pass through.
|
|
|
|
bitcoinaddict (OP)
Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 75
Merit: 10
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
June 21, 2011, 03:59:00 AM |
|
So what's the solution? How can you do point of sale with bitcoins? It seems as if it's impossible with the current system. How can they replace cash if they can't be used as cash?
Are we going to need a third party like Visa/Mastercard to issue bit-cards and insure their validity? How is that different than what we have now?
|
|
|
|
amincd
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
June 21, 2011, 10:37:35 AM |
|
With confirmations taking minutes instead of milliseconds as typical credit card transactions do, I don't see bitcoin being a viable alternative for vending machines, convenience stores, etc. From what I've read, it's possible to get a reasonably high assurance that a transaction will verify, particularly if the amount sent is small, before it is verified in a new block. A vendor would need listening software to see that other nodes accept it, and after a few seconds, could confirm the payment.
|
|
|
|
Pieter Wuille
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
June 21, 2011, 10:42:47 AM |
|
The bitcoin block chain is not intended as a payment processor - it is a worldwide scheme for obtaining consensus about the flow of a currency.
You can easily build payment processors on top of this, which either do transactions internally, or provide assurance against non-confirmation and block chain splits, for a cost.
|
I do Bitcoin stuff.
|
|
|
bji
Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 112
Merit: 10
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
June 21, 2011, 04:38:54 PM |
|
The bitcoin block chain is not intended as a payment processor - it is a worldwide scheme for obtaining consensus about the flow of a currency.
You can easily build payment processors on top of this, which either do transactions internally, or provide assurance against non-confirmation and block chain splits, for a cost.
How would such payment processors work without the end-user giving up their anonymity? I would expect that any online payment processing service would require that its users credential themselves such that the payment processor feels that it has established a level of trust that it is comfortable with. Then end-users have given up their pseudoanonymity which one of the main advantages of bitcoin.
|
|
|
|
kjj
Legendary
Offline
Activity: 1302
Merit: 1026
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
June 21, 2011, 05:14:42 PM |
|
The bitcoin block chain is not intended as a payment processor - it is a worldwide scheme for obtaining consensus about the flow of a currency.
You can easily build payment processors on top of this, which either do transactions internally, or provide assurance against non-confirmation and block chain splits, for a cost.
How would such payment processors work without the end-user giving up their anonymity? I would expect that any online payment processing service would require that its users credential themselves such that the payment processor feels that it has established a level of trust that it is comfortable with. Then end-users have given up their pseudoanonymity which one of the main advantages of bitcoin. It is a trade off. A transaction processor really only needs to know who the user is if they are extending credit to them, and thus might need to haul them into court some day. If the user values their anonymity, they could pre-pay the processor.
|
17Np17BSrpnHCZ2pgtiMNnhjnsWJ2TMqq8 I routinely ignore posters with paid advertising in their sigs. You should too.
|
|
|
steelhouse
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
June 21, 2011, 06:07:13 PM |
|
The transaction fees should be raised to 1. The reason for this should be clear if you go back to the Gavin Andresen video when he showed the stone money. What will happen is for small change to use a vending machine, you will be forced to use a wallet. A small wallet will operate just like bitcoin, in a centralized fashion your money on an exchange or on a bitcoin mining pool is a wallet. Thus, your wallet will be fast. However, the real money the "gold" is stored in the bitcoin block.
|
|
|
|
bji
Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 112
Merit: 10
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
June 21, 2011, 06:08:20 PM |
|
The bitcoin block chain is not intended as a payment processor - it is a worldwide scheme for obtaining consensus about the flow of a currency.
You can easily build payment processors on top of this, which either do transactions internally, or provide assurance against non-confirmation and block chain splits, for a cost.
How would such payment processors work without the end-user giving up their anonymity? I would expect that any online payment processing service would require that its users credential themselves such that the payment processor feels that it has established a level of trust that it is comfortable with. Then end-users have given up their pseudoanonymity which one of the main advantages of bitcoin. It is a trade off. A transaction processor really only needs to know who the user is if they are extending credit to them, and thus might need to haul them into court some day. If the user values their anonymity, they could pre-pay the processor. I think this would work fine for the purchase of legal goods that the user wants to remain pseudo-anonymous for. For example, if I want to buy porn and don't want my wife to know I did. Illegal transactions (which I believe to be the major value of bitcoin) would not be able to take advantage of this cause the processor wouldn't engage in illegal transactions on behalf of anonymous users.
|
|
|
|
ploum
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
June 21, 2011, 06:20:09 PM |
|
The credit cards are not transfering your money quickly. They are agreeing to transfer the money and the merchant trust them. If you had BitBanking protocol (like I described here: http://forum.bitcoin.org/index.php?topic=1859.msg23094 ), you could simply agree on the transaction with a GPG signed agreement. The receiver could then choose to: 1) trust it because he trusts a given bank and close the transaction immediately 2) Do not trust it so much, thus waiting for the transaction to appear (even with 0 confirmations) 3) wait for X confirmations The choice could be based on the importance of the transaction, the reputation of the bank, etc. Note: I'm using the term bank and a lot of people are telling me that there is no point to bitcoin if we have to create bank. But a bitbank would be completely different to what we know, just like a mail server has no comparison with a post office.
|
|
|
|
bji
Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 112
Merit: 10
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
June 21, 2011, 06:37:13 PM |
|
The credit cards are not transfering your money quickly. They are agreeing to transfer the money and the merchant trust them. If you had BitBanking protocol (like I described here: http://forum.bitcoin.org/index.php?topic=1859.msg23094 ), you could simply agree on the transaction with a GPG signed agreement. The receiver could then choose to: 1) trust it because he trusts a given bank and close the transaction immediately 2) Do not trust it so much, thus waiting for the transaction to appear (even with 0 confirmations) 3) wait for X confirmations The choice could be based on the importance of the transaction, the reputation of the bank, etc. Yes, receivers would only need to trust bitbanks and that's all well and good. But senders would have to identify themselves to the bitbank in order to gain the trust that the bitbank would need to extend credit on behalf of the sender, which eliminates the pseudoanonymity value of bitcoin. Or like someone else, said, senders could remain pseudoanonymous by establishing a credit with the bitbank, but then you wouldn't be able to do some of the valuable things that bitcoin allows you to do (illegal transactions) because the bitbank wouldn't engage in illegal activity on behalf of pseudoanonymous clients.
|
|
|
|
ploum
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
June 21, 2011, 07:32:28 PM |
|
Yes, receivers would only need to trust bitbanks and that's all well and good.
But senders would have to identify themselves to the bitbank in order to gain the trust that the bitbank would need to extend credit on behalf of the sender, which eliminates the pseudoanonymity value of bitcoin.
Not really. Some banks could allow anonymous account. All the bank have to do is to check that there is enough bitcoin on the account. There is no need for credit. The only part that requires trust between bank is when a bank says "I sent you the money, trust me, it's on its way". Which could be feasible through a web-of-trust. No need to reinvent the wheel, GPG does it already. For anonymity, you will have to choose either a bank that you access only through Tor, either a bank that you trust to protect your privacy, either you open your own bank (but then you have to work to ensure you are part of the web of trust). Or like someone else, said, senders could remain pseudoanonymous by establishing a credit with the bitbank, but then you wouldn't be able to do some of the valuable things that bitcoin allows you to do (illegal transactions) because the bitbank wouldn't engage in illegal activity on behalf of pseudoanonymous clients.
This would be only a layer on top of Bitcoin. Which means that good old bitcoin transactions are still available. If you want quick transaction and full anonymity, it might be harder. A simple solution would be to have "Dark banks" with their own web-of-trust.
|
|
|
|
shads
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
June 21, 2011, 11:56:22 PM |
|
Banks are the ideal solution to this problem. Anonymity optional, the only real needs for proving identity are for account retrieval in the event of security breach, credit or regulatory requirements (which can be got around by setting them in the right jurisdictions). If you want truly anon transactions do them the old fashioned way and just wait for the confirmations. 99% of transactions don't have a requirement for extreme anonymity so the bank can solve the POS problem, if you're at the POS you've already compromised some of your anonymity.
|
|
|
|
yk
Newbie
Offline
Activity: 12
Merit: 0
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
June 22, 2011, 01:42:11 AM |
|
A low security solution would be: 1. Let the sender (costumer) sign the transaction and send it to the receiver (shopkeeper). 2. The receiver can check that there are enough founds in the account and the signature. Therefore he can have a quite high level of trust in the transaction. 3. Receiver then sends the transaction to the network for actual verification (and inclusion into the block chain).
This solution can be compromised (I believe) if the sender spends all his BTC in just one block. But I believe for small transactions it should be good enough. And on the sender side you need only the ability to generate and sign transactions, not a complete blockchain, this could be good for mobile use. The security of over the counter trades could of course be easily enhanced, if you are willing to let go of privacy. Then the sender could sign (in handwriting not cryptographically) some receipt of the transaction which is thrown away, if the BTC transaction runs smoothly. Otherwise the receiver of the transaction would have some legal leverage.
|
|
|
|
amincd
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
June 22, 2011, 02:00:09 AM |
|
This solution can be compromised (I believe) if the sender spends all his BTC in just one block. But I believe for small transactions it should be good enough. I believe the receiver only needs to wait about 10 seconds and see that a high enough number of nodes have accepted the transaction to know the likelihood of a successful double spend approaches zero, since the first transaction is almost certain to be the one included in the next block in the event that there are multiple transactions involving the same bitcoin.
|
|
|
|
JoelKatz
Legendary
Offline
Activity: 1596
Merit: 1012
Democracy is vulnerable to a 51% attack.
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
June 22, 2011, 11:54:01 AM |
|
I think the right solution to this is to develop a system specifically optimized for fast, frictionless micro-transactions. If desired, it could include a mechanism for transferring bitcoins into and out of that system, so that the value of coins in this system was always the same as the value of that same number of bitcoins. No changes would be needed to the bitcoin system.
I think such a system would pretty much have to be centralized rather than peer-to-peer. But that could just be due to insufficient cleverness on my part. (Had I not read the white paper, I might easily have concluded it was impossible to prevent double spending in a P2P network, and I would have been wrong.)
|
I am an employee of Ripple. Follow me on Twitter @JoelKatz 1Joe1Katzci1rFcsr9HH7SLuHVnDy2aihZ BM-NBM3FRExVJSJJamV9ccgyWvQfratUHgN
|
|
|
Mike Hearn
Legendary
Offline
Activity: 1526
Merit: 1129
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
June 22, 2011, 11:59:12 AM |
|
|
|
|
|
BeeCee1
Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 115
Merit: 10
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
June 23, 2011, 01:06:10 AM |
|
Satoshi's solution was a centralized payment processor (albeit one that commits transactions to the block chain immediately, not one with an alternative currency that is pegged to bitcoin). He thought it would still take 5-10 or seconds, not microseconds. He is also depending on conventions of the client (that the first transaction seen is the only one kept/propagated) that could be changed without requiring any consensus (if some clients changed it and some didn't everything would still be interoperable). There is also the risk that a malicious double-spender would be able to identify the payment processor's nodes and prevent them from seeing the other transaction even though miners were incorporating it into a block. Then there is the issue of transaction volume, there are other threads talking about the amount of disk space and bandwidth required to handle 2,000 transactions a second (its a lot, the average user wouldn't be able to handle it), if we had fast transactions and if all the snack machines were connected you'd have a couple of orders of magnitude more transactions. I don't think that anyone has come up with a good solution to the fast transaction (and high volume) problem within the current bitcoin blockchain.
|
|
|
|
|