密码在数据库中存储采用什么格式?

密码在数据库中存储采用什么格式?,第1张

首先,密码字段肯定是字符串格式,可变长字符串比如varchar(20)。\x0d\x0a 字符串格式可以包含字母,数字和一些常用特殊字符\x0d\x0a其次,一个健全的数据库存储的密码不应该以明文的形式存储。\x0d\x0a 比如通过MD5编码的形式存储密码,这样既安全又保持唯一性。

html。

那个pasword为*是可以输出来的,如果要在mysql里面存储密码,可以考虑用字符串类型 char(32) 32位,

然后将前台html里面输入的密码用MD5多加密几次(加密一次很容易破解),然后将加密后的密码(32位)插入到数据库中

如果以后要实现登陆验证功能,可以把用户登陆的密码MD5后再跟数据库比较。

扩展资料:

MySQL需要注意的地方

1、如果客户端和服务器端的连接需要跨越并通过不可信任的网络,那么就需要使用SSH隧道来加密该连接的通信。

2、用set password语句来修改用户的密码,三个步骤,先“mysql -u root”登陆数据库系统,

然后“mysql>update mysql.user set password=password('newpwd')”,最后执行“flush privileges”就可以了。

3、需要提防的攻击有,防偷听、篡改、回放、拒绝服务等,不涉及可用性和容错方面。对所有的连接、查询、其他 *** 作使用基于ACL即访问控制列表的安全措施来完成。也有一些对SSL连接的支持。

4、除了root用户外的其他任何用户不允许访问MySQL主数据库中的user表; 加密后存放在user表中的加密后的用户密码一旦泄露,其他人可以随意用该用户名/密码相应的数据库;

5、用grant和revoke语句来进行用户访问控制的工作;

6、不使用明文密码,而是使用md5()和sha1()等单向的哈系函数来设置密码;

7、不选用字典中的字来做密码;

8、采用防火墙来去掉50%的外部危险,让数据库系统躲在防火墙后面工作,或放置在DMZ区域中。

参考资料来源:百度百科-MySQL数据库

MySQL数据库的认证密码有两种方式,

MySQL 4.1版本之前是MySQL323加密,MySQL 4.1和之后的版本都是MySQLSHA1加密,

MySQL数据库中自带Old_Password(str)和Password(str)函数,它们均可以在MySQL数据库里进行查询,前者是MySQL323加密,后者是MySQLSHA1方式加密。

(1)以MySQL323方式加密

select  old_password('111111')

(2)以MySQLSHA1方式加密

select password('111111')

MYSQL323加密中生成的是16位字符串,而在MySQLSHA1中生存的是41位字符串,其中*是不加入实际的密码运算中,通过观察在很多用户中都携带了"*",在实际破解过程中去掉"*",也就是说MySQLSHA1加密的密码的实际位数是40位。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/10874209.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-11
下一篇2023-05-11

发表评论

登录后才能评论

评论列表(0条)

    保存