Navicat 15获取用户的密码

我使用Navicat连接好了mysql但是密码忘记了;可以通过如下操作找回密码

我使用的Navicat版本是 15.0.27

1、选择文件 --> 导出连接
在这里插入图片描述

2、选择你要知道密码的连接  勾选导出密码(默认位置是桌面)
在这里插入图片描述
3、 在Password 这栏找到加密后的密码
在这里插入图片描述
4、打开PHP在线运行工具,粘贴解密代码
工具地址:https://tool.lu/coderunner

复制解密代码到工具中

<?php
class NavicatPassword
{protected $version = 0;protected $aesKey = 'libcckeylibcckey';protected $aesIv = 'libcciv libcciv ';protected $blowString = '3DC5CA39';protected $blowKey = null;protected $blowIv = null;public function __construct($version = 12){$this->version = $version;$this->blowKey = sha1('3DC5CA39', true);$this->blowIv = hex2bin('d9c7c3c8870d64bd');}public function encrypt($string){$result = FALSE;switch ($this->version) {case 11:$result = $this->encryptEleven($string);break;case 12:$result = $this->encryptTwelve($string);break;default:break;}return $result;}protected function encryptEleven($string){$round = intval(floor(strlen($string) / 8));$leftLength = strlen($string) % 8;$result = '';$currentVector = $this->blowIv;for ($i = 0; $i < $round; $i++) {$temp = $this->encryptBlock($this->xorBytes(substr($string, 8 * $i, 8), $currentVector));$currentVector = $this->xorBytes($currentVector, $temp);$result .= $temp;}if ($leftLength) {$currentVector = $this->encryptBlock($currentVector);$result .= $this->xorBytes(substr($string, 8 * $i, $leftLength), $currentVector);}return strtoupper(bin2hex($result));}protected function encryptBlock($block){return openssl_encrypt($block, 'BF-ECB', $this->blowKey, OPENSSL_RAW_DATA|OPENSSL_NO_PADDING);}protected function decryptBlock($block){return openssl_decrypt($block, 'BF-ECB', $this->blowKey, OPENSSL_RAW_DATA|OPENSSL_NO_PADDING);}protected function xorBytes($str1, $str2){$result = '';for ($i = 0; $i < strlen($str1); $i++) {$result .= chr(ord($str1[$i]) ^ ord($str2[$i]));}return $result;}protected function encryptTwelve($string){$result = openssl_encrypt($string, 'AES-128-CBC', $this->aesKey, OPENSSL_RAW_DATA, $this->aesIv);return strtoupper(bin2hex($result));}public function decrypt($string){$result = FALSE;switch ($this->version) {case 11:$result = $this->decryptEleven($string);break;case 12:$result = $this->decryptTwelve($string);break;default:break;}return $result;}protected function decryptEleven($upperString){$string = hex2bin(strtolower($upperString));$round = intval(floor(strlen($string) / 8));$leftLength = strlen($string) % 8;$result = '';$currentVector = $this->blowIv;for ($i = 0; $i < $round; $i++) {$encryptedBlock = substr($string, 8 * $i, 8);$temp = $this->xorBytes($this->decryptBlock($encryptedBlock), $currentVector);$currentVector = $this->xorBytes($currentVector, $encryptedBlock);$result .= $temp;}if ($leftLength) {$currentVector = $this->encryptBlock($currentVector);$result .= $this->xorBytes(substr($string, 8 * $i, $leftLength), $currentVector);}return $result;}protected function decryptTwelve($upperString){$string = hex2bin(strtolower($upperString));return openssl_decrypt($string, 'AES-128-CBC', $this->aesKey, OPENSSL_RAW_DATA, $this->aesIv);}
};//需要指定版本两种,11或12
//$navicatPassword = new NavicatPassword(11);
$navicatPassword = new NavicatPassword(12);//解密
//$decode = $navicatPassword->decrypt('15057D7BA390');
$decode = $navicatPassword->decrypt('E75BF077AB8BAA3AC2D5');  // 替换成加密的密码
echo $decode."\n";
?>

#我已经试过了,需要指定12版本,11版本会乱码(11版本是解密另一种加密方式的,后面会介绍)

在这里插入图片描述
可以看出密码已经被破译出来了,我的密码是 123456

二、介绍另一种获取用户加密密码的方式

