diff --git a/README.md b/README.md index 8664b9a..c2c8faf 100644 --- a/README.md +++ b/README.md @@ -4,19 +4,19 @@ This repository will tell you how Navicat offline activation works. -Previous code is archived in [`windows-archived`](https://github.com/DoubleLabyrinth/navicat-keygen/tree/windows-archived) branch for the reason that previous code contains 3rd binary libraries and it gets quite big :-( +Previous previous code is archived in [`windows-archived`](https://notabug.org/doublesine/navicat-keygen/src/windows-archived) branch for the reason that previous previous code contains 3rd binary libraries and it gets quite big :-( +Previous code is archived in [`windows-archived2`](https://notabug.org/doublesine/navicat-keygen/src/windows-archived2) branch for the reason that Navicat has come to version 16.x.x which I think should be a milestone and I decide to obsolete previous code and rewrite new one. - -When you git-clone this repo, please add `--single-branch` flag so that archived branch won't be cloned to your computer, which saves your time and disk. +When you git-clone this repo, please add `--single-branch` flag so that archived branches won't be cloned to your computer, which saves your time and disk. ```console -$ git clone -b windows --single-branch https://github.com/DoubleLabyrinth/navicat-keygen.git +$ git clone -b windows --single-branch https://notabug.org/doublesine/navicat-keygen.git ``` ## 1. How does it work? -see [here](doc/how-does-it-work.md) +see [here](doc/how-does-it-work.md). (WATING TO BE UPDATED) ## 2. How to build? @@ -24,9 +24,7 @@ see [here](doc/how-to-build.md). ## 3. How to use? -For Windows users, see [here](doc/how-to-use.windows.md). - -For Linux users, see [here](doc/how-to-use.linux.md). +see [here](doc/how-to-use.windows.md). ## 4. Contributor @@ -35,4 +33,3 @@ For Linux users, see [here](doc/how-to-use.linux.md). * dragonflylee * zenuo - diff --git a/README.zh-CN.md b/README.zh-CN.md index b4498b3..0029ea8 100644 --- a/README.zh-CN.md +++ b/README.zh-CN.md @@ -1,13 +1,15 @@ -# Navicat Keygen +# navicat-keygen for windows 这份repo将会告诉你Navicat是怎么完成离线激活的。 -由于历史代码包含第三方二进制库,且大小较大,故决定将该项目的历史代码归档到 [`windows-archived`](https://github.com/DoubleLabyrinth/navicat-keygen/tree/windows-archived) 分支。 +第一次归档的代码位于 [`windows-archived`](https://notabug.org/doublesine/navicat-keygen/src/windows-archived) 分支。归档原因:包含第三方二进制库,项目过大。 -当你clone该仓库的时候,请使用 `--single-branch` 选项,以此避免clone到 `windows-archived` 分支,并且还可以节省你的时间和磁盘空间。 +第二次归档的代码位于 [`windows-archived2`](https://notabug.org/doublesine/navicat-keygen/src/windows-archived2) 分支。归档原因:Navicat进入16.x.x版本,本项目打算进行重构。 + +当你clone该仓库的时候,请使用 `--single-branch` 选项,以此避免clone到已被归档的分支、以及节省你的时间和磁盘空间。 ```console -$ git clone -b windows --single-branch https://github.com/DoubleLabyrinth/navicat-keygen.git +$ git clone -b windows --single-branch https://notabug.org/doublesine/navicat-keygen.git ``` ## 1. 注册机是怎么工作的? @@ -20,9 +22,7 @@ $ git clone -b windows --single-branch https://github.com/DoubleLabyrinth/navica ## 3. 如何使用这个注册机? -针对 Windows 用户,请见[这里](doc/how-to-use.windows.zh-CN.md)。 - -针对 Linux 用户,请见[这里](doc/how-to-use.linux.zh-CN.md)。 +见[这里](doc/how-to-use.windows.zh-CN.md)。 ## 4. 贡献者 diff --git a/doc/how-to-build.md b/doc/how-to-build.md index c10bae3..fe9dfdb 100644 --- a/doc/how-to-build.md +++ b/doc/how-to-build.md @@ -1,35 +1,39 @@ -# Navicat Keygen - How to build? +# navicat-keygen for windows - How to build? [中文版](how-to-build.zh-CN.md) ## 1. Prerequisites -1. Please make sure that you have __Visual Studio 2019__ or the higher. Because this is a VS2019 project. +1. Please make sure that you have __Visual Studio 2022__ or the higher. Because this is a VS2022 project. 2. Please make sure you have installed `vcpkg` and the following libraries: - * `capstone[x86]:x64-windows-static` - * `capstone[x86]:x86-windows-static` - * `keystone:x64-windows-static` - * `keystone:x86-windows-static` - * `openssl-windows:x64-windows-static` - * `openssl-windows:x86-windows-static` + * `fmt:x64-windows-static` + * `fmt:x86-windows-static` + * `openssl:x64-windows-static` + * `openssl:x86-windows-static` * `rapidjson:x64-windows-static` * `rapidjson:x86-windows-static` + * `keystone:x64-windows-static` + * `keystone:x86-windows-static` + * `unicorn:x64-windows-static` + * `unicorn:x86-windows-static` is installed. You can install them by: ```console - $ vcpkg install capstone[x86]:x64-windows-static - $ vcpkg install capstone[x86]:x86-windows-static - $ vcpkg install keystone:x64-windows-static - $ vcpkg install keystone:x86-windows-static - $ vcpkg install openssl-windows:x64-windows-static - $ vcpkg install openssl-windows:x86-windows-static + $ vcpkg install fmt:x64-windows-static + $ vcpkg install fmt:x86-windows-static + $ vcpkg install openssl:x64-windows-static + $ vcpkg install openssl:x86-windows-static $ vcpkg install rapidjson:x64-windows-static $ vcpkg install rapidjson:x86-windows-static + $ vcpkg install keystone:x64-windows-static + $ vcpkg install keystone:x86-windows-static + $ vcpkg install unicorn:x64-windows-static + $ vcpkg install unicorn:x86-windows-static ``` 3. Your `vcpkg` has been integrated into your __Visual Studio__, which means you have run diff --git a/doc/how-to-build.zh-CN.md b/doc/how-to-build.zh-CN.md index 3b0fd2d..2d99357 100644 --- a/doc/how-to-build.zh-CN.md +++ b/doc/how-to-build.zh-CN.md @@ -1,31 +1,35 @@ -# Navicat Keygen - 如何编译? +# navicat-keygen for windows - 如何编译? ## 1. 前提条件 -1. 请确保你有 __Visual Studio 2019__ 或者更高版本。因为这是一个VS2019项目。 +1. 请确保你有 __Visual Studio 2022__ 或者更高版本。因为这是一个VS2022项目。 2. 请确保你安装了 `vcpkg` 以及下面几个库: - * `capstone[x86]:x64-windows-static` - * `capstone[x86]:x86-windows-static` - * `keystone:x64-windows-static` - * `keystone:x86-windows-static` - * `openssl-windows:x64-windows-static` - * `openssl-windows:x86-windows-static` + * `fmt:x64-windows-static` + * `fmt:x86-windows-static` + * `openssl:x64-windows-static` + * `openssl:x86-windows-static` * `rapidjson:x64-windows-static` * `rapidjson:x86-windows-static` + * `keystone:x64-windows-static` + * `keystone:x86-windows-static` + * `unicorn:x64-windows-static` + * `unicorn:x86-windows-static` 你可以通过下面的命令来安装它们: ```console - $ vcpkg install capstone[x86]:x64-windows-static - $ vcpkg install capstone[x86]:x86-windows-static - $ vcpkg install keystone:x64-windows-static - $ vcpkg install keystone:x86-windows-static - $ vcpkg install openssl-windows:x64-windows-static - $ vcpkg install openssl-windows:x86-windows-static + $ vcpkg install fmt:x64-windows-static + $ vcpkg install fmt:x86-windows-static + $ vcpkg install openssl:x64-windows-static + $ vcpkg install openssl:x86-windows-static $ vcpkg install rapidjson:x64-windows-static $ vcpkg install rapidjson:x86-windows-static + $ vcpkg install keystone:x64-windows-static + $ vcpkg install keystone:x86-windows-static + $ vcpkg install unicorn:x64-windows-static + $ vcpkg install unicorn:x86-windows-static ``` 3. 你的 `vcpkg` 已经和你的 __Visual Studio__ 集成了,即你曾成功运行了: diff --git a/doc/how-to-use.linux.md b/doc/how-to-use.linux.md deleted file mode 100644 index ca5c96b..0000000 --- a/doc/how-to-use.linux.md +++ /dev/null @@ -1,257 +0,0 @@ -# Navicat Keygen - How to use? (Linux) - -[中文版](how-to-use.linux.zh-CN.md) - -* Maintainer(s): zenuo, DoubleLabyrinth - ---- - -> You can download [Screen recoding](image/Screen_recording.mp4) for references. - -1. Switch to the path you extracted the installation package. Run Navicat, for initialization: - - ```console - $ cd ~/navicat121_premium_en_x64 - $ ./start_navicat - ``` - - When running for the first time, you will be prompted with the following two windows, click "Cancel" to: - - ![](image/Screenshot_2019-04-30_12-31-33.png) - - ![](image/Screenshot_2019-04-30_12-31-52.png) - - Until the `Registration` window appears, select `Trial`, close Navicat after loading is complete, and execute `Step 2`: - - ![](image/Screenshot_2019-04-30_12-32-43.png) - -2. Download the latest release [from here](https://github.com/DoubleLabyrinth/navicat-keygen/releases), and extract: - - > The 64-bit executable file is downloaded here. If you use 32-bit, please download the corresponding version. - - ```console - $ curl -O -L https://github.com/DoubleLabyrinth/navicat-keygen/releases/latest/download/navicat-keygen-for-x64.zip - $ unzip navicat-keygen-for-x64.zip - ``` - -3. Download `navicat-pacther.sh` and `navicat-keygen.sh`: - - ```console - $ curl -O -L https://raw.githubusercontent.com/DoubleLabyrinth/navicat-keygen/windows/bash/navicat-patcher.sh - $ chmod +x navicat-patcher.sh - $ curl -O -L https://raw.githubusercontent.com/DoubleLabyrinth/navicat-keygen/windows/bash/navicat-keygen.sh - $ chmod +x navicat-keygen.sh - ``` - -4. Use `navicat-patcher.exe` to replace __Navicat Activation Public Key__ that is stored in `navicat.exe` or `libcc.dll`. - - > Please turn off `Navicat` when performing this step. - - ```console - $ ./navicat-patcher.sh - ``` - - It has been tested on __Navicat Premium 12.1.22 Simplified Chinese version__. The following is an example of output: - - ``` - *************************************************** - * Navicat Patcher by @DoubleLabyrinth * - * Version: 4.0 * - *************************************************** - - Press Enter to continue or Ctrl + C to abort. - - [+] Try to open Navicat.exe ... Ok! - [+] Try to open libcc.dll ... Ok! - - [+] PatchSolution0 ...... Ready to apply - [*] Patch offset = +0x029bccd8 - [+] PatchSolution1 ...... Ready to apply - [*] [0] Patch offset = +0x02206c00 - [*] [1] Patch offset = +0x0074c489 - [*] [2] Patch offset = +0x02206910 - [*] [3] Patch offset = +0x0074c46f - [*] [4] Patch offset = +0x02206904 - [-] PatchSolution2 ...... Omitted - [+] PatchSolution3 ...... Ready to apply - [*] [ 0] Instruction RVA = 0x016539c8, Patch Offset = +0x023e64d4 - [*] [ 1] Instruction RVA = 0x01653a1f, Patch Offset = +0x01652e23 - [*] [ 2] Instruction RVA = 0x01653a25, Patch Offset = +0x01652e28 - [*] [ 3] Instruction RVA = 0x01653a8c, Patch Offset = +0x01652e8e - ... - ... - ... - [*] [108] Instruction RVA = 0x016604e1, Patch Offset = +0x023e66d8 - [*] [109] Instruction RVA = 0x01660518, Patch Offset = +0x0165f91c - [*] [110] Instruction RVA = 0x0166051e, Patch Offset = +0x0165f921 - - [*] PatchSolution0 is suppressed in order to keep digital signature valid. - - [*] Generating new RSA private key, it may take a long time... - [*] Your RSA public key: - -----BEGIN PUBLIC KEY----- - MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA1hV66HgU4LrKXWW6O7bK - AN6ZTr5W+Mq8ClTQ+Pc+BdhLu6rww55kVq7OXKGpvx0G4eTafYMGrrBETgDSTaMq - Bx+8bZbGBWh2LtNfqU+xUrpHHBSz0ByBc3iTEzzthJl+Fzf8suDX2lWYIc/Ym/eW - YtxdJ7xOzLb68z4N0zVmA0jFX2FOm75DRYgKqy4SGixapfucL9dVaWVLTUdbrVdj - 4LX78t4t5ykbYoThrat4yuLvj/BxLaQ6ivKD+ScfHdtCoY+NA5jmBoUfBq3Q1SXB - iNaoXctbi0/H3MiPu0cRojryAocooF89yFm5/mNnzWGAYPr6DvBI8CDTZmjaQ4oC - aQIDAQAB - -----END PUBLIC KEY----- - - ******************************************************* - * PatchSolution1 * - ******************************************************* - [*] Previous: - +0x0000000002206c00 44 37 35 31 32 35 42 37 30 37 36 37 42 39 34 31 D75125B70767B941 - +0x0000000002206c10 34 35 42 34 37 43 31 43 42 33 43 30 37 35 35 45 45B47C1CB3C0755E - +0x0000000002206c20 37 43 43 42 38 38 32 35 43 35 44 43 45 30 43 35 7CCB8825C5DCE0C5 - ... - ... - [*] After: - +0x0000000002206c00 33 43 32 39 30 39 35 38 33 34 38 41 42 43 35 39 3C290958348ABC59 - +0x0000000002206c10 36 44 39 30 43 45 45 38 31 36 42 36 39 38 34 44 6D90CEE816B6984D - +0x0000000002206c20 35 32 35 34 37 45 30 32 34 31 42 36 42 43 31 41 52547E0241B6BC1A - ... - ... - - [*] Previous: - +0x000000000074c480 fe ea bc 01 .... - [*] After: - +0x000000000074c480 08 00 00 00 .... - - [*] Previous: - +0x0000000002206910 45 31 43 45 44 30 39 42 39 43 32 31 38 36 42 46 E1CED09B9C2186BF - +0x0000000002206920 37 31 41 37 30 43 30 46 45 32 46 31 45 30 41 45 71A70C0FE2F1E0AE - +0x0000000002206930 46 33 42 44 36 42 37 35 32 37 37 41 41 42 32 30 F3BD6B75277AAB20 - ... - ... - [*] After: - +0x0000000002206910 41 33 39 42 41 36 43 34 31 36 33 32 35 30 46 45 A39BA6C4163250FE - +0x0000000002206920 42 32 41 39 31 41 34 32 46 44 42 46 30 41 32 31 B2A91A42FDBF0A21 - +0x0000000002206930 33 34 46 34 36 44 43 45 34 30 42 46 41 42 33 35 34F46DCE40BFAB35 - ... - ... - - [*] Previous: - +0x000000000074c460 59 Y - +0x000000000074c470 08 01 00 ... - [*] After: - +0x000000000074c460 06 . - +0x000000000074c470 00 00 00 ... - - [*] Previous: - +0x0000000002206900 39 32 39 33 33 92933 - [*] After: - +0x0000000002206900 42 34 34 33 38 B4438 - - ******************************************************* - * PatchSolution3 * - ******************************************************* - [*] +023e64d4: 4d 49 49 ---> 4d 49 49 - [*] +01652e23: 42 49 ---> 42 49 - [*] +01652e28: 6a ---> 6a - ... - ... - ... - [*] +023e66d8: 77 49 44 41 ---> 51 49 44 41 - [*] +0165f91c: 51 41 ---> 51 41 - [*] +0165f921: 42 ---> 42 - - [*] New RSA-2048 private key has been saved to - C:\Users\DoubleSine\github.com\navicat-keygen\bin\x64-Release\RegPrivateKey.pem - - ******************************************************* - * PATCH HAS BEEN DONE SUCCESSFULLY! * - * HAVE FUN AND ENJOY~ * - ******************************************************* - ``` - -5. Then use `navicat-keygen.exe` to generate __snKey__ and __Activation Code__ - - ```console - $ ./navicat-keygen.sh - ``` - - You will be asked to select Navicat product, language and input major version number. After that an randomly generated __snKey__ will be given. - - ``` - Select Navicat product: - 0. DataModeler - 1. Premium - 2. MySQL - 3. PostgreSQL - 4. Oracle - 5. SQLServer - 6. SQLite - 7. MariaDB - 8. MongoDB - 9. ReportViewer - - (Input index)> 1 - - Select product language: - 0. English - 1. Simplified Chinese - 2. Traditional Chinese - 3. Japanese - 4. Polish - 5. Spanish - 6. French - 7. German - 8. Korean - 9. Russian - 10. Portuguese - - (Input index)> 1 - - (Input major version number, range: 0 ~ 15, default: 12)> 12 - - Serial number: - NAVO-2ORP-IN5A-GQEE - - Your name: - ``` - - You can use this __snKey__ to activate your Navicat preliminarily. - - Then you will be asked to input `Your name` and `Your organization`. Just set them whatever you want, but not too long. - - ``` - Your name: DoubleLabyrinth - Your organization: DoubleLabyrinth - Input request code (in Base64), input empty line to end: - ``` - - After that, you will be asked to input the request code. Now __DO NOT CLOSE KEYGEN__. - -6. __Set up__ a invalid proxy. Find and click `Registration`. Fill `Registration Key` by __snKey__ that the keygen gave and click `Activate`. - -7. Online activation will failed and Navicat will ask you do `Manual Activation`, just choose it. - -8. Copy your request code and paste it in the keygen. Input empty line to tell the keygen that your input ends. - - ``` - Your name: DoubleLabyrinth - Your organization: DoubleLabyrinth - - Input request code (in Base64), input empty line to end: - t2U+0yfE2FfnbjyhCXa0lglZOHu9Ntc3qyGiPbR6xb1QoU63/9BVfdaCq0blwVycXPyT/Vqw5joIKdM5oCRR/afCPM7iRcyhQMAnvqwc+AOKCqayVV+SqKLvtR/AbREI12w++PQ6Ewfs4A8PgB8OJ9G0jKt6Q/iJRblqi2WWw9mwy+YHcYYh3UAfygTnyj/xl+MzRymbY0lkus+6LPtpDecVsFFhM7F32Ee1QPwISko7bAkHOtkt+joPfYDdn9PDGZ4HEmeLvH6UqZCXkzgaAfynB7cQZFEkId8FsW2NGkbpM7wB2Hi3fNFgOIjutTprixTdbpFKn4w6gGc28ve23A== - - Request Info: - {"K":"NAVO2ORPIN5AGQEE", "DI":"R91j6WyMhxHznAKSxxxx", "P":"WIN"} - - Response Info: - {"K":"NAVO2ORPIN5AGQEE","DI":"R91j6WyMhxHznAKSxxxx","N":"DoubleLabyrinth","O":"DoubleLabyrinth","T":1547826060} - - License: - lRF18o+ZhBphyN0U5kFLHtAAGGXuvhqOcxNuvAk4dJcGeR0ISuw74mQvAfdNjv0T - I5NZFzqIJvrzM0XeR88q+3kmZkECuxwwWHP3zzDPhPiylcTV4DoGZ1tfoViUSYQc - LgXG0Fl7koZeP61YOKQ8GfX+Xk2ZTM64bYaF7NlhonM+GQUJCCF2JThmrP921t2p - b/E5pV6fLOYMM13881ZQcQcltMNVDZn4lzgzKRFFxCQFaTl6fJMHZdYVmICQTHtI - sNaym0zduc8/cv34mgJ+7NseXmsEPCdjrZ59wgfPsLhZLXqtfxi5hGWw4NMa3Sb2 - UI8dzqFzRp/hSDEM0mEqiA== - ``` - -9. Finally, you will get __Activation Code__ which looks like a Base64 string. Just copy it and paste it in Navicat `Manual Activation` window, then click `Activate`. If nothing wrong, activation should be done successfully. Don't forget to close the proxy that we just set up. - diff --git a/doc/how-to-use.linux.zh-CN.md b/doc/how-to-use.linux.zh-CN.md deleted file mode 100644 index 951cdb6..0000000 --- a/doc/how-to-use.linux.zh-CN.md +++ /dev/null @@ -1,255 +0,0 @@ -# Navicat Keygen - 如何使用这个注册机? (Linux) - -* 维护者:zenuo, DoubleLabyrinth - ---- - -> 可下载[录屏文件](image/Screen_recording.mp4)参考 - -1. 切换到解压安装包的路径,本示例解压到了 `家目录`,运行Navicat,使其初始化环境: - - ```console - $ cd ~/navicat121_premium_en_x64 - $ ./start_navicat - ``` - - 首次启动时,会提示如下两个窗口,点击“Cancel”即可: - - ![](image/Screenshot_2019-04-30_12-31-33.png) - - ![](image/Screenshot_2019-04-30_12-31-52.png) - - 直至出现 `Registration` 窗口,选择 `Trial`,待加载完成后关闭Navicat,执行 `步骤2`: - - ![](image/Screenshot_2019-04-30_12-32-43.png) - -2. [从这里](https://github.com/DoubleLabyrinth/navicat-keygen/releases)下载最新的release,并且解压: - - > 此处下载的是64位的可执行文件,若您使用32位,请下载对应版本 - - ```console - $ curl -O -L https://github.com/DoubleLabyrinth/navicat-keygen/releases/latest/download/navicat-keygen-for-x64.zip - $ unzip navicat-keygen-for-x64.zip - ``` - -3. 下载 `navicat-pacther.sh` 和 `navicat-keygen.sh`: - - ```console - $ curl -O -L https://raw.githubusercontent.com/DoubleLabyrinth/navicat-keygen/windows/bash/navicat-patcher.sh - $ chmod +x navicat-patcher.sh - $ curl -O -L https://raw.githubusercontent.com/DoubleLabyrinth/navicat-keygen/windows/bash/navicat-keygen.sh - $ chmod +x navicat-keygen.sh - ``` - -4. 使用 `navicat-patcher.exe` 替换掉 `navicat.exe` 和 `libcc.dll` 里的Navicat激活公钥。 - - > 执行此步骤时,请将Navicat关闭 - - ```console - $ ./navicat-patcher.sh - ``` - - __Navicat Premium 12.1.22 简体中文版已通过测试__。下面将是一份样例输出: - - ``` - *************************************************** - * Navicat Patcher by @DoubleLabyrinth * - * Version: 4.0 * - *************************************************** - - Press Enter to continue or Ctrl + C to abort. - - [+] Try to open Navicat.exe ... Ok! - [+] Try to open libcc.dll ... Ok! - - [+] PatchSolution0 ...... Ready to apply - [*] Patch offset = +0x029bccd8 - [+] PatchSolution1 ...... Ready to apply - [*] [0] Patch offset = +0x02206c00 - [*] [1] Patch offset = +0x0074c489 - [*] [2] Patch offset = +0x02206910 - [*] [3] Patch offset = +0x0074c46f - [*] [4] Patch offset = +0x02206904 - [-] PatchSolution2 ...... Omitted - [+] PatchSolution3 ...... Ready to apply - [*] [ 0] Instruction RVA = 0x016539c8, Patch Offset = +0x023e64d4 - [*] [ 1] Instruction RVA = 0x01653a1f, Patch Offset = +0x01652e23 - [*] [ 2] Instruction RVA = 0x01653a25, Patch Offset = +0x01652e28 - [*] [ 3] Instruction RVA = 0x01653a8c, Patch Offset = +0x01652e8e - ... - ... - ... - [*] [108] Instruction RVA = 0x016604e1, Patch Offset = +0x023e66d8 - [*] [109] Instruction RVA = 0x01660518, Patch Offset = +0x0165f91c - [*] [110] Instruction RVA = 0x0166051e, Patch Offset = +0x0165f921 - - [*] PatchSolution0 is suppressed in order to keep digital signature valid. - - [*] Generating new RSA private key, it may take a long time... - [*] Your RSA public key: - -----BEGIN PUBLIC KEY----- - MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA1hV66HgU4LrKXWW6O7bK - AN6ZTr5W+Mq8ClTQ+Pc+BdhLu6rww55kVq7OXKGpvx0G4eTafYMGrrBETgDSTaMq - Bx+8bZbGBWh2LtNfqU+xUrpHHBSz0ByBc3iTEzzthJl+Fzf8suDX2lWYIc/Ym/eW - YtxdJ7xOzLb68z4N0zVmA0jFX2FOm75DRYgKqy4SGixapfucL9dVaWVLTUdbrVdj - 4LX78t4t5ykbYoThrat4yuLvj/BxLaQ6ivKD+ScfHdtCoY+NA5jmBoUfBq3Q1SXB - iNaoXctbi0/H3MiPu0cRojryAocooF89yFm5/mNnzWGAYPr6DvBI8CDTZmjaQ4oC - aQIDAQAB - -----END PUBLIC KEY----- - - ******************************************************* - * PatchSolution1 * - ******************************************************* - [*] Previous: - +0x0000000002206c00 44 37 35 31 32 35 42 37 30 37 36 37 42 39 34 31 D75125B70767B941 - +0x0000000002206c10 34 35 42 34 37 43 31 43 42 33 43 30 37 35 35 45 45B47C1CB3C0755E - +0x0000000002206c20 37 43 43 42 38 38 32 35 43 35 44 43 45 30 43 35 7CCB8825C5DCE0C5 - ... - ... - [*] After: - +0x0000000002206c00 33 43 32 39 30 39 35 38 33 34 38 41 42 43 35 39 3C290958348ABC59 - +0x0000000002206c10 36 44 39 30 43 45 45 38 31 36 42 36 39 38 34 44 6D90CEE816B6984D - +0x0000000002206c20 35 32 35 34 37 45 30 32 34 31 42 36 42 43 31 41 52547E0241B6BC1A - ... - ... - - [*] Previous: - +0x000000000074c480 fe ea bc 01 .... - [*] After: - +0x000000000074c480 08 00 00 00 .... - - [*] Previous: - +0x0000000002206910 45 31 43 45 44 30 39 42 39 43 32 31 38 36 42 46 E1CED09B9C2186BF - +0x0000000002206920 37 31 41 37 30 43 30 46 45 32 46 31 45 30 41 45 71A70C0FE2F1E0AE - +0x0000000002206930 46 33 42 44 36 42 37 35 32 37 37 41 41 42 32 30 F3BD6B75277AAB20 - ... - ... - [*] After: - +0x0000000002206910 41 33 39 42 41 36 43 34 31 36 33 32 35 30 46 45 A39BA6C4163250FE - +0x0000000002206920 42 32 41 39 31 41 34 32 46 44 42 46 30 41 32 31 B2A91A42FDBF0A21 - +0x0000000002206930 33 34 46 34 36 44 43 45 34 30 42 46 41 42 33 35 34F46DCE40BFAB35 - ... - ... - - [*] Previous: - +0x000000000074c460 59 Y - +0x000000000074c470 08 01 00 ... - [*] After: - +0x000000000074c460 06 . - +0x000000000074c470 00 00 00 ... - - [*] Previous: - +0x0000000002206900 39 32 39 33 33 92933 - [*] After: - +0x0000000002206900 42 34 34 33 38 B4438 - - ******************************************************* - * PatchSolution3 * - ******************************************************* - [*] +023e64d4: 4d 49 49 ---> 4d 49 49 - [*] +01652e23: 42 49 ---> 42 49 - [*] +01652e28: 6a ---> 6a - ... - ... - ... - [*] +023e66d8: 77 49 44 41 ---> 51 49 44 41 - [*] +0165f91c: 51 41 ---> 51 41 - [*] +0165f921: 42 ---> 42 - - [*] New RSA-2048 private key has been saved to - C:\Users\DoubleSine\github.com\navicat-keygen\bin\x64-Release\RegPrivateKey.pem - - ******************************************************* - * PATCH HAS BEEN DONE SUCCESSFULLY! * - * HAVE FUN AND ENJOY~ * - ******************************************************* - ``` - -5. 接下来使用`navicat-keygen.exe`来生成序列号和激活码 - - ```console - $ ./navicat-keygen.sh - ``` - - 你会被要求选择Navicat产品类别、语言以及输入主版本号。之后会随机生成一个序列号。 - - ``` - Select Navicat product: - 0. DataModeler - 1. Premium - 2. MySQL - 3. PostgreSQL - 4. Oracle - 5. SQLServer - 6. SQLite - 7. MariaDB - 8. MongoDB - 9. ReportViewer - - (Input index)> 1 - - Select product language: - 0. English - 1. Simplified Chinese - 2. Traditional Chinese - 3. Japanese - 4. Polish - 5. Spanish - 6. French - 7. German - 8. Korean - 9. Russian - 10. Portuguese - - (Input index)> 1 - - (Input major version number, range: 0 ~ 15, default: 12)> 12 - - Serial number: - NAVO-2ORP-IN5A-GQEE - - Your name: - ``` - - 你可以使用这个序列号暂时激活Navicat。 - - 接下来你会被要求输入`用户名`和`组织名`;请随便填写,但不要太长。 - - ``` - Your name: DoubleLabyrinth - Your organization: DoubleLabyrinth - Input request code (in Base64), input empty line to end: - ``` - - 之后你会被要求填入请求码。注意 __不要关闭命令行__. - -6. 配置一个不存在的`代理`。找到`注册`窗口,并填入keygen给你的序列号。然后点击`激活`按钮。 - -7. 在线激活失败,这时候Navicat会询问你是否`手动激活`,直接选吧。 - -8. 在`手动激活`窗口你会得到一个请求码,复制它并把它粘贴到keygen里。最后别忘了连按至少两下回车结束输入。 - - ``` - Your name: DoubleLabyrinth - Your organization: DoubleLabyrinth - - Input request code (in Base64), input empty line to end: - t2U+0yfE2FfnbjyhCXa0lglZOHu9Ntc3qyGiPbR6xb1QoU63/9BVfdaCq0blwVycXPyT/Vqw5joIKdM5oCRR/afCPM7iRcyhQMAnvqwc+AOKCqayVV+SqKLvtR/AbREI12w++PQ6Ewfs4A8PgB8OJ9G0jKt6Q/iJRblqi2WWw9mwy+YHcYYh3UAfygTnyj/xl+MzRymbY0lkus+6LPtpDecVsFFhM7F32Ee1QPwISko7bAkHOtkt+joPfYDdn9PDGZ4HEmeLvH6UqZCXkzgaAfynB7cQZFEkId8FsW2NGkbpM7wB2Hi3fNFgOIjutTprixTdbpFKn4w6gGc28ve23A== - - Request Info: - {"K":"NAVO2ORPIN5AGQEE", "DI":"R91j6WyMhxHznAKSxxxx", "P":"WIN"} - - Response Info: - {"K":"NAVO2ORPIN5AGQEE","DI":"R91j6WyMhxHznAKSxxxx","N":"DoubleLabyrinth","O":"DoubleLabyrinth","T":1547826060} - - License: - lRF18o+ZhBphyN0U5kFLHtAAGGXuvhqOcxNuvAk4dJcGeR0ISuw74mQvAfdNjv0T - I5NZFzqIJvrzM0XeR88q+3kmZkECuxwwWHP3zzDPhPiylcTV4DoGZ1tfoViUSYQc - LgXG0Fl7koZeP61YOKQ8GfX+Xk2ZTM64bYaF7NlhonM+GQUJCCF2JThmrP921t2p - b/E5pV6fLOYMM13881ZQcQcltMNVDZn4lzgzKRFFxCQFaTl6fJMHZdYVmICQTHtI - sNaym0zduc8/cv34mgJ+7NseXmsEPCdjrZ59wgfPsLhZLXqtfxi5hGWw4NMa3Sb2 - UI8dzqFzRp/hSDEM0mEqiA== - ``` - -9. 如果不出意外,你会得到一个看似用Base64编码的激活码。直接复制它,并把它粘贴到Navicat的`手动激活`窗口,最后点`激活`按钮。如果没什么意外的话应该能成功激活。别忘了关闭我们刚刚设置的不存在的代理哦。 - diff --git a/doc/how-to-use.md b/doc/how-to-use.md new file mode 100644 index 0000000..0166d9e --- /dev/null +++ b/doc/how-to-use.md @@ -0,0 +1,196 @@ +# navicat-keygen for windows - How to use? + +[中文版](how-to-use.windows.zh-CN.md) + +1. Use `navicat-patcher.exe` to replace __Navicat Activation Public Key__ that is stored in `libcc.dll`. + + ``` + navicat-patcher.exe [-dry-run] [RSA-2048 PEM File Path] + ``` + + * `[-dry-run]` Run patcher without applying any patches. + + __This parameter is optional.__ + + * ``: The full path to Navicat installation folder. + + __This parameter must be specified.__ + + * `[RSA-2048 PEM File Path]`: The full path or relative path to a RSA-2048 private key file. + + __This parameter is optional.__ If not specified, `navicat-patcher.exe` will generate a new RSA-2048 private key file `RegPrivateKey.pem` at current directory. + + __Example: (in cmd.exe)__ + + ``` + navicat-patcher.exe "C:\Program Files\PremiumSoft\Navicat Premium 16" + ``` + + It has been tested on __Navicat Premium 16.0.7 English version__. The following is an example of output. + + ``` + *************************************************** + * navicat-patcher by @DoubleLabyrinth * + * version: 16.0.7.0 * + *************************************************** + + [+] Try to open libcc.dll ... OK! + + [*] patch_solution_since<16, 0, 7, 0>: m_va_CSRegistrationInfoFetcher_WIN_vtable = 0x00000001837759f0 + [*] patch_solution_since<16, 0, 7, 0>: m_va_CSRegistrationInfoFetcher_WIN_GenerateRegistrationKey = 0x0000000181fa52d0 + [*] patch_solution_since<16, 0, 7, 0>: m_va_iat_entry_malloc = 0x0000000183439bd0 + [+] patch_solution_since<16, 0, 7, 0>: official encoded key is found. + + [*] Generating new RSA private key, it may take a long time... + [*] Your RSA private key: + -----BEGIN RSA PRIVATE KEY----- + MIIEpQIBAAKCAQEAvxaFFjTE6hi80nhjgfFMM3yPer122OIWIbbumFIuAOcCF6D3 + PnRHBdP9IqB99K6Nv6vKK3Jf0Y+dc5ETrg0l0AHYq+dTFTiWusHuRMx6xFjWzO96 + 7mFmJq6P28dUucKnr6yG1TQeZaq+mHh2DNEnNEYgV7cLVT1unUmMOL/PBh/eCcaJ + 8hQNTQafQQknzCnAKC89v33y+rKInJNy9B+zSB0BGCz+eS8MKf6zc78JMSOnF2uj + NK+QEwaYw8lAbJve1F+rCQS0mbm0QvHhZYZrblVHI5l/8LkX5qBtKw7duUhXHxmO + fQieF23bBk9HDp5uQUGsdbKX6ZWitn/h926xyQIDAQABAoIBAQCHXxDRdni5zuSV + xivYdnUhVHDg5zA23ZQINmw5BJ8KjJzy2FnPqNhXzKJb0Y7ptG8/BhinRtOSxkcp + A/IJL89F2MkCn1JAimJd091UZ/fg+X7SmCVikyWm6auIa2IeZ0QcNAEhMVcHdzqn + EU+wLMu1QKjQ+x/QN0ERtHTeDyQ+lUNB+bvAjx3LHN9Zh8weVBHHtwDoyyZDdJPw + NWgpgcW+uYzlT66uh7LPPaRsEZgAkPIkhzZnwmugXdhlWxtYHKTEfe5gCqubQICc + I/x1yBP1EZFm6qBQD4/49775ZbXwxgaWvBXG+Aah9x8JYtVUS4MgrAiC4a8NQqFp + nwKVjUIBAoGBAOWsj9GGb2KYbfLzJNRrSxhs4TUBfpHteKSm2pL92NAbIOjssNhL + hLY3gBFX2RnYmoGD6YT84JNykuAictgAd5GwvLIbaVF9l7MQn8APRbe2CzQ+/494 + 9hpn33MZOBNd3I+a5+2qoFbXI04loyYDJkkeOqbwZzJjs7k9HmZMNwY5AoGBANT9 + tRFWFDvA0pPgGoHhzlsAUAmrbSfCPkhrRXpE9fgl3VnV+NRtjCf9NhJt0uaIokZ5 + oSf+jClcwU8N4EvGxMBaCHTqBzgc4dLPWpMAhPoMjjv1Oyug2iBcuTasHVP+Jdgq + CaNzpXOuq4upaaNrq+QMsI6O9wA/zWhWPmnYQYgRAoGAUk56471noU+65zvXUQB6 + UvCB7Hrynt0ZRPg+kDrEPh/atV5NKdY2Yw6UqKJwvOBwzkU1pGDzIiQHGqd9vIa+ + Usmhdbp5DakSeitU9IEEnQdyEHEbKJFSsLfUzeyVuesDJbt/rh5dg4Fpt5GpW+/5 + Am8A2d6BPP+Z4qJSiJp7hZECgYEAy64TCZEXqEytE1yr/KjDfaK+54BX0j2e8gIj + XtmznqoXE2Hboslfzp4Gp3j+xhbDmEGYK3bw8l0RP1g1tkFOxeNTUvq6DJ8SFVbV + dt54S+bV3eCVxRL9hRUmyXGuWjQgXKdWsEhXYFkZE2Xe77h3mI3KCYoOCt74v146 + MV3szQECgYEAozTO7Wuum+VMKIY35hmHMjUiYmLl3EXWwMBT2VSsk8Siu0XoH0yd + KoxsLDUBMS8sWKCZhFwU+Fx8UZjfo+xE3H4UTyVsw5EDpB9gSud928gNADwxTKor + 3s4jnUzb4XRQ0qN2jXzdNuqXNV1ozeqajbM2oSZqbSnWSs5g6DpIs1Q= + -----END RSA PRIVATE KEY----- + + [*] patch_solution_since<16, 0, 7, 0>: Patch has been done. + [*] New RSA-2048 private key has been saved to + C:\Users\DoubleSine\source\repos\navicat-keygen\bin\x64-Release\RegPrivateKey.pem + + + ******************************************************* + * PATCH HAS BEEN DONE SUCCESSFULLY! * + * HAVE FUN AND ENJOY~ * + ******************************************************* + ``` + +2. Then use `navicat-keygen.exe` to generate __snKey__ and __Activation Code__ + + ``` + navicat-keygen.exe <-bin|-text> [-adv] + ``` + + * `<-bin|-text>`: Must be `-bin` or `-text`. + + If `-bin` is specified, `navicat-keygen.exe` will finally generate `license_file`. It is used for Navicat old activation method only. + + If `-text` is specified, `navicat-keygen.exe` will finally generate a Base64-style string which is __Activation Code__. It is used for Navicat new activation method. + + __This parameter must be specified.__ + + * `[-adv]`: Enable advanced mode. + + __This parameter is optional.__ If specified, `navicat-keygen.exe` will ask you input Navicat product ID number, language signature numbers. It is for future use generally. + + * ``: The full path or relative path to an RSA-2048 private key file. The private key must be in PEM format. + + __This parameter must be specified.__ + + __Example: (in cmd.exe)__ + + ```console + navicat-keygen.exe -text .\RegPrivateKey.pem + ``` + + You will be asked to select Navicat product, language and input major version number. After that an randomly generated __snKey__ will be given. + + ``` + *************************************************** + * navicat-keygen by @DoubleLabyrinth * + * version: 16.0.7.0 * + *************************************************** + + [*] Select Navicat product: + 0. DataModeler + 1. Premium + 2. MySQL + 3. PostgreSQL + 4. Oracle + 5. SQLServer + 6. SQLite + 7. MariaDB + 8. MongoDB + 9. ReportViewer + + (Input index)> 1 + + [*] Select product language: + 0. English + 1. Simplified Chinese + 2. Traditional Chinese + 3. Japanese + 4. Polish + 5. Spanish + 6. French + 7. German + 8. Korean + 9. Russian + 10. Portuguese + + (Input index)> 0 + + [*] Input major version number: + (range: 11 ~ 16, default: 16)> 16 + + [*] Serial number: + NAVL-GFKA-T5SR-ZFTK + + [*] Your name: + ``` + + You can use this __snKey__ to activate your Navicat preliminarily. + + Then you will be asked to input `Your name` and `Your organization`. Just set them whatever you want, but not too long. + + ``` + [*] Your name: Double Sine + [*] Your organization: PremiumSoft CyberTech Ltd. + + [*] Input request code (in Base64), input empty line to end: + ``` + + After that, you will be asked to input the request code. Now __DO NOT CLOSE KEYGEN__. + +3. __Disconnect your network__ and open Navicat. Find and click `Registration`. Fill `Registration Key` by __snKey__ that the keygen gave and click `Activate`. + +4. Generally online activation will failed and Navicat will ask you do `Manual Activation`, just choose it. + +5. Copy your request code and paste it in the keygen. Input empty line to tell the keygen that your input ends. + + ``` + [*] Your name: Double Sine + [*] Your organization: PremiumSoft CyberTech Ltd. + + [*] Input request code (in Base64), input empty line to end: + CpgnfbIJGmAcxCuo/pAb8EeoS0audZn2NNemg6c3NPK/dWgb343IZQrFwoBZY6lpxE4Fq1BoNmCM75P03XpiXQ+hErcvFWk6iQPDCk/d4msf/AoprIqAMpXFoFLkeP0G93UIIEeBsUej8SrxdDgQDM585iPok5fUW+fTDCD1VICr7DBdL3c/69IxeIgiOQSuImdIQiM3/EOfDiFbAJL9vHW5LxFT8jj+8RPXehwPTBphpInmGdzxVZUZJwAGlXt7orrRbzafdeBjz6MnTajTcJP3SS2dBCiR33UScnyxYGEXdzv7+QLScTmCvI7gqg3Z8DMhroKMoHmy1AvC16FKVw== + + [*] Request Info: + {"K":"NAVLGFKAT5SRZFTK", "DI":"7D48FCBD093C778879A1", "P":"WIN"} + + [*] Response Info: + {"K":"NAVLGFKAT5SRZFTK","DI":"7D48FCBD093C778879A1","N":"Double Sine","O":"PremiumSoft CyberTech Ltd.","T":1644387294} + + [*] Activation Code: + vwLGmQIWg/DtzHMcaKCDHAjTcBNbTo2VmNllphUSUMgGjgvL6v82ue+GqXB6M/qn48Rj4D4Joqqisr6UwMSclNmQxOQz4RftEpLtG6KBjDo4LM71qn9R/jWoZV5EoHPQkX5gzhO/D7GammrRGn2MV+zI6dJ4c4SBFNnNyjAeEqNzinrQwjB7lUVTlpHEe/SMrdCsGliPZQ/X+5ASbEsq3D8PZsjysJv98MIJrZvdTdznrRe8JzYP+8sbIPQMIX1UDmdyDpbpSl45N92OhO4htz1kFjUEfnrwY0GMOhdYHv/PfMI7RiQzkRyY7pLvX7muJ4dkA+CmMmwew3gy3MWjig== + ``` + +6. Finally, you will get __Activation Code__ which looks like a Base64 string. Just copy it and paste it in Navicat `Manual Activation` window, then click `Activate`. If nothing wrong, activation should be done successfully. + diff --git a/doc/how-to-use.windows.md b/doc/how-to-use.windows.md deleted file mode 100644 index ceb2a5f..0000000 --- a/doc/how-to-use.windows.md +++ /dev/null @@ -1,256 +0,0 @@ -# Navicat Keygen - How to use? (Windows) - -[中文版](how-to-use.windows.zh-CN.md) - -1. Download the latest release [from here](https://github.com/DoubleLabyrinth/navicat-keygen/releases). - -2. Use `navicat-patcher.exe` to replace __Navicat Activation Public Key__ that is stored in `navicat.exe` or `libcc.dll`. - - ``` - navicat-patcher.exe [-dry-run] [RSA-2048 PEM File Path] - ``` - - * `[-dry-run]` Run patcher without applying any patches. - - __This parameter is optional.__ - - * ``: The full path to Navicat installation folder. - - __This parameter must be specified.__ - - * `[RSA-2048 PEM File Path]`: The full path or relative path to a RSA-2048 private key file. - - __This parameter is optional.__ If not specified, `navicat-patcher.exe` will generate a new RSA-2048 private key file `RegPrivateKey.pem` at current directory. - - __Example: (in cmd.exe)__ - - ``` - navicat-patcher.exe "C:\Program Files\PremiumSoft\Navicat Premium 12" - ``` - - It has been tested on __Navicat Premium 12.1.22 Simplified Chinese version__. The following is an example of output. - - ``` - *************************************************** - * Navicat Patcher by @DoubleLabyrinth * - * Version: 4.0 * - *************************************************** - - Press Enter to continue or Ctrl + C to abort. - - [+] Try to open Navicat.exe ... Ok! - [+] Try to open libcc.dll ... Ok! - - [+] PatchSolution0 ...... Ready to apply - [*] Patch offset = +0x029bccd8 - [+] PatchSolution1 ...... Ready to apply - [*] [0] Patch offset = +0x02206c00 - [*] [1] Patch offset = +0x0074c489 - [*] [2] Patch offset = +0x02206910 - [*] [3] Patch offset = +0x0074c46f - [*] [4] Patch offset = +0x02206904 - [-] PatchSolution2 ...... Omitted - [+] PatchSolution3 ...... Ready to apply - [*] [ 0] Instruction RVA = 0x016539c8, Patch Offset = +0x023e64d4 - [*] [ 1] Instruction RVA = 0x01653a1f, Patch Offset = +0x01652e23 - [*] [ 2] Instruction RVA = 0x01653a25, Patch Offset = +0x01652e28 - [*] [ 3] Instruction RVA = 0x01653a8c, Patch Offset = +0x01652e8e - ... - ... - ... - [*] [108] Instruction RVA = 0x016604e1, Patch Offset = +0x023e66d8 - [*] [109] Instruction RVA = 0x01660518, Patch Offset = +0x0165f91c - [*] [110] Instruction RVA = 0x0166051e, Patch Offset = +0x0165f921 - - [*] PatchSolution0 is suppressed in order to keep digital signature valid. - - [*] Generating new RSA private key, it may take a long time... - [*] Your RSA public key: - -----BEGIN PUBLIC KEY----- - MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA1hV66HgU4LrKXWW6O7bK - AN6ZTr5W+Mq8ClTQ+Pc+BdhLu6rww55kVq7OXKGpvx0G4eTafYMGrrBETgDSTaMq - Bx+8bZbGBWh2LtNfqU+xUrpHHBSz0ByBc3iTEzzthJl+Fzf8suDX2lWYIc/Ym/eW - YtxdJ7xOzLb68z4N0zVmA0jFX2FOm75DRYgKqy4SGixapfucL9dVaWVLTUdbrVdj - 4LX78t4t5ykbYoThrat4yuLvj/BxLaQ6ivKD+ScfHdtCoY+NA5jmBoUfBq3Q1SXB - iNaoXctbi0/H3MiPu0cRojryAocooF89yFm5/mNnzWGAYPr6DvBI8CDTZmjaQ4oC - aQIDAQAB - -----END PUBLIC KEY----- - - ******************************************************* - * PatchSolution1 * - ******************************************************* - [*] Previous: - +0x0000000002206c00 44 37 35 31 32 35 42 37 30 37 36 37 42 39 34 31 D75125B70767B941 - +0x0000000002206c10 34 35 42 34 37 43 31 43 42 33 43 30 37 35 35 45 45B47C1CB3C0755E - +0x0000000002206c20 37 43 43 42 38 38 32 35 43 35 44 43 45 30 43 35 7CCB8825C5DCE0C5 - ... - ... - [*] After: - +0x0000000002206c00 33 43 32 39 30 39 35 38 33 34 38 41 42 43 35 39 3C290958348ABC59 - +0x0000000002206c10 36 44 39 30 43 45 45 38 31 36 42 36 39 38 34 44 6D90CEE816B6984D - +0x0000000002206c20 35 32 35 34 37 45 30 32 34 31 42 36 42 43 31 41 52547E0241B6BC1A - ... - ... - - [*] Previous: - +0x000000000074c480 fe ea bc 01 .... - [*] After: - +0x000000000074c480 08 00 00 00 .... - - [*] Previous: - +0x0000000002206910 45 31 43 45 44 30 39 42 39 43 32 31 38 36 42 46 E1CED09B9C2186BF - +0x0000000002206920 37 31 41 37 30 43 30 46 45 32 46 31 45 30 41 45 71A70C0FE2F1E0AE - +0x0000000002206930 46 33 42 44 36 42 37 35 32 37 37 41 41 42 32 30 F3BD6B75277AAB20 - ... - ... - [*] After: - +0x0000000002206910 41 33 39 42 41 36 43 34 31 36 33 32 35 30 46 45 A39BA6C4163250FE - +0x0000000002206920 42 32 41 39 31 41 34 32 46 44 42 46 30 41 32 31 B2A91A42FDBF0A21 - +0x0000000002206930 33 34 46 34 36 44 43 45 34 30 42 46 41 42 33 35 34F46DCE40BFAB35 - ... - ... - - [*] Previous: - +0x000000000074c460 59 Y - +0x000000000074c470 08 01 00 ... - [*] After: - +0x000000000074c460 06 . - +0x000000000074c470 00 00 00 ... - - [*] Previous: - +0x0000000002206900 39 32 39 33 33 92933 - [*] After: - +0x0000000002206900 42 34 34 33 38 B4438 - - ******************************************************* - * PatchSolution3 * - ******************************************************* - [*] +023e64d4: 4d 49 49 ---> 4d 49 49 - [*] +01652e23: 42 49 ---> 42 49 - [*] +01652e28: 6a ---> 6a - ... - ... - ... - [*] +023e66d8: 77 49 44 41 ---> 51 49 44 41 - [*] +0165f91c: 51 41 ---> 51 41 - [*] +0165f921: 42 ---> 42 - - [*] New RSA-2048 private key has been saved to - C:\Users\DoubleSine\github.com\navicat-keygen\bin\x64-Release\RegPrivateKey.pem - - ******************************************************* - * PATCH HAS BEEN DONE SUCCESSFULLY! * - * HAVE FUN AND ENJOY~ * - ******************************************************* - ``` - -3. Then use `navicat-keygen.exe` to generate __snKey__ and __Activation Code__ - - ``` - navicat-keygen.exe <-bin|-text> [-adv] - ``` - - * `<-bin|-text>`: Must be `-bin` or `-text`. - - If `-bin` is specified, `navicat-keygen.exe` will finally generate `license_file`. It is used for Navicat old activation method only. - - If `-text` is specified, `navicat-keygen.exe` will finally generate a Base64-style string which is __Activation Code__. It is used for Navicat new activation method. - - __This parameter must be specified.__ - - * `[-adv]`: Enable advanced mode. - - __This parameter is optional.__ If specified, `navicat-keygen.exe` will ask you input Navicat product ID number, language signature numbers. It is for future use generally. - - * ``: The full path or relative path to a RSA-2048 private key file. - - __This parameter must be specified.__ - - __Example: (in cmd.exe)__ - - ```console - navicat-keygen.exe -text .\RegPrivateKey.pem - ``` - - You will be asked to select Navicat product, language and input major version number. After that an randomly generated __snKey__ will be given. - - ``` - Select Navicat product: - 0. DataModeler - 1. Premium - 2. MySQL - 3. PostgreSQL - 4. Oracle - 5. SQLServer - 6. SQLite - 7. MariaDB - 8. MongoDB - 9. ReportViewer - - (Input index)> 1 - - Select product language: - 0. English - 1. Simplified Chinese - 2. Traditional Chinese - 3. Japanese - 4. Polish - 5. Spanish - 6. French - 7. German - 8. Korean - 9. Russian - 10. Portuguese - - (Input index)> 1 - - (Input major version number, range: 0 ~ 15, default: 12)> 12 - - Serial number: - NAVO-2ORP-IN5A-GQEE - - Your name: - ``` - - You can use this __snKey__ to activate your Navicat preliminarily. - - Then you will be asked to input `Your name` and `Your organization`. Just set them whatever you want, but not too long. - - ``` - Your name: DoubleLabyrinth - Your organization: DoubleLabyrinth - Input request code (in Base64), input empty line to end: - ``` - - After that, you will be asked to input the request code. Now __DO NOT CLOSE KEYGEN__. - -4. __Disconnect your network__ and open Navicat. Find and click `Registration`. Fill `Registration Key` by __snKey__ that the keygen gave and click `Activate`. - -5. Generally online activation will failed and Navicat will ask you do `Manual Activation`, just choose it. - -6. Copy your request code and paste it in the keygen. Input empty line to tell the keygen that your input ends. - - ``` - Your name: DoubleLabyrinth - Your organization: DoubleLabyrinth - - Input request code (in Base64), input empty line to end: - t2U+0yfE2FfnbjyhCXa0lglZOHu9Ntc3qyGiPbR6xb1QoU63/9BVfdaCq0blwVycXPyT/Vqw5joIKdM5oCRR/afCPM7iRcyhQMAnvqwc+AOKCqayVV+SqKLvtR/AbREI12w++PQ6Ewfs4A8PgB8OJ9G0jKt6Q/iJRblqi2WWw9mwy+YHcYYh3UAfygTnyj/xl+MzRymbY0lkus+6LPtpDecVsFFhM7F32Ee1QPwISko7bAkHOtkt+joPfYDdn9PDGZ4HEmeLvH6UqZCXkzgaAfynB7cQZFEkId8FsW2NGkbpM7wB2Hi3fNFgOIjutTprixTdbpFKn4w6gGc28ve23A== - - Request Info: - {"K":"NAVO2ORPIN5AGQEE", "DI":"R91j6WyMhxHznAKSxxxx", "P":"WIN"} - - Response Info: - {"K":"NAVO2ORPIN5AGQEE","DI":"R91j6WyMhxHznAKSxxxx","N":"DoubleLabyrinth","O":"DoubleLabyrinth","T":1547826060} - - License: - lRF18o+ZhBphyN0U5kFLHtAAGGXuvhqOcxNuvAk4dJcGeR0ISuw74mQvAfdNjv0T - I5NZFzqIJvrzM0XeR88q+3kmZkECuxwwWHP3zzDPhPiylcTV4DoGZ1tfoViUSYQc - LgXG0Fl7koZeP61YOKQ8GfX+Xk2ZTM64bYaF7NlhonM+GQUJCCF2JThmrP921t2p - b/E5pV6fLOYMM13881ZQcQcltMNVDZn4lzgzKRFFxCQFaTl6fJMHZdYVmICQTHtI - sNaym0zduc8/cv34mgJ+7NseXmsEPCdjrZ59wgfPsLhZLXqtfxi5hGWw4NMa3Sb2 - UI8dzqFzRp/hSDEM0mEqiA== - ``` - -7. Finally, you will get __Activation Code__ which looks like a Base64 string. Just copy it and paste it in Navicat `Manual Activation` window, then click `Activate`. If nothing wrong, activation should be done successfully. - diff --git a/doc/how-to-use.windows.zh-CN.md b/doc/how-to-use.windows.zh-CN.md deleted file mode 100644 index b486498..0000000 --- a/doc/how-to-use.windows.zh-CN.md +++ /dev/null @@ -1,254 +0,0 @@ -# Navicat Keygen - 如何使用这个注册机? (Windows) - -1. [从这里](https://github.com/DoubleLabyrinth/navicat-keygen/releases)下载最新的release。 - -2. 使用`navicat-patcher.exe`替换掉`navicat.exe`和`libcc.dll`里的Navicat激活公钥。 - - ``` - navicat-patcher.exe [-dry-run] [RSA-2048 PEM File Path] - ``` - - * `[-dry-run]`: 运行patcher但不对Navicat程序做任何修改。 - - __这个参数是可选的。__ - - * ``: Navicat的完整安装路径。 - - __这个参数必须指定。__ - - * `[RSA-2048 PEM File Path]`: RSA-2048私钥文件的完整路径或相对路径。 - - __这个参数是可选的。__ 如果未指定,`navicat-patcher.exe`将会在当前目录生成一个新的RSA-2048私钥文件。 - - __例如:(在cmd.exe中)__ - - ``` - navicat-patcher.exe "C:\Program Files\PremiumSoft\Navicat Premium 12" - ``` - - __Navicat Premium 12.1.22 简体中文版已通过测试__。下面将是一份样例输出: - - ``` - *************************************************** - * Navicat Patcher by @DoubleLabyrinth * - * Version: 4.0 * - *************************************************** - - Press Enter to continue or Ctrl + C to abort. - - [+] Try to open Navicat.exe ... Ok! - [+] Try to open libcc.dll ... Ok! - - [+] PatchSolution0 ...... Ready to apply - [*] Patch offset = +0x029bccd8 - [+] PatchSolution1 ...... Ready to apply - [*] [0] Patch offset = +0x02206c00 - [*] [1] Patch offset = +0x0074c489 - [*] [2] Patch offset = +0x02206910 - [*] [3] Patch offset = +0x0074c46f - [*] [4] Patch offset = +0x02206904 - [-] PatchSolution2 ...... Omitted - [+] PatchSolution3 ...... Ready to apply - [*] [ 0] Instruction RVA = 0x016539c8, Patch Offset = +0x023e64d4 - [*] [ 1] Instruction RVA = 0x01653a1f, Patch Offset = +0x01652e23 - [*] [ 2] Instruction RVA = 0x01653a25, Patch Offset = +0x01652e28 - [*] [ 3] Instruction RVA = 0x01653a8c, Patch Offset = +0x01652e8e - ... - ... - ... - [*] [108] Instruction RVA = 0x016604e1, Patch Offset = +0x023e66d8 - [*] [109] Instruction RVA = 0x01660518, Patch Offset = +0x0165f91c - [*] [110] Instruction RVA = 0x0166051e, Patch Offset = +0x0165f921 - - [*] PatchSolution0 is suppressed in order to keep digital signature valid. - - [*] Generating new RSA private key, it may take a long time... - [*] Your RSA public key: - -----BEGIN PUBLIC KEY----- - MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA1hV66HgU4LrKXWW6O7bK - AN6ZTr5W+Mq8ClTQ+Pc+BdhLu6rww55kVq7OXKGpvx0G4eTafYMGrrBETgDSTaMq - Bx+8bZbGBWh2LtNfqU+xUrpHHBSz0ByBc3iTEzzthJl+Fzf8suDX2lWYIc/Ym/eW - YtxdJ7xOzLb68z4N0zVmA0jFX2FOm75DRYgKqy4SGixapfucL9dVaWVLTUdbrVdj - 4LX78t4t5ykbYoThrat4yuLvj/BxLaQ6ivKD+ScfHdtCoY+NA5jmBoUfBq3Q1SXB - iNaoXctbi0/H3MiPu0cRojryAocooF89yFm5/mNnzWGAYPr6DvBI8CDTZmjaQ4oC - aQIDAQAB - -----END PUBLIC KEY----- - - ******************************************************* - * PatchSolution1 * - ******************************************************* - [*] Previous: - +0x0000000002206c00 44 37 35 31 32 35 42 37 30 37 36 37 42 39 34 31 D75125B70767B941 - +0x0000000002206c10 34 35 42 34 37 43 31 43 42 33 43 30 37 35 35 45 45B47C1CB3C0755E - +0x0000000002206c20 37 43 43 42 38 38 32 35 43 35 44 43 45 30 43 35 7CCB8825C5DCE0C5 - ... - ... - [*] After: - +0x0000000002206c00 33 43 32 39 30 39 35 38 33 34 38 41 42 43 35 39 3C290958348ABC59 - +0x0000000002206c10 36 44 39 30 43 45 45 38 31 36 42 36 39 38 34 44 6D90CEE816B6984D - +0x0000000002206c20 35 32 35 34 37 45 30 32 34 31 42 36 42 43 31 41 52547E0241B6BC1A - ... - ... - - [*] Previous: - +0x000000000074c480 fe ea bc 01 .... - [*] After: - +0x000000000074c480 08 00 00 00 .... - - [*] Previous: - +0x0000000002206910 45 31 43 45 44 30 39 42 39 43 32 31 38 36 42 46 E1CED09B9C2186BF - +0x0000000002206920 37 31 41 37 30 43 30 46 45 32 46 31 45 30 41 45 71A70C0FE2F1E0AE - +0x0000000002206930 46 33 42 44 36 42 37 35 32 37 37 41 41 42 32 30 F3BD6B75277AAB20 - ... - ... - [*] After: - +0x0000000002206910 41 33 39 42 41 36 43 34 31 36 33 32 35 30 46 45 A39BA6C4163250FE - +0x0000000002206920 42 32 41 39 31 41 34 32 46 44 42 46 30 41 32 31 B2A91A42FDBF0A21 - +0x0000000002206930 33 34 46 34 36 44 43 45 34 30 42 46 41 42 33 35 34F46DCE40BFAB35 - ... - ... - - [*] Previous: - +0x000000000074c460 59 Y - +0x000000000074c470 08 01 00 ... - [*] After: - +0x000000000074c460 06 . - +0x000000000074c470 00 00 00 ... - - [*] Previous: - +0x0000000002206900 39 32 39 33 33 92933 - [*] After: - +0x0000000002206900 42 34 34 33 38 B4438 - - ******************************************************* - * PatchSolution3 * - ******************************************************* - [*] +023e64d4: 4d 49 49 ---> 4d 49 49 - [*] +01652e23: 42 49 ---> 42 49 - [*] +01652e28: 6a ---> 6a - ... - ... - ... - [*] +023e66d8: 77 49 44 41 ---> 51 49 44 41 - [*] +0165f91c: 51 41 ---> 51 41 - [*] +0165f921: 42 ---> 42 - - [*] New RSA-2048 private key has been saved to - C:\Users\DoubleSine\github.com\navicat-keygen\bin\x64-Release\RegPrivateKey.pem - - ******************************************************* - * PATCH HAS BEEN DONE SUCCESSFULLY! * - * HAVE FUN AND ENJOY~ * - ******************************************************* - ``` - -3. 接下来使用`navicat-keygen.exe`来生成序列号和激活码 - - ``` - navicat-keygen.exe <-bin|-text> [-adv] - ``` - - * `<-bin|-text>`: 必须是`-bin`或`-text`。 - - 如果指定了`-bin`,`navicat-keygen.exe`最终将生成`license_file`文件。这个选项是给Navicat旧激活方式使用的。 - - 如果指定了`-text`,`navicat-keygen.exe`最终将生成Base64样式的激活码。这个选项是给Navicat新激活方式使用的。 - - __这个参数必须指定。__ - - * `[-adv]`: 开启高级模式。 - - __这个参数是可选的。__ 如果指定了这个参数,`navicat-keygen.exe`将会要求你手工填写产品ID号、语言标识号。这个选项一般是给以后用的。 - - * ``: RSA-2048私钥文件的完整路径或相对路径。 - - __这个参数必须指定。__ - - __例如:(在cmd.exe中)__ - - ```console - navicat-keygen.exe -text .\RegPrivateKey.pem - ``` - - 你会被要求选择Navicat产品类别、语言以及输入主版本号。之后会随机生成一个序列号。 - - ``` - Select Navicat product: - 0. DataModeler - 1. Premium - 2. MySQL - 3. PostgreSQL - 4. Oracle - 5. SQLServer - 6. SQLite - 7. MariaDB - 8. MongoDB - 9. ReportViewer - - (Input index)> 1 - - Select product language: - 0. English - 1. Simplified Chinese - 2. Traditional Chinese - 3. Japanese - 4. Polish - 5. Spanish - 6. French - 7. German - 8. Korean - 9. Russian - 10. Portuguese - - (Input index)> 1 - - (Input major version number, range: 0 ~ 15, default: 12)> 12 - - Serial number: - NAVO-2ORP-IN5A-GQEE - - Your name: - ``` - - 你可以使用这个序列号暂时激活Navicat。 - - 接下来你会被要求输入`用户名`和`组织名`;请随便填写,但不要太长。 - - ``` - Your name: DoubleLabyrinth - Your organization: DoubleLabyrinth - Input request code (in Base64), input empty line to end: - ``` - - 之后你会被要求填入请求码。注意 __不要关闭命令行__. - -4. __断开网络__ 并打开Navicat。找到`注册`窗口,并填入keygen给你的序列号。然后点击`激活`按钮。 - -5. 一般来说在线激活肯定会失败,这时候Navicat会询问你是否`手动激活`,直接选吧。 - -6. 在`手动激活`窗口你会得到一个请求码,复制它并把它粘贴到keygen里。最后别忘了连按至少两下回车结束输入。 - - ``` - Your name: DoubleLabyrinth - Your organization: DoubleLabyrinth - - Input request code (in Base64), input empty line to end: - t2U+0yfE2FfnbjyhCXa0lglZOHu9Ntc3qyGiPbR6xb1QoU63/9BVfdaCq0blwVycXPyT/Vqw5joIKdM5oCRR/afCPM7iRcyhQMAnvqwc+AOKCqayVV+SqKLvtR/AbREI12w++PQ6Ewfs4A8PgB8OJ9G0jKt6Q/iJRblqi2WWw9mwy+YHcYYh3UAfygTnyj/xl+MzRymbY0lkus+6LPtpDecVsFFhM7F32Ee1QPwISko7bAkHOtkt+joPfYDdn9PDGZ4HEmeLvH6UqZCXkzgaAfynB7cQZFEkId8FsW2NGkbpM7wB2Hi3fNFgOIjutTprixTdbpFKn4w6gGc28ve23A== - - Request Info: - {"K":"NAVO2ORPIN5AGQEE", "DI":"R91j6WyMhxHznAKSxxxx", "P":"WIN"} - - Response Info: - {"K":"NAVO2ORPIN5AGQEE","DI":"R91j6WyMhxHznAKSxxxx","N":"DoubleLabyrinth","O":"DoubleLabyrinth","T":1547826060} - - License: - lRF18o+ZhBphyN0U5kFLHtAAGGXuvhqOcxNuvAk4dJcGeR0ISuw74mQvAfdNjv0T - I5NZFzqIJvrzM0XeR88q+3kmZkECuxwwWHP3zzDPhPiylcTV4DoGZ1tfoViUSYQc - LgXG0Fl7koZeP61YOKQ8GfX+Xk2ZTM64bYaF7NlhonM+GQUJCCF2JThmrP921t2p - b/E5pV6fLOYMM13881ZQcQcltMNVDZn4lzgzKRFFxCQFaTl6fJMHZdYVmICQTHtI - sNaym0zduc8/cv34mgJ+7NseXmsEPCdjrZ59wgfPsLhZLXqtfxi5hGWw4NMa3Sb2 - UI8dzqFzRp/hSDEM0mEqiA== - ``` - - 4. 如果不出意外,你会得到一个看似用Base64编码的激活码。直接复制它,并把它粘贴到Navicat的`手动激活`窗口,最后点`激活`按钮。如果没什么意外的话应该能成功激活。 - diff --git a/doc/how-to-use.zh-CN.md b/doc/how-to-use.zh-CN.md new file mode 100644 index 0000000..a2c1c12 --- /dev/null +++ b/doc/how-to-use.zh-CN.md @@ -0,0 +1,194 @@ +# navicat-keygen for windows - 如何使用这个注册机? + +1. 使用`navicat-patcher.exe`替换掉`navicat.exe`和`libcc.dll`里的Navicat激活公钥。 + + ``` + navicat-patcher.exe [-dry-run] [RSA-2048 PEM File Path] + ``` + + * `[-dry-run]`: 运行patcher但不对Navicat程序做任何修改。 + + __这个参数是可选的。__ + + * ``: Navicat的完整安装路径。 + + __这个参数必须指定。__ + + * `[RSA-2048 PEM File Path]`: RSA-2048私钥文件的完整路径或相对路径。 + + __这个参数是可选的。__ 如果未指定,`navicat-patcher.exe`将会在当前目录生成一个新的RSA-2048私钥文件。 + + __例如:(在cmd.exe中)__ + + ``` + navicat-patcher.exe "C:\Program Files\PremiumSoft\Navicat Premium 16" + ``` + + __Navicat Premium 16.0.7 英文版__ 已通过测试。下面将是一份样例输出: + + ``` + *************************************************** + * navicat-patcher by @DoubleLabyrinth * + * version: 16.0.7.0 * + *************************************************** + + [+] Try to open libcc.dll ... OK! + + [*] patch_solution_since<16, 0, 7, 0>: m_va_CSRegistrationInfoFetcher_WIN_vtable = 0x00000001837759f0 + [*] patch_solution_since<16, 0, 7, 0>: m_va_CSRegistrationInfoFetcher_WIN_GenerateRegistrationKey = 0x0000000181fa52d0 + [*] patch_solution_since<16, 0, 7, 0>: m_va_iat_entry_malloc = 0x0000000183439bd0 + [+] patch_solution_since<16, 0, 7, 0>: official encoded key is found. + + [*] Generating new RSA private key, it may take a long time... + [*] Your RSA private key: + -----BEGIN RSA PRIVATE KEY----- + MIIEpQIBAAKCAQEAvxaFFjTE6hi80nhjgfFMM3yPer122OIWIbbumFIuAOcCF6D3 + PnRHBdP9IqB99K6Nv6vKK3Jf0Y+dc5ETrg0l0AHYq+dTFTiWusHuRMx6xFjWzO96 + 7mFmJq6P28dUucKnr6yG1TQeZaq+mHh2DNEnNEYgV7cLVT1unUmMOL/PBh/eCcaJ + 8hQNTQafQQknzCnAKC89v33y+rKInJNy9B+zSB0BGCz+eS8MKf6zc78JMSOnF2uj + NK+QEwaYw8lAbJve1F+rCQS0mbm0QvHhZYZrblVHI5l/8LkX5qBtKw7duUhXHxmO + fQieF23bBk9HDp5uQUGsdbKX6ZWitn/h926xyQIDAQABAoIBAQCHXxDRdni5zuSV + xivYdnUhVHDg5zA23ZQINmw5BJ8KjJzy2FnPqNhXzKJb0Y7ptG8/BhinRtOSxkcp + A/IJL89F2MkCn1JAimJd091UZ/fg+X7SmCVikyWm6auIa2IeZ0QcNAEhMVcHdzqn + EU+wLMu1QKjQ+x/QN0ERtHTeDyQ+lUNB+bvAjx3LHN9Zh8weVBHHtwDoyyZDdJPw + NWgpgcW+uYzlT66uh7LPPaRsEZgAkPIkhzZnwmugXdhlWxtYHKTEfe5gCqubQICc + I/x1yBP1EZFm6qBQD4/49775ZbXwxgaWvBXG+Aah9x8JYtVUS4MgrAiC4a8NQqFp + nwKVjUIBAoGBAOWsj9GGb2KYbfLzJNRrSxhs4TUBfpHteKSm2pL92NAbIOjssNhL + hLY3gBFX2RnYmoGD6YT84JNykuAictgAd5GwvLIbaVF9l7MQn8APRbe2CzQ+/494 + 9hpn33MZOBNd3I+a5+2qoFbXI04loyYDJkkeOqbwZzJjs7k9HmZMNwY5AoGBANT9 + tRFWFDvA0pPgGoHhzlsAUAmrbSfCPkhrRXpE9fgl3VnV+NRtjCf9NhJt0uaIokZ5 + oSf+jClcwU8N4EvGxMBaCHTqBzgc4dLPWpMAhPoMjjv1Oyug2iBcuTasHVP+Jdgq + CaNzpXOuq4upaaNrq+QMsI6O9wA/zWhWPmnYQYgRAoGAUk56471noU+65zvXUQB6 + UvCB7Hrynt0ZRPg+kDrEPh/atV5NKdY2Yw6UqKJwvOBwzkU1pGDzIiQHGqd9vIa+ + Usmhdbp5DakSeitU9IEEnQdyEHEbKJFSsLfUzeyVuesDJbt/rh5dg4Fpt5GpW+/5 + Am8A2d6BPP+Z4qJSiJp7hZECgYEAy64TCZEXqEytE1yr/KjDfaK+54BX0j2e8gIj + XtmznqoXE2Hboslfzp4Gp3j+xhbDmEGYK3bw8l0RP1g1tkFOxeNTUvq6DJ8SFVbV + dt54S+bV3eCVxRL9hRUmyXGuWjQgXKdWsEhXYFkZE2Xe77h3mI3KCYoOCt74v146 + MV3szQECgYEAozTO7Wuum+VMKIY35hmHMjUiYmLl3EXWwMBT2VSsk8Siu0XoH0yd + KoxsLDUBMS8sWKCZhFwU+Fx8UZjfo+xE3H4UTyVsw5EDpB9gSud928gNADwxTKor + 3s4jnUzb4XRQ0qN2jXzdNuqXNV1ozeqajbM2oSZqbSnWSs5g6DpIs1Q= + -----END RSA PRIVATE KEY----- + + [*] patch_solution_since<16, 0, 7, 0>: Patch has been done. + [*] New RSA-2048 private key has been saved to + C:\Users\DoubleSine\source\repos\navicat-keygen\bin\x64-Release\RegPrivateKey.pem + + + ******************************************************* + * PATCH HAS BEEN DONE SUCCESSFULLY! * + * HAVE FUN AND ENJOY~ * + ******************************************************* + ``` + +2. 接下来使用`navicat-keygen.exe`来生成序列号和激活码 + + ``` + navicat-keygen.exe <-bin|-text> [-adv] + ``` + + * `<-bin|-text>`: 必须是`-bin`或`-text`。 + + 如果指定了`-bin`,`navicat-keygen.exe`最终将生成`license_file`文件。这个选项是给Navicat旧激活方式使用的。 + + 如果指定了`-text`,`navicat-keygen.exe`最终将生成Base64样式的激活码。这个选项是给Navicat新激活方式使用的。 + + __这个参数必须指定。__ + + * `[-adv]`: 开启高级模式。 + + __这个参数是可选的。__ 如果指定了这个参数,`navicat-keygen.exe`将会要求你手工填写产品ID号、语言标识号。这个选项一般是给以后用的。 + + * ``: RSA-2048私钥文件的完整路径或相对路径。私钥必须是PEM格式的。 + + __这个参数必须指定。__ + + __例如:(在cmd.exe中)__ + + ```console + navicat-keygen.exe -text .\RegPrivateKey.pem + ``` + + 你会被要求选择Navicat产品类别、语言以及输入主版本号。之后会随机生成一个序列号。 + + ``` + *************************************************** + * navicat-keygen by @DoubleLabyrinth * + * version: 16.0.7.0 * + *************************************************** + + [*] Select Navicat product: + 0. DataModeler + 1. Premium + 2. MySQL + 3. PostgreSQL + 4. Oracle + 5. SQLServer + 6. SQLite + 7. MariaDB + 8. MongoDB + 9. ReportViewer + + (Input index)> 1 + + [*] Select product language: + 0. English + 1. Simplified Chinese + 2. Traditional Chinese + 3. Japanese + 4. Polish + 5. Spanish + 6. French + 7. German + 8. Korean + 9. Russian + 10. Portuguese + + (Input index)> 0 + + [*] Input major version number: + (range: 11 ~ 16, default: 16)> 16 + + [*] Serial number: + NAVL-GFKA-T5SR-ZFTK + + [*] Your name: + ``` + + 你可以使用这个序列号暂时激活Navicat。 + + 接下来你会被要求输入`用户名`和`组织名`;请随便填写,但不要太长。 + + ``` + [*] Your name: Double Sine + [*] Your organization: PremiumSoft CyberTech Ltd. + + [*] Input request code (in Base64), input empty line to end: + ``` + + 之后你会被要求填入请求码。注意 __不要关闭命令行__. + +3. __断开网络__ 并打开Navicat。找到`注册`窗口,并填入keygen给你的序列号。然后点击`激活`按钮。 + +4. 一般来说在线激活肯定会失败,这时候Navicat会询问你是否`手动激活`,直接选吧。 + +5. 在`手动激活`窗口你会得到一个请求码,复制它并把它粘贴到keygen里。最后别忘了连按至少两下回车结束输入。 + + ``` + [*] Your name: Double Sine + [*] Your organization: PremiumSoft CyberTech Ltd. + + [*] Input request code (in Base64), input empty line to end: + CpgnfbIJGmAcxCuo/pAb8EeoS0audZn2NNemg6c3NPK/dWgb343IZQrFwoBZY6lpxE4Fq1BoNmCM75P03XpiXQ+hErcvFWk6iQPDCk/d4msf/AoprIqAMpXFoFLkeP0G93UIIEeBsUej8SrxdDgQDM585iPok5fUW+fTDCD1VICr7DBdL3c/69IxeIgiOQSuImdIQiM3/EOfDiFbAJL9vHW5LxFT8jj+8RPXehwPTBphpInmGdzxVZUZJwAGlXt7orrRbzafdeBjz6MnTajTcJP3SS2dBCiR33UScnyxYGEXdzv7+QLScTmCvI7gqg3Z8DMhroKMoHmy1AvC16FKVw== + + [*] Request Info: + {"K":"NAVLGFKAT5SRZFTK", "DI":"7D48FCBD093C778879A1", "P":"WIN"} + + [*] Response Info: + {"K":"NAVLGFKAT5SRZFTK","DI":"7D48FCBD093C778879A1","N":"Double Sine","O":"PremiumSoft CyberTech Ltd.","T":1644387294} + + [*] Activation Code: + vwLGmQIWg/DtzHMcaKCDHAjTcBNbTo2VmNllphUSUMgGjgvL6v82ue+GqXB6M/qn48Rj4D4Joqqisr6UwMSclNmQxOQz4RftEpLtG6KBjDo4LM71qn9R/jWoZV5EoHPQkX5gzhO/D7GammrRGn2MV+zI6dJ4c4SBFNnNyjAeEqNzinrQwjB7lUVTlpHEe/SMrdCsGliPZQ/X+5ASbEsq3D8PZsjysJv98MIJrZvdTdznrRe8JzYP+8sbIPQMIX1UDmdyDpbpSl45N92OhO4htz1kFjUEfnrwY0GMOhdYHv/PfMI7RiQzkRyY7pLvX7muJ4dkA+CmMmwew3gy3MWjig== + ``` + +6. 如果不出意外,你会得到一个看似用Base64编码的激活码。直接复制它,并把它粘贴到Navicat的`手动激活`窗口,最后点`激活`按钮。如果没什么意外的话应该能成功激活。 + diff --git a/doc/image/Screen_recording.mp4 b/doc/image/Screen_recording.mp4 deleted file mode 100644 index 0ba72c4..0000000 Binary files a/doc/image/Screen_recording.mp4 and /dev/null differ diff --git a/doc/image/Screenshot_2019-04-30_12-31-33.png b/doc/image/Screenshot_2019-04-30_12-31-33.png deleted file mode 100644 index 483c947..0000000 Binary files a/doc/image/Screenshot_2019-04-30_12-31-33.png and /dev/null differ diff --git a/doc/image/Screenshot_2019-04-30_12-31-52.png b/doc/image/Screenshot_2019-04-30_12-31-52.png deleted file mode 100644 index fa7b822..0000000 Binary files a/doc/image/Screenshot_2019-04-30_12-31-52.png and /dev/null differ diff --git a/doc/image/Screenshot_2019-04-30_12-32-43.png b/doc/image/Screenshot_2019-04-30_12-32-43.png deleted file mode 100644 index fc3a9be..0000000 Binary files a/doc/image/Screenshot_2019-04-30_12-32-43.png and /dev/null differ