Fehlerbehebung bei AES_DECRYPT-Fehlern in MySQL
Beim Versuch, zuvor mit AES_ENCRYPT() verschlüsselte Daten zu entschlüsseln, kann es zu einem Problem kommen, bei dem AES_DECRYPT() gibt ein leeres Ergebnis zurück. Dies kann frustrierend sein, da auf Ihre verschlüsselten Daten weiterhin nicht zugegriffen werden kann.
Laut der MySQL-Dokumentation wird erwartet, dass AES_DECRYPT() die ursprüngliche Zeichenfolge zurückgibt, nachdem eine verschlüsselte Zeichenfolge entschlüsselt wurde. In einigen Fällen wird jedoch möglicherweise stattdessen eine Binärzeichenfolge zurückgegeben.
Um dieses Problem zu beheben, versuchen Sie Folgendes:
SELECT *, CAST(AES_DECRYPT(first_name, 'usa2010') AS CHAR(50)) first_name_decrypt FROM user
Diese Abfrage verwendet die CAST()-Funktion, um die entschlüsselte Binärzeichenfolge in eine CHAR-Zeichenfolge umzuwandeln, die ordnungsgemäß angezeigt werden kann. Anstatt „Vorname“ in Ihren nachfolgenden Abfragen oder Anwendungen zu verwenden, verwenden Sie „Vorname_decrypt“, um auf die entschlüsselten Daten zuzugreifen.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3