{"type":"rich","version":"1.0","author_name":"npub1lupuse8cysuanxcpq8h4d32359xxzedzjj83rmwv4yr9qxfmhtzqghjqch","author_url":"https://nostr.ae/npub1lupuse8cysuanxcpq8h4d32359xxzedzjj83rmwv4yr9qxfmhtzqghjqch","provider_name":"njump","provider_url":"https://nostr.ae","html":"📅 Original date posted:2016-12-05\n📝 Original message:BIP Proposal - Managing Bitcoin’s block size the same way we do difficulty\n(aka Block75)\n\nThe every two-week adjustment of difficulty has proven to be a reasonably\neffective and predictable way of managing how quickly blocks are mined.\nBitcoin needs a reasonably effective and predictable way of managing the\nmaximum block size.\n\nIt’s clear at this point that human beings should not be involved in the\ndetermination of max block size, just as they’re not involved in deciding\nthe difficulty.\n\nInstead of setting an arbitrary max block size (1MB, 2MB, 8MB, etc.) or\npassing the decision to miners/pool operators, the max block size should be\nadjusted every two weeks (2016 blocks) using a system similar to how\ndifficulty is calculated.\n\nPut another way: let’s stop thinking about what the max block size should\nbe and start thinking about how full we want the average block to be\nregardless of size. Over the last year, we’ve had averages of 75% or\nhigher, so aiming for 75% full seems reasonable, hence naming this concept\n‘Block75’.\n\nThe target capacity over 2016 blocks would be 75%. If the last 2016 blocks\nare more than 75% full, add the difference to the max block size. Like this:\n\nMAX_BLOCK_BASE_SIZE = 1000000\nTARGET_CAPACITY = 750000\nAVERAGE_OVER_CAP = average block size of last 2016 blocks minus\nTARGET_CAPACITY\n\nTo check if a block is valid, ≤ (MAX_BLOCK_BASE_SIZE + AVERAGE_OVER_CAP)\n\nFor example, if the last 2016 blocks are 85% full (average block is 850\nKB), add 10% to the max block size. The new max block size would be 1,100\nKB until the next 2016 blocks are mined, then reset and recalculate. The\n1,000,000 byte limit that exists currently would remain, but would\neffectively be the minimum max block size.\n\nAnother two weeks goes by, the last 2016 blocks are again 85% full, but now\nthat means they average 935 KB out of the 1,100 KB max block size. This is\n93.5% of the 1,000,000 byte limit, so 18.5% would be added to that to make\nthe new max block size of 1,185 KB.\n\nAnother two weeks passes. This time, the average block is 1,050 KB. The new\nmax block size is calculated to 1,300 KB (as blocks were 105% full, minus\nthe 75% capacity target, so 30% added to max block size).\n\nRepeat every 2016 blocks, forever.\n\nIf Block75 had been applied at the difficulty adjustment on November 18th,\nthe max block size would have been 1,080KB, as the average block during\nthat period was 83% full, so 8% is added to the 1,000KB limit. The current\nsize, after the December 2nd adjustment would be 1,150K.\n\nBlock75 would allow the max block size to grow (or shrink) in response to\ntransaction volume, and does so predictably, reasonably quickly, and in a\nmethod that prevents wild swings in block size or transaction fees. It\nattempts to keep blocks at 75% total capacity over each two week period,\nthe same way difficulty tries to keep blocks mined every ten minutes. It\nalso keeps blocks as small as possible.\n\nThoughts?\n\n-t.k.\n-------------- next part --------------\nAn HTML attachment was scrubbed...\nURL: \u003chttp://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20161205/c24d6c6d/attachment.html\u003e"}
