Skip to content

Commit f61885e

Browse files
jbamptonmurchandamus
andauthoredApr 30, 2024··
docs: fix spelling (#1117)
Co-authored-by: Mark "Murch" Erhardt <murch@murch.one>
1 parent 2d9e431 commit f61885e

19 files changed

+36
-36
lines changed
 

‎bip-0014.mediawiki

+1-1
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ Version bumping can also introduce incompatibilities and fracture the network. I
2828

2929
By using a protocol version, we set all implementations on the network to a common standard. Everybody is able to agree within their confines what is protocol and what is implementation-dependent. A user agent string is offered as a 'vanity-plate' for clients to distinguish themselves in the network.
3030

31-
Separation of the network protocol from the implemention, and forming development of said protocol by means of a mutual consensus among participants, has the democratic disadvantage when agreement is hard to reach on contentious issues. To mitigate this issue, strong communication channels and fast release schedules are needed, and are outside the scope of this document (concerning a process-BIP type).
31+
Separation of the network protocol from the implementation, and forming development of said protocol by means of a mutual consensus among participants, has the democratic disadvantage when agreement is hard to reach on contentious issues. To mitigate this issue, strong communication channels and fast release schedules are needed, and are outside the scope of this document (concerning a process-BIP type).
3232

3333
User agents provide extra tracking information that is useful for keeping tabs on network data such as client implementations used or common architectures/operating-systems. In the rare case they may even provide an emergency method of shunning faulty clients that threaten network health- although this is strongly unrecommended and extremely bad form. The user agent does not provide a method for clients to work around and behave differently to different implementations, as this will lead to protocol fracturing.
3434

‎bip-0015.mediawiki

+2-2
Original file line numberDiff line numberDiff line change
@@ -348,7 +348,7 @@ By using DNS lookups, the MITM problem with IP transactions could be mitigated b
348348

349349
=== Namecoin ID ===
350350

351-
This proposal uses the Namecoin blockchain to associate an alias with a bitcoin address. Bitcoin queries a namecoin node. This retreives the structured data containing the bitcoin address(es) associated with this alias.
351+
This proposal uses the Namecoin blockchain to associate an alias with a bitcoin address. Bitcoin queries a namecoin node. This retrieves the structured data containing the bitcoin address(es) associated with this alias.
352352

353353
Using a decentralised domain name system like Namecoin, means no external server or entity needs to be trusted unlike the other proposals listed here. This indicates a system with the advantage of having a high availability and ease of entry (no restrictions for users to create aliases).
354354

@@ -401,4 +401,4 @@ Any text can be put into the brackets, allowing merchants to adapt it to all the
401401
New features can be added later to support uncovered cases.
402402

403403

404-
See the specification of [http://dot-bit.org/Namespace:Identity Namecoin ID] for more informations.
404+
See the specification of [http://dot-bit.org/Namespace:Identity Namecoin ID] for more information.

‎bip-0061.mediawiki

+1-1
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ Every reject message begins with the following fields. Some messages append extr
5757
|}
5858

5959
The human-readable string is intended only for debugging purposes; in particular, different implementations may
60-
use different strings. The string should not be shown to users or used for anthing besides diagnosing
60+
use different strings. The string should not be shown to users or used for anything besides diagnosing
6161
interoperability problems.
6262

6363
The following reject code categories are used; in the descriptions below, "server" is the peer generating

‎bip-0067.mediawiki

+3-3
Original file line numberDiff line numberDiff line change
@@ -53,10 +53,10 @@ Hash the redeem script according to BIP-0016 to get the P2SH address.
5353
3Q4sF6tv9wsdqu2NtARzNCpQgwifm2rAba
5454
5555
==Compatibility==
56-
* Uncompressed keys are incompatible with this specificiation. A compatible implementation should not automatically compress keys. Receiving an uncompressed key from a multisig participant should be interpreted as a sign that the user has an incompatible implementation.
57-
* P2SH addressses do not reveal information about the script that is receiving the funds. For this reason it is not technically possible to enforce this BIP as a rule on the network. Also, it would cause a hard fork.
56+
* Uncompressed keys are incompatible with this specification. A compatible implementation should not automatically compress keys. Receiving an uncompressed key from a multisig participant should be interpreted as a sign that the user has an incompatible implementation.
57+
* P2SH addresses do not reveal information about the script that is receiving the funds. For this reason it is not technically possible to enforce this BIP as a rule on the network. Also, it would cause a hard fork.
5858
* Implementations that do not conform with this BIP will have compatibility issues with strictly-compliant wallets.
59-
* Implementations which do adopt this standard will be cross-compatible when choosing multisig addressses.
59+
* Implementations which do adopt this standard will be cross-compatible when choosing multisig addresses.
6060
* If a group of users were not entirely compliant, there is the possibility that a participant will derive an address that the others will not recognize as part of the common multisig account.
6161
6262
==Test vectors==

‎bip-0078.mediawiki

+7-7
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,7 @@ If the receiver does not support the version of the sender, they should send an
143143
}
144144
</pre>
145145

146-
* <code>additionalfeeoutputindex=</code>, if the sender is willing to pay for increased fee, this indicate output can have its value substracted to pay for it.
146+
* <code>additionalfeeoutputindex=</code>, if the sender is willing to pay for increased fee, this indicate output can have its value subtracted to pay for it.
147147
148148
If the <code>additionalfeeoutputindex</code> is out of bounds or pointing to the payment output meant for the receiver, the receiver should ignore the parameter. See [[#fee-output|fee output]] for more information.
149149

@@ -198,7 +198,7 @@ It is advised to hard code the description of the well known error codes into th
198198
===<span id="fee-output"></span>Fee output===
199199

200200
In some situation, the sender might want to pay some additional fee in the payjoin proposal.
201-
If such is the case, the sender must use both [[#optional-params|optional parameters]] <code>additionalfeeoutputindex=</code> and <code>maxadditionalfeecontribution=</code> to indicate which output and how much the receiver can substract fee.
201+
If such is the case, the sender must use both [[#optional-params|optional parameters]] <code>additionalfeeoutputindex=</code> and <code>maxadditionalfeecontribution=</code> to indicate which output and how much the receiver can subtract fee.
202202

203203
There is several cases where a fee output is useful:
204204

@@ -273,7 +273,7 @@ The sender should check the payjoin proposal before signing it to prevent a mali
273273
* For each outputs in the proposal:
274274
** Verify that no keypaths is in the PSBT output
275275
** If the output is the [[#fee-output|fee output]]:
276-
*** The amount that was substracted from the output's value is less than or equal to <code>maxadditionalfeecontribution</code>. Let's call this amount <code>actual contribution</code>.
276+
*** The amount that was subtracted from the output's value is less than or equal to <code>maxadditionalfeecontribution</code>. Let's call this amount <code>actual contribution</code>.
277277
*** Make sure the actual contribution is only paying fee: The <code>actual contribution</code> is less than or equals to the difference of absolute fee between the payjoin proposal and the original PSBT.
278278
*** Make sure the actual contribution is only paying for fee incurred by additional inputs: <code>actual contribution</code> is less than or equals to <code>originalPSBTFeeRate * vsize(sender_input_type) * (count(payjoin_proposal_inputs) - count(original_psbt_inputs))</code>. (see [[#fee-output|Fee output]] section)
279279
** If the output is the payment output and payment output substitution is allowed.
@@ -344,7 +344,7 @@ On top of this the receiver can poison analysis by randomly faking a round amoun
344344

345345
===<span id="output-substitution"></span>Payment output substitution===
346346

347-
Unless disallowed by sender explicitely via `disableoutputsubstitution=true` or by the BIP21 url via query parameter the `pjos=0`, the receiver is free to decrease the amount, remove, or change the scriptPubKey output paying to himself.
347+
Unless disallowed by sender explicitly via `disableoutputsubstitution=true` or by the BIP21 url via query parameter the `pjos=0`, the receiver is free to decrease the amount, remove, or change the scriptPubKey output paying to himself.
348348
Note that if payment output substitution is disallowed, the reveiver can still increase the amount of the output. (See [[#reference-impl|the reference implementation]])
349349

350350
For example, if the sender's scriptPubKey type is P2WPKH while the receiver's payment output in the original PSBT is P2SH, then the receiver can substitute the payment output to be P2WPKH to match the sender's scriptPubKey type.
@@ -413,7 +413,7 @@ Here is pseudo code of a sender implementation.
413413
The <code>signedPSBT</code> represents a PSBT which has been fully signed, but not yet finalized.
414414
We then prepare <code>originalPSBT</code> from the <code>signedPSBT</code> via the <code>CreateOriginalPSBT</code> function and get back the <code>proposal</code>.
415415

416-
While we verify the <code>proposal</code>, we also import into it informations about our own inputs and outputs from the <code>signedPSBT</code>.
416+
While we verify the <code>proposal</code>, we also import into it information about our own inputs and outputs from the <code>signedPSBT</code>.
417417
At the end of this <code>RequestPayjoin</code>, the proposal is verified and ready to be signed.
418418

419419
We logged the different PSBT involved, and show the result in our [[#test-vectors|test vectors]].
@@ -557,7 +557,7 @@ public async Task<PSBT> RequestPayjoin(
557557
if (output.OriginalTxOut == feeOutput)
558558
{
559559
var actualContribution = feeOutput.Value - proposedPSBTOutput.Value;
560-
// The amount that was substracted from the output's value is less than or equal to maxadditionalfeecontribution
560+
// The amount that was subtracted from the output's value is less than or equal to maxadditionalfeecontribution
561561
if (actualContribution > optionalParameters.MaxAdditionalFeeContribution)
562562
throw new PayjoinSenderException("The actual contribution is more than maxadditionalfeecontribution");
563563
// Make sure the actual contribution is only paying fee
@@ -642,7 +642,7 @@ A successful exchange with:
642642

643643
{| class="wikitable"
644644
!InputScriptType
645-
!Orginal PSBT Fee rate
645+
!Original PSBT Fee rate
646646
!maxadditionalfeecontribution
647647
!additionalfeeoutputindex
648648
|-

‎bip-0083.mediawiki

+1-1
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ p //' n instead of p / 0' / n
5353

5454
Rather than specifying upfront which path is to be used for a specific purpose (i.e. external invoicing vs. internal change), different applications can specify arbitrary parent nodes and derivation paths. This allows for nesting of sublevels to arbitrary depth with application-specified semantics. Rather than trying to specify use cases upfront, we leave the design completely open-ended. Different applications can exchange these mappings for interoperability. Eventually, if certain mappings become popular, application user interfaces can provide convenient shortcuts or use them as defaults.
5555

56-
Note that BIP32 suggests reserving child 0 for the derivation of signing keys rather than sublevels. It is not really necessary to reserve signing key parents, however, as each key's parent's path can be explicitly stated. But unless we reserve a child for sublevel derivation, we lose the ability to nest deeper levels into the hierarchy. While we could reserve any arbitrary index for nesting sublevels, reserving child 0 seems simplest to implement, leaving all indices > 0 for contiguously indexed signing keys. We could also use MAX_INDEX (2<sup>31</sup> - 1) for this purpose. However, we believe doing so introduces more ideosyncracies into the semantics and will present a problem if we ever decide to extend the scheme to use indices larger than 31 bits.
56+
Note that BIP32 suggests reserving child 0 for the derivation of signing keys rather than sublevels. It is not really necessary to reserve signing key parents, however, as each key's parent's path can be explicitly stated. But unless we reserve a child for sublevel derivation, we lose the ability to nest deeper levels into the hierarchy. While we could reserve any arbitrary index for nesting sublevels, reserving child 0 seems simplest to implement, leaving all indices > 0 for contiguously indexed signing keys. We could also use MAX_INDEX (2<sup>31</sup> - 1) for this purpose. However, we believe doing so introduces more idiosyncrasies into the semantics and will present a problem if we ever decide to extend the scheme to use indices larger than 31 bits.
5757

5858
==Use Cases==
5959

‎bip-0099.mediawiki

+1-1
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ development, diversity, etc) to fork the Bitcoin Core software and it's good
5656
that there's many alternative implementations of the protocol (forks
5757
of Bitcoin Core or written from scratch).
5858

59-
But sometimes a bug in the reimplementaion of the consensus
59+
But sometimes a bug in the reimplementation of the consensus
6060
validation rules can prevent users of alternative implementation from
6161
following the longest (most work) valid chain. This can result in
6262
those users losing coins or being defrauded, making reimplementations

‎bip-0109.mediawiki

+1-1
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ In particular:
3737

3838
* The coinbase scriptSig is not counted
3939
* Signature operations in un-executed branches of a Script are not counted
40-
* OP_CHECKMULTISIG evaluations are counted accurately; if the signature for a 1-of-20 OP_CHECKMULTISIG is satisified by the public key nearest the top of the execution stack, it is counted as one signature operation. If it is satisfied by the public key nearest the bottom of the execution stack, it is counted as twenty signature operations.
40+
* OP_CHECKMULTISIG evaluations are counted accurately; if the signature for a 1-of-20 OP_CHECKMULTISIG is satisfied by the public key nearest the top of the execution stack, it is counted as one signature operation. If it is satisfied by the public key nearest the bottom of the execution stack, it is counted as twenty signature operations.
4141
* Signature operations involving invalidly encoded signatures or public keys are not counted towards the limit
4242
4343
=== Add a new limit of 1,300,000,000 bytes hashed to compute transaction signatures per block ===

‎bip-0126.mediawiki

+8-8
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414

1515
When a Bitcoin transaction contains inputs that reference previous transaction outputs sent to different Bitcoin addresses, personally identifiable information of the user will leak into the blockchain in an uncontrolled manner. While undesirable, these transactions are frequently unavoidable due to the natural fragmentation of wallet balances over time.
1616

17-
This document proposes a set of best practice guidelines which minimize the uncontrolled disclosure of personally identifiable information by defining standard forms for transactions containing heterogenous input scripts.
17+
This document proposes a set of best practice guidelines which minimize the uncontrolled disclosure of personally identifiable information by defining standard forms for transactions containing heterogeneous input scripts.
1818

1919
==Copyright==
2020

@@ -23,8 +23,8 @@ This BIP is in the public domain.
2323
==Definitions==
2424

2525
* '''Heterogenous input script transaction (HIT)''': A transaction containing multiple inputs where the scripts of the previous transaction outputs being consumed are not identical (e.g. a transaction spending outputs which were sent to more than one Bitcoin address)
26-
* '''Unavoidable heterogenous input script transaction''': A HIT created as a result of a user’s desire to create a new output with a value larger than the value of his wallet's largest existing unspent output
27-
* '''Intentional heterogenous input script transaction''': A HIT created as part of a user protection protocol for reducing uncontrolled disclosure of personally-identifying information (PII)
26+
* '''Unavoidable heterogeneous input script transaction''': A HIT created as a result of a user’s desire to create a new output with a value larger than the value of his wallet's largest existing unspent output
27+
* '''Intentional heterogeneous input script transaction''': A HIT created as part of a user protection protocol for reducing uncontrolled disclosure of personally-identifying information (PII)
2828
2929
Throughout this procedure, when input scripts are evaluated for uniqueness, "input script" should be interpreted to mean, "the script of the previous output referenced by an input to a transaction".
3030

@@ -33,18 +33,18 @@ Throughout this procedure, when input scripts are evaluated for uniqueness, "inp
3333
The recommendations in this document are designed to accomplish three goals:
3434

3535
# Maximise the effectiveness of user-protecting protocols: Users may find that protection protocols are counterproductive if such transactions have a distinctive fingerprint which renders them ineffective.
36-
# Minimise the adverse consequences of unavoidable heterogenous input transactions: If unavoidable HITs are indistinguishable from intentional HITs, a user creating an unavoidable HIT benefits from ambiguity with respect to graph analysis.
36+
# Minimise the adverse consequences of unavoidable heterogeneous input transactions: If unavoidable HITs are indistinguishable from intentional HITs, a user creating an unavoidable HIT benefits from ambiguity with respect to graph analysis.
3737
# Limiting the effect on UTXO set growth: To date, non-standardized intentional HITs tend to increase the network's UTXO set with each transaction; this standard attempts to minimize this effect by standardizing unavoidable and intentional HITs to limit UTXO set growth.
3838
39-
In order to achieve these goals, this specification proposes a set of best practices for heterogenous input script transaction creation. These practices accommodate all applicable requirements of both intentional and unavoidable HITs while maximising the effectiveness of both in terms of preventing uncontrolled disclosure of PII.
39+
In order to achieve these goals, this specification proposes a set of best practices for heterogeneous input script transaction creation. These practices accommodate all applicable requirements of both intentional and unavoidable HITs while maximising the effectiveness of both in terms of preventing uncontrolled disclosure of PII.
4040

4141
In order to achieve this, two forms of HIT are proposed: Standard form and alternate form.
4242

4343
==Interaction with Other Procedures==
4444

4545
Applications which wish to comply both with this procedure and BIP69 should apply this procedure prior to applying BIP69.
4646

47-
==Standard form heterogenous input script transaction==
47+
==Standard form heterogeneous input script transaction==
4848

4949
===Rules===
5050

@@ -63,7 +63,7 @@ The requirement that all output scripts are unique prevents address reuse. Restr
6363

6464
The requirement for at least one pair of outputs in an intentional HIT to be of equal value results in optimal behavior, and causes intentional HITs to resemble unavoidable HITs.
6565

66-
==Alternate form heterogenous input script transactions==
66+
==Alternate form heterogeneous input script transactions==
6767

6868
The formation of a standard form HIT is not possible in the following cases:
6969

@@ -100,7 +100,7 @@ An HIT formed via the preceding procedure will adhere to the following condition
100100
## The sum of the inputs in the set minus the value of the change output is equal to the standard value with a tolerance equal to the transaction fee.
101101
## Change outputs with a value of zero (virtual change outputs) are permitted. The are defined for the purpose of testing whether or not a HIT adheres to this specification but are not present in the version of the transaction which is broadcast to the network.
102102
103-
==Non-compliant heterogenous input script transactions==
103+
==Non-compliant heterogeneous input script transactions==
104104

105105
If a user wishes to create an output that is larger than half the total size of their spendable outputs, or if their inputs are not distributed in a manner in which the alternate form procedure can be completed, then the user can not create a transaction which is compliant with this procedure.
106106

0 commit comments

Comments
 (0)
Please sign in to comment.