mirror of
https://github.com/Nezumi-2711/winrar-keygen.git
synced 2026-09-22 13:48:33 +00:00
✔ Add an example of verifying the point G
This commit is contained in:
@@ -11,7 +11,6 @@ Elements in ground field . If we use
|
||||
|
||||
<p align="center">
|
||||
@@ -19,7 +18,6 @@ where each coefficients is in  in  can be denoted as
|
||||
|
||||
<p align="center">
|
||||
@@ -27,7 +25,6 @@ as the standard basis of the ground field, an element   is
|
||||
@@ -37,7 +34,6 @@ The irreducible polynomial of composite field . If we use
|
||||
|
||||
<p align="center">
|
||||
@@ -45,7 +41,6 @@ where each coefficients is in  in   can be denoted as
|
||||
|
||||
<p align="center">
|
||||
@@ -53,7 +48,6 @@ as the standard basis of the composite field, an element  , which is a 255-bits-long integer to denote an element  in  . The map between them is
|
||||
@@ -63,7 +57,6 @@ For clarity, we use 
|
||||
<img src="assets/formula/7-dark.svg#gh-dark-mode-only">
|
||||
</p>
|
||||
|
||||
|
||||
## 2. Elliptic curve over  
|
||||
|
||||
The equation of the elliptic curve that WinRAR uses is
|
||||
@@ -73,7 +66,6 @@ The equation of the elliptic curve that WinRAR uses is
|
||||
<img src="assets/formula/8-dark.svg#gh-dark-mode-only">
|
||||
</p>
|
||||
|
||||
|
||||
The base point  is
|
||||
|
||||
<p align="center">
|
||||
@@ -81,6 +73,7 @@ The base point  of the base point  on the curve.
|
||||
|
||||
whose order  is
|
||||
|
||||
@@ -89,7 +82,6 @@ whose order . So the SHA1 value of  should be
|
||||
|
||||
<p align="center">
|
||||
@@ -107,7 +98,6 @@ to denote a message whose length is  are 5 state values when SHA1 outputs. Generally speaking, the final SHA1 value should be the join of these 5 state values while each of state values is serialized in big-endian.
|
||||
|
||||
However, WinRAR doesn't serialize the 5 state values. Instead, it use a big integer  as the hash of the input message.
|
||||
@@ -117,7 +107,6 @@ However, WinRAR doesn't serialize the 5 state values. Instead, it use a big inte
|
||||
<img src="assets/formula/15-dark.svg#gh-dark-mode-only">
|
||||
</p>
|
||||
|
||||
|
||||
## 4. ECC digital signature algorithm
|
||||
|
||||
We use  to denote private key,  to denote public key. So there must be
|
||||
@@ -127,7 +116,6 @@ We use  to denote the hash of input data, WinRAR use the following algorithm to perform signing:
|
||||
|
||||
1. Generate a random big integer  which satisfies .
|
||||
@@ -165,7 +153,6 @@ We use
|
||||
<img src="assets/formula/26-dark.svg#gh-dark-mode-only">
|
||||
</p>
|
||||
|
||||
|
||||
to denote input data whose length is . WinRAR use it to generate private key .
|
||||
|
||||
1. We use  to denote 6 32-bits-long integer. So there is
|
||||
@@ -184,7 +171,6 @@ to denote input data whose length is , we let
|
||||
|
||||
<p align="center">
|
||||
@@ -201,7 +187,6 @@ to denote input data whose length is  and donote it as .
|
||||
|
||||
5. Repeat step 4 again with 14 times.
|
||||
@@ -222,7 +207,6 @@ Private key  is zero.
|
||||
|
||||
Public key  is
|
||||
@@ -297,7 +281,6 @@ The following is the algorithm to generate `rarreg.key`.
|
||||
<img src="assets/formula/58-dark.svg#gh-dark-mode-only">
|
||||
</p>
|
||||
|
||||
|
||||
Use the algorithm describled in section 4, with argument  and private key  describled section 6, to get signature .
|
||||
|
||||
The bit length of  and  shall not be more than 240. Otherwise, repeat this step.
|
||||
@@ -320,9 +303,8 @@ The following is the algorithm to generate `rarreg.key`.
|
||||
<img src="assets/formula/65-dark.svg#gh-dark-mode-only">
|
||||
</p>
|
||||
|
||||
|
||||
The final checksum the complement of CRC32 value.
|
||||
|
||||
|
||||
Then convert the checksum to decimal string . If the length is less than 10, pad character `'0'` until the length is 10.
|
||||
|
||||
12. Let  be
|
||||
|
||||
Reference in New Issue
Block a user