查看: 1953|回复: 25

密码学基础

[复制链接]
发表于 2012-4-26 07:48:39 | 显示全部楼层 |阅读模式
本文简要地介绍了现代密码学的一些基础理论,供参考。
  1 加密技术概述
  一个密码系统的安全性只在于密钥的保密性,而不在算法的保密性。
  对纯数据的加密的确是这样。对于你不愿意让他看到这些数据(数据的明文)的人,用可靠的加密算法,只要破解者不知道被加密数据的密码,他就不可解读这些数据。
  但是,软件的加密不同于数据的加密,它只能是“隐藏”。不管你愿意不愿意让他(合法用户,或 Cracker)看见这些数据(软件的明文),软件最终总要在机器上运行,对机器,它就必须是明文。既然机器可以“看见”这些明文,那么 Cracker,通过一些技术,也可以看到这些明文。
  于是,从理论上,任何软件加密技术都可以破解。只是破解的难度不同而已。有的要让最高明的 Cracker 忙上几个月,有的可能不费吹灰之力,就被破解了。
  所以,反盗版的任务(技术上的反盗版,而非行政上的反盗版)就是增加 Cracker 的破解难度。让他们花费在破解软件上的成本,比他破解这个软件的获利还要高。这样 Cracker 的破解变得毫无意义——谁会花比正版软件更多的钱去买盗版软件 ?
  2 密码学简介
  2.1 概念
  (1) 发送者和接收者
  假设发送者想发送消息给接收者,且想安全地发送信息:她想确信偷听者不能阅读发送的消息。
  (2) 消息和加密
  消息被称为明文。用某种方法伪装消息以隐藏它的内容的过程称为加密,加了密的消息称为密文,而把密文转变为明文的过程称为解密。
  明文用M(消息)或P(明文)表示,它可能是比特流(文本文件、位图、数字化的语音流或数字化的视频图像)。至于涉及到计算机,P是简单的二进制数据。明文可被传送或存储,无论在哪种情况,M指待加密的消息。
  密文用C表示,它也是二进制数据,有时和M一样大,有时稍大(通过压缩和加密的结合,C有可能比P小些。然而,单单加密通常达不到这一点)。加密函数E作用于M得到密文C,用数学表示为:
  E(M)=C.
  相反地,解密函数D作用于C产生M
  D(C)=M.
  先加密后再解密消息,原始的明文将恢复出来,下面的等式必须成立:
  D(E(M))=M
  (3) 鉴别、完整性和抗抵赖
  除了提供机密性外,密码学通常有其它的作用:.
  (a) 鉴别
  消息的接收者应该能够确认消息的来源;入侵者不可能伪装成他人。
  (b) 完整性检验
  消息的接收者应该能够验证在传送过程中消息没有被修改;入侵者不可能用假消息代替合法消息。
  (c) 抗抵赖
  发送者事后不可能虚假地否认他发送的消息。
  (4) 算法和密钥
  密码算法也叫密码,是用于加密和解密的数学函数。(通常情况下,有两个相关的函数:一个用作加密,另一个用作解密)
  如果算法的保密性是基于保持算法的秘密,这种算法称为受限制的算法。受限制的算法具有历史意义,但按现在的标准,它们的保密性已远远不够。大的或经常变换的用户组织不能使用它们,因为每有一个用户离开这个组织,其它的用户就必须改换另外不同的算法。如果有人无意暴露了这个秘密,所有人都必须改变他们的算法。
  更糟的是,受限制的密码算法不可能进行质量控制或标准化。每个用户组织必须有他们自己的唯一算法。这样的组织不可能采用流行的硬件或软件产品。但窃听者却可以买到这些流行产品并学习算法,于是用户不得不自己编写算法并予以实现,如果这个组织中没有好的密码学家,那么他们就无法知道他们是否拥有安全的算法。
  尽管有这些主要缺陷,受限制的算法对低密级的应用来说还是很流行的,用户或者没有认识到或者不在乎他们系统中内在的问题。
  现代密码学用密钥解决了这个问题,密钥用K表示。K可以是很多数值里的任意值。密钥K的可能值的范围叫做密钥空间。加密和解密运算都使用这个密钥(即运算都依赖于密钥,并用K作为下标表示),这样,加/解密函数现在变成:
  EK(M)=C
  DK(C)=M.
  这些函数具有下面的特性:
  DK(EK(M))=M.
  有些算法使用不同的加密密钥和解密密钥,也就是说加密密钥K1与相应的解密密钥K2不同,在这种情况下:
  EK1(M)=C
  DK2(C)=M
  DK2 (EK1(M))=M
  所有这些算法的安全性都基于密钥的安全性;而不是基于算法的细节的安全性。这就意味着算法可以公开,也可以被分析,可以大量生产使用算法的产品,即使偷听者知道你的算法也没有关系;如果他不知道你使用的具体密钥,他就不可能阅读你的消息。
  密码系统由算法、以及所有可能的明文、密文和密钥组成的。
  基于密钥的算法通常有两类:对称算法和公开密钥算法。下面将分别介绍:

ak69 该用户已被删除
发表于 2012-4-26 11:24:13 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
14569 该用户已被删除
发表于 2012-4-26 18:30:40 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
发表于 2012-4-27 00:14:52 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
listyym210 该用户已被删除
发表于 2012-4-27 00:29:14 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
发表于 2012-4-27 11:04:11 | 显示全部楼层
做一个,做好了,请看  
发表于 2012-4-27 13:51:07 | 显示全部楼层
挤在北京,给首都添麻烦了……  
29158478 该用户已被删除
发表于 2012-4-28 02:40:27 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
332232 该用户已被删除
发表于 2012-4-28 05:05:15 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
f0rest 该用户已被删除
发表于 2012-4-28 14:01:32 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
高级模式
B Color Image Link Quote Code Smilies

本版积分规则