1、打开运行窗口,输入regedit,点击确认按钮,打开注册表编辑器
在这里插入图片描述
2、在注册表中找到Navicat加密后的密码
展开【HKEY_CURRENT_USER】
展开【SOFTWARE】
展开【PremiumSoft】
展开【Navicat】
展开【Servers】
找到你的数据库连接并双击,双击右侧的pwd,复制数据数据(就是加密的密码)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

将获取到的加密的密码放到php代码中执行破译(以这种方式获取的密码,需要指定11版本)

在这里插入图片描述
密码就在右侧显示了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/253822.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

使用Intel ARC 750 GPU或Intel CPU硬件在GIMP上运行stable diffussion插件进行AI绘图

安装步骤&#xff1a; 1. clone代码&#xff1a; git clone https://gitee.com/cslola/openvino-ai-plugins-gimp.git 或者直接到github上下载最新 git clone https://github.com/intel/openvino-ai-plugins-gimp.git2. 安装python以来库文件 :: run install script open…

Linux:centos:周期性计划任务管理《crontab》

crontab常用基础属性 -e 编辑计划任务 -l 查看计划任务 -r 删除计划任务 -u 指定用户的计划任务 首先创建一个名为test的用户名 crontab时间规定 格式&#xff1a;分钟 小时 日期 月份 星期 命令 分钟-- 0-59整数 小时 -- 0-23整数 日期 -- 1--31 整数 月份 -- 1-12 整数 星期…

SOLIDWORKS钣金成形工具

SOLIDWORKS钣金成形工具主要用来创建使用冲制或压印制作的钣金特征。成形工具的工作原理是&#xff1a;几何体代表冲制或压印形成的凹陷区域&#xff0c;停止面是指工具要被应用到的钣金面&#xff0c;也可以定义移除面&#xff0c;若定义了移除面&#xff0c;则该面会形成通孔…

iphone 录屏

我的原文所在 http://yanmin.in/archive.html要求&#xff1a; 1.装有yosemite系统及以上的MAC;2.Ios版本为8以上的iphone. 步骤&#xff1a; 1.Lightning 数据线连接iPhone和MAC;2.MAC下打开Quick Time Player;3.打开文件下的新建影片录制; 4.QuickTime Player 窗口中选择选择…

iPhone屏幕录制

为了展示业务逻辑、需要对软件的操作流程进行录制。 硬件&#xff1a;MAC、iPhone手机 软件&#xff1a;MAC上需要QuickTime Player 用USB数据线连接电脑和手机打开电脑的QuickTime Player软件打开影片录制功能 点击屏幕顶部 文件–>选择新建影片录制如图所示&#xff1a…

如何把iPhone投屏到Mac屏幕上进行演示和录制?

最近有好多小伙伴问我&#xff0c;如何在不用数据线的情况下把iPhone投屏到Mac屏幕上&#xff1f;因为现在大多数人都是手机不离身&#xff0c;很多重要文件都在手机里。在工作中有时候会需要用到手机上的内容进行演示和讲解&#xff0c;尤其是演示一些App操作或者功能讲解啥的…

如何使用Kali进行信息收集?

渗透测试即模拟黑客入侵的手段对目标网络进修安全测试&#xff0c;从而发现目标网络的漏洞&#xff0c;对目标网络进行安全加固与漏洞修复。 Kali 是一个基于 debian 的渗透测试平台&#xff0c;其中集成了很多常见的和不常见的渗透测试工具&#xff0c;如下图&#xff1a; 工…

华为机试:二叉树中序遍历

题目来源 华为机试&#xff1a;二叉树中序遍历 题目描述 题目解析 思路 class Solution{struct TreeNode{char ch;TreeNode *left;TreeNode *right;public:TreeNode(char ch) : ch(ch){}};std::deque<TreeNode *> deque;bool isNode(char ch){return (ch > a &&…

Java 二叉树的中序遍历

二叉树的中序遍历 简单 给定一个二叉树的根节点 root &#xff0c;返回 它的 中序 遍历 。 示例 1&#xff1a; 输入&#xff1a;root [1,null,2,3] 输出&#xff1a;[1,3,2] 示例 2&#xff1a; 输入&#xff1a;root [] 输出&#xff1a;[] 示例 3&#xff1a; 输入&#x…

Java实现二叉树中序遍历(递归+非递归)

