密码学 身份认证

概念
身份是实体的一种计算机表达,身份可以用来唯一确定一个实体。一般情况下,可以通过多个凭证(多因子认证)共同鉴别身份真伪,认证因子越多鉴别真伪可能性就越大,但同样会导致校验效率低,影响用户体验等。

分类
按照方向

  1. 单向认证 一方认证即可
  2. 双向认证 不仅服务方对客户方进行鉴别,客户方也要对服务方身份进行鉴别

总结:
身份认证技术用于解决物理身份和数字身份的一致性问题,身份认证即身份识别与验证。是保护信息系统安全的第一道大门。(第二道大门是访问控制)

认证方法
所知:密码 口令
所有:身份证
个人特征:

  1. 生理特征 指纹 视网膜
  2. 行为特征:语音模式 笔记特征

关于口令

口令的种类

  • 静态口令
  • 动态口令(一次性口令)

口令的脆弱性

  • 会受到数据流的监听
  • 字典攻击:很多用户密码都是有意义的单词,即使经过散列存储,攻击者仍然可以执行单向散列函数生成字典文件,进行破解。若用户密码过于简单,攻击者也可通过数据库信息统计出大部分系统的散列函数,进而更加精确的进行字典攻击。
    解决方案:加盐,即在用户密码上加一个随机数在进行hash。

提高口令质量有助于保护身份认证的第一道防线。要做到这点必须遵循如下:
对于用户:

  1. 增大口令空间
  2. 选用无规律的口令
  3. 用工具生成口令

对于网站:

  1. 登录时间限制
  2. 登录次数限制
  3. 增加认证信息量

消息摘要存储密码的缺点:无法防止重放攻击

解决方案:增加随机性

  • 验证码 实现一次性口令认证
    概念:CAPTCHA(全自动区分计算机和人类的图灵测试) 是一种区分用户是计算机还是人类的自动程序。
    作用:防口令猜测攻击,例如刷票 恶意注册 论坛灌水,还可以做到用户筛选等。

  • 挑战应答

  1. 客户向认证服务器发出请求,数据包中包含账号,要求进行身份认证;

  2. 认证服务器从用户数据库中查询用户是否是合法的用户,若不是,则不做进一步处理;

  3. 认证服务器内部产生一个随机数,作为"提问",发送给客户;

  4. 客户将用户名字和随机数合并,使用单向Hash函数(例如MD5算法)生成一个字节串作为应答(口令);

  5. 认证服务器将应答串与自己的计算结果比较,若二者相同,则通过一次认证;否则,认证失败;

  6. 认证服务器通知客户认证成功或失败。

总结:挑战应答不需要在网上出现,是许多鉴别机制的基础。

生物认证技术

USB KEY

  1. 带有安全存储空间 :可以春初用户密钥等私密数据,且私钥是不可导出的
  2. 硬件实现加密算法:加解密运算在usbkey内进行,杜绝了用户密钥被黑客截取的可能性,支持rsa des 3des等算法
  3. 便于携带 安全可靠

生物认证技术缺点

  1. 易泄露
  2. 成本高
  3. 有可能影响用户健康
  4. 技术要求高
发布了67 篇原创文章 · 获赞 2 · 访问量 4848

猜你喜欢

转载自blog.csdn.net/shark_chili3007/article/details/105385466
今日推荐