数据库里加密的密码是怎么实现的

高分请说下,数据库里加密的密码是怎么实现的
最新回答
Roc丿战嘡灬

2024-09-18 09:53:38

一般是先加盐再用不可逆加密算法加密密码的,常见的有:sha1 sha256 md5等。

作用:这些加密算法,只能加密,不能逆向解密,所以使用这些算法。即时你的数据库被拖库,得到的人,也无法知道用户密码。

举例 

在注册时,

假设你的密码是1234,一般服务器会加一个盐(随便一个乱打的字符串),和你的密码加在一起,1234和efnU*(@#H!JKNF得到1234efnU*(@#H!JKNF这个值,然后再进行加密(这里我用md5)得到 91dc02c1fc2ce2252969e6b86173aa78,于是数据库里你的密码就变为了91dc02c1fc2ce2252969e6b86173aa78

登入时,

你输入1234, 然后服务器用和注册相同的步骤进行加密,得到加密后的值,91dc02c1fc2ce2252969e6b86173aa78,将这个值与数据库的加密值比对,如果正确则登入。

星雪伊

2024-09-18 08:20:56

比如密码是123,加一个加密函数假如是MD5,加密后的内容是202CB962AC59075B964B07152D234B70,把这个内容存到数据库,以后输入密码登陆和解密的时候,先把输入的内容加用MD5转换成加密后的,再与数据库里的内容比较
守护在此方

2024-09-18 10:35:17

C#中有数据加密的类using System.Security.Cryptography,在这个类中你可以调用它的两个方法分别是加密方法
public static string Encrypt(string text)
{}
解密方法
public static string Decrypt(string text)
{}
我们一般使用连接数据库加密的话,都会使用一个配置文件在配置文件中对数据库链接进行读写,通过加密方法把链接写到配置文件,然后读取的时候再使用解密方法。
希望可以帮到你,谢谢!
冰依湄凌

2024-09-18 02:19:18

一般密码加密使用 md5,md5_crypt 以及 sha1,推荐使用第二个,因为 md5 和 sha1 密码是固定的,可能会被破解,而 md5_crypt 密码是随机的,几乎不可能破解,linux 系统默认就是使用 md5_crypt 加密密码
怠慢

2024-09-18 02:15:16

分为两种
1、使用数据库自身的加密字段 来存储需要加密的数据
2、使用程序对需要加密的内容进行加密,然后使用数据库存储加密后的结果