Move Linux tutorial to README_FOR_LINUX
This commit is contained in:
parent
8a853937a3
commit
cdbf7601bf
75
README.md
75
README.md
@ -8,45 +8,28 @@ This repository will tell you how Navicat offline activation works.
|
|||||||
|
|
||||||
## How to use?
|
## How to use?
|
||||||
|
|
||||||
> For easier offline activation, we are going to install Navicat to `home`; you can download [Screen recoding](image/Screen_recording.mp4) for references.
|
__For Linux users, see [here](README_FOR_LINUX.md).__
|
||||||
|
|
||||||
1. Run Navicat, for initialization:
|
1. Download the latest release [from here](https://github.com/DoubleLabyrinth/navicat-keygen/releases).
|
||||||
|
|
||||||
```bash
|
2. Use `navicat-patcher.exe` to replace __Navicat Activation Public Key__ that is stored in `navicat.exe` or `libcc.dll`.
|
||||||
cd ~/navicat121_premium_en_x64 && \
|
|
||||||
./start_navicat
|
```
|
||||||
|
navicat-patcher.exe <Navicat installation path> [RSA-2048 PEM file]
|
||||||
```
|
```
|
||||||
|
|
||||||
When running for the first time, you will be prompted with the following two windows, click "Cancel" to:
|
* `<Navicat installation path>`: The full path to Navicat installation folder.
|
||||||
|
|
||||||

|
__This parameter must be specified.__
|
||||||
|
|
||||||

|
* `[RSA-2048 PEM file]`: The full path or relative path to a RSA-2048 private key file.
|
||||||
|
|
||||||
Until the `Registration` window appears, select `Trial`, close Navicat after loading is complete, and execute `Step 2`:
|
__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)__
|
||||||
|
|
||||||
2. Download the latest release [from here](https://github.com/DoubleLabyrinth/navicat-keygen/releases), and extract :
|
|
||||||
|
|
||||||
```bash
|
|
||||||
curl -O -L https://github.com/DoubleLabyrinth/navicat-keygen/releases/download/v3.1/navicat-keygen-for-x64.zip && \
|
|
||||||
unzip navicat-keygen-for-x64.zip
|
|
||||||
```
|
```
|
||||||
|
navicat-patcher.exe "C:\Program Files\PremiumSoft\Navicat Premium 12"
|
||||||
3. Download `navicat-pacther.sh` and `navicat-keygen.sh`:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
curl -O -L https://raw.githubusercontent.com/zenuo/navicat-keygen/linux/bash/navicat-patcher.sh && \
|
|
||||||
chmod +x navicat-patcher.sh && \
|
|
||||||
curl -O -L https://raw.githubusercontent.com/zenuo/navicat-keygen/linux/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`.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
./navicat-patcher.sh
|
|
||||||
```
|
```
|
||||||
|
|
||||||
It has been tested on __Navicat Premium 12.1.12 Simplified Chinese version__. The following is an example of output.
|
It has been tested on __Navicat Premium 12.1.12 Simplified Chinese version__. The following is an example of output.
|
||||||
@ -136,10 +119,32 @@ This repository will tell you how Navicat offline activation works.
|
|||||||
MESSAGE: Patch has been done successfully.
|
MESSAGE: Patch has been done successfully.
|
||||||
```
|
```
|
||||||
|
|
||||||
5. Then use `navicat-keygen.exe` to generate __snKey__ and __Activation Code__
|
3. Then use `navicat-keygen.exe` to generate __snKey__ and __Activation Code__
|
||||||
|
|
||||||
```
|
```
|
||||||
./navicat-keygen.sh
|
navicat-keygen.exe <-bin|-text> [-adv] <RSA-2048 PrivateKey(PEM file)>
|
||||||
|
```
|
||||||
|
|
||||||
|
* `<-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.
|
||||||
|
|
||||||
|
* `<RSA-2048 PrivateKey(PEM file)>`: The full path or relative path to a RSA-2048 private key file.
|
||||||
|
|
||||||
|
__This parameter must be specified.__
|
||||||
|
|
||||||
|
__Example: (in cmd.exe)__
|
||||||
|
|
||||||
|
```bash
|
||||||
|
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.
|
You will be asked to select Navicat product, language and input major version number. After that an randomly generated __snKey__ will be given.
|
||||||
@ -194,11 +199,11 @@ This repository will tell you how Navicat offline activation works.
|
|||||||
|
|
||||||
After that, you will be asked to input the request code. Now __DO NOT CLOSE KEYGEN__.
|
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`.
|
4. __Disconnect your network__ and open Navicat. 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.
|
5. Generally 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.
|
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 name: DoubleLabyrinth
|
||||||
@ -222,5 +227,5 @@ This repository will tell you how Navicat offline activation works.
|
|||||||
UI8dzqFzRp/hSDEM0mEqiA==
|
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. Don't forget to close the proxy that we just set up.
|
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.
|
||||||
|
|
||||||
|
|||||||
@ -6,45 +6,28 @@
|
|||||||
|
|
||||||
## 如何使用这个注册机
|
## 如何使用这个注册机
|
||||||
|
|
||||||
> 为便于离线激活,将安装包解压在`家目录`;可下载[录屏文件](image/Screen_recording.mp4)参考
|
__针对Linux用户,请见[这里](README_FOR_LINUX.zh-CN.md)__
|
||||||
|
|
||||||
1. 运行Navicat,使其初始化环境:
|
1. [从这里](https://github.com/DoubleLabyrinth/navicat-keygen/releases)下载最新的release。
|
||||||
|
|
||||||
```bash
|
2. 使用`navicat-patcher.exe`替换掉`navicat.exe`和`libcc.dll`里的Navicat激活公钥。
|
||||||
cd ~/navicat121_premium_en_x64 && \
|
|
||||||
./start_navicat
|
```
|
||||||
|
navicat-patcher.exe <Navicat installation path> [RSA-2048 PEM file]
|
||||||
```
|
```
|
||||||
|
|
||||||
首次启动时,会提示如下两个窗口,点击“Cancel”即可:
|
* `<Navicat installation path>`: Navicat的完整安装路径。
|
||||||
|
|
||||||

|
__这个参数必须指定。__
|
||||||
|
|
||||||

|
* `[RSA-2048 PEM file]`: RSA-2048私钥文件的完整路径或相对路径。
|
||||||
|
|
||||||
直至出现`Registration`窗口,选择`Trial`,待加载完成后关闭Navicat,执行`步骤2`:
|
__这个参数是可选的。__ 如果未指定,`navicat-patcher.exe`将会在当前目录生成一个新的RSA-2048私钥文件。
|
||||||
|
|
||||||

|
__例如:(在cmd.exe中)__
|
||||||
|
|
||||||
2. [从这里](https://github.com/DoubleLabyrinth/navicat-keygen/releases)下载最新的release,并且解压:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
curl -O -L https://github.com/DoubleLabyrinth/navicat-keygen/releases/download/v3.1/navicat-keygen-for-x64.zip && \
|
|
||||||
unzip navicat-keygen-for-x64.zip
|
|
||||||
```
|
```
|
||||||
|
navicat-patcher.exe "C:\Program Files\PremiumSoft\Navicat Premium 12"
|
||||||
3. 下载`navicat-pacther.sh`和`navicat-keygen.sh`:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
curl -O -L https://raw.githubusercontent.com/zenuo/navicat-keygen/linux/bash/navicat-patcher.sh && \
|
|
||||||
chmod +x navicat-patcher.sh && \
|
|
||||||
curl -O -L https://raw.githubusercontent.com/zenuo/navicat-keygen/linux/bash/navicat-keygen.sh && \
|
|
||||||
chmod +x navicat-keygen.sh
|
|
||||||
```
|
|
||||||
|
|
||||||
4. 使用`navicat-patcher.exe`替换掉`navicat.exe`和`libcc.dll`里的Navicat激活公钥。
|
|
||||||
|
|
||||||
```bash
|
|
||||||
./navicat-patcher.sh
|
|
||||||
```
|
```
|
||||||
|
|
||||||
__Navicat Premium 12.1.12 简体中文版已通过测试__。下面将是一份样例输出。
|
__Navicat Premium 12.1.12 简体中文版已通过测试__。下面将是一份样例输出。
|
||||||
@ -134,10 +117,32 @@
|
|||||||
MESSAGE: Patch has been done successfully.
|
MESSAGE: Patch has been done successfully.
|
||||||
```
|
```
|
||||||
|
|
||||||
5. 接下来使用`navicat-keygen.exe`来生成序列号和激活码
|
3. 接下来使用`navicat-keygen.exe`来生成序列号和激活码
|
||||||
|
|
||||||
```
|
```
|
||||||
./navicat-keygen.sh
|
navicat-keygen.exe <-bin|-text> [-adv] <RSA-2048 PrivateKey(PEM file)>
|
||||||
|
```
|
||||||
|
|
||||||
|
* `<-bin|-text>`: 必须是`-bin`或`-text`。
|
||||||
|
|
||||||
|
如果指定了`-bin`,`navicat-keygen.exe`最终将生成`license_file`文件。这个选项是给Navicat旧激活方式使用的。
|
||||||
|
|
||||||
|
如果指定了`-text`,`navicat-keygen.exe`最终将生成Base64样式的激活码。这个选项是给Navicat新激活方式使用的。
|
||||||
|
|
||||||
|
__这个参数必须指定。__
|
||||||
|
|
||||||
|
* `[-adv]`: 开启高级模式。
|
||||||
|
|
||||||
|
__这个参数是可选的。__ 如果指定了这个参数,`navicat-keygen.exe`将会要求你手工填写产品ID号、语言标识号。这个选项一般是给以后用的。
|
||||||
|
|
||||||
|
* `<RSA-2048 PrivateKey(PEM file)>`: RSA-2048私钥文件的完整路径或相对路径。
|
||||||
|
|
||||||
|
__这个参数必须指定。__
|
||||||
|
|
||||||
|
__例如:(在cmd.exe中)__
|
||||||
|
|
||||||
|
```bash
|
||||||
|
navicat-keygen.exe -text .\RegPrivateKey.pem
|
||||||
```
|
```
|
||||||
|
|
||||||
你会被要求选择Navicat产品类别、语言以及输入主版本号。之后会随机生成一个序列号。
|
你会被要求选择Navicat产品类别、语言以及输入主版本号。之后会随机生成一个序列号。
|
||||||
@ -192,11 +197,11 @@
|
|||||||
|
|
||||||
之后你会被要求填入请求码。注意 __不要关闭命令行__.
|
之后你会被要求填入请求码。注意 __不要关闭命令行__.
|
||||||
|
|
||||||
6. 配置一个不存在的`代理`。找到`注册`窗口,并填入keygen给你的序列号。然后点击`激活`按钮。
|
4. __断开网络__ 并打开Navicat。找到`注册`窗口,并填入keygen给你的序列号。然后点击`激活`按钮。
|
||||||
|
|
||||||
7. 在线激活失败,这时候Navicat会询问你是否`手动激活`,直接选吧。
|
5. 一般来说在线激活肯定会失败,这时候Navicat会询问你是否`手动激活`,直接选吧。
|
||||||
|
|
||||||
8. 在`手动激活`窗口你会得到一个请求码,复制它并把它粘贴到keygen里。最后别忘了连按至少两下回车结束输入。
|
6. 在`手动激活`窗口你会得到一个请求码,复制它并把它粘贴到keygen里。最后别忘了连按至少两下回车结束输入。
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
Your name: DoubleLabyrinth
|
Your name: DoubleLabyrinth
|
||||||
@ -220,5 +225,5 @@
|
|||||||
UI8dzqFzRp/hSDEM0mEqiA==
|
UI8dzqFzRp/hSDEM0mEqiA==
|
||||||
```
|
```
|
||||||
|
|
||||||
9. 如果不出意外,你会得到一个看似用Base64编码的激活码。直接复制它,并把它粘贴到Navicat的`手动激活`窗口,最后点`激活`按钮。如果没什么意外的话应该能成功激活。别忘了关闭我们刚刚设置的不存在的代理哦。
|
4. 如果不出意外,你会得到一个看似用Base64编码的激活码。直接复制它,并把它粘贴到Navicat的`手动激活`窗口,最后点`激活`按钮。如果没什么意外的话应该能成功激活。
|
||||||
|
|
||||||
|
|||||||
226
README_FOR_LINUX.md
Normal file
226
README_FOR_LINUX.md
Normal file
@ -0,0 +1,226 @@
|
|||||||
|
# Navicat Keygen - for Linux
|
||||||
|
|
||||||
|
[中文版README](README_FOR_LINUX.zh-CN.md)
|
||||||
|
|
||||||
|
This repository will tell you how Navicat offline activation works.
|
||||||
|
|
||||||
|
[How does it work?](HOW_DOES_IT_WORK.md)
|
||||||
|
|
||||||
|
## How to use?
|
||||||
|
|
||||||
|
> For easier offline activation, we are going to install Navicat to `home`; you can download [Screen recoding](image/Screen_recording.mp4) for references.
|
||||||
|
|
||||||
|
1. Run Navicat, for initialization:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
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:
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Until the `Registration` window appears, select `Trial`, close Navicat after loading is complete, and execute `Step 2`:
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
2. Download the latest release [from here](https://github.com/DoubleLabyrinth/navicat-keygen/releases), and extract :
|
||||||
|
|
||||||
|
```bash
|
||||||
|
curl -O -L https://github.com/DoubleLabyrinth/navicat-keygen/releases/download/v3.1/navicat-keygen-for-x64.zip && \
|
||||||
|
unzip navicat-keygen-for-x64.zip
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Download `navicat-pacther.sh` and `navicat-keygen.sh`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
curl -O -L https://raw.githubusercontent.com/zenuo/navicat-keygen/linux/bash/navicat-patcher.sh && \
|
||||||
|
chmod +x navicat-patcher.sh && \
|
||||||
|
curl -O -L https://raw.githubusercontent.com/zenuo/navicat-keygen/linux/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`.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
./navicat-patcher.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
It has been tested on __Navicat Premium 12.1.12 Simplified Chinese version__. The following is an example of output.
|
||||||
|
|
||||||
|
```
|
||||||
|
***************************************************
|
||||||
|
* Navicat Patcher by @DoubleLabyrinth *
|
||||||
|
* Release date: Jan 19 2019 *
|
||||||
|
***************************************************
|
||||||
|
|
||||||
|
Press Enter to continue or Ctrl + C to abort.
|
||||||
|
|
||||||
|
MESSAGE: PatchSolution0 will be omitted.
|
||||||
|
|
||||||
|
MESSAGE: PatchSolution3: Keywords[0] has been found:
|
||||||
|
Relative Machine Code Offset = +0x0000000001644a08
|
||||||
|
Relative Machine Code RVA = +0x0000000001645608
|
||||||
|
Patch Offset = +0x00000000023d56e4
|
||||||
|
Patch Size = 3 byte(s)
|
||||||
|
...
|
||||||
|
...
|
||||||
|
...
|
||||||
|
MESSAGE: PatchSolution3: Keywords[110] has been found:
|
||||||
|
Relative Machine Code Offset = +0x000000000165155e
|
||||||
|
Relative Machine Code RVA = +0x000000000165215e
|
||||||
|
Patch Offset = +0x0000000001651561
|
||||||
|
Patch Size = 1 byte(s)
|
||||||
|
|
||||||
|
MESSAGE: PatchSolution2 will be omitted.
|
||||||
|
|
||||||
|
MESSAGE: PatchSolution1: Keywords[0] has been found: offset = +0x021f7390.
|
||||||
|
MESSAGE: PatchSolution1: Keywords[1] has been found: offset = +0x0074bd39.
|
||||||
|
MESSAGE: PatchSolution1: Keywords[2] has been found: offset = +0x021f70a0.
|
||||||
|
MESSAGE: PatchSolution1: Keywords[3] has been found: offset = +0x0074bd1f.
|
||||||
|
MESSAGE: PatchSolution1: Keywords[4] has been found: offset = +0x021f708c.
|
||||||
|
|
||||||
|
MESSAGE: Generating new RSA private key, it may take a long time.
|
||||||
|
MESSAGE: New RSA private key has been saved to RegPrivateKey.pem.
|
||||||
|
|
||||||
|
Your RSA public key:
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsWnV5hQxlXvDA3Ad4k5N
|
||||||
|
ZLz4cO+iGEPegSovIDcwTo097I+0pXYKPTVl+0iKC5JtJRObb4Xx9yK9gGwqkcxo
|
||||||
|
o6WzKq0xY1jz7X6obxwlQCNse3Os1wr0rIY0UzP1dCpkW/5MwGbFxiB6PEVqkzmJ
|
||||||
|
CmHBzZDRu/jAuL1nyoiGnUStqwENNYhyl4k7r8AiJkBZGMOCrj6v0JfgNna25Ce6
|
||||||
|
QCFojlY4dkYQ5/7njQ3qpLwMeLEXEysMW3aUScSB68/vsHnB4C0fIkwfEPYZ/AC5
|
||||||
|
AqbWHVbNmveB3rjV+tZZxXcLE8ArgKh1Gs+2VtnL09gwHm6WcpyPZ42G6tMDjWyw
|
||||||
|
1wIDAQAB
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
******************************************
|
||||||
|
* PatchSulution3 *
|
||||||
|
******************************************
|
||||||
|
@ +023d56e4: 4D 49 49 ---> 4D 49 49
|
||||||
|
@ +01644a63: 42 49 ---> 42 49
|
||||||
|
@ +01644a68: 6A ---> 6A
|
||||||
|
@ +01644ace: 41 ---> 41
|
||||||
|
...
|
||||||
|
...
|
||||||
|
...
|
||||||
|
@ +023d58d4: 36 63 6A ---> 47 36 74
|
||||||
|
@ +023d58d8: 78 6C 6A 75 75 51 61 ---> 4D 44 6A 57 79 77 31
|
||||||
|
@ +023d58e8: 77 49 44 41 ---> 77 49 44 41
|
||||||
|
@ +0165155c: 51 41 ---> 51 41
|
||||||
|
@ +01651561: 42 ---> 42
|
||||||
|
|
||||||
|
******************************************
|
||||||
|
* PatchSulution1 *
|
||||||
|
******************************************
|
||||||
|
@ +0x021f7390
|
||||||
|
Previous:
|
||||||
|
+0x00000000021F7390 44 37 35 31 32 35 42 37 30 37 36 37 42 39 34 31 D75125B70767B941
|
||||||
|
+0x00000000021F73A0 34 35 42 34 37 43 31 43 42 33 43 30 37 35 35 45 45B47C1CB3C0755E
|
||||||
|
+0x00000000021F73B0 37 43 43 42 38 38 32 35 43 35 44 43 45 30 43 35 7CCB8825C5DCE0C5
|
||||||
|
...
|
||||||
|
...
|
||||||
|
...
|
||||||
|
|
||||||
|
@ +0x021f708c
|
||||||
|
Previous:
|
||||||
|
+0x00000000021F7080 31 32 32 35 4f 45 29 2e 00 00 00 00 39 32 39 33 1225OE).....9293
|
||||||
|
+0x00000000021F7090 33 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3...............
|
||||||
|
After:
|
||||||
|
+0x00000000021F7080 31 32 32 35 4f 45 29 2e 00 00 00 00 32 37 45 38 1225OE).....27E8
|
||||||
|
+0x00000000021F7090 45 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 E...............
|
||||||
|
|
||||||
|
MESSAGE: Patch has been done successfully.
|
||||||
|
```
|
||||||
|
|
||||||
|
5. Then use `navicat-keygen.exe` to generate __snKey__ and __Activation Code__
|
||||||
|
|
||||||
|
```
|
||||||
|
./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==
|
||||||
|
```
|
||||||
|
|
||||||
|
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. Don't forget to close the proxy that we just set up.
|
||||||
|
|
||||||
224
README_FOR_LINUX.zh-CN.md
Normal file
224
README_FOR_LINUX.zh-CN.md
Normal file
@ -0,0 +1,224 @@
|
|||||||
|
# Navicat Keygen - for Linux
|
||||||
|
|
||||||
|
这份repo将会告诉你Navicat是怎么完成离线激活的。
|
||||||
|
|
||||||
|
[注册机是怎么工作的?](HOW_DOES_IT_WORK.zh-CN.md)
|
||||||
|
|
||||||
|
## 如何使用这个注册机
|
||||||
|
|
||||||
|
> 为便于离线激活,将安装包解压在`家目录`;可下载[录屏文件](image/Screen_recording.mp4)参考
|
||||||
|
|
||||||
|
1. 运行Navicat,使其初始化环境:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd ~/navicat121_premium_en_x64 && \
|
||||||
|
./start_navicat
|
||||||
|
```
|
||||||
|
|
||||||
|
首次启动时,会提示如下两个窗口,点击“Cancel”即可:
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
直至出现`Registration`窗口,选择`Trial`,待加载完成后关闭Navicat,执行`步骤2`:
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
2. [从这里](https://github.com/DoubleLabyrinth/navicat-keygen/releases)下载最新的release,并且解压:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
curl -O -L https://github.com/DoubleLabyrinth/navicat-keygen/releases/download/v3.1/navicat-keygen-for-x64.zip && \
|
||||||
|
unzip navicat-keygen-for-x64.zip
|
||||||
|
```
|
||||||
|
|
||||||
|
3. 下载`navicat-pacther.sh`和`navicat-keygen.sh`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
curl -O -L https://raw.githubusercontent.com/zenuo/navicat-keygen/linux/bash/navicat-patcher.sh && \
|
||||||
|
chmod +x navicat-patcher.sh && \
|
||||||
|
curl -O -L https://raw.githubusercontent.com/zenuo/navicat-keygen/linux/bash/navicat-keygen.sh && \
|
||||||
|
chmod +x navicat-keygen.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
4. 使用`navicat-patcher.exe`替换掉`navicat.exe`和`libcc.dll`里的Navicat激活公钥。
|
||||||
|
|
||||||
|
```bash
|
||||||
|
./navicat-patcher.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
__Navicat Premium 12.1.12 简体中文版已通过测试__。下面将是一份样例输出。
|
||||||
|
|
||||||
|
```
|
||||||
|
***************************************************
|
||||||
|
* Navicat Patcher by @DoubleLabyrinth *
|
||||||
|
* Release date: Jan 19 2019 *
|
||||||
|
***************************************************
|
||||||
|
|
||||||
|
Press Enter to continue or Ctrl + C to abort.
|
||||||
|
|
||||||
|
MESSAGE: PatchSolution0 will be omitted.
|
||||||
|
|
||||||
|
MESSAGE: PatchSolution3: Keywords[0] has been found:
|
||||||
|
Relative Machine Code Offset = +0x0000000001644a08
|
||||||
|
Relative Machine Code RVA = +0x0000000001645608
|
||||||
|
Patch Offset = +0x00000000023d56e4
|
||||||
|
Patch Size = 3 byte(s)
|
||||||
|
...
|
||||||
|
...
|
||||||
|
...
|
||||||
|
MESSAGE: PatchSolution3: Keywords[110] has been found:
|
||||||
|
Relative Machine Code Offset = +0x000000000165155e
|
||||||
|
Relative Machine Code RVA = +0x000000000165215e
|
||||||
|
Patch Offset = +0x0000000001651561
|
||||||
|
Patch Size = 1 byte(s)
|
||||||
|
|
||||||
|
MESSAGE: PatchSolution2 will be omitted.
|
||||||
|
|
||||||
|
MESSAGE: PatchSolution1: Keywords[0] has been found: offset = +0x021f7390.
|
||||||
|
MESSAGE: PatchSolution1: Keywords[1] has been found: offset = +0x0074bd39.
|
||||||
|
MESSAGE: PatchSolution1: Keywords[2] has been found: offset = +0x021f70a0.
|
||||||
|
MESSAGE: PatchSolution1: Keywords[3] has been found: offset = +0x0074bd1f.
|
||||||
|
MESSAGE: PatchSolution1: Keywords[4] has been found: offset = +0x021f708c.
|
||||||
|
|
||||||
|
MESSAGE: Generating new RSA private key, it may take a long time.
|
||||||
|
MESSAGE: New RSA private key has been saved to RegPrivateKey.pem.
|
||||||
|
|
||||||
|
Your RSA public key:
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsWnV5hQxlXvDA3Ad4k5N
|
||||||
|
ZLz4cO+iGEPegSovIDcwTo097I+0pXYKPTVl+0iKC5JtJRObb4Xx9yK9gGwqkcxo
|
||||||
|
o6WzKq0xY1jz7X6obxwlQCNse3Os1wr0rIY0UzP1dCpkW/5MwGbFxiB6PEVqkzmJ
|
||||||
|
CmHBzZDRu/jAuL1nyoiGnUStqwENNYhyl4k7r8AiJkBZGMOCrj6v0JfgNna25Ce6
|
||||||
|
QCFojlY4dkYQ5/7njQ3qpLwMeLEXEysMW3aUScSB68/vsHnB4C0fIkwfEPYZ/AC5
|
||||||
|
AqbWHVbNmveB3rjV+tZZxXcLE8ArgKh1Gs+2VtnL09gwHm6WcpyPZ42G6tMDjWyw
|
||||||
|
1wIDAQAB
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
|
||||||
|
******************************************
|
||||||
|
* PatchSulution3 *
|
||||||
|
******************************************
|
||||||
|
@ +023d56e4: 4D 49 49 ---> 4D 49 49
|
||||||
|
@ +01644a63: 42 49 ---> 42 49
|
||||||
|
@ +01644a68: 6A ---> 6A
|
||||||
|
@ +01644ace: 41 ---> 41
|
||||||
|
...
|
||||||
|
...
|
||||||
|
...
|
||||||
|
@ +023d58d4: 36 63 6A ---> 47 36 74
|
||||||
|
@ +023d58d8: 78 6C 6A 75 75 51 61 ---> 4D 44 6A 57 79 77 31
|
||||||
|
@ +023d58e8: 77 49 44 41 ---> 77 49 44 41
|
||||||
|
@ +0165155c: 51 41 ---> 51 41
|
||||||
|
@ +01651561: 42 ---> 42
|
||||||
|
|
||||||
|
******************************************
|
||||||
|
* PatchSulution1 *
|
||||||
|
******************************************
|
||||||
|
@ +0x021f7390
|
||||||
|
Previous:
|
||||||
|
+0x00000000021F7390 44 37 35 31 32 35 42 37 30 37 36 37 42 39 34 31 D75125B70767B941
|
||||||
|
+0x00000000021F73A0 34 35 42 34 37 43 31 43 42 33 43 30 37 35 35 45 45B47C1CB3C0755E
|
||||||
|
+0x00000000021F73B0 37 43 43 42 38 38 32 35 43 35 44 43 45 30 43 35 7CCB8825C5DCE0C5
|
||||||
|
...
|
||||||
|
...
|
||||||
|
...
|
||||||
|
|
||||||
|
@ +0x021f708c
|
||||||
|
Previous:
|
||||||
|
+0x00000000021F7080 31 32 32 35 4f 45 29 2e 00 00 00 00 39 32 39 33 1225OE).....9293
|
||||||
|
+0x00000000021F7090 33 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3...............
|
||||||
|
After:
|
||||||
|
+0x00000000021F7080 31 32 32 35 4f 45 29 2e 00 00 00 00 32 37 45 38 1225OE).....27E8
|
||||||
|
+0x00000000021F7090 45 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 E...............
|
||||||
|
|
||||||
|
MESSAGE: Patch has been done successfully.
|
||||||
|
```
|
||||||
|
|
||||||
|
5. 接下来使用`navicat-keygen.exe`来生成序列号和激活码
|
||||||
|
|
||||||
|
```
|
||||||
|
./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里。最后别忘了连按至少两下回车结束输入。
|
||||||
|
|
||||||
|
```bash
|
||||||
|
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的`手动激活`窗口,最后点`激活`按钮。如果没什么意外的话应该能成功激活。别忘了关闭我们刚刚设置的不存在的代理哦。
|
||||||
|
|
||||||
Loading…
Reference in New Issue
Block a user