欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

MySQL数据库加密与解密_MySQL

程序员文章站 2022-06-17 08:03:35
...
bitsCN.com

  数据加密、解密在安全领域非常重要。对程序员而言,在数据库中以密文方式存储用户密码对入侵者剽窃用户隐私意义重大。

  有多种前端加密算法可用于数据加密、解密,下面我向您推荐一种简单的数据库级别的数据加密、解密解决方案。

  以MySQL数据库为例,它内建了相应的加密函数(AES_ENCRYPT() )和解密函数(AES_DECRYPT())。

  MySQL数据库加密与解密_MySQL

  在表中插入加密数据

  •   INSERT INTO userdata(username,pasword,encryptedpassword) VALUES ('smith','htims',AES_ENCRYPT('htims','key'))

  上面的插入语句有三个字段,“用户名”、“密码”和“加密的密码”。AES_ENCRYPT()函数需要一个“key”来协助加密,同样,解密也需要它(请牢记!)。

  下面是表中的数据截图:

  

MySQL数据库加密与解密_MySQL

  从表中查询加密数据

  •   SELECT username,pasword,AES_DECRYPT(encryptedpassword,'key') FROM userdata

  上面的查询语句使用了AES_DECRYPT()函数。下面是运行结果:

  MySQL数据库加密与解密_MySQL

  在上面的截图中,我们可以看到“pasword”“decryptedpassword”字段的值是相同的,也就是说,你解密了用户密码。

bitsCN.com