一、中序遍历&#xff08;递归&#xff09; 实现的思路和前序遍历其实差不多&#xff0c;但是访问的顺序就是&#xff1a;左节点->根节点->右节点&#xff0c;为了节省一些篇幅把节点数设置的少一些&#xff0c;重在大家的理解&#xff0c;话不多说直接上代码&#xff1…

二叉树遍历系列--中序遍历

什么是中序遍历&#xff1f; 优先访问当前节点的左子树&#xff0c;然后访问当前节点&#xff0c;最后访问当前节点的右子树。 代码实现&#xff1a; 主要分为三部分&#xff1a; 1. 声明一个内部类&#xff0c;表示树的节点。 private class TreeNode<K,V> impleme…

二叉树的中序遍历序列

二叉树的中序遍历序列 【问题描述】 设计算法求二叉树的中序遍历序列。 【输入形式】一行字符串&#xff0c;该行是扩展二叉树的前序遍历序列&#xff0c;用于构造二叉树。 【输出形式】二叉树中的中序遍历序列。 【样例输入】AB#D##C## 【样例输出】 BDAC#include<ios…

中序遍历二叉树

package cm.com.algorithm.tree;/*** 中序遍历2叉树* 中序遍历是指&#xff0c;对于树中的任意节点来说&#xff0c;先打印它的左子树&#xff0c;然后再打印它本身&#xff0c;最后打印它的右子树** author liushuai13meicai.cn* date 2019-06-11 22:14*/ public class LDRTre…

二叉树中序遍历(非递归)算法实现--C语言

今天继续二叉树的学习。 昨天写了一遍二叉树的先序遍历&#xff08;非递归&#xff09;算法&#xff0c;今天写一下二叉树的二叉树的中序遍历&#xff08;非递归&#xff09;算法。中序遍历的非递归算法有两种&#xff0c;但是个人觉得只要掌握一种就可以了&#xff0c;只要自己…

一眼看出二叉树中序遍历结果的诀窍

目录 1.二叉树2.二叉排序树&#xff08;搜索树&#xff09; 1.二叉树 方法&#xff1a;在二叉树下画一条线作为X轴&#xff0c;把所有节点投影到X轴上&#xff0c;从左到右排列好&#xff0c;得到的结果就是中序遍历的结果。 例如&#xff1a; 得到“HDIBEAFJCG”是中序遍历…

二叉树中序遍历(递归+非递归)Java

目录 一、结构二、遍历二叉树1.中序遍历&#xff08;递归&#xff09;代码图解 2.中序遍历&#xff08;非递归&#xff09;代码图解 一、结构 二、遍历二叉树 这块内容是二叉树最核心的部分。不但要掌握七种遍历的写法&#xff0c;前、中、后序的递归、非递归写法层次遍历&…

基本题型记录-二叉树中序遍历

由于本人基础较差&#xff0c;所以针对部分题型做一个记录&#xff0c;以免自己忘记 1、二叉树中序遍历 这个遍历方法可以搜一下博客上很多讲解&#xff0c;这里主要是记录一下代码实现&#xff0c;以下面的二叉树为例子 结果应该是 2、迭代法 2.1 遍历过程 这里借用了…

C++算法二叉树中序遍历

非递归中序遍历二叉树思路&#xff08;借助栈实现&#xff09;&#xff1a; 1、依次将所有左子节点压栈&#xff0c;直至为空&#xff1b; 2、弹出栈顶元素&#xff0c;访问栈顶&#xff0c;将栈顶的右子节点压栈&#xff0c;返回步骤1&#xff1b; 3、直至栈空。 &#xff08;…

详解二叉树的中序遍历

中序遍历&#xff1a;首先遍历左子树&#xff0c;然后访问根节点&#xff0c;最后遍历右子树&#xff08;左->根->右&#xff09; 中序遍历的递归算法 思路&#xff1a; 遍历左子树访问根节点遍历右子树 代码如下&#xff1a; //二叉树的中序遍历&#xff08;递归&a…

二叉树的中序遍历算法

一&#xff0c;简介 二叉树的中序遍历在计算机行业有着重要的作用&#xff0c;其中一个应用就是判断一棵二叉树是否二叉排序树。 下面介绍递归和非递归两种方式实现中序遍历。 二&#xff0c;递归实现 递归实现非常简单&#xff0c;左根右依次进行即可。 void mid_scan2(n…