数据库知识点整理(五)

本文介绍了数据库中数据安全的解决方案,包括简单Hash、加盐Hash策略防止彩虹表攻击。同时,探讨了数据库与文件系统相比的优势,如数据共享性、一致性和安全性。接着,详细解释了联合索引的概念,特别是最左前缀匹配原则。最后,阐述了如何建立和优化索引,并展示了MySQL查询语句的执行流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

(一)数据不能明文存储怎么办

1、简单Hash

  • 以前,大多数网站保存的都是经过一次MD5哈希的密码。 哈希保存的思路很简单:用户注册时,把他的密码做一次MD5运算储存起来;用户登录时,把他输入的密码做一次MD5运算,再验证是否和数据库里储存的一致。不安全。

2、其他Hash

  • 其他哈希方法:sha256等;应付不了彩虹表的攻击方式:彩虹表就是先尽可能把简单的数字密码组合的哈希计算出来,这些明文和哈希结果的对应关系就是一张彩虹表。可以破解绝大多数人的密码。

3、加盐Hash

  • 目前业界最常见的做法是加盐哈希:保证了储存数据的不可逆,防止彩虹表的攻击
    • 用户注册时,给他随机生成一段字符串,这段字符串就是盐(Salt)
    • 把用户注册输入的密码和盐拼接在一起,叫做加盐密码
    • 对加盐密码进行哈希,并把结果和盐都储存起来
    • 在登陆时,先取出盐,再同样进行拼接、计算哈希,就能判断密码的合法性

(二)数据库与文件相比好处/数据库系统对比文件系统的优点

  • 提高了数据的共享性,使多个用户能够同时访问数据库中的数据。
  • 提高了数据的一致性和完整性
  • 提供数据与应用程序的独立性
  • <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值