北理工-戴林-02密码学概论-2_第1页
北理工-戴林-02密码学概论-2_第2页
北理工-戴林-02密码学概论-2_第3页
北理工-戴林-02密码学概论-2_第4页
北理工-戴林-02密码学概论-2_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1第第2 2章章密码学概论密码学概论2 2.1 2.1 密码学的基本概念密码学的基本概念 2.2 2.2 古典密码体制古典密码体制 2.3 2.3 对称密码体制对称密码体制 2.4 2.4 非对称密码体制非对称密码体制 2.5 2.5 密钥管理密钥管理 2.6 2.6 软件与硬件加密技术软件与硬件加密技术 本章主要内容:本章主要内容:3 2.52.5 密钥管理密钥管理v 密钥是加密解密算法中的可变部分,采用密码技术密钥是加密解密算法中的可变部分,采用密码技术保护的系统,其安全性在很大程度上取决于对密钥保护的系统,其安全性在很大程度上取决于对密钥的保护,而不仅仅是对算法和硬件本身的保护。的保护,

2、而不仅仅是对算法和硬件本身的保护。v 因此,密钥的保密和密钥的安全管理在信息系统、因此,密钥的保密和密钥的安全管理在信息系统、通信系统等现代系统安全中是极其重要的。密钥管通信系统等现代系统安全中是极其重要的。密钥管理包含了密钥自理包含了密钥自产生到最终销毁产生到最终销毁的整个过程中的各的整个过程中的各种安全问题种安全问题。v 如:如:密钥的产生、存储、装入、分配、保护、遗忘、密钥的产生、存储、装入、分配、保护、遗忘、丢失和销毁等。丢失和销毁等。 4密钥管理的几个关键步骤:密钥管理的几个关键步骤: 密钥生成密钥生成 密钥算法,公式,实现。密钥算法,公式,实现。 两方或多方提供共享的秘钥以便在以后

3、的安全通信两方或多方提供共享的秘钥以便在以后的安全通信中进行加密解密、消息认证或身份认证。中进行加密解密、消息认证或身份认证。 5 (2)(2) 密钥传送密钥传送点对点模式点对点模式 需要共享密钥的双方直接通信,传递密钥。这种传递可以需要共享密钥的双方直接通信,传递密钥。这种传递可以是面对面的,即采用人工分发的形势,也可以通过数字信封,是面对面的,即采用人工分发的形势,也可以通过数字信封,用一个双方预先共享的密钥来加密新密钥,然后通过用一个双方预先共享的密钥来加密新密钥,然后通过InternetInternet传送。传送。 密钥服务器模式密钥服务器模式 这种模式需要密钥服务器这种模式需要密钥服

4、务器(Key Server, KS)(Key Server, KS)的参与。的参与。这里这里又分为两种情况:又分为两种情况:其一,密钥服务器生成密钥,然后通过安全其一,密钥服务器生成密钥,然后通过安全信道分别传送给通信的各方;其二,密钥服务器只负责密钥的信道分别传送给通信的各方;其二,密钥服务器只负责密钥的传递,不负责密钥的生成。密钥的生成由通信各方中的一方生传递,不负责密钥的生成。密钥的生成由通信各方中的一方生成。成。6 (3) (3) 密钥协商密钥协商 现在用得最广泛的密钥协商协议是现在用得最广泛的密钥协商协议是DHDH密钥交换协密钥交换协议。议。 19761976年,年,DiffieDi

5、ffie和和HellmanHellman联合设计了一个密钥联合设计了一个密钥交换协议,我们称之为交换协议,我们称之为DHDH密钥交换协议。密钥交换协议。 通过这个协议,通信双方能够在不安全的通信通过这个协议,通信双方能够在不安全的通信信道上传递公开信息,继而各自计算出共享密钥。信道上传递公开信息,继而各自计算出共享密钥。 最大缺点是不能抵御中间人攻击(最大缺点是不能抵御中间人攻击(Middle-man Middle-man AttackAttack)。)。 7(4) (4) 秘密分割秘密分割 在很多场合下,为了避免权力过于集中,必须在很多场合下,为了避免权力过于集中,必须将秘密分割开来让多人掌

