我一直在嘗試這麼多不同的變體來使AES_Decrypt正常工作。我開始使用字段類型VARBINARY然後嘗試BLOB但仍然沒有運氣,不斷返回NULL。最後,我想這:MySQL AES_Decrypt無法正常工作
SELECT AES_DECRYPT(AES_ENCRYPT('blah blah blah','1234'), '1234') as test
這在技術上應該已經恢復等等等等,而是它返回
626c616820626c616820626c6168
所以不知道是怎麼回事還是什麼我做錯了。
我已經插入加密數據如下:
INSERT INTO private (short_name, mobile, name)
VALUES (
'AS1',
AES_ENCRYPT('0111222333','1234'),
AES_ENCRYPT('My Name','1234')
)
然後我嘗試解密它是這樣的:
SELECT AES_DECRYPT('mobile', '1234') AS mobile FROM private
它只是似乎沒有工作。遵循很多在線說明,但仍然沒有運氣。
任何想法?
我嘗試使用在線二進制轉換器轉換的字符串,但所有的給出錯誤。是不是應該有一種方式來將它作爲文本返回,而不必單獨將其轉換爲文本 – Ahmed
好吧,我似乎需要把它像這樣:SELECT CAST(AES_DECRYPT(AES_ENCRYPT('等等等等','1234'),'' 1234')AS CHAR(150)) – Ahmed
使用此鏈接進行轉換。 http://string-functions.com/hex-string.aspx – Jack