This repository will tell you how Navicat offline activation works.
NOTICE: This keygen only supports Navicat Premium.
-
Before you build keygen, you should make sure you have following libs:
openssl capstone keystone rapidjson libplist
You can install them by
$ brew install openssl $ brew install capstone $ brew install keystone $ brew install rapidjson $ brew install libplist
-
Clone
mac
branch and build keygen and patcher:$ git clone -b mac --single-branch https://github.com/HardBrick21/navicat-keygen.git $ cd navicat-keygen $ make all
You will see two executable files in
bin/
directory:$ ls bin/ navicat-keygen navicat-patcher
-
Build keygen and patcher. And open Navicat Premium AT LEAST ONCE!!!
-
Backup all of your saved database connection configurations (with password).
-
Remove all connections, if have, that Navicat saved in
Keychain Access.app
.You can find them by search with keyword
navicat
inKeychain Access.app
. -
Use
navicat-patcher
to replace Navicat Activation Public Key.Usage: navicat-patcher [--dry-run] <Navicat installation path> [RSA-2048 Private Key File] [--dry-run] Run patcher without applying any patches. This parameter is optional. <Navicat installation path> Path to `Navicat Premium.app`. Example: /Applications/Navicat\ Premium.app/ This parameter must be specified. [RSA-2048 Private Key File] Path to a PEM-format RSA-2048 private key file. This parameter is optional.
Example:
$ ./navicat-patcher /Applications/Navicat\ Premium.app/
It has been tested on Navicat Premium 15.0.4 English For Mac version.
An example of output can be found here
-
For Navicat Premium version < 12.0.24 ONLY:
navicat-patcher
will abort and won't apply any patch.You should use openssl to generate
RegPrivateKey.pem
andrpk
file.$ openssl genrsa -out RegPrivateKey.pem 2048 $ openssl rsa -in RegPrivateKey.pem -pubout -out rpk
Then replace
/Applications/Navicat Premium.app/Contents/Resources/rpk
by
rpk
you just generated.
-
-
Generate a self-signed code-sign certificate and always trust it.
Then use
codesign
to re-signlibcc-premium.dylib
, if have, andNavicat Premium.app
.-
If you Navicat Premium version >= 15.0.0,
you must re-sign
libcc-premium.dylib
before re-signNavicat Premium.app
.$ codesign -f -s "Your self-signed code-sign certificate name" <path to Navicat Premium.app>/Contents/Frameworks/libcc-premium.dylib
$ codesign -f -s "Your self-signed code-sign certificate name" <path to Navicat Premium.app>
NOTICE:
"Your self-signed code-sign certificate name" is the name of your certificate in
Keychain Access.app
, not path.Example:
$ codesign -f -s "foobar" /Applications/Navicat\ Premium.app/Contents/Frameworks/libcc-premium.dylib $ codesign -f -s "foobar" /Applications/Navicat\ Premium.app/
-
-
Then use
navicat-keygen
to generate snKey and Activation Code.Usage: navicat-keygen [--adv] <RSA-2048 Private Key File> [--adv] Enable advance mode. This parameter is optional. <RSA-2048 Private Key File> A path to an RSA-2048 private key file. This parameter must be specified. Example: ./navicat-keygen ./RegPrivateKey.pem
Example:
$ ./navicat-keygen ./RegPrivateKey.pem
You will be asked to select Navicat language and give major version number. After that an randomly generated snKey will be given.
$ ./navicat-keygen ./RegPrivateKey.pem ********************************************************** * Navicat Keygen (macOS) by @DoubleLabyrinth * * Version: 5.0 * ********************************************************** [*] 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: 0 ~ 15, default: 15)> 15 [*] Serial number: NAVD-ZM3Z-BK6L-JUWD [*] Your name:
You can use this snKey to activate your Navicat preliminarily.
Then you will be asked to input
Your name
andYour organization
. Just set them whatever you want, but not too long.[*] Your name: DoubleLabyrinth [*] Your organization: DoubleLabyrinth [*] Input request code in Base64: (Double press ENTER to end)
After that, you will be asked to input request code. Now DO NOT CLOSE KEYGEN.
-
Disconnect your network and open Navicat Premium.
Find and click
Registration
.Fill license key by Serial number that the keygen gave and click
Activate
. -
Generally online activation will fail and Navicat will ask you do
Manual Activation
, just choose it. -
Copy your request code and paste it in the keygen. Input empty line to tell the keygen that your input ends.
[*] Input request code in Base64: (Double press ENTER to end) IF+tuUn0WcDqJ0tthu/UwOxCZAz5/TqGrSG/9y5DcYJ0/5kfu11Tu314T/pUFK7WPzbnK2MFQ9kb9VytT4T10fXHKoHVYRBtOTYDQqCN2lwnmTty1i1SwUVO+CAqXasqqnss/r4ytbQUpsr2EmBqMQeXERhH72winnhfHkXoWgIHhYXgcvRBagKI1a48c8vJTjTB1eYHmO+DQI6orJoQ65ClqVSkdgKwyhAtSv0yMeKQX45UEX5hQCu9rrgqRN13f7mKWXhGZXkYrk4VZaHdfsr0o50zmU/ZhKLdFqRjrLzt4JY41+AIjAxtHd5g/LAUwBfUdfy9KdHjaeXCxdueXQ== [*] Request Info: {"K":"NAVDZM3ZBK6LJUWD", "DI":"78BC84E24E18EFCE1DF7", "P":"MAC"} [*] Response Info: {"K":"NAVDZM3ZBK6LJUWD","DI":"78BC84E24E18EFCE1DF7","N":"DoubleLabyrinth","O":"DoubleLabyrinth","T":1576005483} [*] Activation Code: dJldt4pru2xBtqWiYCdT8s8H0vQ8xe8wI/f3/BLzSf7m3gevql9Z9CfkdMpuCJg35YPYTDHBwYYLnU6heO0bmvnVAF1U6ZKtWXpAAi+w6tGjeV64uachGI+/xb5Q5bQzD0V44PGYmL6cYULYjNtndMAgzhWGFzgsjGtaJOSczWC2OI1R1gAGh+l+pFdx37+VMXtfUtwv7V+qypj5CrzIULsUdh9U5JHXkdVSK6y+8bEeplYLwvQR6Cnavra0WUAP0hSg7khjy+mPiCuXSMwH1EphFqXscp1WUGjkms7pSK/aPtCoxWcJeK3SrgAVberBn2+rqaI1PBBh5DTctDy2SQ==
-
Finally, you will get Activation Code which looks like a Base64 string.
Just copy it and paste it in Navicat
Manual Activation
window, then clickActivate
.If nothing wrong, activation should be done successfully.