6、管。只有达到一定数量的将秘密分割开来让多人掌管。只有达到一定数量的人同时合作,才能恢复这个秘密。人同时合作,才能恢复这个秘密。 8(5) (5) 密钥控制密钥控制 密钥更换的频率对系统的安全性也有很大影响。频繁地密钥更换的频率对系统的安全性也有很大影响。频繁地更换密钥大大降低了攻击者成功的概率。即便一个攻击者获更换密钥大大降低了攻击者成功的概率。即便一个攻击者获得了某个密钥,他也只能解读很小量的密文。如果我们每次得了某个密钥,他也只能解读很小量的密文。如果我们每次加密都是用不同的密钥(一次一密),那么攻击者获得的密加密都是用不同的密钥(一次一密),那么攻击者获得的密钥更是没有使用价值。钥更是没

7、有使用价值。 但是,如果密钥更新太频繁,又将加大用户间信息交换但是,如果密钥更新太频繁,又将加大用户间信息交换的延迟,也会造成网络负担。因此,我们要综合考虑这些因的延迟,也会造成网络负担。因此,我们要综合考虑这些因素来决定密钥更新的频率。两次密钥更新之间的时间间隔就素来决定密钥更新的频率。两次密钥更新之间的时间间隔就称为密钥生存周期。称为密钥生存周期。9v严格的说,满足以下严格的说,满足以下三个条件三个条件的密码算法才是真正的的密码算法才是真正的一次一密:一次一密: 密钥是随机产生的,并且必须是真随机数,而不密钥是随机产生的,并且必须是真随机数,而不是伪随机数;密钥不能重复使用;密钥的有效长度

8、不是伪随机数;密钥不能重复使用;密钥的有效长度不小于密文的长度。小于密文的长度。 一次一密是最安全的加密算法一次一密是最安全的加密算法,双方一旦安全地,双方一旦安全地共享了密钥,他们之间交换信息的过程就是绝对安全共享了密钥,他们之间交换信息的过程就是绝对安全的。这种算法在一些要求高度机密的场合下使用。的。这种算法在一些要求高度机密的场合下使用。10v密钥通常由密钥服务器来控制,密钥服务器负责密密钥通常由密钥服务器来控制,密钥服务器负责密钥的生成和安全分发等工作。但如果网络中用户数钥的生成和安全分发等工作。但如果网络中用户数目非常多而且分布的地域非常复杂,那么一个密钥目非常多而且分布的地域非常复

9、杂,那么一个密钥服务器就无法承担为所有用户分配密钥的重任。其服务器就无法承担为所有用户分配密钥的重任。其中的一个解决办法是使用多个密钥服务器的分层结中的一个解决办法是使用多个密钥服务器的分层结构。构。 11(6) (6) 密钥托管密钥托管 密钥托管也称为托管加密,其目的是保证对个人没密钥托管也称为托管加密,其目的是保证对个人没有绝对的隐私和绝对不可跟踪的匿名性,即在强加密中有绝对的隐私和绝对不可跟踪的匿名性,即在强加密中结合对突发事件的解密能力。结合对突发事件的解密能力。 其实现手段是把已加密的数据和数据恢复密钥联系其实现手段是把已加密的数据和数据恢复密钥联系起来,数据恢复密钥不必是直接解密的

10、密钥,但由它可起来,数据恢复密钥不必是直接解密的密钥,但由它可得解密密钥。数据恢复密钥由所信任的委托人持有,委得解密密钥。数据恢复密钥由所信任的委托人持有,委托人可以是政府机构、法院或有契约的私人组织。一个托人可以是政府机构、法院或有契约的私人组织。一个密钥可能是在数个这样的委托人中分拆。调查机构或情密钥可能是在数个这样的委托人中分拆。调查机构或情报机构通过适当的程序,如获得法院证书,然后再从委报机构通过适当的程序,如获得法院证书,然后再从委托人处获得数据恢复密钥。托人处获得数据恢复密钥。12(7) (7) 密钥管理基础设施密钥管理基础设施 美国国家安全系统委员会于美国国家安全系统委员会于19

11、971997年着手建立一年着手建立一个完善的密钥管理体制,包括公钥基础设施个完善的密钥管理体制,包括公钥基础设施PKIPKI、证书管理基础设施证书管理基础设施CMI(Certificate Management CMI(Certificate Management Infrastructure)Infrastructure)和密钥管理基础设施和密钥管理基础设施KMI(Key KMI(Key Management Infrastructure)Management Infrastructure)。 PKIPKI的功能包括:密钥生成、导出、注册、证书的功能包括:密钥生成、导出、注册、证书建立、证书

12、安装、密钥和证书的存储和分配、证书建立、证书安装、密钥和证书的存储和分配、证书状态的维护、注册注销、密钥档案、密钥销毁以及状态的维护、注册注销、密钥档案、密钥销毁以及审计功能等。审计功能等。132.62.6 软件与软件与硬件加密技术硬件加密技术1 1 软软件加密件加密缺点:速度慢、造价高、安全性差缺点:速度慢、造价高、安全性差优点:使用灵活、修改方便、可移植性好。优点:使用灵活、修改方便、可移植性好。采用软件加密时,密钥管理的手段必须可靠,密钥采用软件加密时,密钥管理的手段必须可靠,密钥和明文应在加密后删除。和明文应在加密后删除。 14 用纯软件方法来实现的加密,有密码方式、软件用纯软件方法来

13、实现的加密,有密码方式、软件自校验方式和钥匙盘方式等。自校验方式和钥匙盘方式等。 随着软加密的发展,解密软件也开始出现。一些随着软加密的发展,解密软件也开始出现。一些高手可利用高手可利用DEBUGDEBUG、SOFTSOFTICEICE等工具来分析软加密的等工具来分析软加密的工作原理,而编写相应的解密程序。市场上有许多采工作原理,而编写相应的解密程序。市场上有许多采用软加密的软件被这些工具解密。用软加密的软件被这些工具解密。 针对这些,软加密也做出相应的改进。一是提高针对这些,软加密也做出相应的改进。一是提高加密强度,采用内部调用函数,外部包壳,并会自动加密强度,采用内部调用函数,外部包壳,并

14、会自动排斥一些常用的解密工具;二是短时间内即做一次软排斥一些常用的解密工具;二是短时间内即做一次软件升级,使解密者难于应付。件升级,使解密者难于应付。 15(1) (1) 密码方式密码方式 所谓密码方式就是在软件执行过程中在一些重要的所谓密码方式就是在软件执行过程中在一些重要的地方询问用户密码,用户依照密码表输入密码,程序才地方询问用户密码,用户依照密码表输入密码,程序才能继续执行。能继续执行。 优点:优点:实现简单,投入成本少。实现简单,投入成本少。 缺点:缺点:破坏了正常的人机对话,易让用户感到厌烦;破坏了正常的人机对话,易让用户感到厌烦;密码相对固定,非法用户只需复制密码表,就可以非法密

15、码相对固定,非法用户只需复制密码表,就可以非法使用该软件;加密点比较固定,软件容易被解密。使用该软件;加密点比较固定,软件容易被解密。 密码方式主要用于价格较低的软件,如早期的一些密码方式主要用于价格较低的软件,如早期的一些游戏软件就采取了此种方式。游戏软件就采取了此种方式。 16(2) (2) 软件自校验方式软件自校验方式 是开发商将软件装入用户硬盘,安装程序自动是开发商将软件装入用户硬盘,安装程序自动记录计算机硬件的奇偶校验和、软件安装的磁道位记录计算机硬件的奇偶校验和、软件安装的磁道位置等信息,或者在硬盘的特殊磁道、置等信息,或者在硬盘的特殊磁道、CMOSCMOS中做一定中做一定标记,然

16、后自动改写被安装程序。软件安装完之后,标记,然后自动改写被安装程序。软件安装完之后,执行时就会校验这些安装时记录的信息或标记。如执行时就会校验这些安装时记录的信息或标记。如果软件被用户拷贝到另外的计算机上,由于运行环果软件被用户拷贝到另外的计算机上,由于运行环境已改变,软件不能正常执行。境已改变,软件不能正常执行。 17 使用此种加密方式用户在正常使用软件时感觉不到使用此种加密方式用户在正常使用软件时感觉不到加密的存在,加密相对也比较可靠,为许多软件开发商加密的存在,加密相对也比较可靠,为许多软件开发商采用。有的软件商索性将安装盘用硬件加密后销售,用采用。有的软件商索性将安装盘用硬件加密后销售

17、,用户购买安装盘后可自己将软件安装到多台计算机上,为户购买安装盘后可自己将软件安装到多台计算机上,为用户提供了很大方便。用户提供了很大方便。 这种加密方式也存在一定缺陷,当用户增减或更换这种加密方式也存在一定缺陷,当用户增减或更换计算机硬件,压缩硬盘,或出现计算机硬件,压缩硬盘,或出现CMOSCMOS掉电等情况都会造掉电等情况都会造成软件不能正常执行,需重新安装软件。成软件不能正常执行,需重新安装软件。 18(3) (3) 钥匙盘方式钥匙盘方式 在软盘的特殊磁道写入一定信息,软件在运行时要校验此在软盘的特殊磁道写入一定信息,软件在运行时要校验此信息。此软盘类似一把钥匙,称为钥匙盘。信息。此软盘

18、类似一把钥匙,称为钥匙盘。 采用此种加密方式的软加密工具有很多,较先进的软加密采用此种加密方式的软加密工具有很多,较先进的软加密工具还提供了接口函数,如工具还提供了接口函数,如BITLOKBITLOK。软件商只需一次性投资购。软件商只需一次性投资购买一套加密工具,就可自己制作多张钥匙盘。此种方式加密简买一套加密工具,就可自己制作多张钥匙盘。此种方式加密简便,成本低,加密可靠,使用此种加密方式的软件也比较多,便,成本低,加密可靠,使用此种加密方式的软件也比较多,如如KILLKILL、KV300KV300等。等。 但存在一些缺陷:用户执行软件时必须在软盘驱动器中插但存在一些缺陷:用户执行软件时必须

19、在软盘驱动器中插入软盘,为用户在软盘中存取数据造成不便。因软盘是消耗品,入软盘,为用户在软盘中存取数据造成不便。因软盘是消耗品,易因折伤、划伤、磁化、冷热等原因造成损坏。软盘上的软件易因折伤、划伤、磁化、冷热等原因造成损坏。软盘上的软件和数据用户可以备份,而钥匙盘不能备份,所以用户经常会因和数据用户可以备份,而钥匙盘不能备份,所以用户经常会因钥匙盘损坏等原因造成软件不能正常使用。钥匙盘损坏等原因造成软件不能正常使用。 19(4) (4) 序列号加密序列号加密 现今很多现今很多Shareware(Shareware(共享软件共享软件) )大多采用这种大多采用这种加密方式,用户在软件的试用期是不需

20、要交费的,加密方式,用户在软件的试用期是不需要交费的,一旦试用期满还希望继续使用这个软件,就必须一旦试用期满还希望继续使用这个软件,就必须到软件公司进行注册,然后软件公司会根据你提到软件公司进行注册,然后软件公司会根据你提交的信息交的信息( (一般是用户的名字一般是用户的名字) )来生成一个序列号,来生成一个序列号,当你收到这个序列号以后,并在软件运行的时候当你收到这个序列号以后,并在软件运行的时候输入进去,软件会验证你的名字与序列号之间的输入进去,软件会验证你的名字与序列号之间的关系是否正确,如果正确说明你已经购买了这个关系是否正确,如果正确说明你已经购买了这个软件,也就没有日期的限制了。软

21、件,也就没有日期的限制了。 20(5) (5) 许可证加密许可证加密 序列号加密的一个变种。从网上下载或购买序列号加密的一个变种。从网上下载或购买的软件并不能直接使用,软件在安装时或运行时的软件并不能直接使用,软件在安装时或运行时会对你的计算机进行一番检测,并根据检测结果会对你的计算机进行一番检测,并根据检测结果生成一个特定指纹,这个指纹是一个数据文件,生成一个特定指纹,这个指纹是一个数据文件,把这个指纹数据通过把这个指纹数据通过InternetInternet、E-mailE-mail、电话、电话、传真等方式发送到开发商那里,开发商再根据这传真等方式发送到开发商那里,开发商再根据这个指纹给你

22、一个注册码或注册文件,你得到这个个指纹给你一个注册码或注册文件,你得到这个注册码或注册文件并按软件要求的步骤在你的计注册码或注册文件并按软件要求的步骤在你的计算机上完成注册后方能使用。算机上完成注册后方能使用。 212 2 硬件加密硬件加密(1) (1) 硬件加密的概念硬件加密的概念 硬件加密则是硬件加密则是采用硬件(电路、器件、部件等)采用硬件(电路、器件、部件等)和软件结合来和软件结合来实现的加密,实现的加密,对硬件本身和软件采取的加密、隐藏、防护技术,防对硬件本身和软件采取的加密、隐藏、防护技术,防止被保护对象被攻击者破析、破译。止被保护对象被攻击者破析、破译。 硬件加解密是商业或军事上

