计算机安全技术
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
密码技术
计算机安全技术
7.2 传统密码学
倘若已知密钥d,如何恢复明文信息呢? 我们假设密文中的字符个数为N,密钥(栅栏深度)d 表示为d个字符,两个节顶之间的字符个数叫节长 i,最后 一个节所含的字符数称为节尾长 r ,栅栏的顶部结点的个 数称为节顶数t,有: t = [N/i] N = (t-1)*i+r 通过上述公式,我们能够计算出必要的参数将密文恢 复为明文信息。
密码技术
计算机安全技术
ቤተ መጻሕፍቲ ባይዱ
7.3 DES加密算法
(4)选择函数 ( S盒) 每个S盒的输入是6比特,输出是4比特。S盒图中备有 四种代替表,其行编号为0,1,2,3,根据输人的6比特 中的首尾两个比特来选择,然后按照所选定的代替表将输 入的6比特中的中间4比特进行代替。 举例说明,当向S1输入一个二进制信息001011时,因 开头和末尾合起来为01,即十进制的1,所以选中行编号 为l的代替表,又中间4位为0101,即十进制数的5,它表 示选择第5列。即输出状态为2,即0010,这4比特即为经 过代替之后的输出。
密码技术
计算机安全技术
7.3 DES加密算法
7.3.4 DES算法作用分析 DES 算法自 1975 年 3 月公开发表,至 1977 年才被正式 定为加密标准。这一期间,设计者曾要求全世界向它攻击, 围绕着DES算法在美国也有过一番的讨论。 斯坦福大学的研究小组认为尽管 DES 算法的 S 盒的设 计不是线性的,然而也不是随机的,可能还存在某些弱点。 但尽管如此,目前还没有找到一种有效的攻击方法。 赫尔曼和迪菲提出了对密钥进行穷举搜索,设计一种 专用机的设想。建议增长密钥的长度。 DES标准加密算法得到了广泛的认可和应用 。 国际标准化组织(ISO)已放弃将DES算法作为国际标准, 并宣布今后不再将任何密码算法做为标准。
密码技术
计算机安全技术
7.1 引 论
7.1.2密码的功能 密码技术应用于:信息的保密、应用于身份的确认、 数据的完整性等诸多领域。 1.通信中的数据保护 密码技术应用于通信线路上信息的保护。一方面,防 止传输中的信息被非法窃听导致失密,另一方面,防止信 息的内容被恶意攻击者非法地篡改,并且在发生此类事件 后能迅速发现。 2.存储信息的保护 信息用密码技术加密处理后进行存储,保证只有掌握 解密密钥的合法用户才能够存取数据,得到正确的明文, 在许多用户系统中,保护个人秘密、防止文件被破坏。
密码技术
计算机安全技术
7.2 传统密码学
对一些古典密码系统进行介绍。增加感性认识,为进 一步介绍现代密码技术打下基础。 7.2.1换位法 所谓换位法又称为置换法。它是将明文信息中的字符 重新进行排列以达到加密目的的方法。 1.栅栏加密法 所谓栅栏加密法是将明文按照一定的栅栏深度 d ,顺 序排成栅栏型。然后自左到右自上而下重新组合成新的信 息串作为对应的密文。 很显然,对于同样的明文,由于栅栏深度 d 的不同, 可以组成不同的密文。因此,栅栏的深度即为密钥。
密码技术
计算机安全技术
7.1 引 论
7.1.4密码分析 密码分析学,在密码学中的地位和作用同样是相当重 要的,它是密码学发展的主要动力之一,密码分析的结果 是检验加密算法的有效性和优劣的尺度。 密码分析人员一般需要凭借经验,通过统计分析等方 法,而不是通过逻辑导出。 密码分析学通常采用两种方法:演绎法和归纳法。 近年来,使用计算机进行密码分析从很大程序上提高 了破译的能力。
密码技术
计算机安全技术
7.2 传统密码学
7.2.2替代法 替代法是利用替换字符或字符块来进行加密的算法。 由于它是许多密码体制的基础。 l.凯撒(Caesar)代替 凯撒密码是每一字母向前推移K位。例如,K = 5便有 如下的明文与密文的对应关系。 明文:a b c d e 密 文:F G H I J 若令26个字母分别对应于0~25,如下: a b c …… x y z 0 1 2 ……23 24 25 则凯撒密码加密交换为 C = m + k mod 26 其中m是明文,C为对应的密文序列。k为加密用的移 位数,也称为密钥。mod为模。
密码技术
计算机安全技术
7.1 引 论
明文:加密前的原始信息。 密文:加密后的信息。 加密:将明文进行数据变换形成密文的过程。 解密:将密文进行数据变换恢复成明文的过程。 密钥:控制加密和解密运算的符号序列。 密码系统要求:使用方便,而且系统的保密不依赖于 对加密算法和脱密算法的保密,而只依赖于密钥的保密。 因此,当密文和对应的明文被非法截取后,仍不容易确定 解密变换。其次,从截取的密文中极难确定其对应的明文。
密码技术
计算机安全技术
7.3 DES加密算法
IBM公司研制并提出的方案。1977年作为数据加密标 准(DES)公开发表。成为美国的标准加密方式。 7.3.2 DES算法原理 DES算法组成:密钥生成、初始变换、16次循环选代 和逆初始变换。算法的输入和输出为64bit码块,密钥为64 bit(其中有8bit奇偶校验,56bit密钥)。 l.加密处理 (1) 初始置换IP (2) 初始逆置换IP -1,即最后换位。
密码技术
计算机安全技术
7.2 传统密码学
2.矩阵换位法 在矩阵换位法中,采用将明文按行依次组成m*n的矩 阵,给定一个置换f,f(j1,j2)中j1表示明文中的列号,j2 表示置换后对应的列号。对原矩阵进行变换。依次排列得 到对应的密文。 在这种加密方法中,只要给定了矩阵的行数m和列数n 和置换f,那么就很容易对相应的密文进行解密了。
密码技术
计算机安全技术
7.1 引 论
密码学主要包含两部内容,即编码学和密码分析学。 编码学是通过编码技术改变被保护信息的形式,使得 编码后的信息除了指定接收者外其他人无法理解的一门学 问,即加密算法的设计和研究。 密码分析,是研究如何攻破一个密码系统,恢复被隐 藏的信息之本来面目,也就是密码破译技术。 这两部分内容是矛盾的两方面。 7.1.1密码系统 所谓密码系统应包含 5 个要素 :明文信息空间、密文 信息空间、密钥空间、加密变换E和解密变换D。
密码技术
计算机安全技术
7.4 公开密钥系统
传统密钥密码体制是对称密码体制。 公开密钥密码体制是非对称密码体制。 对于非对称密码体制,设明文为 X,公开的加密密钥 为Ke,秘密的解密密钥为 Kd,加密算法为E(Ke,X),解密 算法为 D(Kd,Y) 其中 Y 为明文用密钥 Ke 加密后所得的密文。 则公开密钥密码体制的算法应满足条件: 1. 给出 Ke 时, E(Ke,X) 的计算简单;同样,给出 Kd 时 D(Kd,Y)的计算也应简单。 2.在Kd未知时,即使知道Ke算法E和D以及密文Y的情 况下,若要确定明文X,其计算也是不可行的。 3.对于X,E(Ke,X),有D(Kd,E(Ke,X)) = X; 4.对于X,D(Kd,X),有E(Ke,D(Kd,X))= X
密码技术
计算机安全技术
7.2 传统密码学
另外,还有一种仿射变换。其形式如下。若选取 k1、 k2两个参数,其中 k1、k2与 26互素,令 C = k1*m+k2 mod 26 当k1 = 1时便是凯撒变换。 2.维吉尼亚(Vigenere)密码 Vigenere 是法国的密码专家,是多表密码的典型代表。 设密钥K = k1k2…kn, 明文M = mlm2…mn Ek (M) = C1C2…Cn 其中Ci = (mi+ki) mod 26
密码技术
计算机安全技术
7.2 传统密码学
3.定长置换法 在给定正整数d的情况下,正整数集合Zd =(1,2,3,…,d), 假设f(i) 是Zd上的一个置换函数。 对于明文为P = P1P2…Pd…P2d… 密文为 C = E(P)= P(f(1))P(f(2))…P(f(d))P(f(d)+1)P(f(d)+2)… 举例如下: 设 d = 3,Zd =(1,2,3) f(i) = 2,3,1 若明文P = What do you do? 由于d = 3,所以 P = wha tdo you do? 于是可得密文 C = E(p) = haw dot ouy o?d
密码技术
计算机安全技术
7.4 公开密钥系统
单向陷门函数来实现非对称密码体制算法。 单向陷门函数就是在单向函数中设置一个陷门。掌握 了它,便可实现其逆函数,否则极其困难。 单向陷门函数表示:给出 f的定义域中的任意元素 x, 则f(x)容易计算。当给出f的值域中的任意元素y = f(x),若 要求出x = f -1(y)时,只有知道设计f时的某种信息,计算 容易,否则难以计算。
密码技术
计算机安全技术
7.3 DES加密算法
现代数据通信中的密码体制,通常以明显的方式公开 加密算法,而只对加、解密密钥进行严格的保密。 7.3.1 DES加密标准的提出 美国商务部标准局为了能在政府部门进行信息处理的 同时保护电子计算机信息的安全,自1971年开始研究密码 的标准化,并于1973年开始征集满足下列条件的密码。 即首先密码的规定严谨明确, 其次,能够通过破译密钥所需的时间与计算量等表示 它的安全性。 其三,安全性不依赖于算法的保密性,而只依赖于密 钥的保密性。
密码技术
计算机安全技术
7.1 引 论
7.1.3密码的分类 一般情况下,密码方法都是一些基本方法的组合。它 们通常分为三类:移位法、代替法、代数法 1 、移位法是将明文中的字母重新排列,字母本身并 不改变,但相对的位置发生了一定的变化。 2 、代替法是将明文中的字母用其它字母进行代替, 而原来的位置并不产生变化。 3 、代数法首先将明文转换成数,或直接将明文信息 用二进制数表示作为运算对象,然后再进行特定的运算产 生密文。
密码技术
计算机安全技术
7.1 引 论
3.通信双方的身份验证 密码技术不仅广泛应用于防止传输中的信息和记录存 储的信息不被攻击者非法窃听、浏览和篡改,同时,也可 以用于识别通信双方的真实性。 这种对存取数据和发来电文的对方的合法性进行确证 的方法叫“验证”。 4.非否认性 密码技术还应用于不可否认性服务。它包含对源和目 的双方的证明,通常的情况下,不可否认服务是一种数字 签名服务。 除此之外,密码技术还广泛地应用于计算机网络安全 领域的其它方面。
密码技术
计算机安全技术
7.3 DES加密算法
经过第 n层加密处理后的左右32比特分别为Ln和Rn, 则每次迭代算法为: Ln = R(n-1) Rn = L(n+1)⊕ f(R(n-1),Kn) 上式中的⊕表示模2加,即逻辑异或运算。Kn为该层 输入的密钥,L(n-1)和R(n-l)分别为第n-1层的输出,f(R(n1),Kn)为以R(n-1)和Kn为变量的函数。 (3) f(R(n-1),Kn)情况 其DES算法中,其它部分都是线性的,只有这个f(R,K) 变换是非线性的。所以可以产生强度很高的密码。
密码技术
计算机安全技术
7.3 DES加密算法
2.子密钥生成 子密钥生成是DES算法的一个重要组成部分,前面在 加密处理部分的16层加密处理每一层都需要一个子密钥Ki, 每个子密钥为48比特,所以16层运算共需要16×48=768 比特的密钥。子密钥生成如图7-9 3、解密处理 从图7-7中我们可以清楚地看到 Ri和Li是如何在密钥K 的作用下进行交换的。在加密处理中下列关系是成立的: 加密: Lj=Rj-1 ; Rj=Lj-1⊕f(Rj-1,Kj) 由此可推出解密: Rj-1=Lj ; Lj-1=Rj⊕f(Rj-1,Kj) 进一步可推出 Lj-1=Rj⊕f(Lj,Kj) 注意:,在加密和解密过程中第16层处理结束时L和R 要进行交换。
密码技术
计算机安全技术
7.2 传统密码学
这种加密方法以明文字母在Vigenere方阵中的列与相 应的密钥字母在Vigenere方阵中的行的交点处的字母替换 该明文字母。如果明文比密钥字长,那么可以将明文分成 与密钥字等长的段(最后一段的长若小于密钥字,则用补 白的方法添加指定字母补齐),然后重复使用密钥。 明文;how are you 密钥:ENDLANDEN 密文:LBCLRRBSH 下面是实现Vigenere加密算法的程序 如P206