zoukankan      html  css  js  c++  java
  • 认证过程

    身份认证方法:

    1)生物特征;

    2)密码等私密信息;

    3)个人物品;

    目前多采用其中的两种,称为双因素的认证方式;

    CA,服务器端必须部署的证书的来源。

    客户端证书,一般是不需要的。

    在用户登录服务器时,是不会直接传递用户名和明文密码的,都要经过一些简单的处理:

      最基本的不进行保护的authentication过程:

        

      1)originate A 发送它的用户名和密码到 recipient B;

      2)B直接发送用户名和密码到directory中,检索是否存在该记录;

      3)Directory 发送valid或者invalid到B;

      4)将authentication 的success或failure传送给A;

    网站被脱库,怎么存储用户的登录密码:

      1)登录过程中传递登录密码的消息认证码(HMAC函数),服务器端只进行校验;

      2)加入随机的salt的哈希算法,来存储用户的密码;

        

      简单的authentication过程:

        

      1)origination A 发送protected identifying info给B,

        Protected1 = f1(T1, Q1, PassWd)

        AuthTag = t1, q1, A, Protected1

        引入了timestampT1,随机数Q1;hash function F1

      2)recipient B直接拿到directory中的PassWd,经过同样的运算之后,比较AuthTag值;

    也可以对Protected1得到的值,在进行一次hash function操作,增加安全性。

    认证过程在复杂一些,就必须要牵扯到证书,非对称加密的认证,签名

  • 相关阅读:
    Qt 6 正式发布
    GTK 4.0 正式发布
    编译 flink 1.12.0
    Flink 1.12.0 sql 任务指定 job name
    【翻译】Apache Flink 1.12.0 Release Announcement
    【源码】Flink 三层图结构 —— JobGraph 生成过程
    【源码】Flink 算子 chain 在一起的条件
    Web开发基础之CMDB系统开发之三
    Web开发基础之CMDB系统开发之二
    Ubuntu18.04升级至20.04
  • 原文地址:https://www.cnblogs.com/-9-8/p/7942147.html
Copyright © 2011-2022 走看看