认证概述
- 认证概念
- 认证机制是网络安全的基础性保护措施,是实施访问控制的前提。(认证是网安基础,访问控制前提)
- 认证是一个实体向另一个实体证明其所声称的身份的过程。在认证过程中,需要被证实的实体是声称者,负责检查的是验证者。
- 认证一般由标识和鉴别两部分组成。
- 标识是用来代表实体对象的身份标志。一般用ID表示,通过唯一标识符,可以代表实体。如IP地址,网卡地址可以作为计算机设备的标识,操作系统以符号串作为用户的标识如root,guest等。
- 鉴别一般使用口令(password),电子签名,数字证书,令牌,生物特征等相关凭证对实体所声称的属性进行识别验证的过程。
- 认证依据
- 认证依据也称鉴别信息,常见主要有四类
- 所知道的秘密信息:如用户口令,验证码等
- 所拥有的实物凭证:实体所持有的不可伪造的物理设备,如智能卡,U盾等
- 所具有的生物特征:如指纹,虹膜,脸等
- 所表现的行为特征:鼠标使用习惯,键盘敲击力度,地理位置等(这个应该是辅助认证用的,比如异地登陆报异常)
- 认证原理
- 由验证对象、认证协议、鉴别实体构成
- 验证对象就是要鉴别的实体(声称者)
- 认证协议是验证对象和鉴别实体之间进行认证信息交换所遵从的规则
- 按照验证对象要求提供验证数量分为单因素,双因素,多因素(比如密码+验证码就是双因素)
- 按照认证时间长短分为一次性口令和持续认证
- 一次性口令简称OTP(one time password),就是口令只能用一次,如短信验证码
- 持续认证就是在整个会话过程中对用户特征行为监测,有利于防止假冒攻击,钓鱼攻击
- 针对的主要是认知因素(眼手协调,应用行为模式,偏好等),物理因素(左右手,按压大小等),上下文因素(网络模式,设备,导航等,如地址位置)
- 认证发展
- 认证机制是网络信息系统安全的基础,目前国家电子认证服务由40多家CA机构,基本建立了全国电子认证行业监管体系、电子认证运营服务体系。(知道这么多就行了)
认证类型与过程
- 分为三种:单向认证、双向认证、第三方认证
- 单向认证:认证过程中,验证者对声称者进行单方面的鉴别,而声称者不需要识别验证者的信息
- 再分两种:基于共享秘密和基于挑战响应
- 共享秘密即口令之类的
- 基于挑战响应:B产生随机数给A,A收到后生成对应随机数的秘密K,发送给B,B核实后回复消息
- 双向认证:即验证者和声称者互相之间都要鉴别
- 第三方认证:鉴别过程通过可信的第三方来实现。可信的第三方简称TTP(trust third party),第三方与每个认证实体共享秘密,认证请求时可以向第三方获取密钥,并用密钥保护双方认证信息。(书119有一个挑战相应的例子)
- 单向认证:认证过程中,验证者对声称者进行单方面的鉴别,而声称者不需要识别验证者的信息
认证技术方法
- 主要有口令认证技术、智能卡技术、基于生物特征认证技术、Kerberos认证技术等多种实现方式
- 口令认证技术
- 基于用户所知道的秘密进行的技术,最为常
- 其实就是大家平时所称的密码password,服务方实体B通常会存储用户A的口令信息,一般加密存储,非明文传输。
- 优点是简单,容易实现。
- 缺点是容易受到攻击,主要攻击方式有窃听,重放,中间人攻击,口令猜测等。要安全至少满足以下条件
- 口令信息加密存储
- 口令信息安全传输
- 口令认证协议要抵抗攻击,符合安全协议设计要求
- 口令选择要求做到避免弱口令
- 智能卡技术
- 是一种带有存储器和微处理器的集成电路卡,能够安全存储认证信息,并具有一定的计算能力。
- 它通过挑战/响应认证,用户会提供一张智能卡,会显示一个随时间变化的数字,若用户试图登录目标系统,则会触发以下步骤
- 用户发送ID
- 系统提示用户输入智能卡上的数字
- 用户读取数字并输入
- 系统用收到数字对ID进行确认,若有效则生成一个数字并显示,称为挑战
- 用户将挑战输入智能卡
- 智能卡用输入值根据一定算法计算出新数字并显示,该数字称为应答
- 用户将应答输入系统
- 系统验证应答是否正确,若正确,则用户通过验证并登陆进入系统
- 和steam令牌有点像但是又多了一个挑战的步骤
- 基于生物特征认证技术
- 这块其实没啥好说的,知道有指纹,人脸,视网膜,语音即可
- Kerberos认证技术
- 它是一个网络认证协议,目标是使用密钥加密为客户端/服务器应用程序提供强身份认证。技术原理为利用对称密码技术,使用可信第三方来提供认证服务(注意它源自MIT)
- 包含四个实体
- Kerberos客户机,用户用来访问服务器设备
- AS(Authentication server)认证服务器,用来识别用户身份并提供TGS会话密钥
- TGS(Ticket Granting Server)票据发放服务器,为申请服务的用户授予票据
- 应用服务器(Application Server)为用户提供服务的设备或系统
- 通常将AS和TGS统称KDC(Key Distribution Center)(翻译好像是密钥分发中心,不是KDA也不是ADC),主要包括客户方principal(身份),目的服务方principal,客户方IP地址,时间戳(分发该ticket的时间),Ticket的生存期,会话密钥的内容。主要由6步组成,具体步骤见书P126页或者百度。
- 公钥基础设施(PKI)技术
- 公钥密码体制不仅能够实现加密服务,也能提供识别和认证服务。除了保密性外,公钥密码可信分发也是其所面临的问题。即公钥的真实性和所有权问题。针对该问题,人们采用公钥证书的方法来解决,类似身份证、护照。公钥证书是将实体和一个公钥绑定,并让其他的实体能够验证这种绑定关系。为此,需要一个可信第三方来担保实体的身份,这个第三方称为认证机构,简称CA(certification authority)。CA负责颁发证书,证书中含有实体名、公钥和尸体的其他身份信息。而PKI(Pulbic key infrastructure)就是有关创建、管理、存储、分发和撤销公钥证书所需要的硬件、软件、人员、策略和过程的安全服务设施。
- 这段实在太好了就全抄了,过程很清晰的解释了PKI,从公钥的分发引出CA的重要性,而CA又是PKI的一部分
- PKI各个实体功能分别叙述如下
- CA(certification authority):证书授权机构,主要进行证书分发,废止和更新
- RA(registration authority):证书登记权威机构,将公钥和对应证书持有者的身份和其他属性联系起来,进行注册和担保
- 目录服务器:CA通常使用一个服务器,提供证书管理和发放的服务
- 终端实体(End Entity):指需要认证的对象,如服务器,用户等
- 客户端(Client):指需要PKI服务的使用者,包括用户,服务进程等(感觉和上面那个有点像)
- 单点登录
- 用户访问使用不同系统时,只需要进行一次身份认证,就可以根据这次登陆的认证身份访问授权资源。它简化了认证管理工作
- 这个其实很常见,最典型的就是用支付宝登录淘宝,用百度网盘登录百度贴吧。
- 基于人机识别的认证技术
- 通常被称为CAPTCHA(completely Automated Public Turing test to tell Computer and Humans Apart), 即全自动区分计算机和人类的图灵测试
- 用于识别计算机和人,防止程序而已操作如恶意注册,暴力猜解口令。(最常见的就是那些让点击一个按钮证明自己是人,是通过鼠标滑动轨迹判断的)
- 快速在线认证(FIDO)
- fast identity online,使用标准公钥加密技术来提供强身份验证,目标是保护用户隐私,不提供跟踪用户的信息,用户的生物识别信息不离开用户设备。
- 简单描述如下
- 登陆注册:用户创建新的公私钥对。私钥存在用户端设备,公钥注册到在线服务。
- 登录使用:登陆时要求用以前注册过的设备登录,用户解锁身份验证器,响应挑战,并发送到在线服务,通过后完成登录。
- 最常见的,用手机QQ登录电脑qq,还有微信
认证产品与技术指标
- 认证主要产品与技术指标,认证技术产品是最普遍的网络产品,有硬件软件和软硬件结合的。下面进行介绍
- 产品分为5类
- 系统安全增强
- 利用多因素认证技术增强操作系统、DBMS,website等的认证安全强度
- 通常是U盘+口令,智能卡+口令,生物信息+口令等
- 常见的有U盘登录计算机,网银U盾认证,指纹登陆计算机等
- 生物认证
- 特点是利用指纹、人脸等生物信息进行鉴别
- 电子认证服务
- 一般是PKI技术,密码算法来提供数字证书的各项服务
- 目前国内常见的有数字证书认证系统等
- 网络准入控制
- 基于802.1X协议,Radius协议等相关技术,与交换机,路由器,安全网关等联动,对入网设备进行认证,防范非安全设备接入
- 身份认证网关
- 利用数字证书,数据同步,网络服务重定向等技术,提供集中统一的认证服务,形成身份认证中心
- 系统安全增强
- 技术指标
- 分安全功能要求,性能要求和安全保障要求三部分,主要如下
- 密码算法支持:密码算法牛逼不
- 认证准确性:认假率,拒真率
- 用户支持数量:认证产品最大承载的用户数量
- 安全保障级别:安全保障措施,可靠度,抵抗攻击能力等
最后应用那块就跳了,自行看,这章主要讲认证,很容易就能和平时经验结合,同时多次提到了数字证书和CA。