Author

Topic: Why the business world may be slow to adopt bitcoin.... (Read 1808 times)

legendary
Activity: 4542
Merit: 3393
Vile Vixen and Miss Bitcointalk 2021-2023
- What is the difference between the total bitcoin amount sent and the transaction size? I thought they were one in the same.
"Size" in this context refers to the amount of data (in kilobytes) required to encode the transaction.

- Maybe a receiving fee or a fee for maintaining wallet for xx days with no transaction may be in order.
A "receiving fee" can't work because the receiver isn't necessarily online at the time the transaction is made. A fee for "maintaining" a wallet makes no sense, since wallets require no maintenance. In fact, until coins are actually sent from a wallet, no data about the wallet even exists in the network. Sending transactions and confirming them is the only thing that requires actual resources, and this is what fees are charged for. The fees are paid by the sender (who consumes the resources in question) to the miner (who supplies the resources to confirm the transaction). This is the fairest way of doing it.

- What stops someone from doing a bloat attack, where they make lots of small (or large)transactions to themselves, increasing the size of the blockchain?
Transaction fees. Since sending transactions to yourself repeatedly requires a transaction fee each time, anyone who attempts this will eventually run of money. By paying transaction fees, you are essentially purchasing the right to add data to the blockchain. Since fees are paid to the miners, and miners are the only people who really need to process the blockchain, there's no problem. If bloat becomes a problem for miners, they can simply increase their fees until the revenue from fees is greater than the cost of dealing with blockchain bloat.

Another person wrote using Electrum or other client that hosts the blockchain separately.  I may very well have to do this in a few months.  Too bad everyday people will not be able to host their own node.  We will have to rely on 3rd parties.  Some consolidation is natural for 'on-demand' services, but doesn't this defeat one of the original goals of bitcoin, which is to make it accessible to masses with decentralized authority?  If pruning will not allow significant re-use of disk space, the blockchain that is the the very heart of the bitcoin network will have to be placed into the hands of trusted 3rd parties to get any practical use out of it.
Nobody "has to" rely on third parties. People can choose to rely on third parties if they find it cheaper or more convenient, but anyone who wants the security of a full node is perfectly free to run one at their own expense. Remember, that's "free" as in speech, not as in beer. The security requirements for a digital payment system are massive, and absolutely cannot be provided at no cost. Storing the complete history of every transaction may seem inefficient and expensive, but it is the only way to provide the required level of security in a decentralised system. Your complaints sound like someone who refuses to use a safe deposit box because they don't trust banks, then complains that installing a vault in their basement is too expensive and takes up too much space. Ultimately, you have to either trust a third party to provide security for you or else provide security for yourself at your own expense, because you can't get security for free.
newbie
Activity: 20
Merit: 0
You might be better served learning how bitcoin actually works before trying to "fix" it.

Agreed.  I'll be the first to admit am not too much of a techie, I have read the majority of the material on the bitcointalk newbie (getting started)thread, the bitcoin.it wiki, and bitcoin.org whitepaper.

I do have experience in business, basic mechanical engineering, and logic.  So although we may use different symbols to describe an event, if it is explained in a simple and logical flow, i can usually follow along.
My windows 2008 R2 64 bit VPS which is guaranteed 100% uptime in a major USA backbone is appx $40/mo ...

Can you give me a link to the provider that guarantees 100% uptime for only 40$ per month?

Commercial Network Services (affiliate link) .  They have servers in New York City, NY USA, San Diego, CA USA, and London, UK.  They cater primarily to financial traders and related services which demand always on connections to the financial markets.  Zero forced reboots or forced windows updates on hyper-v; I've personally gone 6+ months without rebooting.  And whatever resources you pay for are YOURS; they don't oversell their services or over-promise resources.  They used to have dedicated servers, but got rid of them when hyper-v stabilized and their VPS setup was just as dedicated and more scalable.   They do have linux servers.....you may have to ask.

Barry is a great person to work with; and they make the uptime thing look easy.  I don't think they accept bitcoin (yet), but they do accept liberty reserve as well as traditional visa/mc/paypal/wire.

The only thing you cannot do is dedicated bittorrent/seedbox service.  A shame, because the VPS have multiple high quality 1-10Gbps connections.  But pretty much anything else is fair game.  I streamed video from the desktop using a hack where you link two user accounts and livestream.com streaming software.  The lag was 3-10 seconds.  There are other hacks to recover 3-5Gb from windows installation. 

