Skip to content

Commit e1197e6

Browse files
cron: update bips submodule and build
1 parent c1e6026 commit e1197e6

File tree

341 files changed

+2880
-1426
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

341 files changed

+2880
-1426
lines changed

bips

Submodule bips updated 89 files

web/content/104/index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ A hardcoded increase to max block size (2MB, 8MB, etc.), rejected because:
9191
Allow miners to vote for max block size, rejected because:
9292
* overly complex and political
9393
* human involvement makes this slow to respond to changing transaction volumes
94-
* focuses power over max block size to a relatively small group of people
94+
* focuses power over max block size to a relatively small group of people
9595
* unpredictable transaction fees caused by this would create uncertainty in the ecosystem
9696

9797

web/content/105/index.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -31,22 +31,22 @@ note = "THIS FILE IS AUTOMATICALLY GENERATED - NOT MEANT FOR EDITING"
3131
<h2>Abstract</h2>
3232

3333

34-
A method of altering the maximum allowed block size of the Bitcoin protocol
34+
A method of altering the maximum allowed block size of the Bitcoin protocol
3535
using a consensus based approach.
3636

3737
<h2>Motivation</h2>
3838

3939

40-
There is a belief that Bitcoin cannot easily respond to raising the
41-
blocksize limit if popularity was to suddenly increase due to a mass adoption
42-
curve, because co-ordinating a hard fork takes considerable time, and being
43-
unable to respond in a timely manner would irreparably harm the credibility of
40+
There is a belief that Bitcoin cannot easily respond to raising the
41+
blocksize limit if popularity was to suddenly increase due to a mass adoption
42+
curve, because co-ordinating a hard fork takes considerable time, and being
43+
unable to respond in a timely manner would irreparably harm the credibility of
4444
bitcoin.
4545

4646
Additionally, predetermined block size increases are problematic because they
47-
attempt to predict the future, and if too large could have unintended
48-
consequences like damaging the possibility for a fee market to develop
49-
as block subsidy decreases substantially over the next 9 years; introducing
47+
attempt to predict the future, and if too large could have unintended
48+
consequences like damaging the possibility for a fee market to develop
49+
as block subsidy decreases substantially over the next 9 years; introducing
5050
or exacerbating mining attack vectors; or somehow affect the network in unknown
5151
or unpredicted ways. Since fixed changes are hard to deploy, the damage could be
5252
extensive.
@@ -55,15 +55,15 @@ Dynamic block size adjustments also suffer from the potential to be gamed by the
5555
larger hash power.
5656

5757
Free voting as suggested by BIP100 allows miners to sell their votes out of band
58-
at no risk, and enable the sponsor the ability to manipulate the blocksize.
58+
at no risk, and enable the sponsor the ability to manipulate the blocksize.
5959
It also provides a cost free method or the larger pools to vote in ways to
6060
manipulate the blocksize such to disadvantage or attack smaller pools.
6161

6262

6363
<h2>Rationale</h2>
6464

6565

66-
By introducing a cost to increase the block size ensures the mining community
66+
By introducing a cost to increase the block size ensures the mining community
6767
will collude to increase it only when there is a clear necessity, and reduce it
6868
when it is unnecessary. Larger miners cannot force their wishes so easily
6969
because not only will they have to pay extra a difficulty target, then can be
@@ -84,7 +84,7 @@ honest.
8484
The initial block size limit shall be 1MB.
8585

8686
Each time a miner creates a block, they may vote to increase or decrease the
87-
blocksize by a maximum of 10% of the current block size limit. These votes will
87+
blocksize by a maximum of 10% of the current block size limit. These votes will
8888
be used to recalculate the new block size limit every 2016 blocks.
8989

9090
Votes are cast using the block's coinbase transaction scriptSig.
@@ -98,7 +98,7 @@ If a miner votes for an increase, the block hash must meet a difficulty target
9898
which is proportionally larger than the standard difficulty target based on the
9999
percentage increase they voted for.
100100

101-
Votes proposing decreasing the block size limit do not need to meet a higher
101+
Votes proposing decreasing the block size limit do not need to meet a higher
102102
difficulty target.
103103

104104
Miners can vote for no change by voting for the current block size.

web/content/106/index.md

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -61,14 +61,20 @@ https://blockchain.info/charts/avg-block-size?timespan=all&showDataPoints=false&
6161

6262
<h3>Proposal 2 : Depending on previous block size calculation and previous Tx fee collected by miners</h3>
6363

64+
6465
```
65-
6666
TotalBlockSizeInLastButOneDifficulty = Sum of all Block size of first 2008 blocks in last 2 difficulty period
6767
TotalBlockSizeInLastDifficulty = Sum of all Block size of second 2008 blocks in last 2 difficulty period (This actually includes 8 blocks from last but one difficulty)
68-
68+
```
69+
70+
71+
```
6972
TotalTxFeeInLastButOneDifficulty = Sum of all Tx fees of first 2008 blocks in last 2 difficulty period
7073
TotalTxFeeInLastDifficulty = Sum of all Tx fees of second 2008 blocks in last 2 difficulty period (This actually includes 8 blocks from last but one difficulty)
71-
74+
```
75+
76+
77+
```
7278
If ( ( (Sum of first 4016 block size in last 2 difficulty period)/4016 > 50% MaxBlockSize) AND (TotalTxFeeInLastDifficulty > TotalTxFeeInLastButOneDifficulty) AND (TotalBlockSizeInLastDifficulty > TotalBlockSizeInLastButOneDifficulty) )
7379
MaxBlockSize = TotalBlockSizeInLastDifficulty * MaxBlockSize / TotalBlockSizeInLastButOneDifficulty
7480
Else If ( ( (Sum of first 4016 block size in last 2 difficulty period)/4016 < 50% MaxBlockSize) AND (TotalTxFeeInLastDifficulty < TotalTxFeeInLastButOneDifficulty) AND (TotalBlockSizeInLastDifficulty < TotalBlockSizeInLastButOneDifficulty) )

web/content/107/index.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ Over the next few years, large infrastructure investments will be made into:
4444
1. General efficiency improvements to transactions and the blockchain
4545

4646

47-
* While there is a consensus between Bitcoin developers, miners, businesses and users that the block size needs to be increased, there is a lingering concern over the potential unintended consequences that may augment the trend towards network and mining centralization (largely driven by mining hardware such as ASICs) and thereby threaten the security of the network.
47+
* While there is a consensus between Bitcoin developers, miners, businesses and users that the block size needs to be increased, there is a lingering concern over the potential unintended consequences that may augment the trend towards network and mining centralization (largely driven by mining hardware such as ASICs) and thereby threaten the security of the network.
4848
* In contrast, failing to respond to elevated on-chain transaction volume may lead to a consumer-failure of Bitcoin, where ordinary users - having enjoyed over 6 years of submitting transactions on-chain at relatively low cost - will be priced out of blockchain with the emergence of a prohibitive 'fee market'.
4949
* These two concerns must be delicately balanced so that all users can benefit from a robust, scalable, and neutral network.
5050

@@ -62,7 +62,7 @@ Over the next few years, large infrastructure investments will be made into:
6262
* **Phase 2**
6363
* In 2020, the maximum block size will be increased dynamically according to sustained increases in transaction volume
6464
* Every 4032 blocks (~4 weeks), a CHECK will be performed to determine if a raise in the maximum block size should occur
65-
* This calculates to a theoretical maximum of 13 increases per year
65+
* This calculates to a theoretical maximum of 13 increases per year
6666
* IF of the last >= 3025 blocks were >=60% full, the maximum block size will be increased by 10%
6767
* The maximum block size can only ever be increased, not decreased
6868
* The default `limitfreerelay` will also be raised in proportion to maximum block size increases
@@ -72,8 +72,8 @@ Over the next few years, large infrastructure investments will be made into:
7272

7373
For example:
7474
* When the dynamic rules for increasing the block size go live on January 1st 2020, the starting maximum block size will be 6 MB
75-
* IF >=3025 blocks are >= 3.6 MB, the new maximum block size become 6.6 MB.
76-
* The theoretical maximum block size at the end of 2020 would be ~20.7 MB, assuming all 13 increases are triggered every 4 weeks by the end of the year.
75+
* IF >=3025 blocks are >= 3.6 MB, the new maximum block size become 6.6 MB.
76+
* The theoretical maximum block size at the end of 2020 would be ~20.7 MB, assuming all 13 increases are triggered every 4 weeks by the end of the year.
7777

7878

7979
<h2>Rationale</h2>
@@ -88,21 +88,21 @@ For example:
8888
* Setting the parameter too high may set the trigger sensitivity too low, causing transaction delays that are trying to be avoided in the first place
8989
* Between September 2013-2015, the standard deviation measured from average block size (n=730 data points from blockchain.info) was ~ 0.13 MB or 13% of the maximum block size
9090
* If blocks needed to be 90% full before an increase were triggered, normal variance in the average block size would mean some blocks would be full before an increase could be triggered
91-
* Therefore, we need a _safe distance_ away from the maximum block size to avoid normal block size variance hitting the limit. The 60% level represents a 3 standard deviation distance from the limit.
91+
* Therefore, we need a _safe distance_ away from the maximum block size to avoid normal block size variance hitting the limit. The 60% level represents a 3 standard deviation distance from the limit.
9292
* Why 3025 blocks?
9393
* The assessment period is 4032 blocks or ~ 4 weeks, with the threshold set as 4032 blocks/0.75 + 1
9494
* Increases in the maximum block size should only occur after a sustained trend can be observed in order to:
9595
* Demonstrate a market-driven secular elevation in the transaction volume
96-
* Increase the cost to trigger an increase by spam attacks or miner collusion with zero fee transactions
96+
* Increase the cost to trigger an increase by spam attacks or miner collusion with zero fee transactions
9797
* In other words, increases to the maximum block size must be conservative but meaningful to relieve transaction volume pressure in response to true market demand
9898
* Why 10% increase in the block size?
9999
* Increases in the block size are designed to be conservative and in balance with the number of theoretical opportunities to increase the block size per year
100-
* Makes any resources spent for spam attacks or miner collusion relatively expensive to achieve a minor increase in the block size. A sustained attack would need to be launched that may be too costly, and ideally detectable by the community
100+
* Makes any resources spent for spam attacks or miner collusion relatively expensive to achieve a minor increase in the block size. A sustained attack would need to be launched that may be too costly, and ideally detectable by the community
101101

102102

103103
<h2>Deployment</h2>
104104

105-
Similar deployment model to BIP101:
105+
Similar deployment model to BIP101:
106106
<blockquote>Activation is achieved when 750 of 1,000 consecutive blocks in the best chain have a version number with the first, second, third, and thirtieth bits set (0x20000007 in hex). The activation time will be the timestamp of the 750'th block plus a two week (1,209,600 second) grace period to give any remaining miners or services time to upgrade to support larger blocks.</blockquote>
107107

108108
<h2>Acknowledgements</h2>

web/content/109/index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ SPV (simple payment validation) wallets are compatible with this change.
9494
<h2>Rationale</h2>
9595

9696

97-
In the short term, an increase is needed to handle increasing transaction volume.
97+
In the short term, an increase is needed to handle increasing transaction volume.
9898

9999
The limits on signature operations and amount of signature hashing done prevent possible CPU exhaustion attacks by "rogue miners" producing very expensive-to-validate two megabyte blocks. The signature hashing limit is chosen to be impossible to reach with any non-attack transaction or block, to minimize the impact on existing mining or wallet software.
100100

web/content/112/index.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -95,13 +95,13 @@ address with the following redeemscript.
9595
```
9696

