Rumah pangkalan data navicat Analisis ringkas tentang cara melihat kata laluan yang disambungkan dan disimpan dalam Navicat

Analisis ringkas tentang cara melihat kata laluan yang disambungkan dan disimpan dalam Navicat

Mar 02, 2022 am 10:59 AM
navicat

Bagaimana untuk menyemak kata laluan pangkalan data yang disimpan oleh Navicat? Artikel berikut akan memperkenalkan kepada anda cara melihat kata laluan yang disimpan oleh navicat saya harap ia akan membantu anda!

Analisis ringkas tentang cara melihat kata laluan yang disambungkan dan disimpan dalam Navicat

Apabila menggunakan Navicat, saya lazimnya menyimpan kata laluan lama-kelamaan, saya akan terlupa kata laluan pangkalan data, yang sangat tidak selesa

Tetapi, inilah silap mata, anda boleh melihat kata laluan yang disimpan oleh sambungan navicat

Eksport sambungan dahulu

Eksport sambungan untuk mendapatkan fail connections.ncx

Analisis ringkas tentang cara melihat kata laluan yang disambungkan dan disimpan dalam Navicat

Ingat kata laluan eksport di sini! ! ! Jika tidak, fail yang dieksport tidak mengandungi kata laluan yang disulitkan

Analisis ringkas tentang cara melihat kata laluan yang disambungkan dan disimpan dalam Navicat

Kemudian cari nilai medan kata laluan dalam fail

Salin dia

Analisis ringkas tentang cara melihat kata laluan yang disambungkan dan disimpan dalam Navicat

Mulakan mentafsir kata laluan

Terima kasih kepada seorang lelaki besar Github untuk menulis Saya mempunyai program; anda boleh terus memecahkan kata laluan yang disulitkan

Program ini adalah PHP jika PHP tidak dipasang secara tempatan, tidak mengapa, cari sahaja alat yang berjalan dalam talian https://; tool.lu/coderunner/

Hanya tampal kod

Kemudian gantikan nilai dalam baris kedua hingga terakhir dengan kata laluan yang disulitkan yang baru anda salin, dan kemudian jalankannya

$decode = $navicatPassword->decrypt('999239DEBFA1960BCCB12566F1F417A6');
Salin selepas log masuk

Analisis ringkas tentang cara melihat kata laluan yang disambungkan dan disimpan dalam Navicat

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);
    }
}
 
 
use FatSmallTools\NavicatPassword;
 
//需要指定版本,11或12
$navicatPassword = new NavicatPassword(12);
//$navicatPassword = new NavicatPassword(11);
 
//解密
//$decode = $navicatPassword->decrypt('15057D7BA390');
$decode = $navicatPassword->decrypt(&#39;999239DEBFA1960BCCB12566F1F417A6&#39;);
echo $decode."\n";
Salin selepas log masuk

Cadangan berkaitan: tutorial navicat

Atas ialah kandungan terperinci Analisis ringkas tentang cara melihat kata laluan yang disambungkan dan disimpan dalam Navicat. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Repo: Cara menghidupkan semula rakan sepasukan
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Repo: Cara menghidupkan semula rakan sepasukan
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Tag artikel panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana untuk melaraskan saiz fon antara muka dalam navicat Bagaimana untuk melaraskan saiz fon antara muka dalam navicat Apr 24, 2024 pm 04:24 PM

Bagaimana untuk melaraskan saiz fon antara muka dalam navicat

Bagaimana untuk mengeksport gambarajah er navicat Bagaimana untuk mengeksport gambarajah er navicat Apr 24, 2024 pm 04:21 PM

Bagaimana untuk mengeksport gambarajah er navicat

Di manakah fail cache navicat? Di manakah fail cache navicat? Apr 24, 2024 pm 06:06 PM

Di manakah fail cache navicat?

Bagaimana untuk menyalin pangkalan data ke pangkalan data lain dalam navicat Bagaimana untuk menyalin pangkalan data ke pangkalan data lain dalam navicat Apr 24, 2024 pm 07:24 PM

Bagaimana untuk menyalin pangkalan data ke pangkalan data lain dalam navicat

Bagaimana untuk mengeksport struktur jadual ke perkataan menggunakan navicat Bagaimana untuk mengeksport struktur jadual ke perkataan menggunakan navicat Apr 24, 2024 pm 07:57 PM

Bagaimana untuk mengeksport struktur jadual ke perkataan menggunakan navicat

Bagaimana untuk memulihkan jadual yang dipadam secara tidak sengaja dalam navicat Bagaimana untuk memulihkan jadual yang dipadam secara tidak sengaja dalam navicat Apr 24, 2024 pm 06:21 PM

Bagaimana untuk memulihkan jadual yang dipadam secara tidak sengaja dalam navicat

Bagaimana untuk membuat asal langkah sebelumnya dalam navicat Bagaimana untuk membuat asal langkah sebelumnya dalam navicat Apr 24, 2024 pm 05:48 PM

Bagaimana untuk membuat asal langkah sebelumnya dalam navicat

Bolehkah Navicat tidak memasang pangkalan data? Bolehkah Navicat tidak memasang pangkalan data? Apr 24, 2024 pm 04:39 PM

Bolehkah Navicat tidak memasang pangkalan data?

See all articles