From 9fd45c343b9b55afdf34be35b1c024c719476897 Mon Sep 17 00:00:00 2001 From: bitcookies Date: Wed, 24 Apr 2024 16:27:14 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=93=99=20Optimization=20README?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 38 ++- README.zh-CN.md | 60 ++-- assets/README.HOW_DOES_IT_WORK.md.bak | 321 -------------------- assets/README.HOW_DOES_IT_WORK.zh-CN.md.bak | 319 ------------------- assets/fork-dark.png | Bin 49917 -> 80400 bytes assets/fork-light.png | Bin 49878 -> 81247 bytes assets/push-workflows-dark.png | Bin 107622 -> 127839 bytes assets/push-workflows-light.png | Bin 160616 -> 127261 bytes assets/run-workflow-dark.png | Bin 135073 -> 172571 bytes assets/run-workflow-light.png | Bin 134624 -> 171093 bytes assets/secrets-dark.png | Bin 209442 -> 241375 bytes assets/secrets-light.png | Bin 211776 -> 243537 bytes assets/secrets-repo-dark.png | Bin 31711 -> 29108 bytes assets/secrets-repo-light.png | Bin 32361 -> 29429 bytes bin/Win32-Release/winrar-keygen.exe | Bin 356352 -> 0 bytes bin/x64-Release/winrar-keygen.exe | Bin 436736 -> 0 bytes 16 files changed, 63 insertions(+), 675 deletions(-) delete mode 100644 assets/README.HOW_DOES_IT_WORK.md.bak delete mode 100644 assets/README.HOW_DOES_IT_WORK.zh-CN.md.bak delete mode 100644 bin/Win32-Release/winrar-keygen.exe delete mode 100644 bin/x64-Release/winrar-keygen.exe diff --git a/README.md b/README.md index 73c52fb..711d8f0 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@ - + License @@ -61,9 +61,17 @@ Use [Secrets](https://docs.github.com/en/actions/security-guides/encrypted-secre ![Fork](assets/fork-dark.png#gh-dark-mode-only) -### 4.2 Creating Secrets +### 4.2 Allow Fork repo to run Workflows -Open your forked repository, and go to **Settings > Secrets > Actions > New repository secret**. +Go back to the repo you just forked and click **Actions** to allow Workflows to run in your forked repo. + +![Workflow](assets/enable-workflows-light.png#gh-light-mode-only) + +![Workflow](assets/enable-workflows-dark.png#gh-dark-mode-only) + +### 4.3 Creating Secrets + +After allowing Workflows, go to **Settings > Secrets and variables > Actions > New repository secret**. ![Secrets](assets/secrets-light.png#gh-light-mode-only) @@ -81,7 +89,7 @@ Once created, you will see: ![Secrets Repo](assets/secrets-repo-dark.png#gh-dark-mode-only) -### 4.3 Run Workflow +### 4.4 Run Workflow Go to **Actions** and select **WinRAR Keygen Secrets** to run Workflow manually. @@ -95,6 +103,10 @@ After running successfully, open the corresponding task and select **rarreg_file ![Download](assets/file-download-dark.png#gh-dark-mode-only) +After extract `rarreg_file.zip`, you will get `rarreg.key`, just drag and drop it into WinRAR. You can also compress `rarreg.key` into `rarkey.rar` and double-click it to run it, and the license import will take place automatically. + +If you get an invalid key, please check [the specific solution](#7-invalid-key). + ## 5. Use Github Actions with Push @@ -114,7 +126,15 @@ Using push for key generation is very simple and convenient, but when there are If you've forked before and I've committed new code, but you don't know how to merge the new content into your repository, then you can delete the current fork and fork again. -### 5.2 Modify info.json +### 5.2 Allow Fork repo to run Workflows + +Go back to the repo you just forked and click **Actions** to allow Workflows to run in your forked repo. + +![Workflow](assets/enable-workflows-light.png#gh-light-mode-only) + +![Workflow](assets/enable-workflows-dark.png#gh-dark-mode-only) + +### 5.3 Edit info.json Open your forked repository, and go to `keygen/info.json` and click on the edit button to edit the file. @@ -144,13 +164,7 @@ It is important to note that `test1` and `test2` are **ANSI-encoded string, spac Once you have finished making changes, click the **Commit changes** button and Github Actions will start automatically. -If Github Actions does not start automatically, you will need to click on the Actions page to **allow this workflows to run**, then modify and commit `keygen/info.json` again. - -![Workflow](assets/enable-workflows-light.png#gh-light-mode-only) - -![Workflow](assets/enable-workflows-dark.png#gh-dark-mode-only) - -### 5.3 Download Key +### 5.4 Download Key Go to **Actions** and select **WinRAR Keygen** to see the status of the program. diff --git a/README.zh-CN.md b/README.zh-CN.md index 7938572..f9de08c 100644 --- a/README.zh-CN.md +++ b/README.zh-CN.md @@ -12,7 +12,7 @@ - + License @@ -25,13 +25,13 @@ ## 1. WinRAR是什么? -WinRAR是一款用于管理压缩包文件的共享软件。其算法由作者尤金·罗谢尔研发,享有原创专利。 +WinRAR 是一款用于管理压缩包文件的共享软件。其算法由作者尤金·罗谢尔研发,享有原创专利。 -它可以用来创建或浏览RAR、ZIP等众多格式的压缩包。 +它可以用来创建或浏览 RAR、ZIP 等众多格式的压缩包。 -WinRAR不是免费软件。如果你想使用它,你应当向 [__RARLAB__](https://www.rarlab.com/) 付费,然后获得一个授权文件 `rarreg.key`。 +WinRAR 不是免费软件。如果你想使用它,你应当向 [__RARLAB__](https://www.rarlab.com/) 付费,然后获得一个授权文件 `rarreg.key`。 -这份repo将会告诉你 `rarreg.key` 是如何生成的。 +这份 repo 将会告诉你 `rarreg.key` 是如何生成的。 ## 2. "rarreg.key"是如何生成的? @@ -61,9 +61,17 @@ WinRAR不是免费软件。如果你想使用它,你应当向 [__RARLAB__](htt ![Fork](assets/fork-dark.png#gh-dark-mode-only) -### 4.2 创建 Secrets +### 4.2 允许 Fork 代码运行 Workflows -打开你 fork 后的仓库,进入 **Settings > Secrets > Actions > New repository secret** 来创建: +返回到你刚刚 fork 完成的 repo,然后点击 **Actions** 去允许 Workflows 在你的 fork repo 中运行: + +![Workflow](assets/enable-workflows-light.png#gh-light-mode-only) + +![Workflow](assets/enable-workflows-dark.png#gh-dark-mode-only) + +### 4.3 创建 Secrets + +允许 Workflows 后,进入 **Settings > Secrets and variables > Actions > New repository secret** 来创建 Secrets: ![Secrets](assets/secrets-light.png#gh-light-mode-only) @@ -81,9 +89,9 @@ WinRAR不是免费软件。如果你想使用它,你应当向 [__RARLAB__](htt ![Secrets Repo](assets/secrets-repo-dark.png#gh-dark-mode-only) -### 4.3 运行 Workflow +### 4.4 运行 Workflow -进入 **Actions** 并选择 **WinRAR Keygen Secrets** 来手动执行 Workflow: +进入 **Actions** 并选择 **WinRAR Keygen Secrets > Run workflow > Run workflow ** 来手动执行 Workflow: ![Run](assets/run-workflow-light.png#gh-light-mode-only) @@ -95,6 +103,10 @@ WinRAR不是免费软件。如果你想使用它,你应当向 [__RARLAB__](htt ![Download](assets/file-download-dark.png#gh-dark-mode-only) +将 `rarreg_file.zip` 解压缩后会得到 `rarreg.key`,然后拖动导入 WinRAR 即可。你也可以将 `rarreg.key` 压缩成 `rarkey.rar`,然后双击运行,授权导入将会自动进行。 + +如果你得到的是 key 是无效的,请查看 [解决方法](#7-无效的-Key)。 + ## 5. 通过 Push 使用 Github Actions @@ -114,9 +126,17 @@ WinRAR不是免费软件。如果你想使用它,你应当向 [__RARLAB__](htt 如果你之前 fork 过,然后我提交了新的代码,但是你不懂得如何合并新内容到你的仓库,那你也可以删掉当前 fork 的仓库,然后重新 fork 一次。 -### 5.2 修改 info.json +### 5.2 允许 Fork 代码运行 Workflows -打开你 fork 后的仓库,进入 `keygen/info.json`,点击编辑按钮,对该文件进行编辑: +返回到你刚刚 fork 完成的 repo,然后点击 Actions 去允许 Workflows 在你的 fork repo 中运行: + +![Workflow](assets/enable-workflows-light.png#gh-light-mode-only) + +![Workflow](assets/enable-workflows-dark.png#gh-dark-mode-only) + +### 5.3 修改 info.json + +允许 Workflows 后,进入 `keygen/info.json`,点击编辑按钮,对该文件进行编辑: ![Edit](assets/edit-json-light.png#gh-light-mode-only) @@ -144,13 +164,7 @@ WinRAR不是免费软件。如果你想使用它,你应当向 [__RARLAB__](htt 修改完成之后,点击 **Commit changes** 按钮,Github Actions 会自动开始执行。 -如果 Github Actions 未自动开始,你需要先点击 Actions 页面 **允许此 workflows 运行**,然后再次修改并提交 `keygen/info.json` 。 - -![Workflow](assets/enable-workflows-light.png#gh-light-mode-only) - -![Workflow](assets/enable-workflows-dark.png#gh-dark-mode-only) - -### 5.3 下载文件 +### 5.4 下载文件 进入 **Actions** 并选择 **WinRAR Keygen** 页面查看程序运行状况: @@ -166,7 +180,7 @@ WinRAR不是免费软件。如果你想使用它,你应当向 [__RARLAB__](htt 将 `rarreg_file.zip` 解压缩后会得到 `rarreg.key`,然后拖动导入 WinRAR 即可。你也可以将 `rarreg.key` 压缩成 `rarkey.rar`,然后双击运行,授权导入将会自动进行。 -如果你得到的是 key 是无效的,请查看 [解决方法](#7-无效的key)。 +如果你得到的是 key 是无效的,请查看 [解决方法](#7-无效的-Key)。 @@ -251,11 +265,11 @@ de3cdc56b311475b484e80b48157a0c3af60ca4f7f9c75d49bc50d -## 7. 无效的Key +## 7. 无效的 Key 为什么我生成的 `rarreg.key` 是无效的? -### 7.1 ANSI编码 +### 7.1 ANSI 编码 `test1` 以及 `test2` 生成的许可文本,均是 **ANSI 编码,目前已经支持空格** [Issues #5](https://github.com/bitcookies/winrar-keygen/issues/5)。 @@ -265,7 +279,7 @@ winrar-keygen.exe 具体可参考原理文档:[授权文件"rarreg.key"的生成](https://github.com/bitcookies/winrar-keygen/blob/master/README.HOW_DOES_IT_WORK.zh-CN.md#7-%E6%8E%88%E6%9D%83%E6%96%87%E4%BB%B6rarregkey%E7%9A%84%E7%94%9F%E6%88%90) -### 7.2 TXT编码 +### 7.2 TXT 编码 如果你使用了如下命令: @@ -281,7 +295,7 @@ winrar-keygen.exe "Github" "Github.com" > rarreg.key winrar-keygen.exe "Github" "Github.com" | Out-File -Encoding ASCII rarreg.key ``` -### 7.3 Key的位置 +### 7.3 Key 的位置 如果你无法执行拖动操作,你可以尝试把 `rarreg.key` 放在以下目录中: diff --git a/assets/README.HOW_DOES_IT_WORK.md.bak b/assets/README.HOW_DOES_IT_WORK.md.bak deleted file mode 100644 index 336df37..0000000 --- a/assets/README.HOW_DOES_IT_WORK.md.bak +++ /dev/null @@ -1,321 +0,0 @@ -[GF2-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20%5Ctextrm%7BGF%7D%282%29 -[GF2p15-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20%5Ctextrm%7BGF%7D%282%5E%7B15%7D%29 -[GF2p15p17-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20%5Ctextrm%7BGF%7D%28%282%5E%7B15%7D%29%5E%7B17%7D%29 -[A-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20A -[B-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20B -[D-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20D -[G-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20G -[M-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20M -[P-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20P -[h-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20h -[k-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20k -[l-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20l -[n-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20n -[r-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20r -[s-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20s -[T-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20T -[UU-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20U -[LL-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20L -[Rnd-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20Rnd -[Temp-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20Temp -[UID-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20UID -[Data-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20Data -[Data0-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20Data%5E0 -[Data1-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20Data%5E1 -[Data2-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20Data%5E2 -[Data3-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20Data%5E3 - -# How is "rarreg.key" generated? - -WinRAR uses an ECC-based signature algorithm to generate `rarreg.key`. The algorithm it used is a variant of Chinese SM2 digital signature algorithm. Different to many standard ECDSAs, the curve that WinRAR selected is a curve over composite field ![GF2p15p17-inlined]. - -## 1. Composite field ![GF2p15p17-inlined] - -Elements in ground field ![GF2p15-inlined] are represented with standard basis, i.e. polynomial basis. The irreducible polynomial is - -

- - -where each coefficients is in ![GF2-inlined]. If we use - -

- - -as the standard basis of the ground field, an element ![A-inlined] in ![GF2p15-inlined] can be denoted as - -

- - ---- - -The irreducible polynomial of composite field ![GF2p15p17-inlined] is - -

- - -where each coefficients is in ![GF2p15-inlined]. If we use - -

- - -as the standard basis of the composite field, an element ![B-inlined] in ![GF2p15p17-inlined] can be denoted as - -

- - ---- - -For clarity, we use ![D-inlined], which is a 255-bits-long integer to denote an element ![B-inlined] in ![GF2p15p17-inlined]. The map between them is - -

- - -## 2. Elliptic curve over ![GF2p15p17-inlined] - -The equation of the elliptic curve that WinRAR uses is - -

- - -The base point ![G-inlined] is - -

- - -whose order ![n-inlined] is - -

- - -## 3. Message hash algorithm - -We use - -

- - -to denote a message whose length is ![l-inlined]. So the SHA1 value of ![M-inlined] should be - -

- - -where ![](http://latex.codecogs.com/svg.latex?%5Cinline%20S_0%2CS_1%2CS_2%2CS_3%2CS_4) 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 ![h-inlined] as the hash of the input message. - -

- - -## 4. ECC digital signature algorithm - -We use ![k-inlined] to denote private key, ![P-inlined] to denote public key. So there must be - -

- - -If we use ![h-inlined] to denote the hash of input data, WinRAR use the following algorithm to perform signing: - -1. Generate a random big integer ![Rnd-inlined] which satisfies ![](http://latex.codecogs.com/svg.latex?%5Cinline%200%3CRnd%3Cn). - -2. Calculate ![r-inlined] - -

- -

- - where ![](http://latex.codecogs.com/svg.latex?%5Cinline%20%28Rnd%20%5Ccdot%20G%29_x) means we take X coordinate of ![](http://latex.codecogs.com/svg.latex?%5Cinline%20Rnd%20%5Ccdot%20G) and convert it from ![GF2p15p17-inlined] to a big integer. - - If ![](http://latex.codecogs.com/svg.latex?%5Cinline%20r%3D0) or ![](http://latex.codecogs.com/svg.latex?%5Cinline%20r+Rnd%3Dn), go back to step 1. - -3. Calculate ![s-inlined] - -

- -

- - If ![](http://latex.codecogs.com/svg.latex?%5Cinline%20s%3D0), go back to step 1. - -4. Output ![](http://latex.codecogs.com/svg.latex?%5Cinline%20%28r%2Cs%29). - -## 5. WinRAR private key generation algorithm - -We use - -

- -

- -to denote input data whose length is ![l-inlined]. WinRAR use it to generate private key ![k-inlined]. - -1. We use ![](http://latex.codecogs.com/svg.latex?%5Cinline%20g_0%2Cg_1%2Cg_2%2Cg_3%2Cg_4%2Cg_5) to denote 6 32-bits-long integer. So there is - -

- -

- -2. Let ![](http://latex.codecogs.com/svg.latex?%5Cinline%20g_0%3D0). - -3. If ![](http://latex.codecogs.com/svg.latex?%5Cinline%20l%5Cneq%200), we calculate SHA1 value of ![T-inlined]. Then assign SHA1 state value ![](http://latex.codecogs.com/svg.latex?%5Cinline%20S_i) to ![](http://latex.codecogs.com/svg.latex?%5Cinline%20g_%7Bi+1%7D): - -

- -

- - Otherwise, when ![](http://latex.codecogs.com/svg.latex?%5Cinline%20l%3D0), we let - -

- -

- -4. Regard ![](http://latex.codecogs.com/svg.latex?%5Cinline%20g_0) as counter, add itself by 1. - - Calculate SHA1: - -

- -

- - We takes the lowest 16 bits of ![](http://latex.codecogs.com/svg.latex?%5Cinline%20S_0) and donote it as ![](http://latex.codecogs.com/svg.latex?%5Cinline%20k_%7Bg_0%7D). - -5. Repeat step 4 again with 14 times. - -6. After that, we will get ![](http://latex.codecogs.com/svg.latex?%5Cinline%20k_1%2Ck_2%2Ck_3%2C%5Cldots%2Ck_%7B15%7D). Then output private key - -

- -

- -## 6. The private key and public key of WinRAR - -Private key ![k-inlined] is - -

- -

- -This private key is generated by the algorithm describled in section 5 where the length of data ![T-inlined] is zero. - -Public key ![P-inlined] is - -

- -

- -## 7. Generation of "rarreg.key" - -The generation of license file `rarreg.key` requires 2 arguments: - -1. Username, an ANSI-encoded string, without null-terminator. Denoted as - -

- -

- -2. License type, an ANSI-encoded string, without null-terminator. Denoted as - -

- -

- -The following is the algorithm to generate `rarreg.key`. - -1. Use the algorithm describled in section 5, with argument ![UU-inlined], to generate private key ![](http://latex.codecogs.com/svg.latex?%5Cinline%20k_U) and public key ![](http://latex.codecogs.com/svg.latex?%5Cinline%20P_U). Then output hexlified public key string with SM2 compressed public key format. The hexlified public key is denoted as ![Temp-inlined]. - - The length of ![Temp-inlined] should be 64. If less, pad with `'0'` until the length is 64. - -2. Let ![Data3-inlined] be - -

- -

- -3. Use the algorithm describled in section 5, with argument ![Data3-inlined], to generate private key ![](http://latex.codecogs.com/svg.latex?%5Cinline%20k_%7BData%5E3%7D) and public key ![](http://latex.codecogs.com/svg.latex?%5Cinline%20P_%7BData%5E3%7D). Then output hexlified public key string with SM2 compressed public key format. The hexlified public key is denoted as ![Data0-inlined]. - - The length of ![Data0-inlined] should be 64. If less, pad with `'0'` until the length is 64. - -4. Let ![UID-inlined] be - -

- -

- -5. Use the algorithm describled in section 4, with argument ![LL-inlined] and private key ![k-inlined] describled section 6, to get signature ![](http://latex.codecogs.com/svg.latex?%5Cinline%20%28r_L%2Cs_L%29). - - The bit length of ![](http://latex.codecogs.com/svg.latex?%5Cinline%20r_L) and ![](http://latex.codecogs.com/svg.latex?%5Cinline%20s_L) shall not be more than 240. Otherwise, repeat this step. - -6. Convert ![](http://latex.codecogs.com/svg.latex?%5Cinline%20r_L) and ![](http://latex.codecogs.com/svg.latex?%5Cinline%20s_L) to hex-integer string ![](http://latex.codecogs.com/svg.latex?%5Cinline%20SZ%5E%7Br_L%7D) and ![](http://latex.codecogs.com/svg.latex?%5Cinline%20SZ%5E%7Bs_L%7D), without `"0x"` prefix. - - If the length of ![](http://latex.codecogs.com/svg.latex?%5Cinline%20SZ%5E%7Br_L%7D) or ![](http://latex.codecogs.com/svg.latex?%5Cinline%20SZ%5E%7Bs_L%7D) is less than 60, pad character `'0'` until the length is 60. - -7. Let ![Data1-inlined] be - -

- -

- -8. Let ![Temp-inlined] be - -

- -

- - Use the algorithm describled in section 4, with argument ![Temp-inlined] and private key ![k-inlined] describled section 6, to get signature ![](http://latex.codecogs.com/svg.latex?%5Cinline%20%28r_%7BTemp%7D%2Cs_%7BTemp%7D%29). - - The bit length of ![](http://latex.codecogs.com/svg.latex?%5Cinline%20r_%7BTemp%7D) and ![](http://latex.codecogs.com/svg.latex?%5Cinline%20s_%7BTemp%7D) shall not be more than 240. Otherwise, repeat this step. - -9. Convert ![](http://latex.codecogs.com/svg.latex?%5Cinline%20r_%7BTemp%7D) and ![](http://latex.codecogs.com/svg.latex?%5Cinline%20s_%7BTemp%7D) to hex-integer string ![](http://latex.codecogs.com/svg.latex?%5Cinline%20SZ%5E%7Br_%7BTemp%7D%7D) and ![](http://latex.codecogs.com/svg.latex?%5Cinline%20SZ%5E%7Bs_%7BTemp%7D%7D), without `"0x"` prefix. - - If the length of ![](http://latex.codecogs.com/svg.latex?%5Cinline%20SZ%5E%7Br_%7BTemp%7D%7D) or ![](http://latex.codecogs.com/svg.latex?%5Cinline%20SZ%5E%7Bs_%7BTemp%7D%7D) is less than 60, pad character `'0'` until the length is 60. - -10. Let ![Data2-inlined] be - -

- -

- -11. Calculate CRC32 value of - -

- -

- - The final checksum the complement of CRC32 value. - - Then convert the checksum to decimal string ![](http://latex.codecogs.com/svg.latex?%5Cinline%20SZ%5E%7Bchecksum%7D). If the length is less than 10, pad character `'0'` until the length is 10. - -12. Let ![Data-inlined] be - -

- -

- -13. Output with format - - * A fixed header `"RAR registration data"`, taking one line. - - * Username, taking one line. - - * License type, taking one line - - * UID, taking one line, with format: - -

- -

- - * Output ![Data-inlined], with 54 characters a line. - diff --git a/assets/README.HOW_DOES_IT_WORK.zh-CN.md.bak b/assets/README.HOW_DOES_IT_WORK.zh-CN.md.bak deleted file mode 100644 index 579107a..0000000 --- a/assets/README.HOW_DOES_IT_WORK.zh-CN.md.bak +++ /dev/null @@ -1,319 +0,0 @@ -[GF2-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20%5Ctextrm%7BGF%7D%282%29 -[GF2p15-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20%5Ctextrm%7BGF%7D%282%5E%7B15%7D%29 -[GF2p15p17-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20%5Ctextrm%7BGF%7D%28%282%5E%7B15%7D%29%5E%7B17%7D%29 -[A-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20A -[B-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20B -[D-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20D -[G-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20G -[M-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20M -[P-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20P -[h-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20h -[k-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20k -[l-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20l -[n-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20n -[r-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20r -[s-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20s -[T-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20T -[UU-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20U -[LL-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20L -[Rnd-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20Rnd -[Temp-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20Temp -[UID-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20UID -[Data-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20Data -[Data0-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20Data%5E0 -[Data1-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20Data%5E1 -[Data2-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20Data%5E2 -[Data3-inlined]: http://latex.codecogs.com/svg.latex?%5Cinline%20Data%5E3 - -# "rarreg.key"是如何生成的? - -WinRAR 使用了基于 ECC 的签名算法来生成 `rarreg.key` 文件,其使用的签名算法是中国 SM2 数字签名算法的变体。与各种标准 ECDSA 不同的是,WinRAR 使用的椭圆曲线是一个基于复合域 ![GF2p15p17-inlined] 上的曲线。 - -## 1. 复合域 ![GF2p15p17-inlined] - -基域 ![GF2p15-inlined] 采用标准基(多项式基)来表达,采用的不可约多项式为: - -

- -

- -各项系数全部位于 ![GF2-inlined]。设基域的标准基为: - -

- - -则位于基域 ![GF2p15-inlined] 上的元素 ![A-inlined] 可以用如下方式表达: - -

- - ---- - -复合域 ![GF2p15p17-inlined] 的不可约多项式为: - -

- - -各项系数全部位于 ![GF2p15-inlined]。设复合域的标准基为: - -

- - -则位于复合域 ![GF2p15p17-inlined] 上的元素 ![B-inlined] 可以用如下方式表达: - -

- - ---- - -为了方便表述我们用255比特的大数 ![D-inlined] 来表示位于复合域 ![GF2p15p17-inlined] 上的元素 ![B-inlined]。它们的对应关系为: - -

- - -## 2. 复合域 ![GF2p15p17-inlined] 上的椭圆曲线 - -曲线方程为: - -

- - -基点 ![G-inlined] 为: - -

- - -基点 ![G-inlined] 的阶 ![n-inlined] 为: - -

- - -## 3. 消息哈希算法 - -设长度为 ![l-inlined] 的消息为: - -

- - -则消息 ![M-inlined] 的SHA1值为: - -

- - -其中 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20S_0%2CS_1%2CS_2%2CS_3%2CS_4) 为SHA1算法输出时的5个状态值;将这5个状态值按照大端字节序依次输出,即为的SHA1哈希值 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20%5Ctextrm%7BSHA%7D_1%28M%29)。 - -WinRAR在做完SHA1计算后,采用大数 ![h-inlined] 作为ECC签名时消息的哈希: - -

- - - -## 4. ECC签名算法 - -设私钥为 ![k-inlined],公钥为 ![P-inlined],即: - -

- - -消息哈希为 ![h-inlined],则签名 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20%28r%2Cs%29) 为: - -1. 生成随机数 ![Rnd-inlined],满足 ![](http://latex.codecogs.com/svg.latex?%5Cinline%200%3CRnd%3Cn)。 - -2. 计算 ![r-inlined] - -

- -

- - 其中 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20%28Rnd%20%5Ccdot%20G%29_x) 表示取 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20Rnd%20%5Ccdot%20G) 的X坐标,同时将X坐标从 ![GF2p15p17-inlined] 转换为大数。 - - 若 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20r%3D0) 或者 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20r+Rnd%3Dn) 则回到步骤1。 - -3. 计算 ![s-inlined] - -

- -

- - 若 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20s%3D0) 则回到步骤1。 - -4. 输出 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20%28r%2Cs%29)。 - -## 5. WinRAR的私钥生成算法 - -该算法会利用长度为 ![l-inlined] 的数据 - -

- -

- -来生成私钥 ![k-inlined]。 - -1. 设6个32位整数为 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20g_0%2Cg_1%2Cg_2%2Cg_3%2Cg_4%2Cg_5),则有 - -

- -

- -2. 令 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20g_0%3D0)。 - -3. 如果 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20l%5Cneq%200) 则计算 ![T-inlined] 的SHA1值,并将状态值 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20S_i) 赋值给 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20g_%7Bi+1%7D): - -

- -

- - 否则,即 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20l%3D0) 时,令: - -

- -

- -4. 把 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20g_0) 作为计数器,自增1。 - - 计算SHA1值: - -

- -

- - 取 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20S_0) 的低16位并记为 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20k_%7Bg_0%7D)。 - -5. 步骤4再重复14次。 - -6. 重复执行完后会得到 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20k_1%2Ck_2%2Ck_3%2C%5Cldots%2Ck_%7B15%7D),则输出私钥 - -

- -

- -## 6. WinRAR的公钥和私钥 - -WinRAR的私钥 ![k-inlined] 为: - -

- -

- -该私钥是通过算法5生成的,其中数据 ![T-inlined] 的长度为0。 - -公钥 ![P-inlined] 为: - -

- -

- -## 7. 授权文件"rarreg.key"的生成 - -授权文件的生成需要两个参数: - -1. 用户名的ANSI字符串,不包括null-terminator;记为 - -

- -

- -2. 授权类型的ANSI字符串,不包括null-terminator;记为 - -

- -

- -`rarreg.key` 的生成算法如下: - -1. 使用用户名 ![UU-inlined] 通过算法5计算出私钥 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20k_U) 以及公钥 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20P_U),并将公钥 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20P_U) 按照SM2压缩公钥格式以Hex字符串(ASCII编码)的形式输出。得到的Hex字符串记为临时值 ![Temp-inlined]。 - - ![Temp-inlined] 的长度应该为64;若长度不足,则在前面补字符`'0'`,直到长度为64。 - -2. 令字符串 ![Data3-inlined]为 - -

- -

- -3. 使用 ![Data3-inlined] 通过算法5计算出私钥 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20k_%7BData%5E3%7D) 以及公钥 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20P_%7BData%5E3%7D),并将公钥 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20P_%7BData%5E3%7D) 按照SM2压缩公钥格式以Hex字符串(ASCII编码)的形式输出。得到的Hex字符串记为 ![Data0-inlined]。 - - ![Data0-inlined] 的长度应该为64;若长度不足,则在前面补字符`'0'`,直到长度为64。 - -4. 令字符串 ![UID-inlined]为 - -

- -

- -5. 对授权类型 ![LL-inlined] 使用算法4得到签名 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20%28r_L%2Cs_L%29),其中私钥见第6节。 - - 要求 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20r_L) 和 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20s_L) 的长度都不得超过240比特,否则重复该步骤。 - -6. 将 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20r_L) 和 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20s_L) 以16进制形式输出(无`"0x"`前缀),分别记为 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20SZ%5E%7Br_L%7D) 和 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20SZ%5E%7Bs_L%7D)。 - - 若长度不满60,则在前面补字符`'0'`,直到长度为60。 - -7. 令字符串 ![Data1-inlined]为 - -

- -

- -8. 令字符串 ![Temp-inlined]为 - -

- -

- - 对 ![Temp-inlined] 使用算法4得到签名 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20%28r_%7BTemp%7D%2Cs_%7BTemp%7D%29),其中私钥见第6节。 - - 要求 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20r_%7BTemp%7D) 和 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20s_%7BTemp%7D) 的长度都不得超过240比特,否则重复该步骤。 - -9. 将 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20r_%7BTemp%7D) 和 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20s_%7BTemp%7D) 以16进制形式输出(无`"0x"`前缀),分别记为 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20SZ%5E%7Br_%7BTemp%7D%7D) 和 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20SZ%5E%7Bs_%7BTemp%7D%7D)。 - - 若长度不满60,则在前面补字符`'0'`,直到长度为60。 - -10. 令字符串 ![Data2-inlined]为 - -

- -

- -11. 对 - -

- -

- - 计算CRC32值,最终校验和为CRC32值的反。将校验和以10进制形式输出,若长度不满10,则在前面补字符`'0'`,直到长度为10,记为 ![](http://latex.codecogs.com/svg.latex?%5Cinline%20SZ%5E%7Bchecksum%7D)。 - -12. 令字符串 ![Data-inlined]为 - -

- -

- -13. 格式化输出。 - - * 固定文件头`"RAR registration data"`,占一行。 - - * 用户名,占一行。 - - * 授权类型,占一行。 - - * UID,占一行: - -

- -

- - * 将 ![Data-inlined] 按照每行54个字符输出。 diff --git a/assets/fork-dark.png b/assets/fork-dark.png index d198fa929d543cb9ca51ace88295d7b9d78e9413..c902b416e7aefea77d907ca83101890a91f90a1a 100644 GIT binary patch literal 80400 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�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