From 4f3389f71d605f3c34ef763d094ca738ff988307 Mon Sep 17 00:00:00 2001 From: Brian McMichael Date: Sat, 22 Feb 2020 20:33:47 -0500 Subject: [PATCH 01/19] Hyphen in compound word --- glossary.asciidoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/glossary.asciidoc b/glossary.asciidoc index c601724..ebb3022 100644 --- a/glossary.asciidoc +++ b/glossary.asciidoc @@ -95,7 +95,7 @@ Capacity:: It is not to be confused with the balance. c-lightning:: - Implementation of the Lightning Network Protocol by the Victoria based Blockstream. It is written in C. + Implementation of the Lightning Network Protocol by the Victoria-based Blockstream. It is written in C. Closing Transaction:: If both channel partners agree to close a channel they will create a spent of the funding transaction that reflects the most recent commitment transaction. From cef9d85bdcba82e9482b547c65d62c4adb2eaeff Mon Sep 17 00:00:00 2001 From: Brian McMichael Date: Sat, 22 Feb 2020 20:39:14 -0500 Subject: [PATCH 02/19] Unclear what 'spent' means --- glossary.asciidoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/glossary.asciidoc b/glossary.asciidoc index ebb3022..1420dfa 100644 --- a/glossary.asciidoc +++ b/glossary.asciidoc @@ -98,7 +98,7 @@ c-lightning:: Implementation of the Lightning Network Protocol by the Victoria-based Blockstream. It is written in C. Closing Transaction:: - If both channel partners agree to close a channel they will create a spent of the funding transaction that reflects the most recent commitment transaction. + If both channel partners agree to close a channel they will create an exercise settlement transaction that reflects the most recent commitment transaction. It does not include any Hashed Time Lock Contracts or Revocable Sequence Maturity Contracts. After exchanging signatures for a closing transaction no further channel updates should be made, as this one allows one side to enforce the closing transaction on the blockchain. Mutually closing a channel with the help of a closing transaction has the advantage that less blockchain transactions are required to claim all funds, in comparison to unilaterally forcing a channel close by publishing a commitment transaction. Additionally, funds are for both parties immediately spendable from a closing transaction. From 96e3700b0635a68cc45362b56029460da29cec47 Mon Sep 17 00:00:00 2001 From: Brian McMichael Date: Sat, 22 Feb 2020 20:40:16 -0500 Subject: [PATCH 03/19] less -> fewer --- glossary.asciidoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/glossary.asciidoc b/glossary.asciidoc index 1420dfa..d2eb1e0 100644 --- a/glossary.asciidoc +++ b/glossary.asciidoc @@ -101,7 +101,7 @@ Closing Transaction:: If both channel partners agree to close a channel they will create an exercise settlement transaction that reflects the most recent commitment transaction. It does not include any Hashed Time Lock Contracts or Revocable Sequence Maturity Contracts. After exchanging signatures for a closing transaction no further channel updates should be made, as this one allows one side to enforce the closing transaction on the blockchain. - Mutually closing a channel with the help of a closing transaction has the advantage that less blockchain transactions are required to claim all funds, in comparison to unilaterally forcing a channel close by publishing a commitment transaction. Additionally, funds are for both parties immediately spendable from a closing transaction. + Mutually closing a channel with the help of a closing transaction has the advantage that fewer blockchain transactions are required to claim all funds, in comparison to unilaterally forcing a channel close by publishing a commitment transaction. Additionally, funds are for both parties immediately spendable from a closing transaction. coinbase:: A special field used as the sole input for coinbase transactions. The coinbase allows claiming the block reward and provides up to 100 bytes for arbitrary data. From 8cc298fd7ddb73163b039c7ce02f7d77770d8376 Mon Sep 17 00:00:00 2001 From: Brian McMichael Date: Sat, 22 Feb 2020 20:42:33 -0500 Subject: [PATCH 04/19] If you say first, say second --- glossary.asciidoc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/glossary.asciidoc b/glossary.asciidoc index d2eb1e0..e0550df 100644 --- a/glossary.asciidoc +++ b/glossary.asciidoc @@ -106,8 +106,8 @@ Closing Transaction:: coinbase:: A special field used as the sole input for coinbase transactions. The coinbase allows claiming the block reward and provides up to 100 bytes for arbitrary data. The block reward consists of two things. - First newly generated coins. The amount of allowed coins to be generated is part of the consensus rules and decreases over time based on the current block height. - In addition to the newly generated coins, the miner is also allowed to add all the fees of the transactions from the current block to the coinbase. + First, newly generated coins. The amount of allowed coins to be generated is part of the consensus rules and decreases over time based on the current block height. + Second, the miner is also allowed to add all the fees of the transactions from the current block to the coinbase. Not to be confused with Coinbase transaction. coinbase transaction:: From ff55708003bea534a6985aa95d6078b2b2b67861 Mon Sep 17 00:00:00 2001 From: Brian McMichael Date: Sat, 22 Feb 2020 20:43:54 -0500 Subject: [PATCH 05/19] Glossary entries for these items are not capitalized --- glossary.asciidoc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/glossary.asciidoc b/glossary.asciidoc index e0550df..6f667c2 100644 --- a/glossary.asciidoc +++ b/glossary.asciidoc @@ -108,11 +108,11 @@ coinbase:: The block reward consists of two things. First, newly generated coins. The amount of allowed coins to be generated is part of the consensus rules and decreases over time based on the current block height. Second, the miner is also allowed to add all the fees of the transactions from the current block to the coinbase. - Not to be confused with Coinbase transaction. + Not to be confused with coinbase transaction. coinbase transaction:: The first transaction in a block. Always created by a miner, it includes a single coinbase. - Not to be confused with Coinbase. + Not to be confused with coinbase. cold storage:: Refers to keeping a reserve of bitcoin offline. Cold storage is achieved when Bitcoin private keys are created and stored in a secure offline environment. Cold storage is important for anyone with bitcoin holdings. Online computers are vulnerable to hackers and should not be used to store a significant amount of bitcoin. From df107e8f2b03dd4551e262f7344284c33dcec7f9 Mon Sep 17 00:00:00 2001 From: Brian McMichael Date: Sat, 22 Feb 2020 20:46:33 -0500 Subject: [PATCH 06/19] depluralize --- glossary.asciidoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/glossary.asciidoc b/glossary.asciidoc index 6f667c2..9361b22 100644 --- a/glossary.asciidoc +++ b/glossary.asciidoc @@ -123,7 +123,7 @@ Commitment Transaction:: One output also holds a Revocable Sequence Maturity Contract which is made to disincentivize a channel partner to broadcast an old commitment transaction to the Bitcoin network. This effectively invalidates old commitment transactions. Broadcasting a commitment transaction forces a unilateral channel close. - Up to 483 Hashed Time Lock Contracts can be stored as additional outputs in the commitment transactions allow the routing of payments. + Up to 483 Hashed Time Lock Contracts can be stored as additional outputs in the commitment transaction to allow the routing of payments. In order to be able to ascribe blame in the case of unilateral channel closes, each channel partner has a slightly different commitment transaction. // TODO probably don't explain the difference with the RSMC here From 37548068d1832d75458127df19d252e829990ffa Mon Sep 17 00:00:00 2001 From: Brian McMichael Date: Sat, 22 Feb 2020 20:49:09 -0500 Subject: [PATCH 07/19] comma --- glossary.asciidoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/glossary.asciidoc b/glossary.asciidoc index 9361b22..eab2538 100644 --- a/glossary.asciidoc +++ b/glossary.asciidoc @@ -150,7 +150,7 @@ Diffie Hellman Key Exchange:: Digital Signature:: A digital signature is a mathematical scheme for verifying the authenticity of digital messages or documents. - A valid digital signature gives a recipient reason to believe that the message was created by a known sender, that the sender cannot deny having sent the message and that the message was not altered in transit. + A valid digital signature gives a recipient reason to believe that the message was created by a known sender, that the sender cannot deny having sent the message, and that the message was not altered in transit. They can be seen as cryptographic commitments in which the message is not hidden. https://en.wikipedia.org/w/index.php?title=Digital_signature&oldid=876680165 From 71965fee393c442e18dddd6223fdeee8edd939bb Mon Sep 17 00:00:00 2001 From: Brian McMichael Date: Sat, 22 Feb 2020 20:52:30 -0500 Subject: [PATCH 08/19] RSMC caps --- glossary.asciidoc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/glossary.asciidoc b/glossary.asciidoc index eab2538..037eade 100644 --- a/glossary.asciidoc +++ b/glossary.asciidoc @@ -188,12 +188,12 @@ fees:: Funding Transaction:: The funding transaction is used to open a payment channel. - From the perspective of the Bitcoin network, the process of opening a channel by creating a rsmc is started by creating the funding transaction and finished by broadcasting it to the Bitcoin network and have it included in the blockchain. + From the perspective of the Bitcoin network, the process of opening a channel by creating a RSMC is started by creating the funding transaction and finished by broadcasting it to the Bitcoin network and have it included in the blockchain. The value of the funding transaction is exactly the capacity of the payment channel. The output of the funding transaction is a 2-out-of-2 multisignature script (multisig) where each channel partner controls one key. It is supposed to be spent by the commitment transactions or by the closing transaction. Due to its multisig nature, it can only be spent mutually. - It is part of the rsmc to ensure that either side of the channel can withdraw their funds without the necessity to trust the channel partner. + It is part of the RSMC to ensure that either side of the channel can withdraw their funds without the necessity to trust the channel partner. Globalfeatures:: Globalfeatures of a Lightning Network node are the features of interest for all other nodes. From 26e209d80f2f43f04b58fd23462ffcc683a359e3 Mon Sep 17 00:00:00 2001 From: Brian McMichael Date: Sat, 22 Feb 2020 20:56:46 -0500 Subject: [PATCH 09/19] send->sent --- glossary.asciidoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/glossary.asciidoc b/glossary.asciidoc index 037eade..7873d2b 100644 --- a/glossary.asciidoc +++ b/glossary.asciidoc @@ -240,7 +240,7 @@ Invoice:: Invoices can also include a fallback Bitcoin address to which the payment can be made in case no route can be found, as well as hints for routing a payment through a private channel. Lightning Message:: - A Lightning message is an encrypted data string that can be send between two peers on the Lightning Network. Similar to other communication protocols lightning messages consist of a header and a body. The header and the body have their own HMAC. This ensures that the headers of fixed length will also be encrypted and adversaries won't be able to figure out what messages are being send by inspecting the length. + A Lightning message is an encrypted data string that can be sent between two peers on the Lightning Network. Similar to other communication protocols lightning messages consist of a header and a body. The header and the body have their own HMAC. This ensures that the headers of fixed length will also be encrypted and adversaries won't be able to figure out what messages are being send by inspecting the length. Lightning Network:: The Lightning Network is a protocol on top of Bitcoin (or other cryptocurrencies). From ac1d8f3af1244a628c5204a702a307ff2d737993 Mon Sep 17 00:00:00 2001 From: Brian McMichael Date: Sat, 22 Feb 2020 20:57:06 -0500 Subject: [PATCH 10/19] send->sent --- glossary.asciidoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/glossary.asciidoc b/glossary.asciidoc index 7873d2b..60da48f 100644 --- a/glossary.asciidoc +++ b/glossary.asciidoc @@ -240,7 +240,7 @@ Invoice:: Invoices can also include a fallback Bitcoin address to which the payment can be made in case no route can be found, as well as hints for routing a payment through a private channel. Lightning Message:: - A Lightning message is an encrypted data string that can be sent between two peers on the Lightning Network. Similar to other communication protocols lightning messages consist of a header and a body. The header and the body have their own HMAC. This ensures that the headers of fixed length will also be encrypted and adversaries won't be able to figure out what messages are being send by inspecting the length. + A Lightning message is an encrypted data string that can be sent between two peers on the Lightning Network. Similar to other communication protocols lightning messages consist of a header and a body. The header and the body have their own HMAC. This ensures that the headers of fixed length will also be encrypted and adversaries won't be able to figure out what messages are being sent by inspecting the length. Lightning Network:: The Lightning Network is a protocol on top of Bitcoin (or other cryptocurrencies). From f9921a167928e6883099c57159f1a5e344b4638b Mon Sep 17 00:00:00 2001 From: Brian McMichael Date: Sat, 22 Feb 2020 20:57:33 -0500 Subject: [PATCH 11/19] ox comma --- glossary.asciidoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/glossary.asciidoc b/glossary.asciidoc index 60da48f..524bbe7 100644 --- a/glossary.asciidoc +++ b/glossary.asciidoc @@ -245,7 +245,7 @@ Lightning Message:: Lightning Network:: The Lightning Network is a protocol on top of Bitcoin (or other cryptocurrencies). It creates a network of payment channels which enables the trustless forwarding of payments through the network with the help of HTLCs and Onion Routing. - Other components of the lightning network are the gossip protocol, the transport layer and payment requests. + Other components of the lightning network are the gossip protocol, the transport layer, and payment requests. Lightning Network Node:: TBD. From 44c702da6429b87da76613066ad19cc3993be28e Mon Sep 17 00:00:00 2001 From: Brian McMichael Date: Sat, 22 Feb 2020 20:58:56 -0500 Subject: [PATCH 12/19] add configurable --- glossary.asciidoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/glossary.asciidoc b/glossary.asciidoc index 524bbe7..05d0549 100644 --- a/glossary.asciidoc +++ b/glossary.asciidoc @@ -255,7 +255,7 @@ lnd:: It is written in Go. Localfeatures:: - Localfeatures of a Lightning Network node are the features of direct interest of the peer. + Localfeatures of a Lightning Network node are the configurable features of direct interest of the peer. They are announced in the `_init_` message of the peer protocol as well as the `_channel_announcement_` and `_node_announcement_` messages of the gossip protocol. Locktime:: From be5d262160496a8b4c43309cba474fccdc8c5127 Mon Sep 17 00:00:00 2001 From: Brian McMichael Date: Sat, 22 Feb 2020 21:02:44 -0500 Subject: [PATCH 13/19] 2 party -> two-party --- glossary.asciidoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/glossary.asciidoc b/glossary.asciidoc index 05d0549..17882fd 100644 --- a/glossary.asciidoc +++ b/glossary.asciidoc @@ -268,7 +268,7 @@ Millisatoshi:: multisignature:: Multisignature (multisig) refers to requiring more than one key to authorize a Bitcoin transaction. Payment channels are always encoded as multisignature addresses requiring one signature from each peer of the payment channel. - In the standard case of a 2 party payment channel a 2-2 multisignature address is used. + In the standard case of a two-party payment channel a 2-2 multisignature address is used. Noise_XK:: The template of the Noise protocol framework to establish an authenticated and encrypted communication channel between two peers of the lightning network. From 00be6c267d702792185902b43f877b5c82ff150f Mon Sep 17 00:00:00 2001 From: Brian McMichael Date: Sat, 22 Feb 2020 22:02:48 -0500 Subject: [PATCH 14/19] tres comas --- glossary.asciidoc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/glossary.asciidoc b/glossary.asciidoc index 17882fd..a0aaee2 100644 --- a/glossary.asciidoc +++ b/glossary.asciidoc @@ -335,12 +335,12 @@ Penalty Transaction:: Look at the breach remedy transaction. Preimage:: - In mathematics given a function $f$ and a value $h$ the preimage of $h$ with respect to $f$ is the set of values $R = \{r_1,r_2,...\}$ such that $f(r_i) = h$ for all $\r_i \in R$. + In mathematics, given a function $f$ and a value $h$ the preimage of $h$ with respect to $f$ is the set of values $R = \{r_1,r_2,...\}$ such that $f(r_i) = h$ for all $\r_i \in R$. In layman's terms, it is the set of values which is mapped to $h$ by the function $f$. This preimage set can be empty, finite or infinite. - In cryptography the function $f$ is usually taken to be a hash function. + In cryptography, the function $f$ is usually taken to be a hash function. Cryptographers use the term preimage for an arbitrary element of $R$. - In particular when using SHA-256 we should state that each element has an infinite amount of preimages. + In particular, when using SHA-256 we should state that each element has an infinite amount of preimages. Yet it is still believed to be computationally hard to find such a preimage. Proof-of-Work:: From cc782a60db7b12f0091699580fc0b06f1293bd2e Mon Sep 17 00:00:00 2001 From: Brian McMichael Date: Sat, 22 Feb 2020 22:06:23 -0500 Subject: [PATCH 15/19] broadcast is preferred past participle --- glossary.asciidoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/glossary.asciidoc b/glossary.asciidoc index a0aaee2..3cc50fc 100644 --- a/glossary.asciidoc +++ b/glossary.asciidoc @@ -371,7 +371,7 @@ Topology:: The topology of the Lightning Network describes the shape of the Lightning Network as a mathematical graph. Nodes of the graph are the Lightning Network nodes or participants. The edges of the graph are the payment channels. - The topology of the Lightning Network is publicly broadcasted with the help of the gossip protocol unless nodes decide to act privately. + The topology of the Lightning Network is publicly broadcast with the help of the gossip protocol unless nodes decide to act privately. This means that the Lightning Network is probably larger than the announced number of nodes. Knowing the topology is of particular interest in the source based routing process of payments in which the sender discovers a route. Also, the topology is important for features like the autopilot. From 41dcde3751f50fa22ef48f939ee11a584b3877df Mon Sep 17 00:00:00 2001 From: Brian McMichael Date: Sat, 22 Feb 2020 22:07:07 -0500 Subject: [PATCH 16/19] based hyphen --- glossary.asciidoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/glossary.asciidoc b/glossary.asciidoc index 3cc50fc..ce031b6 100644 --- a/glossary.asciidoc +++ b/glossary.asciidoc @@ -373,7 +373,7 @@ Topology:: The edges of the graph are the payment channels. The topology of the Lightning Network is publicly broadcast with the help of the gossip protocol unless nodes decide to act privately. This means that the Lightning Network is probably larger than the announced number of nodes. - Knowing the topology is of particular interest in the source based routing process of payments in which the sender discovers a route. + Knowing the topology is of particular interest in the source-based routing process of payments in which the sender discovers a route. Also, the topology is important for features like the autopilot. satoshi:: From 728a94a9a5fbc1d6efbbdc82c432c4885965322a Mon Sep 17 00:00:00 2001 From: Brian McMichael Date: Sat, 22 Feb 2020 22:07:46 -0500 Subject: [PATCH 17/19] group of people --- glossary.asciidoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/glossary.asciidoc b/glossary.asciidoc index ce031b6..49e3087 100644 --- a/glossary.asciidoc +++ b/glossary.asciidoc @@ -380,7 +380,7 @@ satoshi:: A satoshi is the smallest denomination of bitcoin that can be recorded on the blockchain. It is the equivalent of 0.00000001 bitcoin and is named after the creator of Bitcoin, Satoshi Nakamoto. ((("satoshi"))) Satoshi Nakamoto:: - Satoshi Nakamoto is the name used by the person or people who designed Bitcoin and created its original reference implementation, Bitcoin Core. As a part of the implementation, they also devised the first blockchain database. In the process, they were the first to solve the double-spending problem for digital currency. Their real identity remains unknown. + Satoshi Nakamoto is the name used by the person or group of people who designed Bitcoin and created its original reference implementation, Bitcoin Core. As a part of the implementation, they also devised the first blockchain database. In the process, they were the first to solve the double-spending problem for digital currency. Their real identity remains unknown. Script:: Bitcoin uses a scripting system for transactions. Forth-like, Script is simple, stack-based, and processed from left to right. It is purposefully not Turing-complete, with no loops. From c2bcc6ac77048cee2ec147eecf387ef1671c02ff Mon Sep 17 00:00:00 2001 From: Brian McMichael Date: Sat, 22 Feb 2020 22:09:58 -0500 Subject: [PATCH 18/19] commma --- glossary.asciidoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/glossary.asciidoc b/glossary.asciidoc index 49e3087..2f16bcd 100644 --- a/glossary.asciidoc +++ b/glossary.asciidoc @@ -408,7 +408,7 @@ SHA:: The Secure Hash Algorithm or SHA is a family of cryptographic hash functions published by the National Institute of Standards and Technology (NIST). short channel id (scid):: - Once a channel is established the index of the funding transaction on the blockchain is used as the short channel id to uniquely identify the channel. + Once a channel is established, the index of the funding transaction on the blockchain is used as the short channel id to uniquely identify the channel. The short channel id consists of 8 bytes referring to 3 numbers. In its serialized form it depicts these 3 numbers as decimal values separated by the letter **x**. The first number (4 bytes) is the block height. From d41f7ae0965613eb490676248a43e49b16aa85bc Mon Sep 17 00:00:00 2001 From: Brian McMichael Date: Sat, 22 Feb 2020 22:11:18 -0500 Subject: [PATCH 19/19] More commas --- glossary.asciidoc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/glossary.asciidoc b/glossary.asciidoc index 2f16bcd..fd264ba 100644 --- a/glossary.asciidoc +++ b/glossary.asciidoc @@ -419,13 +419,13 @@ Simplified Payment Verification (SPV):: SPV or simplified payment verification is a method for verifying particular transactions were included in a block without downloading the entire block. The method is used by some lightweight Bitcoin clients. Source-Based Routing:: - On the Lightning Network the sender of a payment decides the route of the payment. + On the Lightning Network, the sender of a payment decides the route of the payment. While this decreases the success rate of the routing process, it increases the privacy of payments. Due to the SPHINX Mix Format used by the Onion Routing, all routing nodes do not know the originator of a payment or the final recipient. Source-based routing is fundamentally different to how routing works on the Internet Protocol. soft fork:: - Soft fork or Soft-Forking Change is a temporary fork in the blockchain which commonly occurs when miners using non-upgraded nodes don't follow a new consensus rule their nodes don’t know about. + Soft fork, or Soft-Forking Change, is a temporary fork in the blockchain which commonly occurs when miners using non-upgraded nodes don't follow a new consensus rule their nodes don’t know about. Not to be confused with fork, hard fork, software fork or Git fork. SPHINX Mix Format::