23、的主流,优点:硬件加解密是商业或军事上的主流,优点:(1 1)速度问题:针对位的操作、不占用计算机主处理器。)速度问题:针对位的操作、不占用计算机主处理器。(2 2)安全性:可进行物理保护。)安全性:可进行物理保护。(3 3)易于安装:不需使用计算机的电话、传真、数据线路;计算)易于安装:不需使用计算机的电话、传真、数据线路;计算 机环境下,使用硬件加密可对用户透明,而软件实现,需要机环境下,使用硬件加密可对用户透明,而软件实现,需要在操作系统深层安装,不容易实现。在操作系统深层安装,不容易实现。22 硬加密是目前广泛采用的加密手段,加密硬加密是目前广泛采用的加密手段,加密后软件执行时需访问相

24、应的硬件,如插在计算后软件执行时需访问相应的硬件,如插在计算机扩展槽上的卡或插在计算机并口上的机扩展槽上的卡或插在计算机并口上的“狗狗” 。 采用硬加密的软件执行时需和相应的硬件采用硬加密的软件执行时需和相应的硬件中交换数据,若没有相应的硬件,加密后的软中交换数据,若没有相应的硬件,加密后的软件将无法执行。件将无法执行。23(2) (2) 硬件加密特点硬件加密特点: : 硬件加密较之软件加密具有其独到的特点。硬件加密较之软件加密具有其独到的特点。 安全性好,破译困难采用定制或半定制硬件芯片安全性好,破译困难采用定制或半定制硬件芯片将硬件密封,防止破译者了解硬件情况。将硬件密封,防止破译者了解硬

25、件情况。 由硬件完成加密解密和权限检查,防止破译者通由硬件完成加密解密和权限检查,防止破译者通过反汇编、反编译分析破译。过反汇编、反编译分析破译。 在硬件内设置自毁装置,一旦发现硬件被拆卸或在硬件内设置自毁装置,一旦发现硬件被拆卸或程序被跟踪,促使硬件自毁,使破译者不敢进行动态跟程序被跟踪,促使硬件自毁,使破译者不敢进行动态跟踪。踪。 硬件加密需要增加硬件,增加成本硬件加密需要增加硬件,增加成本。 24(3) (3) 硬件加密技术硬件加密技术 加密卡方式加密卡方式 插在计算机总线上的加密产品一般称为加密卡。加插在计算机总线上的加密产品一般称为加密卡。加密卡方式加密强度高,防跟踪措施完备。它的好

26、处是:密卡方式加密强度高,防跟踪措施完备。它的好处是:在软件的执行过程中可以随时访问加密卡,而不会对软在软件的执行过程中可以随时访问加密卡,而不会对软件运行的速度带来太多的影响,而且由于它是使用完全件运行的速度带来太多的影响,而且由于它是使用完全由卡的生产厂家制定的数据通讯协议与计算机总线交换由卡的生产厂家制定的数据通讯协议与计算机总线交换数据的,没有统一的标准接口,使得软件解密者无从下数据的,没有统一的标准接口,使得软件解密者无从下手。像北大方正早期的印刷软件都是采用这种方法。手。像北大方正早期的印刷软件都是采用这种方法。25 但软件换一台计算机使用时,必须要打开两台计算但软件换一台计算机使

27、用时,必须要打开两台计算机的机箱,将卡换插,用户使用不太方便;而且加密卡机的机箱,将卡换插,用户使用不太方便;而且加密卡成本也较高,所以一般为做系统集成的开发商所使用。成本也较高,所以一般为做系统集成的开发商所使用。卡加密卡加密9090年代初卡加密技术开始风行,但它需要占用扩年代初卡加密技术开始风行,但它需要占用扩展槽,一般还需要专门的人员来安装,也比较容易同现展槽,一般还需要专门的人员来安装,也比较容易同现有的硬件发生冲突。有的硬件发生冲突。 26 软件狗软件狗 软件狗,是目前流行的一种加密工具。它是插在计软件狗,是目前流行的一种加密工具。它是插在计算机并行口上的软硬件结合的软件加密产品。算机并行口上的软硬件结合的软件加密产品。 软件狗一般都有几十或几百字节的非易失性存储空软件狗一般都有几十或几百字节的非易失性存储空间可供读写,并且提供了各种语言的接口(间可供读写,并且提供了各种语言的接口(OBJOBJ)及外)及外壳的加密方式供开发商使用。壳的加密方式供开发商使用。 它具有加密可靠,使用方便等优点,成本相对加密它具有加密可靠,使用方便等优点,成本相对加密卡来说要低很多。卡来说要低很多。 27 由于现在使用软件狗加密的软件越来越多,针对软件狗的由于现在使用软件狗加密的软件越来越多,针对软件狗的解密产品也在发展。解密产品也在

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论