MYSQL加解密功能
[日期]:2023/04/19 [瀏覽人數]:539 MYSQL有內建的加解密功能 加密1.AES_ENCRYPT('字串','密碼') ,2.ENCODE('字串','密碼') 解密1.AES_DECRYPT('字串','密碼') ,2.DECODE('字串','密碼'), 加密1和解密1是同組使用加密的安全度最高 加密2和解密2是同組使用加密的安全度次高 可以使用SELECT AES_ENCRYPT('123456','password') 直接取得加密結果,對於大部分的文字或數字是沒問題的 但有些字因編碼的問題並無法正確顯示,必須由資料表直接解出就不會出現錯誤 如:資料表有一個ab_amt的欄位執行程式已經先讀出編碼過的文字放置於字串中,等要顯示時再解密 $a=$row["ab_amt"]; $sql="SELECT DECODE('".$a."','password'); $rd=mysql_query($sql); list($enamt)=mysql_fetch_row($rd); 這樣使用時有少部分的字串會有問題,如14383 ...等 所以應避免如此使用,而是直接由資料表取用直接顯示 $sql="SELECT DECODE(ab_amt,'password') FROM $table WHERE idx='$idx'"; $rd=mysql_query($sql); list($enamt)=mysql_fetch_row($rd); |