You can't use the cheap $2 webhosting for blockchain hosting (they don't usually allow downloading or torrent sites anyway); you need something more dedicated.
legendary
Activity: 1221
Merit: 1025
e-ducat.fr
Businesses will accept to use the bitcoin network through payment service providers (PSPs) that abstract out for them its complexities such as block chain hosting, transaction confirmations, currency conversion, cash out, etc.
I believe bitcoin PSPs (including Paymium) will start gaining traction before the end of the year.
hero member
Activity: 815
Merit: 1000
Search "swarm client" on this forum.

Until thats developed just use electrum Wink
hero member
Activity: 523
Merit: 500
Nope, its because social/legal and not understanding Bitcoins advantages.

The blockchain is not an issue at all since you have solutions such as Bitpay etc.

newbie
Activity: 55
Merit: 0
My windows 2008 R2 64 bit VPS which is guaranteed 100% uptime in a major USA backbone is appx $40/mo ...

Can you give me a link to the provider that guarantees 100% uptime for only 40$ per month?
donator
Activity: 1218
Merit: 1079
Gerald Davis
You might be better served learning how bitcoin actually works before trying to "fix" it.

Your ideas fall into either (already planned), (impossible without a hard fork), or (dubious value)

For example there are huge security implications for a node that doesn't have entire blockchain, especially a new node.     If you don't want to be a full node then be a lite node and rely on a TRUSTED third party.  Using only a portion of the blockchain is the worst of both worlds.  You are relying on the honesty of 3rd parties but the third parties you are connecting to are unknown and unverified.  Bitcoin treats all incoming data as "suspect" until proven valid.  To do that requires the ability to independently validate and you can't do that with a fragment of the blockchain.  If you aren't going to validate incoming data then why even have part of the blockchain.  Keep 0 GB worth and be a lite node.

There are a lot of flawed assumptions. Transaction fees can never be a % of the sale amount.  The network doesn't know the intended sale/tx amount.   Fees shouldn't be based on tx value.  They should (and are) based on tx size. The critical resource is size thus pricing should be based on size.   Fees don't go to node who confirm.  It would be nearly impossible to determine which node relayed a tx first.  Fees goes to miners as they are doing the significant work of created a block not just tx validation.  Coins aren't send to the receiver.  There are broadcast to the entire network.  There is no way to know if/when the receiving user/client/wallet is aware of the transaction.  There is already a mechanism planned for reducing block size called pruning.  Miners can reject any tx for any reason (including insufficient fees).  If you want to not relay "no fee" tx patching the client to do that is trivial, however remember bitcoin is a mesh network.  Transactions will simply route around you.

Quote
If a transaction is 'confirmed' x number of times, is there still a reason to keep the original record past a certain amount of future transactions count (or n many months)?

Yes.  If you don't understand why then how can you propose fixes?  It would be like a mechanic not understanding how a car works but proposing methods to fix problems which don't exist.

Quote
I woke up today and had all these thoughts about bitcoin and felt the need to express them.  Not sure how much longer I can be a free node.

Then don't.  Smiley  Still regardless of if you remain a node (no such thing as "free") it might be useful to learn how things work before deciding they need to change.  If you aren't a full node then you need to rely on a third party.  It is that simple.  Most businesses likely will choose to be a full node.  Having direct peer access to the network and full verifiable record of all transactions and blocks is worth more than the trivial cost to run a node.  If it isn't worth that then you should consider being a light node.  There is essentially no cost with the caveat that you no longer are a peer.
hero member
Activity: 756
Merit: 501
There is more to Bitcoin than bitcoins.
These are interesting and important issues, albeit not very pressing at this moment. Much of it has been discussed extensively (compression, pruning, supernodes). I am not nervous at all about any of it.  Bitcoin seems to be robust, no serious flaws in the algorithm have been identified, even now that the stakes have become serious (most "fails" in Bitcoin world were so far related simply to hacked accounts and stolen wallets, none of it had anything to do with the Bitcoin network itself). So far, so good. It's an experiment that is already resulting in some real-world use, and is growing - as evident from the blockchain.
mav
full member
Activity: 169
Merit: 107
I'm not sure I'm convinced that your argument is sound.

"Businesses not taking up bitcoin because the blockchain is too large" doesn't seem quite right. Maybe in the future it might be, but right now, businesses aren't using bitcoin because they a) don't know about it b) don't care about it.

Adoption isn't being halted because business owners are looking at bitcoin and saying 'oooh the blockchain is too many GB'.

I agree that blockchain pruning is important, but it's not a reason that businesses aren't adopting bitcoin or will be slow to adopt it. That's a social/marketing/legal issue.
legendary
Activity: 1904
Merit: 1002
www.bitcoin.org/bitcoin.pdf

Section 7.

Compression of older transactions would be worth exploring too.
newbie
Activity: 20
Merit: 0

Resources have a real (fiat currency) cost.  Just like fiat currencies or gold or diamonds have to be securely stored, insured, etc, bitcoin has a real cost in order to keep the bitcoin network running smoothly.

