mysql的加密方法

MySQL特意设计了一些函数对数据进行加密。这里简单介绍如下几个函数。

(1)AES_ENCRYPT和AES_DECRYPT函数
 
语法格式为:aes_encrypt  aes_decrypt(str,key)
 
AES_ENCRYPT函数返回的是密钥key对字符串str利用高级加密标准(AES)算法加密后的结果,结果是一个二进制的字符串,以BLOB类型存储。而AES_DECRYPT函数用于对用高级加密方法加密的数据进行解密。若检测到无效数据或不正确的填充,函数会返回NULL。AES_ENCRYPT和AES_DECRYPT函数可以被看做MySQL中普遍使用的最安全的加密函数。
(2)ENCODE和DECODE函数
 
语法格式为:  encode |deCODE(str,key)
 
ENCODE函数用来对一个字符串str进行加密,返回的结果是一个二进制字符串,以BLOB类型存储。DECODE函数使用正确的密钥对加密后的值进行解密。与上面的AES_ENCRYPT和AES_DECRYPT函数相比,这两个函数加密程度相对较弱。
 
(3)ENCRYPT函数
 
使用UNIX crypt() 系统加密字符串,encrypt(str,salt)函数接收要加密的字符串和用于加密过程的salt(一个可以确定唯一口令的字符串)。在Windows上不可用。

你可能感兴趣的:(mysql的加密方法)