我需要用SHA256 Base64密碼替換一些純文本密碼。 顯然,由數據庫函數生成的哈希與應用程序使用的哈希不匹配。例如:我的應用程序使用此函數生成散列:用MariaDB生成SHA-256密碼
$ echo -n "admin" | openssl dgst -sha256 -binary | openssl base64
jGl25bVBBBW96Qi9Te4V37Fnqchz/Eu4qB9vKrRIqRg=
現在,隨着數據庫的密碼相同:
select TO_BASE64(SHA2('admin',256));
OGM2OTc2ZTViNTQxMDQxNWJkZTkwOGJkNGRlZTE1ZGZiMTY3YTljODczZmM0YmI4YTgxZjZmMmFiNDQ4YTkxOA==
正如你可以看到它不匹配!任何幫助?
我的數據庫版本:服務器版本:10.0.23-MariaDB的MariaDB的服務器
確切的查詢來獲取你想要的哈希選擇TO_BASE64(UNHEX(SHA2(「管理員」,256)))這個答案給出了SHA2如何工作http://stackoverflow.com/一點點更多信息a/22121627/947240 – dMcNavish
謝謝你完美的工作。 –