Most regular bitcoin users are familiar with the recent exponential increase in blockchain size.  When I first downloaded bitcoin about 3 weeks ago, it was just over 1.2GB.  It is already at 2.7GB and rising quickly.  Arguments have been made that suggest that hard drive space is cheap so it won't be a problem.  Offline hard drive space is cheap, but 'cloud' or dedicated internet accessible hard drive space is still a bit pricey, depending on the service provider, location, amount of space, etc.  My windows 2008 R2 64 bit VPS which is guaranteed 100% uptime in a major USA backbone is appx $40/mo and I only get 30GB (16GB used by windows install alone). I have appx 40-60 active connections at any given time, although unfortunately the client does not keep track of how many confirmations my node has done.  The original bitcoin client is actually lacking in a lot of advanced statistics to give the user an idea of what their node has accomplished or is currently processing.

Regardless, whether dedicated or a casual user, the full blockchain is taking up too much hard drive space, especially considering there is no compensation (that I can see in the original client) for hosting the node.  I should have a right to reject to confirm a transaction that does not have a certain percentage of the original transaction as a fee.  Making the transactions 'free', no matter how small will attract a certain type of undesirable user (freeloader).  In fact, i was imagining that a certain type of 'bloat blockchain attack' could be done where a huge number of microspends could be done on an automated basis to make the blockchain very bloated and therefore inaccessible to those nodes without the hard drive space or bandwidth.

Potential solutions: 
- allow blockchain to be divided up into xx MB/GB file sizes.  Consider using compression for older portions of the blockchain.
- Allow node to customize how much of the blockchain the node will confirm.  Either in days from present day (past xx days) or in number of transactions from the most current block.   So 'supernodes' can hold the entire blockchain, while 'small business nodes' may only keep 6 months worth, and a casual user only needs maybe 4-6 weeks.

Perhaps there would be increased transaction (research fee) to confirm older transactions.  The real cost of storage is directly proportional to the length of the blockchain.  Wouldn't older transactions be further back on the blockchain?

- find a way to shrink/summarize older transactions so that only a minimum amount of information is needed for the blockchain.
- consider expiration date for accounts with no activity or something similar.  Like a gift card or anything else of stored value, there needs to be minimum activity to keep up with changes.  The bitcoin client will need to evolve and cannot always be concerned with having to maintain older clients
- A minimum per transaction fee of 1000th (0.1%) of the total transaction size, (or the smallest BTC denomination, whichever is larger) charged to the sender at the time of sending.  That's 0.1% transaction fee; unheard of in credit card processing.  The transaction fee can be divided up evenly amongst the first 6 confirming nodes.
- allow node to reject transactions that do not have a certain % fee of transaction.
- allow return to sender option if wallet does not receive/confirm a transaction after xx minutes.  Default can be 3 days but perhaps adjustable to up to 7 days or so.  We don't want too many unconfirmed/stale transactions floating around.
- bonus: allow an optional checkmark to donate 0.1% of the total transaction size to bitcoin client developer address to assist with future development.  When this is in the client, people are more likely to actually participate in it.  Maybe even type a short thank you note or suggestion.

If a transaction is 'confirmed' x number of times, is there still a reason to keep the original record past a certain amount of future transactions count (or n many months)?  We would have to give the receiver some responsibility in checking their wallets/transaction history, similar to how the bank account statement would be checked by the customer to ensure no errors. 

If you think about it.  Even banks only keep so many transactions in their current database before storing them offline or historical database.  Then for these older transactions, a "research fee" must be paid to look up the transaction.  After so many days, months, or years, the the historical data may even be destroyed, as it is no longer relevant.  Once the transaction is fully confirmed in the receiver's account, there's no need to hold on to that past data for any extended period of time (otherwise, what's the true purpose of confirmation?).  Perhaps there should be a 'return to sender' and the receiver has x number of days to claim their funds (3 days?) or else it is returned to sender.  If there is no sender address, do the bitcoins get distroyed? Or evenly distributed to a random number of confirming nodes (for doing the work of having to confirm the transaction).
The fundamental idea here is that the receiver will be keeping track of their transactions on a regular basis, which would require that you be in communication with the sender. 

Bitcoin need to mature out of the "hobby" mindset in order to truly be accepted and integrated into the business world, which is what bitcoin is primarily intended for (settling agreements rapidly between 2 or more parties). Being scalable on paper is not good enough.  Some of these things need to be done from the original client.  People do have other things to do with their hard drive space, especially in the cloud.

I woke up today and had all these thoughts about bitcoin and felt the need to express them.  Not sure how much longer I can be a free node.
Jump to: