Skip to content

Commit 2d7093b

Browse files
authored
spellcheck
1 parent bbcab02 commit 2d7093b

File tree

1 file changed

+8
-10
lines changed

1 file changed

+8
-10
lines changed

bip-blind-merged-mining.mediawiki

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
21
<pre>
32

43
BIP: 301
@@ -49,7 +48,7 @@ To buy the right to find a sidechain block, users broadcast BMM Requests.
4948

5049
Here, these can take two forms. The first does not require the Lightning Network, but it does have new requirements for Immediate Expiration (see below). The second inherits Immediate Expiration from the Lightning Network itself, but requires extra preparation and a different/larger message.
5150

52-
Both forms require that certain Critical Data will be committed to within the coinbase of the block that the transaction is included in (see BMM Accept). For the OnChain (non-Lightning) version, we have created a new extended serialization transaction type (very similar to how segwit handles witness data (the witness stack)).
51+
Both forms require that certain Critical Data will be committed to within the coinbase of the block that the transaction is included in (see BMM Accept). For the OnChain (non-Lightning) version, we have created a new extended serialization transaction type (very similar to how SegWit handles witness data (the witness stack)).
5352

5453
==== Immediate Expiration ("Fill-or-Kill") ====
5554

@@ -78,7 +77,7 @@ sideHeaderHash comes from side:chain (side:nodes build side:blocks/headers). The
7877

7978
prevBlockRef, is a little more complicated (next section).
8079

81-
To qualify for inclusion in a block, BMM requests are subject to the following reqirements:
80+
To qualify for inclusion in a block, BMM requests are subject to the following requirements:
8281

8382
# Requests must match a corresponding "BMM Accept" (see last section of BIP).
8483
# At most, only one Request is allowed in a main:block, per sidechain. In other words, if 700 users broadcast BMM Requests for sidechain #4, then the main:miner must choose one single Request to include.
@@ -94,7 +93,7 @@ Above: Three blockchains, with different max length (small number), reorganizati
9493

9594
===== Extended Serialization =====
9695

97-
To impose new requirements at the transaction level, we borrow the dummy vin & "flag" trick from SegWit style transactions. Unless all of the requirements for sidechain critical data transactions are met by the block it is included in, the transaction is invalid. With SegWit, this extra data is the segwit signature stack, and the extra requirements are the signatures' locations and validity. In the sidechain BMM critical data transactions, the extra data is the (nSidechain, h\*) pair, which must meet the first two requirements (above) as well as the main:blocknumber, which must meet the third requirement (above).
96+
To impose new requirements at the transaction level, we borrow the dummy vin & "flag" trick from SegWit style transactions. Unless all of the requirements for sidechain critical data transactions are met by the block it is included in, the transaction is invalid. With SegWit, this extra data is the SegWit signature stack, and the extra requirements are the signatures' locations and validity. In the sidechain BMM critical data transactions, the extra data is the (nSidechain, h\*) pair, which must meet the first two requirements (above) as well as the main:blocknumber, which must meet the third requirement (above).
9897

9998
<img src="bip-blind-merged-mining/witness-vs-critical.png?raw=true" align="middle"></img>
10099

@@ -110,11 +109,11 @@ Lightning BMMRs require Simons to have a LN-channel pathways open with Marys. Th
110109

111110
LN txns cannot make use of prevSideBlockRef, as no one knows for sure when (or if) they will be broadcast on-chain. Instead, they must use prevSideBlockHash. But they otherwise require the same data:
112111

113-
<pre>
114-
4-bytes - Message header (0xD0520C6E)
112+
<pre>
113+
4-bytes - Message header (0xD0520C6E)
115114
1-byte - sidechain number
116-
32-bytes - h* side:block hash
117-
32-bytes - prevSideBlockHash
115+
32-bytes - h* side:block hash
116+
32-bytes - prevSideBlockHash
118117
</pre>
119118

120119
Notice that, in OnChain BMMRs, Simon could reuse the same h\* all he wanted, because only one OnChain BMMR could be included per main:block per sidechain. However, on the LN no such rule can be enforced, as the goal is to push everything off-chain and include *zero* txns. So, we will never know what the Requests were, or how many had an effect on anything.
@@ -173,7 +172,7 @@ Now that we have described Requests, we can describe how they are accepted.
173172

174173
=== BMM Accept ===
175174

176-
For each BMM Request that a main:miner "accepts", main:miners must place an OP Return ouput into their main:coinbase txn. (We've changed the tx-standardness policy to allow multiple OP_RETURNs.)
175+
For each BMM Request that a main:miner "accepts", main:miners must place an OP Return output into their main:coinbase txn. (We've changed the tx-standardness policy to allow multiple OP_RETURNs.)
177176

178177
The following data is required in the "accept" OP_RETURN output:
179178
1-byte - OP_RETURN (0x6a)
@@ -233,4 +232,3 @@ Thanks to everyone who contributed to the discussion, especially: ZmnSCPxj, Adam
233232
==Copyright==
234233

235234
This BIP is licensed under the BSD 2-clause license.
236-

0 commit comments

Comments
 (0)