1:从注册表中查看加密后的密码。

  1.1:windows键+r,输入 regedit

  1.2:在注册表中找到 \HKEY_CURRENT_USER\SOFTWARE\PremiumSoft\navicat\servers 并找到 UserName 即 账号

   1.3:从上面步骤中,打开注册表、并找到如下图片中的密码栏:Pwd(加密的密码)

2:解密密码,打开在线工具运行一下代码,并修改倒数第二行代码,将上面的密码写入decrypt(’’);中,点击运行。即可

  2.1:在线编码网址,https://tool.lu/coderunner/

2.2:解密代码:

  1 <?php
2 class NavicatPassword
3 {
4 protected $version = 0;
5 protected $aesKey = 'libcckeylibcckey';
6 protected $aesIv = 'libcciv libcciv ';
7 protected $blowString = '3DC5CA39';
8 protected $blowKey = null;
9 protected $blowIv = null;
10
11 public function __construct($version = 12)
12 {
13 $this->version = $version;
14 $this->blowKey = sha1('3DC5CA39', true);
15 $this->blowIv = hex2bin('d9c7c3c8870d64bd');
16 }
17
18 public function encrypt($string)
19 {
20 $result = FALSE;
21 switch ($this->version) {
22 case 11:
23 $result = $this->encryptEleven($string);
24 break;
25 case 12:
26 $result = $this->encryptTwelve($string);
27 break;
28 default:
29 break;
30 }
31
32 return $result;
33 }
34
35 protected function encryptEleven($string)
36 {
37 $round = intval(floor(strlen($string) / 8));
38 $leftLength = strlen($string) % 8;
39 $result = '';
40 $currentVector = $this->blowIv;
41
42 for ($i = 0; $i < $round; $i++) {
43 $temp = $this->encryptBlock($this->xorBytes(substr($string, 8 * $i, 8), $currentVector));
44 $currentVector = $this->xorBytes($currentVector, $temp);
45 $result .= $temp;
46 }
47
48 if ($leftLength) {
49 $currentVector = $this->encryptBlock($currentVector);
50 $result .= $this->xorBytes(substr($string, 8 * $i, $leftLength), $currentVector);
51 }
52
53 return strtoupper(bin2hex($result));
54 }
55
56 protected function encryptBlock($block)
57 {
58 return openssl_encrypt($block, 'BF-ECB', $this->blowKey, OPENSSL_RAW_DATA|OPENSSL_NO_PADDING);
59 }
60
61 protected function decryptBlock($block)
62 {
63 return openssl_decrypt($block, 'BF-ECB', $this->blowKey, OPENSSL_RAW_DATA|OPENSSL_NO_PADDING);
64 }
65
66 protected function xorBytes($str1, $str2)
67 {
68 $result = '';
69 for ($i = 0; $i < strlen($str1); $i++) {
70 $result .= chr(ord($str1[$i]) ^ ord($str2[$i]));
71 }
72
73 return $result;
74 }
75
76 protected function encryptTwelve($string)
77 {
78 $result = openssl_encrypt($string, 'AES-128-CBC', $this->aesKey, OPENSSL_RAW_DATA, $this->aesIv);
79 return strtoupper(bin2hex($result));
80 }
81
82 public function decrypt($string)
83 {
84 $result = FALSE;
85 switch ($this->version) {
86 case 11:
87 $result = $this->decryptEleven($string);
88 break;
89 case 12:
90 $result = $this->decryptTwelve($string);
91 break;
92 default:
93 break;
94 }
95
96 return $result;
97 }
98
99 protected function decryptEleven($upperString)
100 {
101 $string = hex2bin(strtolower($upperString));
102
103 $round = intval(floor(strlen($string) / 8));
104 $leftLength = strlen($string) % 8;
105 $result = '';
106 $currentVector = $this->blowIv;
107
108 for ($i = 0; $i < $round; $i++) {
109 $encryptedBlock = substr($string, 8 * $i, 8);
110 $temp = $this->xorBytes($this->decryptBlock($encryptedBlock), $currentVector);
111 $currentVector = $this->xorBytes($currentVector, $encryptedBlock);
112 $result .= $temp;
113 }
114
115 if ($leftLength) {
116 $currentVector = $this->encryptBlock($currentVector);
117 $result .= $this->xorBytes(substr($string, 8 * $i, $leftLength), $currentVector);
118 }
119
120 return $result;
121 }
122
123 protected function decryptTwelve($upperString)
124 {
125 $string = hex2bin(strtolower($upperString));
126 return openssl_decrypt($string, 'AES-128-CBC', $this->aesKey, OPENSSL_RAW_DATA, $this->aesIv);
127 }
128 };
129
130
131 //需要指定版本两种,11或12
132 //$navicatPassword = new NavicatPassword(12);
133 $navicatPassword = new NavicatPassword(11);
134
135 //解密
136 $decode = $navicatPassword->decrypt('5658213B');
137 echo $decode."\n";
138 ?>

