身份认证的方式(2/2) 本地多用户认证 Login:如何管理口令 远程用户认证 次性 ·访问资源或者服务之前进行认证 多次访问资源或者服务 身份,获得 credentia ·利用 credentia访问资源或者服务
• 本地多用户认证 – Login:如何管理口令 • 远程用户认证 – 一次性 • 访问资源或者服务之前进行认证 – 多次访问资源或者服务 • 身份,获得credential • 利用credential访问资源或者服务 身份认证的方式(2/2)
身份认证基本途径 基于你所知道的( What you know 一知识、口令、密码 基于你所拥有的( What you have) 身份证、信用卡、钥匙、智能卡、令牌、私钥 等 基于你的个人特征( What you are) 指纹,笔迹,声音,手型,脸型,视网膜,虹 膜 双因素、多因素认证 2/7/2021
身份认证基本途径 • 基于你所知道的(What you know ) – 知识、口令、密码 • 基于你所拥有的(What you have ) – 身份证、信用卡、钥匙、智能卡、令牌、私钥 等 • 基于你的个人特征(What you are) – 指纹,笔迹,声音,手型,脸型,视网膜,虹 膜 • 双因素、多因素认证 2/7/2021 12
身份认证的基本模型 申请者(C| a i mant) 验证者( Verifier) 认证信息A( Authentication informat ion) 可信第三方( Trusted Third Party) 交换AI 申请AI 验证AI 申请A验证A 2/7/2021
身份认证的基本模型 • 申请者(Claimant) • 验证者(Verifier) • 认证信息AI(Authentication Information) • 可信第三方(Trusted Third Party) 申请AI 验证AI 申请AI 验证AI 交换AI 2/7/2021 13
身份认证的基本模型 假设A和B要进行通讯,A和B有一个共享的密钥 Kab,如何利用这个密钥进行认证,并且商定一个 会话密钥K我是A 告诉你K 好的,我用它 以后就用它, 试试,可我怎 别让别人知道C/B 么知道你是B呢 ab 如果你知道K 那么你就知道K 1.A→B:(DA||N) 我就知道你是A 2. B)A: EKab[Ks, IDB, f(Nl), N2)] 3A→B:EKsf(N 这里的函数为某个确定的运算,比如fx)=x+1 2/7/2021
身份认证的基本模型 • 假设A和B要进行通讯,A和B有一个共享的密钥 Kab,如何利用这个密钥进行认证,并且商定一个 会话密钥Ks 1. A→B: (IDA||N1 ) 2. B→A: EKab[Ks ,IDB,f(N1 ),N2 )] 3. A→B: EKs[f(N2 )] 这里的f函数为某个确定的运算,比如f(x)=x+1 A Kab B 我是A 告诉你Ks, 以后就用它, 别让别人知道 好的,我用它 试试,可我怎 么知道你是B呢 如果你知道Kab, 那么你就知道Ks , 我就知道你是A 2/7/2021 14
身份认证的基本模型 假设A和B要进行通讯,A和B与KD各有一个共享密 钥K。和K,如何利用这两个密钥进行认证,并且 商定一个会话密钥K。○ 会话密钥K 我是A,我 KDC ,由A送给B 想和B通讯 的认证信息 K2我把必要的K A 信息告诉你 我把消息给你,如果 你是B你就可以解开 1.A→KDc:(DAD|N 2. KDC)A: EKa[ksiiDBIIN,EKb(Ks, IDA] 3. A]B: EKb(Ks, IDAIEKs(M) 2/7/2021
身份认证的基本模型 • 假设A和B要进行通讯,A和B与KDC各有一个共享密 钥Ka和Kb, 如何利用这两个密钥进行认证,并且 商定一个会话密钥Ks 1. A→KDC: (IDA||IDB||N1 ) 2. KDC→A: EKa[Ks ||IDB||N1 ||EKb(Ks ,IDA)] 3. A→B: EKb(Ks ,IDA)||EKs(M) A Kb B 我是A,我 想和B通讯 KDC Ka 我把必要的 信息告诉你 我把消息给你,如果 你是B,你就可以解开 会话密钥Ks ,由A送给B 的认证信息 2/7/2021 15