时间:2022-11-15 14:30:02 | 来源:信息时代
时间:2022-11-15 14:30:02 来源:信息时代
数据加密 : 在数据处理中,为了保密起见,设法将一些不宜公开的、需要保密的敏感数据(sensitive data)进行适当的变换,使之成为“面目全非”的密码数据的过程。数据加密把原始形式的数据(明文plaintext)变成外观含义变得很难理解形式的数据(密文cipher text)。它的一个逆过程,即把密文变回明文的过程称为数据解密(data decryption)。数据加密/解密维护了数据库的保密性,数据库中数据以密码形式存储和传输,使得不懂密码的入侵者无法读懂所看到的数据,所以,数据加密/解密是数据库安全性保证的一种重要手段。
1.加密/解密算法
明文与密文之间的变换称为加密/解密算法(encryption/decryption algorithms)。算法中的一个关键输入参数称为加密/解密密钥(encryption/decryption key)。加密和解密的密钥可以是相同的,也可以是成对的。
数据加密的基本算法主要有两种: 代替法(substitution method)使用密钥将明文中的每一个字符转换为密文中的一个字符,其目的是将某些位模式替换成其他模式来制造混乱;置换法(transposition method)将明文中的每一个字符按不同的顺序重新排列,其目的是把数据或密钥扩散到整个密文中,从而破坏已经确定的模式。
2. 公钥体制
公钥体制(public key system)是一种具有公开密钥的加密体制。每个用户都有两个相互为逆的密钥:一个公开密钥和一个私有密钥,用户可以公布其公开密钥。用户能够用他的私有密钥对别人用相应的公开密钥加密的数据进行解密; 也可以用他的私有密钥加密报文,该报文只能用相应的公开密钥才能被解密。公钥体制的这两个特性表示公开密钥和私有密钥可以交替使用。理想情况下,解密函数D可适用于任何自变量,所以可以先解密后加密。这意味着可以先用私有密钥变换,然后再用公开密钥变换。
3. RSA加密体制
RSA加密体制(RSA encryption system)的命名取自它的三位创始人的名字: Rivest、Shamir和Adelman。
RSA加密的算法的原理很简单: 在加密和解密中将明文视为一个数,然后取它的某一特定的方次。加密和解密能按任何次序进行,且多重加密互相可以交换。这些特性使得该算法非常理想,成为安全领域中最具代表性的加密算法之一,使用越来越广泛。
4.数据加密标准
数据加密标准(data encryption standard,DES)又称数据加密算法(DEA)。它是传统密码技术的两种基本方法: 替换法和置换法巧妙的结合。它是由IBM公司设计和研制的一种数据加密方法,并于1976年11月23日被美国官方采纳为数据加密标准。后来又曾被国际标准化组织采纳为数据加密的国际标准。
DES能够在发送者和接收者之间的信道上提供端到端的加密。DES算法通过应用两种基本加密技术: 替换和置换技术,来提高其加密强度。替换技术将某些位模式替换成其他模式来制造混乱; 置换技术通过重新排列来制造扩散效果。DES算法应用替换和置换这两个基本模块16轮迭代来达到其加密强度,明文被加密成64位的块,虽然密钥是64位长的,但实际上密钥可以是任意的56位数字。DES算法的一个重要特性是: 除了密钥的施加顺序相反外,其解密算法和加密算法是相同的。
5. 高级加密标准
高级加密标准(advanced encryption standards,AES)算法自公布之日起,就一直存在关于DES能够提供多少安全性的争议。即使是安全的算法也需要定期更换,在这个前提下,美国国家标准委员会(national institute of standards,NIST)已经撤消了对DES的支持,并提出了高级加密标准(advanced encryption atandards,AES)。相对于DES算法的56位块,AES算法使用了128位的块,相对于DES算法的56位密钥,AES算法可以使用128、192或者256位的密钥。由此可见,与DES算法相比,AES算法引入了更多的可能密钥,因此需要更长时间来破解。根据相关文献给出了一个例子:确定一个130位的数是否为质数只需花大约7分钟; 而确定两个63位质数的乘积的两个质因子,则需要4×1016年。