如何查看navicat已连接用户的密码的更多相关文章

  1. 如何查看电脑已连接的WiFi密码

    控制面板->网络和Internet->网络和共享中心 点击已连接的WLAN网络,查看“WLAN状态”->无线属性->安全 在显示字符下可以看到已连接wifi的密码

  2. Windows8.1查看已连接无线WIFI密码

    Windows8.1操作系统下查看已连接无线wifi密码操作步骤如下: 1.右键任务栏中的无线图标,在弹出的菜单中选择"打开网络和共享中心": 2.在网络和共享中心界面中点击&qu ...

  3. 电脑已连接wifi的密码查询

    有时候,想登陆自己家的无线网络(尤其朋友来家里突然要连接无线网络),脑子刹那间一片空白想不起来密码,怎么办呢? 其实,我们可以通过电脑来查看网络的密码,现在分享如何在笔记本电脑上查看连接过的无线网络密 ...

  4. (转)oracle中用户删除不了,ORA-01940提示 “无法删除当前已连接用户”

    Oracle删除用户的提示无法删除当前已连接用户两种解决方法如下: 1.先锁定用户.然后查询进程号,最后删除对应的进程.在删除对应的用户 SQLalter user XXX account lock; ...

  5. oracle中用户删除不了,ORA-01940提示 “无法删除当前已连接用户”

    Oracle删除用户的提示无法删除当前已连接用户两种解决方法如下: 1.先锁定用户.然后查询进程号,最后删除对应的进程.在删除对应的用户 SQL>alter user XXX account l ...

  6. ORA-01940无法删除当前已连接用户

    原文地址:ORA-01940无法删除当前已连接用户作者:1736188794 1)查看用户的连接状况 select username,sid,serial# from v$session ------ ...

  7. Win10电脑查看已连接过WiFi密码的命令

    运行中输入CMD,回车,打开命令行窗口. 输入:netsh wlan show profiles    执行后,会列出搜友已连接过的WiFi名字: 输入:netsh wlan show profile ...

  8. 两行命令查看自己笔记本连接的wifi密码

    打开cmd.exe窗口 第一行命令 netsh wlan show profiles 可以查看所有曾经连接过的wifi 第二命令 netsh wlan show profiles "vivo ...

  9. cmd命令查看已连接的WiFi密码

      实验环境:Windows 10.命令提示符(管理员权限) 一.CMD命令查看WiFi密码 使用方法: ①.运行CMD(命令提示符) (确保无线网卡启用状态)②.输入命令查看WiFi配置文件:  # ...

  10. mac如何查看已连接wifi的密码

    可以通道mac自带的“钥匙串访问”功能查看.选择需要查询的wifi名称,右击选择“将密码拷贝到剪贴板”,输入管理员密码后,密码就拷贝好了. 找个地方粘贴即可看到密码

随机推荐

  1. Linux命令执行时,提示commond not found的处理办法

    执行chattr命令时,或其他命令时,若出现命令没发现,commond not found 那么就是有可能命令文件丢了,执行find / -name chattr,如果没有命令了,可以拷贝一个或yum ...

  2. 测开-面试题-OS、Linux、算法、其他

    1 OS 1.1 进程.线程.协程区别? 答: 1.进程是资源分配的单位:2.线程是CPU调度的单位:3.协程是一种比线程更加轻量级的存在,协程不是被操作系统内核所管理,而完全是由程序所控制(也就是在 ...

  3. TDSQL-C Serverless 服务是如何实现通过接入层来实现恢复感知

    在一些极限的测试场景下,数据库实例会频繁的自动启停,这时候如何保证数据库实例停止后快速恢复呢?如何保证在恢复数据库实例时无需用户重复链接,直到恢复访问? 站在用户的角度考虑,谁都不希望数据库每次启停都 ...

  4. Android MVP框架 详细代码

    android mvp的好处,网上一搜一大堆,相对于一开始普通的在activity中处理所有的不管是网络请求还是页面渲染,最大的好处是简洁了,废话不多说,看代码 这里网络请求使用了两种,一种是自己封装 ...

  5. pictrue类的练习

    这里遇到一个问题,因为导入的文件格式很大,所以内存占用特别高,就会在运行一段时间过后报错:内存不够 然后用了一个GC.collect():的方法,加在了timer控件里,让程序每隔1000ms换图时也 ...

  6. 判断PC端与移动端跳转

    var mobile_bs = {   versions: function () {     var u = navigator.userAgent;     return {       trid ...

  7. Docker上安装MSSQL(SQL Server)

    ​ Mac OS X ,想安装微软的mssql-server数据库有三种方式: 第一种是在本机上安装MSSQL for Linux 版本. 第二种是安装Windows虚拟机,然后在虚拟机里面使用ISO ...

  8. Centos 7.9 部署Kubernetes集群 (基于containerd 运行时)

    前言 当Kubernetes社区宣布1.20版本之后会逐步弃用 dockershim ,当时也有很多自媒体在宣 传Kubernetes弃用Docker.其实,我觉得这是一种误导,也许仅仅是为了蹭热度. ...

  9. React Developer插件报错Cannot read properties of undefined (reading ‘forEach‘)

    安装了3.6的版本React Developer 启用插件后 报错 解决 https://www.crx4chrome.com/crx/3068/ 下载 下载好后,直接拖入扩展程序中

  10. Blog-3

    前言 这几周的作业所涉及的知识点有数据的封装和.继承与多态.正则表达式,还有抽象类和接口,另外还有javafx的一些基本知识.题量适中,但是难度对于我来说是比较大的.总的来说就是跟以前的题目差不多,只 ...