Raystonn . [ARCHIVE] on Nostr: 📅 Original date posted:2015-06-08 📝 Original message:When implemented, the ...
📅 Original date posted:2015-06-08
📝 Original message:When implemented, the block size limit was put in place to prevent the
potential for a massive block to be used as an attack to benefit the miner
of that block. The theory goes that such a massive block would enrich its
miner by delaying other miners who are now busy downloading and validating
that huge block. The original miner of that large-block would be free to
continue hashing the next block, giving it an advantage.
Unfortunately, this block size limit opened a different attack. Prior to
the limit, any attempt to spam the network by anyone other than someone
mining their own transactions would have been economically unfeasible. As
every transaction would have a fee, there would have been a real cost for
every minute of spam. The end result would have been a transfer of wealth
from spammer to Bitcoin miners, which would have harmed the spammers and
encouraged further mining of Bitcoin, a very antifragile outcome.
But now we have the block size limit. Things are very different with this
feature in place. The beginning of a spam attack on the Bitcoin network
will incur transaction fees, just like before. But if spam continues at a
rate exceeding the block size limit long enough for transactions to be
dropped from mempools, the vast majority of spam transaction fees will never
have to be paid. In fact, as real users gain in desperation and pay higher
fees to get their transactions through in a timely manner, the spammers will
adjust their fees to minimize the cost of the attack and maximize
effectiveness. Using this method, they keep their fees at a point that
causes most of the spam transactions to be dropped without confirmation
(free spam), while forcing a floor for transaction fees. Thus, while spam
could be used by attackers to disable the network entirely, by paying
high-enough fees to actually fill the blocks with spam, it can also be used
by a single entity to force a transaction fee floor. Real users will be
forced to pay a transaction fee higher than the majority of the spam to get
their transactions confirmed. So this is an effective means for a minority
of miners to force higher fees through spam attacks, even in the face of
benevolent miners who would not support a higher fee floor by policy.
Miners would simply have no way to fix this, as they can only put in the
transactions that will fit under the block size limit.
In the face of such a spam attack, Bitcoin's credibility and usability would
be severely undermined. The block size limit enables this attack, and I now
argue for its removal. But we can't just remove it and ignore the problem
that it was intended to address. We need a new fix for the large-block
problem described in the first paragraph that does not suffer from the
dropped-transaction spam-attack problem that is enabled by the block size
limit today. My proposal is likely to be controversial, and I'm very much
open to hearing other better proposals.
Large blocks created by a miner as a means to spam other miners out of
competition is a problem because miners do not pay fees for their own
transactions when they mine them. They collect the fees they pay. This
breaks the economic barrier keeping people from spamming the network, as the
spamming is essentially free. The proposed fix is to add a new rule on how
fees are handled. Some amount of every fee should be considered as burned
and can never be spent. I will propose 50% of the fee here, but there may
be better numbers that can be discovered prior to putting this into place.
If we'd like miners to continue to collect the same fees after this change,
we can suggest the default fee per transaction to be doubled. Half of every
fee would be burned and disappear forever, effectively distributing the
value of those bitcoins across the entire money supply. The other half
would be collected by the miner of the block as is done today. This
solution would mean large blocks would cost a significant number of bitcoin
to create, even when all of the transactions are created by the miner of
that block. For this to work, we'd need to ensure a minimum fee is paid for
most of the transactions in every block, and the new transaction fee rule is
in place. Then the block size limit can be removed.
Raystonn
Published at
2023-06-07 15:37:02Event JSON
{
"id": "508d882a11a923aa7cc9d81dab0bf30546b60843e223a9d7ec22400a0e4509b2",
"pubkey": "3e6baaf01f15cb9383746ee7c1a225175502acbc3234f3e42160ad71d011e092",
"created_at": 1686152222,
"kind": 1,
"tags": [
[
"e",
"87a31647709d131b7c0b391071dd87fb26301bd49b03e22ae1ae5f0e22f42304",
"",
"reply"
],
[
"p",
"a23dbf6c6cc83e14cc3df4e56cc71845f611908084cfe620e83e40c06ccdd3d0"
]
],
"content": "📅 Original date posted:2015-06-08\n📝 Original message:When implemented, the block size limit was put in place to prevent the \npotential for a massive block to be used as an attack to benefit the miner \nof that block. The theory goes that such a massive block would enrich its \nminer by delaying other miners who are now busy downloading and validating \nthat huge block. The original miner of that large-block would be free to \ncontinue hashing the next block, giving it an advantage.\n\nUnfortunately, this block size limit opened a different attack. Prior to \nthe limit, any attempt to spam the network by anyone other than someone \nmining their own transactions would have been economically unfeasible. As \nevery transaction would have a fee, there would have been a real cost for \nevery minute of spam. The end result would have been a transfer of wealth \nfrom spammer to Bitcoin miners, which would have harmed the spammers and \nencouraged further mining of Bitcoin, a very antifragile outcome.\n\nBut now we have the block size limit. Things are very different with this \nfeature in place. The beginning of a spam attack on the Bitcoin network \nwill incur transaction fees, just like before. But if spam continues at a \nrate exceeding the block size limit long enough for transactions to be \ndropped from mempools, the vast majority of spam transaction fees will never \nhave to be paid. In fact, as real users gain in desperation and pay higher \nfees to get their transactions through in a timely manner, the spammers will \nadjust their fees to minimize the cost of the attack and maximize \neffectiveness. Using this method, they keep their fees at a point that \ncauses most of the spam transactions to be dropped without confirmation \n(free spam), while forcing a floor for transaction fees. Thus, while spam \ncould be used by attackers to disable the network entirely, by paying \nhigh-enough fees to actually fill the blocks with spam, it can also be used \nby a single entity to force a transaction fee floor. Real users will be \nforced to pay a transaction fee higher than the majority of the spam to get \ntheir transactions confirmed. So this is an effective means for a minority \nof miners to force higher fees through spam attacks, even in the face of \nbenevolent miners who would not support a higher fee floor by policy. \nMiners would simply have no way to fix this, as they can only put in the \ntransactions that will fit under the block size limit.\n\nIn the face of such a spam attack, Bitcoin's credibility and usability would \nbe severely undermined. The block size limit enables this attack, and I now \nargue for its removal. But we can't just remove it and ignore the problem \nthat it was intended to address. We need a new fix for the large-block \nproblem described in the first paragraph that does not suffer from the \ndropped-transaction spam-attack problem that is enabled by the block size \nlimit today. My proposal is likely to be controversial, and I'm very much \nopen to hearing other better proposals.\n\nLarge blocks created by a miner as a means to spam other miners out of \ncompetition is a problem because miners do not pay fees for their own \ntransactions when they mine them. They collect the fees they pay. This \nbreaks the economic barrier keeping people from spamming the network, as the \nspamming is essentially free. The proposed fix is to add a new rule on how \nfees are handled. Some amount of every fee should be considered as burned \nand can never be spent. I will propose 50% of the fee here, but there may \nbe better numbers that can be discovered prior to putting this into place. \nIf we'd like miners to continue to collect the same fees after this change, \nwe can suggest the default fee per transaction to be doubled. Half of every \nfee would be burned and disappear forever, effectively distributing the \nvalue of those bitcoins across the entire money supply. The other half \nwould be collected by the miner of the block as is done today. This \nsolution would mean large blocks would cost a significant number of bitcoin \nto create, even when all of the transactions are created by the miner of \nthat block. For this to work, we'd need to ensure a minimum fee is paid for \nmost of the transactions in every block, and the new transaction fee rule is \nin place. Then the block size limit can be removed.\n\nRaystonn",
"sig": "47f01e9a79bcc2b2371751297d12f747d1f14878f4cc9d8b63aecb91346ca588fecead67b4d008c38a2941faaa31ed2a9fb70b071b09a3b82311f85a9aaf3f85"
}