9797

98-
At any time funds can be spent using signatures from any two of Alice,
98+
At any time funds can be spent using signatures from any two of Alice,
9999
Bob or the Escrow.
100100

101101
After 30 days Alice can sign alone.
102102

103103
The clock does not start ticking until the payment to the escrow address
104-
confirms.
104+
confirms.
105105

106106

107107
<h3>Retroactive Invalidation</h3>
@@ -277,7 +277,7 @@ The 2-way pegged sidechain requires a new REORGPROOFVERIFY opcode, the semantics
277277
<h2>Specification</h2>
278278

279279

280-
Refer to the reference implementation, reproduced below, for the precise
280+
Refer to the reference implementation, reproduced below, for the precise
281281
semantics and detailed rationale for those semantics.
282282

283283
```
@@ -294,7 +294,7 @@ static const uint32_t SEQUENCE_LOCKTIME_TYPE_FLAG = (1 << 22);
294294
/* If CTxIn::nSequence encodes a relative lock-time, this mask is
295295
* applied to extract that lock-time from the sequence field. */
296296
static const uint32_t SEQUENCE_LOCKTIME_MASK = 0x0000ffff;
297-
297+
298298
case OP_NOP3:
299299
{
300300
if (!(flags & SCRIPT_VERIFY_CHECKSEQUENCEVERIFY)) {
@@ -337,7 +337,7 @@ case OP_NOP3:
337337
338338
break;
339339
}
340-
340+
341341
bool TransactionSignatureChecker::CheckSequence(const CScriptNum& nSequence) const
342342
{
343343
// Relative lock times are supported by comparing the passed

web/content/113/index.md

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -65,14 +65,17 @@ BIP68 (sequence numbers) and BIP112 (CHECKSEQUENCEVERIFY).
6565
<h2>Specification</h2>
6666

6767

68-
The values for transaction locktime remain unchanged. The difference is only in
69-
the calculation determining whether a transaction can be included. Instead of
70-
an unreliable timestamp, the following function is used to determine the current
68+
The values for transaction locktime remain unchanged. The difference is only in
69+
the calculation determining whether a transaction can be included. Instead of
70+
an unreliable timestamp, the following function is used to determine the current
7171
block time for the purpose of checking lock-time constraints:
7272

7373
```
7474
enum { nMedianTimeSpan=11 };
75-
75+
```
76+
77+
78+
```
7679
int64_t GetMedianTimePast(const CBlockIndex* pindex)
7780
{
7881
int64_t pmedian[nMedianTimeSpan];

web/content/119/index.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -435,7 +435,7 @@ transaction preimages.
435435

436436

437437
The Taproot/Schnorr BIPs use Tagged Hashes
438-
(`SHA256(SHA256(tag)||SHA256(tag)||msg)`) to prevent taproot leafs, branches,
438+
(`SHA256(SHA256(tag)||SHA256(tag)||msg)`) to prevent taproot leaves, branches,
439439
tweaks, and signatures from overlapping in a way that might introduce a security
440440
<a href="vulnerability" target="_blank">https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2018-June/016091.html</a>.
441441

@@ -545,7 +545,7 @@ The preimage argument passed to CHECKTEMPLATEVERIFY may be unknown or otherwise
545545
However, requiring knowledge that an address is spendable from is incompatible with sender's ability
546546
to spend to any address (especially, OP_RETURN). If a sender needs to know the template can be spent
547547
from before sending, they may request a signature of an provably non-transaction challenge string
548-
from the leafs of the CHECKTEMPLATEVERIFY tree.
548+
from the leaves of the CHECKTEMPLATEVERIFY tree.
549549

550550
<h4>Forwarding Addresses</h4>
551551

web/content/120/index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ An illustration of the PoP data structure and its original payment is shown belo
103103
|input2 4,ffffffff | 1,pay to B |
104104
| | 4,pay to C |
105105
+------------------------------------------------+
106-
106+
107107
PoP(T)
108108
+-------------------------------------------------------------+
109109
| inputs | outputs |

0 commit comments

Comments
 (0)