身份认证(Authentication)常见有哪些类型
身份认证(Authentication)是指通过一定的方式,验证用户、设备或系统是否为其所声称的身份。
1.身份认证的6种常见形式
1. 1基于你知道的信息(知识因子)
通过验证只有用户本人知道的信息来确认身份。
- 用户名和密码
- PIN码(个人识别码)
- 安全问题答案
示例:登录网站时输入账号和密码。
1.2基于你持有的物品(持有因子)
通过验证用户持有的设备或凭证来确认身份。
- 手机短信验证码
- 身份认证器生成的一次性验证码(TOTP)
- 硬件安全密钥(如FIDO2密钥)
- 智能卡、数字证书
示例:登录时输入手机认证器生成的动态验证码。
1.3 基于你自身的特征(生物特征因子)
通过人体独有或相对稳定的生物特征进行验证。
- 指纹识别
- 人脸识别
- 虹膜识别
- 声纹识别
示例:使用手机面容识别解锁设备。
1.4 基于行为特征的认证
根据用户的行为模式辅助判断身份。
- 键盘敲击节奏
- 鼠标操作习惯
- 触屏手势
- 步态识别
示例:银行系统根据用户的操作行为识别异常登录。
1.5 基于环境或上下文的认证
结合登录环境、设备和风险信息判断是否允许访问。
- IP地址和地理位置
- 设备指纹
- 登录时间和网络环境
- 风险评分
示例:发现异地登录时,系统要求额外验证。
1.6 基于密码学凭证的认证
通过密钥对、数字签名或证书验证身份,常用于企业系统和服务间通信。
- 公钥/私钥认证
- 数字证书认证
- SSH密钥认证
- Passkey(通行密钥)
示例:使用Passkey通过设备解锁验证登录,无需输入传统密码。
2.按照认证强度分类
在信息安全领域,通常更关注认证因子的组合方式。
| 认证方式 | 组合示例 | 安全特点 |
|---|---|---|
| 单因素认证(SFA) | 仅密码 | 实现简单,但安全性相对较低 |
| 双因素认证(2FA) | 密码+动态验证码 | 需要两个不同类别的认证因子 |
| 多因素认证(MFA) | 密码+硬件安全密钥+指纹 | 结合两个或更多不同类别的认证因子 |
同一类别的两种验证方式不一定构成双因素认证。例如,密码加安全问题答案,通常仍属于知识因子,不能算作严格意义上的2FA。
3.身份认证与身份识别的区别
- 身份识别(Identification):用户声明自己是谁,例如输入用户名。
- 身份认证(Authentication):系统验证用户是否确实是其声称的身份,例如验证密码或数字签名。