|
July 21, 2015, 09:29:20 AM |
|
In my opinion, now the biggest problem in Bitcoin is the unclear policy with commissions for the transactions. Because of this problem, we have other serious problems including the spam problem, block size problem and the micropayments problem. Satoshi was not originally defined a solid foundation for the calculation of the transaction fees. This question has always been only a temporary solution.
Initially it was assumed that the transactions can be free. This led to a spam attack on blockchain because of what he has grown. To solve the problem of limitless growth it was introduced the limit of one megabyte per block size but the spam problem is not solved yet and we again witness such attempts.
Now Bitcoin has a very intricate algorithm for determining the priority of the transaction with reference to the amount of the transaction and some miners analyze the history of coins. Though actually a good algorithm is very simple. To determine which transactions to include in the block, miner has to calculate for each transaction simple ratio of transaction commission (in bytes) to transaction size (in Satoshi). Each transaction will be characterized by the number of Satoshi that the sender of the transaction is willing to pay for each byte in the blockchain. For example, a simple transaction in MutliBit has a size of 226 bytes, default commission is 0.00010000 BTC, ie 10,000 Satoshi. Therefore the value of the byte in this transaction will be equal to about 44 Satoshi. Based on this parameter, we can determine the transactions order for including in the block. Transactions with greater cost-per-byte will have a higher priority. Using this algorithm, a miner will always maximize the commission reward. Each byte is fairly paid. As a result, the larger the size of the transaction, the greater should be the commission to be included in the block. This creates motivation for economize space in the blocks.
With such a transparent algorithm, sufficient commission will be determined by the market, depending on the number of transactions and the availability of space in the block. This approach does not require changing of Bitcoin protocol. Changes should be made only in the miners transaction priority algorithm and in the algorithm of calculation of optimal transaction fee of the wallet. Before sending the transaction wallet needs to know what price to use to ensure that the transaction will be included in the first mined block.
As a result of such an approach, the price of byte in Satoshi depends on the price of Bitcoin in US dollars. Therefore, the optimal current price should be calculated by services like blockchain.info. To do this, the service need to analyze the transaction queue and the last mined blocks and see what the price of byte will be minimally sufficient for the transaction with the maximum probability was included in the first mined block. Since the amount of the transaction is dependent on the time of day and day of week, price of byte in the blockchain will also depend on these parameters. It is possible to calculate the optimal price for each hour a day every day of the week. Wallets can simply use such information from a service like blockchain.info like they are already using the current Bitcoin exchange rate.
This approach will create a real-time auction for space of the mined block, it makes spam attacks just meaningless. If there is a long queue of transactions, new transactions will be sent with higher pay-per-byte than all the transactions in the queue. As a result, spam transactions will hang in queue for long time and will not create a delay in the processing of actual transactions. Spammers have to spend a very large amount of money to win other Bitcoin users from all the world in real time auction to redeem all of the space in the blocks. This makes this attack very costly and can only insignificantly increase the price of byte when most users will not notice anything. In order not to allow spammers to occupy the empty space in the blocks at zero cost, miners will have to set a minimum price for the byte (in any currency). Even very small prices for general users make a blank space in the blocks very expensive for spammers.
This approach not only solves the problem of spam, but also solve the problem of block size. With an increase in the number of transactions, the price of byte will also increase. If the price is too high for micropayments, doubling the size of the block will significantly reduce the byte price.
This scheme also has a positive effect on the motivation for users to save space in the blockchain. Recording images or other information unrelated to the payment will cost for author at a fair market price.
Another important factor is the possibility of a sharp increase of Bitcoins price. Fixed fee in Bitcoins creates big problems during large volatility. The market way of fee definition is well to cope with such problem.
This approach also solves the problem of unreasonably high fee of transaction in wallet like MultiBit. Wallets with fixed commission unfairly rob money from unsuspecting users and discredit opportunities of Bitcoin in the micropayments when most transactions can be posted at a much lower fee.
Sooner or later, we will have to increase the size of the block. The optimal block size determines the market itself. If the micro payments will be so expensive that it would be noticeable downward trend in the number of micropayments, it's time to negotiate an increase the size of the block. I think that the optimal block size depends on Internet bandwidth and cost of hard disk drives for personal computers. If possible, individual user should be able to maintain full Bitcoin node.
Also competition of blockchains is very important. If for any reason miners will not be interested in increasing the size of the block, they will risk losing the micropayments market. In this regard, the role of Litecoin is very important as an analogue of silver.
P.S. Sorry for my English. I used a Google translator.
|