2.1 密码技术基础
公元前440年的古希腊战争中,为了安全传送军事情报,奴隶主剃光奴隶的头发,将情报写在奴隶的光头上,待头发长长后将奴隶送到另一个部落,再次剃光头发,原有的信息就显现出来,从而实现这两个部落之间的秘密通信。
随着时间的推移,密码技术紧跟科学技术前进的步伐,经历了手工阶段,机械阶段,发展到今天的高级阶段,即电子与计算机阶段。随着计算机网络的迅猛发展,计算机信息本身的保密问题显得越来越重要。加密技术成为计算机信息保护的最实用和最可靠的方法。
2.1.1 密码基本概念
计算机网络与分布式系统的安全主要涉及高速信道中传输的数据和系统中存储的数据的安全问题。这里的安全问题包含四个主要内容:一是数据的保密性,也即防止非法地获悉数据;二是数据的完整性,即防止非法地修改数据;三是数据来源的可鉴别性,即数据的接收者应该能够确认数据的来源,入侵者不可能伪装成发送者;四是抗抵赖性,即发送者事后不可能虚假地否认他发送的消息。
解决上述问题的基础是现代密码学。保密学研究的是改变消息和信号的形式以隐蔽和复现其含义的规律,而在保密学中着重研究消息的变形及其合法复现的学科称为密码学。密码学是研究密码分析和密码编制的一门科学,它涉及数学、物理、计算机科学、电子学、系统工程、语言学等学科内容。
现代密码学所采用的加密方法通常是用一定的数学计算来改变原始信息。用某种方法伪装消息并隐藏它的内容的方法称作加密(Encryption)。待加密的消息称作明文(Plaintext),所有明文的集合称为明文空间;被加密以后的消息称为密文(Ciphertext),所有密文的集合称为密文空间;而把密文转变成明文的过程称为解密(Decryption)。加密体制中的加密运算是由一个算法类组成,这些算法类的不同运算可用不同的参数表示,不同的参数分别代表不同的算法,称作密钥,密钥空间是所有密钥的集合。
任何一个密码系统都包含明文空间、密文空间、密钥空间和算法四部分。密码系统的两个基本单元是算法和密钥,其中算法是相对稳定的,视为常量,密钥则是不固定的,视为变量。密钥安全性是系统安全的关键,因此为了密码系统的安全,频繁更换密钥是必要的,在密钥分发和存储时应当特别小心。
发送方用加密密钥,通过加密设备或算法,将信息加密后发送出去。接收方在收到密文后,用解密密钥将密文解密,恢复为明文。如果传输中有人窃取,窃密者只能得到无法理解的密文,从而对信息起到保密作用。简单加密、解密过程如图2-1所示。
图2-1 简单加密、解密过程
密码体制一般是指密钥空间与相应的加密运算结构,同时还包括了明文和密文的结构特征。
2.1.2 密码技术的分类
密码是实现秘密通信的主要手段,是隐蔽语言、文字、图像的特殊符号。凡是用特殊符号按照通信双方约定的方法把电文的原型隐蔽起来,不为第三者所识别的通信方式称为密码通信。在计算机通信中,采用密码技术将信息隐蔽起来,再将隐蔽后的信息传输出去,使信息在传输过程中即使被窃取或截获,窃取者也不能了解信息的内容,从而保证信息传输的安全。
密码体制一般可分为传统密码和现代密码,传统密码体制包括换位密码、代替密码、转轮机密码等,现代密码体制又包括序列密码、分组密码、公钥密码、量子密码等。现代密码已经广泛应用于军事、商业经济、网络间的通信、电子商务、电子政务等领域。从不同的角度根据不同的标准,可以把密码分成若干类。
1.按应用技术或历史发展阶段划分
(1)手工密码。以手工完成加密作业,或者以简单器具辅助操作的密码,叫做手工密。码。第一次世界大战前的密码主要是这种作业形式。
(2)机械密码。以机械密码机或电动密码机来完成加解密作业的密码,叫做机械密码这种密码在第一次世界大战出现,到第二次世界大战中得到了普遍应用。
(3)电子机内乱密码。通过电子电路,以严格的程序进行逻辑运算,以少量制乱元素生产大量的加密乱数,因为其制乱是在加解密过程中完成的而不需预先制作,所以称为电子机内乱密码。从20世纪50年代末期出现到20世纪70年代广泛应用。
(4)计算机密码。是以计算机编程进行算法加密为特点,适用于计算机数据保护和网络通信等广泛用途的密码。从20世纪70年代出现到现在广泛应用。
2.按保密程度划分
(1)理论上保密的密码。不管获取多少密文和有多大的计算能力,对明文始终不能得到唯一解的密码,叫做理论上保密的密码,也叫理论不可破的密码。如一次一密的密码体制。
(2)实际上保密的密码。在理论上可破,但在现有客观条件下,无法通过计算来确定唯一解的密码,叫做实际上保密的密码。
(3)不保密的密码。在获取一定数量的密文后可以得到唯一解的密码,叫做不保密密码。如早期单表代替密码。
3.按密钥方式划分
(1)对称式密码。收发双方使用相同密钥的密码,叫做对称式密码。传统的密码都属此类,现代密码中的分组码和序列密码也属于这一类。
(2)非对称式密码。收发双方使用不同密钥的密码,叫做非对称式密码。如现代密码中的公开密钥密码就属此类。
4.按明文形态分
(1)模拟型密码。用以加密模拟信息,如对动态范围之内连续变化的语音信号加密的密码,叫做模拟式密码。
(2)数字型密码。用于加密数字信息,对两个离散电平构成0、1二进制关系的电报信息加密的密码,叫做数字型密码。
5.按编制原理划分
按编制原理,可对密码分为移位、代替和置换三种。古今中外的密码,不论其形态多么繁杂,变化多么巧妙,都是按照这三种基本原理编制出来的。移位、代替和置换这三种原理在密码编制和使用中相互结合,灵活应用。
密码学发展至今,产生了很多密码算法。有的算法已在学术刊物中披露,而更多的却作为军事、商业及贸易等秘密被严加保密。与电子商务密切相关的安全理论主要有以下三大类:
(1)分组密码。将明文按一定的位长分组,输出也是固定长度的密文,明文组和密钥组经过加密运算得到密文组,解密时密文组和密钥组经过解密运算还原成明文组。其优点是:密钥可以在一定时间内固定,不必每次变换,因此给密钥配发带来了方便。但是,由于分组密码存在着密文传输错误在明文中扩散的问题,因此在信道质量较差的情况下无法使用。
DES密码就是1977年由美国国家标准局公布的第一个分组密码。
(2)公开密钥密码。加密密钥和解密密钥分离,将加密密钥和算法公诸于众,而只保密解密密钥。这样,任何人利用这个加密密钥和算法向某用户发送的加密信息,该用户均可以将之还原。其优点是不需要经过安全渠道传递密钥,大大简化了密钥管理。而且能够满足日益膨胀的数字签名的需要。公开密钥密码的应用主要包括加密和解密、数字签名及密钥交换三个方面。
(3)非数学的加密理论和技术。包括信息隐形、量子密码和基于生物特征的识别理论与技术等。其中,信息隐形是指在网络环境下把机密信息隐藏在大量信息中不让对方发觉的一种方法;量子密码技术是将量子力学和密码技术相结合产生的一种加密技术;基于生物特征的识别理论与技术是以生物技术为基础,以信息技术为手段,将生物技术和信息技术交汇融合为一体的一种技术。这些技术都受到了广泛关注,发达国家都投入巨资进行研究,且获得了重大进展。
2.1.3 密码系统的设计原则
在密码系统的设计和评价中要考虑到以下一些基本原则:
(1)易操作原则。对合法的通信双方来说加密和解密变换是容易的。
(2)不可破原则。指该密码体制在理论上或实际上是不可破解的,对密码分析员来说由密文推导明文是困难的。
(3)整体安全原则。部分信息丢失不会影响整个系统的安全性。即硬件设备、加密算法或全部密文与部分明文这些信息的丢失不会危及整个系统的安全。
(4)柯克霍夫斯原则。密码系统中的算法即使为密码分析员所知,也应该无助于用来推导明文或密钥。
(5)与计算机、通信系统匹配原则。要求密码系统不是独立存在的,而可以在计算机或通信系统中使用。