DES算法在数据加密中的应用
2012-11-10陈小梅贺州学院图书馆广西贺州542800
陈小梅 (贺州学院图书馆,广西 贺州 542800)
DES算法在数据加密中的应用
陈小梅 (贺州学院图书馆,广西 贺州 542800)
数据库是计算机系统的核心构成,聚集了大量有关用户的重要信息,保护好数据库安全是维护用户利益的关键。阐述了DES算法的操作流程,并对该算法应用于数据加密技术进行了分析。
计算机;数据加密;DES算法;运用分析
随着计算机技术的广泛运用,信息化时代背景下掌握各种加密算法是保证数据安全的有效措施。计算机技术在全球范围得到广泛地运用,为企业或个人用户的办公提供了很大方便,但在计算机技术普及的过程中也面临着诸多的安全隐患,如数据库防御系统被攻破会给用户造成巨大经济损失。因此,保护好数据库安全显得非常重要。数据加密标准(Data Encryption Standard,DES)是由IBM公司研制的一种加密算法,美国国家标准局于1977年将它作为正式数据加密标准予以颁布,DES 算法广泛应用于信用卡持卡人的PIN 的加密传输、IC卡与POS 间的双向认证、金融交易数据包的MAC校验等领域,用以实现关键数据的保密[1]。下面,笔者对DES算法在数据加密技术的应用进行了研究*贺州学院院级项目(2010zrky15)。。
1 DES算法操作流程
图2 加密算法的数据转换流程
DES算法具有独特对称密码体制,其运用于计算机数据加密,让密文转换为明文或明文转换为密文的操作流程更加稳定可靠[2]。此外,DES算法把明文转换为密文,其输出块、输入块、密钥等均是64位。加密算法的数据转换流程如图2所示。
1.1置换规则表
传统加密算法对数据块的编排没有标准的准则,使得数据操作处理没有明确的参考依据。置换规则表的编制为DES加密算法提供了参考,该表是为了将加密的64位数据块按位重新组合,并把输出分为L0、R02部分,每部分各长32位。运用该表可以引导DES加密算法的科学操作,以保证后期数据的准确性,具体内容如下[3]:
58,50,42,34,26,18,10,2,60,52,44,36,28,20,12,4,
62,54,46,38,30,22,14,6,64,56,48,40,32,24,16,8,
57,49,41,33,25,17, 9,1,59,51,43,35,27,19,11,3,
61,53,45,37,29,21,13,5,63,55,47,39,31,23,15,7,
1.2功能表
DES算法描述图中,S1,S2,…,S8为选择函数,其功能是把56bit数据变为144bit数据。如S1中共有4行数据,命名为0,1,2,3行;每行有16列,命名为0,1,2,3,…,14、15列。输入D=D1D2D3D4D5D6,令列为D2D3D4D5,行为D1D6;经过处理后从功能表中对应查找,并用4位二进制表示,
即可得到函数S1的输出。例如函数S1的功能表描述如下:
14,4,13,1,2,15,11,8,3,10,6,12,5,9,0,7,
0,15,7,4,14,2,13,1,10,6,12,11,9,5,3,8,
4,1,14,8,13,6,2,11,15,12,9,7,3,10,5,0,
15,12,8,2,4,9,1,7,5,11,3,14,10,0,6,13,
2 应 用
数据加密中引进DES算法应按照标准流程操作,若某个环节的加密出现问题,则会给后期的数据传输埋下安全隐患,破坏了整个传输结构的稳定性。为此,将DES算法运用于数据加密的过程分为加密处理、加密变换、子密钥生成3个核心环节。
2.1加密处理
加密处理是DES算法的首要步骤,也是最为复杂的操作过程。整个处理过程分为以下几方面:①初期处理。对需要加密的64位的明文进行变换,按照标准的换位表操作,保证明文处理的正确性。②操作处理。整个加密操作经过16轮加密变换,把初始换位的64位的输出当成下一次的输入,把64位分为左、右2个32位,分别记为L0和R0,从L0、R0到L16、R16,共进行16轮加密变换[4]。③换位处理。换位处理是把L16和R16合成64位的数据,依据标准的换位表获取64位的密文,最后得到的则是加密的结果。
2.2加密变换过程
加密变换过程是为了将一些需要扩展的数据进行优化处理,利用重复某些位把32位的右半部分变换为48位,对56位的密钥进行位移,再将相应的位减少为48位,对48位的右半部分通过异或操作与48位的密钥结合,并分成6位的8个分组,通过8个S-盒将这48位替代成新的32位数据,再将其置换一次。
2.3子密钥生成过程
计算机数据构成中,密钥一般都是以64位的自然数出现。子密钥生成的第一步操作是对PC-1压缩换位,把各个字节的第8位去除。按照这样的标准,密钥去掉第8,16,24,…,64位减至56位,最终得到的密钥长度只有56位,操作过程中要保证每轮生成48位的子密钥。
3 结 语
数据加密是计算机数据库操作的常用技术,为了保证数据信息安全,将DES算法运用于数据加密技术十分重要。今后,应加强相关内容的研究,进一步提高数据库安全性,切实维护用户利益。
[1]宣克祥.数据加密标准(DES)算法与安全性探析[J].产业与科技论坛,2011,10(6):71-74.
[2]李联. 信息安全中的DES加密算法[J].现代电子技术,2005(9):117-119.
[3]刘晓星,胡畅霞,刘明生. 安全加密算法DES的分析与改进[J].微计算机信息,2006,25(5):28-31.
[4]普运伟,耿植林,楼静. 从DES算法论分组密码的设计原则[J]. 微机发展, 2005, 15(9)56-59.
[编辑] 李启栋
10.3969/j.issn.1673-1409(N).2012.04.037
TP309.7
A
1673-1409(2012)04-N106-02
2012-02-17
((1981-),女,2008年大学毕业,馆员,现主要从事计算机应用方面的研究工作。