第四章_身份认证
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3. 智能卡
网络通过用户拥有什么东西来识别的方法,一般是用智 能卡或其它特殊形式的标志,这类标志可以从连接Leabharlann Baidu计 算机上的读出器读出来。访问不但需要口令,也需要使 用物理智能卡。
IC卡是英文Integrated Cirtuit(集成电路)卡的缩写, 也称“MEMORY CARD”和“SMART CARD”,中文 译作“聪明卡”、“智慧卡”和“智能卡”等。
的系统。 3. 最安全的认证方式。 缺点: 1. 使用者必须按较多的按钮,操作较繁复。 2. 比较多输入的失误。
2)时间同步认证
变动因子使用服务器端与客户端的同步时间值。认 证过程如下:
1)用户向服务器发出登录请求,服务器提示用户输入 用户ID和用户PIN。
2)服务器根据用户ID取出对应的密钥K,使用K与服务 器时间T计算动态密码RS。
是一种将具有加密、存储、处理 能力的集成电路芯片嵌装于塑料 基片上而制成的卡片,它的外型 与普通的信用卡十分相似
IC卡优点:
存储容量大 、体积小而轻、保密性强、网络要 求低
数据可靠性高 IC卡防磁、防静电、防潮、耐温、 抗干扰能力强,一张IC卡片可重复读写十万次, 卡中数据可保存几十年。
IC卡读写操作通过电信号传输来完成,因而对计 算机的实时性、敏感性要求降低。内部数据保密 性、可靠性好,读写稳定可脱机工作,易于安装 维护,而磁卡系统离不开网络;
3)智能卡根据内在的密钥K与客户机时间T使用相同的 专用算法计算动态密码RC,并发送给服务器。
4)服务器比较RS与RC,如果相同则用户合法。
时间同步认证卡在一个固定期间中(通常是一分钟)产生 同一个动态密码,依据时间的流逝产生不同的密码。
图4.2 时间同步认证
时间同步身份认证
优点:
易于使用。
缺点:
3)响应。智能卡根据X与内在密钥K使用硬件加密引擎运算,也 得到一个运算结果RC,并发送给服务器。
4)验证。比较RS和RC便可确定用户的合法性。
图4.1 挑战/响应认证
由于密钥存在于智能 卡中,运算过程也是 在智能卡中完成,密 钥认证是通过加密算 法来实现的,因而极 大地提高了安全性。
询问/应答身份认证的优点: 1. 没有同步的问题。 2. 一片认证卡可以用来存取被不同认证服务器所保护
认证设备(Authenticator)
认证设备是使用者用来产生或计算密码的软硬件设备。
1. 口令机制
用户名/口令认证技术:最简单、最普遍的身份识别技 术,如:各类系统的登录等。
口令具有共享秘密的属性,是相互约定的代码,只有 用户和系统知道。例如,用户把他的用户名和口令送 服务器,服务器操作系统鉴别该用户。
图4.3 事件同步认证
事件同步的身份认证
优点:
1. 容易使用。
2. 由于使用者无法知道序列数字,所以安 全性高,序列号码绝不会显示出来。
缺点:
如果没有PIN号码的保护及认证卡借给别 人使用时,会有安全的疑虑。
身份认证应用: VPN系统和网络系统设备管理的身份认证
4. 生物特征认证
目前已有的设备包括:视网膜扫描仪、声音验证 设备、手型识别器等。安全性高。
在现实生活中,我们个人的身份主要是通过各种证 件来确认的,比如:身份证、户口本等。
认证是对网络中的主体进行验证的过程,用户必须 提供他是谁的证明,他是某个雇员,某个组织的代 理、某个软件过程(如交易过程)。
认证( authentication )是证明一个对象的身份的 过程。与决定把什么特权附加给该身份的授权 ( authorization )不同。
➢Java Card API与正式的国际标准(如ISO7816)和 工业规范标准(如Europay/Master Card/Visa)兼 容 。 也 就 是 说 Java applet 能 够 直 接 运 行 在 遵 循 ISO7816标准的智能卡之上。
基于智能卡的认证机制有以下方式:
❖挑 战 /响 应(Challenge/Response) 认证; ❖时间同步(Time Synchronous)认证; ❖事件同步(Event Synchronous)认 证.
口令有时由用户选择,有时由系统分配。通常情况下, 用户先输入某种标志信息,比如用户名和ID号,然后 系统询问用户口令,若口令与用户文件中的相匹配, 用户即可进入访问。
口令有多种,如一次性口令;还有基于时间的口令
用户名/口令具有实现简单的优点,但存在以下安全缺 点:
1、大多数系统的口令是明文传送到验证服务器的,容 易被截获。某些系统在建立一个加密链路后再进行口令 的传输以解决此问题,如配置链路加密机。
(1)使用用户名(帐号)作为口令。
(2)使用用户名(帐号)的变换形式作为口令。 将用户名颠倒或者加前后缀作为口令,比如说 著 名 的 黑 客 软 件 John , 如 果 你 的 用 户 名 是 fool,那么它在尝试使用fool作为口令之后, 还会试着使用诸如fool123、loof、loof123、 lofo等作为口令,只要是你想得到的变换方法, John也会想得到。
Sniffer 抓包截图一
Sniffer 抓包截图二
认证信息截取/重放(Record/Replay) 有的系统会将认证信 息进行简单加密后进行传输,如果攻击者无法用第一种方式 推算出密码,可以使用截取/重放方式。攻击者仍可以采用离 线方式对口令密文实施字典攻击;
对付重放的方法有:
1在认证交换中使用一个序数来给每一个消息报文编号 ,仅 当收到的消息序号合法时才接受之;
(3)使用自己或者亲友的生日作为口令。这种口令 很脆弱,因为这样往往可以得到一个6位或者8位 的口令,但实际上可能的表达方式只有 100×12×31=37200种。
(4)使用常用的英文单词作为口令。这种方法比前 几种方法要安全一些。一般用户选择的英文单词几 乎都落在黑客的字典库里。
(5)使用5位或5位以下的字符作为口令。
例如:系统中存储了他的指纹,他接入网络时, 就必须在连接到网络的电子指纹机上提供他的指 纹(这就防止他以假的指纹或其它电子信息欺骗 系统),只有指纹相符才允许他访问系统。更普 通的是通过视网膜膜血管分布图来识别,原理与 指纹识别相同,声波纹识别也是商业系统采用的 一种识别方式。
生物特征认证
优点: 1. 绝对无法仿冒的使用者认证技术。 缺点: 1. 较昂贵。 2. 不够稳定(辩识失败率高)。
通常有三种方法验证主体身份。
1)是只有该主体了解的秘密,如口令、密 钥;
2)是主体携带的物品,如智能卡和令牌卡;
3)是只有该主体具有的独一无二的特征或 能力,如指纹、声音、视网膜图或签字等。
单独用一种方法进行认证不充分
身份认证系统架构包含三项主要组成元件:
认证服务器(Authentication Server)
非对称体制身份识别的关键是将用户身份与密钥 绑定。CA(Certificate Authority)通过为用户 发放数字证书(Certificate)来证明用户公钥与用 户身份的对应关系。
验证者向用户提供一随机数;用户以其私钥KS对 随机数进行签名,将签名和自己的证书提交给验证方; 验证者验证证书的有效性,从证书中获得用户公钥 KP,以KP验证用户签名的随机数。
第四章 身份认证
4.1 认证的基本原理 4.2 认证协议 4.3 典型的认证应用
介绍三个概念: (1) 认证(Authentication):在做任何
动作之前必须要有方法来识别动作执行者的 真实身份。 (2) 授权(Authorization):指当用户 身份被确认合法后,赋予该用户进行文件和 数据等操作的权限。 (3) 审计(Auditing):每个人都该为自 己所做的操作负责,所以在做完事情之后都 要留下记录,以便核查责任。
2. 加强口令安全的措施: A、禁止使用缺省口令。 B、定期更换口令。 C、保持口令历史记录,使用户不能循环使用 旧口令。 D、用口令破解程序测试口令。
3. 口令攻击的种类
计算资源依靠口令的方式来保护的脆弱性:
网络数据流窃听(Sniffer):
由于认证信息要通过网络传递,并且很多认证 系统的口令是未经加密的明文,攻击者通过窃 听网络数据,就很容易分辨出某种特定系统的 认证数据,并提取出用户名和口令。
穷举尝试(Brute Force): 这是一种特殊的字典攻击, 它使用字符串的全集作为字典。如果用户的密码较短, 很容易被穷举出来,因而很多系统都建议用户使用长口 令。
4.2 认证协议
4.1.2 基于口令的认证
安全与不安全的口令
UNIX系统口令密码都是用8位(新的是13位)DES算法 进行加密的,即有效密码只有前8位,所以一味靠密 码的长度是不可以的。安全的口令要求:
1) 位数>6位。
2) 大小写字母混合。
3)字母与数字混合。
4) 口令有字母、数字以外的符号。
1. 不安全的口令则有如下几种情况:
1.挑战/响应认证
变动因子是由服务器产生的随机数字。认证过程如下:
1)认证请求。客户机首先向服务器发出登录请求,服务器提示 用户输入用户ID和PIN 。
2)挑战。用户提供ID给服务器,然后服务器提供一个随机串X (Challenge)给插在客户端的智能卡作为验证算法的输入,服 务器则根据用户ID取出对应的密钥K后,利用发送给客户机的随 机串X,在服务器上用加密引擎进行运算,得到运算结果RS。
2、口令维护的成本较高。为保证安全性,口令应当经 常更换。另外为避免对口令的字典攻击,口令应当保证 一定的长度,并且尽量采用随机的字符。但缺点是难于 记忆。
3、口令容易在输入的时候被攻击者偷窥,而且用户无 法及时发现。
简单和安全是互相矛盾的两个因素。
2. 数字证书
这是一种检验用户身份的电子文件,也是企业现 在可以使用的一种工具。这种证书可以授权购买, 提供更强的访问控制,并具有很高的安全性和可 靠性。
4.1 认证的基本原理
4.1.1 身份认证概述 在现实生活中,我们个人的身份主要是通过各种
证件来确认的,比如:身份证、户口本等。 认证是对网络中的主体进行验证的过程,用户必
须提供他是谁的证明,他是某个雇员,某个组 织的代理、某个软件过程(如交易过程)。 认证( authentication )是证明一个对象的身份 的过程。与决定把什么特权附加给该身份的授 权( authorization )不同。
1. 时间同步困难,可能造成必须重新输入新密码。软 体认证卡采用PC的时刻,很可能随时被修改。常常 需要与服务器重新对时。
2.不如Challenge/Response认证更安全
3)事件同步
事件同步认证卡依据认证卡上的私有密钥产生 一序列的动态密码,如果使用者意外多产生了几 组密码造成不同步的状态,服务器会自动重新同 步到目前使用的密码,一旦一个密码被使用过后, 在密码序列中所有这个密码之前的密码都会失效。
2使用时间戳 (A接受一个新消息仅当该消息包含一个 A认为 是足够接近 A所知道的时间戳 );
3询问 /应答方式 (A期望从 B获得一个新消息 ,则先发给 B 一个临时值 ,并要求后续从 B收到的消息包含正确的这个临 时值 )
字典攻击:由于多数用户习惯使用有意义的单词或数字 作为密码,某些攻击者会使用字典中的单词来尝试用户 的密码。所以大多数系统都建议用户在口令中加入特殊 字符,以增加口令的安全性。
负责进行使用者身份认证的工作,服务器上存放使用者 的私有密钥、认证方式及其他使用者认证的信息。
认 证 系 统 用 户 端 软 件 (Authentication Client Software)
认证系统用户端通常都是需要进行登陆(login)的设备或 系统,在这些设备及系统中必须具备可以与认证服务器 协同运作的认证协定。
➢ 1996年10月推出了Java Card API规范,目前版本 为2.1.1,1997年4月27日,Java Card论坛正式宣布 成立。Java Card论坛的成立目的是完善Java Card API规范,使之最终成为多应用智能卡的首选编程语言 。 ➢Java Card就是能够运行Java程序的智能卡。 ➢ Java Card在出厂时就在ROM中烧入了操作系统、 Java Card虚拟机、 API类库和可选的applets,随后 ,初始化和个人化向EEPROM 中写入数据。