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位。
a) 函数 AES_ENCRYPT(str ,key_str ) , AES_DECRYPT(crypt_str ,key_str )
函数使用说明:这些函数允许使用官方 AES 进行加密和数据加密 ( 高级加密标准 ) 算法 , 即以前人们所熟知的 “Rijndael” 。 保密关键字的长度为 128 比特,不过你可以通过改变源而将其延长到 256 比特。我们选择了 128 比特的原因是它的速度要快得多,且对于大多数用途而言这个保密程度已经够用。
b) 函数DECODE(crypt_str ,pass_str )
函数使用说明:使用 pass_str 作为密码,解密加密字符串 crypt_str , crypt_str 应该是由 ENCODE() 返回的字符串。
c) 函数 ENCODE(str ,pass_str )
函数使用说明:使用 pass_str 作为密码,解密 str 。 使用 DECODE() 解密结果。
d) 函数 DES_DECRYPT(crypt_str [,key_str ])
函数使用说明:使用 DES_ENCRYPT() 加密一个字符串。若出现错误,这个函数会返回 NULL 。
e) 函数 DES_ENCRYPT(str [,(key_num |key_str )])
函数使用说明:用 Triple-DES 算法给出的关键字加密字符串。若出现错误,这个函数会返回 NULL 。
f) 函数 ENCRYPT(str [,salt ])
函数使用说明:使用 Unix crypt() 系统调用加密 str 。 salt 参数应为一个至少包含 2 个字符的字符串。若没有给出 salt 参数,则使用任意值。
g) 函数 MD5(str )
函数使用说明:为字符串算出一个 MD5 128 比特检查和。该值以 32 位十六进制数字的二进制字符串的形式返回 , 若参数为 NULL 则会返回 NULL 。例如,返回值可被用作散列关键字
h) 函数 OLD_PASSWORD(str )
函数使用说明:当 PASSWORD() 的执行变为改善安全性时, OLD_PASSWORD() 会被添加到 MySQL 。 OLD_PASSWORD() 返回从前的 PASSWORD() 执行值 ( 4.1 之前 ) ,同时允许你为任何 4.1 之前的需要连接到你的 5.1 版本 MySQL 服务器前客户端设置密码,从而不至于将它们切断
i) 函数PASSWORD(str )
函数使用说明:从原文密码str 计算并返回密码字符串,当参数为 NULL 时返回 NULL 。这个函数用于用户授权表的Password 列中的加密MySQL 密码存储
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)