diff --git a/ch04.asciidoc b/ch04.asciidoc index b6e9143a..b1fcac29 100644 --- a/ch04.asciidoc +++ b/ch04.asciidoc @@ -165,7 +165,7 @@ y = 7A3D41E670...CD90C2 To visualize multiplication of a point with an integer, we will use the simpler elliptic curve over the real numbers - remember, the math is the same. Our goal is to find the multiple kG of the generator point G. That is the same as adding G to itself, k times in a row. In elliptic curves, adding a point to itself is the equivalent of drawing a tangent line on the point and finding where it intersects the curve again, then reflecting that point on the x-axis. -Starting with the generator point G, we take the tangent of the curve at G until it crosses the curve again at another point. This new point is -2G. Reflecting that point across the x-axis gives us 2G. If we take the tangent at 2G, it crosses the curve at -3G, which again we reflect on the x-axis to find 3G. Continuing this process, we can bounce around the curve finding the multiples of G, 2G, 3G, 4G etc. As you can see, a randomly selected large number k, when multiplied against the generator point G is like bouncing around the curve k times, until we land on the point kG which is the public key. This process is irreversible, meaning that it is infeasible to find the factor k (the secret k) in any way other than trying all multiples of G (1G, 2G, 3G etc) in a brute-force search for k. Since k can be an enormous number, that brute-force search would take an infeasible amount of computation and time. +Starting with the generator point G, we take the tangent of the curve at G until it crosses the curve again at another point. This new point is -2G. Reflecting that point across the x-axis gives us 2G. If we take the tangent at 2G, it crosses the curve at -3G, which again we reflect on the x-axis to find 3G. Continuing this process, we can bounce around the curve finding the multiples of G, 2G, 3G, 4G, etc. As you can see, a randomly selected large number k, when multiplied against the generator point G is like bouncing around the curve k times, until we land on the point kG which is the public key. This process is irreversible, meaning that it is infeasible to find the factor k (the secret k) in any way other than trying all multiples of G (1G, 2G, 3G, etc) in a brute-force search for k. Since k can be an enormous number, that brute-force search would take an infeasible amount of computation and time. @@ -400,13 +400,13 @@ This most basic form of key generation generates what are known as _Type-0_ or _ ===== Deterministic Chains (Electrum Key Chains) [[Type1_wallet]] -.Type-1 Deterministic Wallet: A Chain of Keys Generared from a Seed +.Type-1 Deterministic Wallet: A Chain of Keys Generated from a Seed image::images/chained_wallet.png["chained wallet"] ===== Deterministic Trees (BIP0032) [[Type2_wallet]] -.Type-2 Hierarchical Deterministic Wallet: A Tree of Keys Generared from a Seed +.Type-2 Hierarchical Deterministic Wallet: A Tree of Keys Generated from a Seed image::images/HD_wallet.png["HD wallet"] ==== Advanced Keys and Addresses @@ -433,4 +433,4 @@ image::images/HD_wallet.png["HD wallet"] ===== Hardware Wallets -===== Paper Wallets \ No newline at end of file +===== Paper Wallets