基于DES加密算法的WORD加密插件的实现

2019-04-02 16:26

基于DES加密算法的WORD加密插件的实现

摘 要

随着社会发展,社会进入信息时代。信息技术和信息产业正在改变传统的生产﹑经营和生活方式,信息已成为社会发展的重要战略资源。如今,Office办公文档已是日常办公生活中不可缺少的一部分,与此同时伴随而来的信息安全问题也日益突出。如何确保Word文档中的内容不被未授权的第三方所知,防止重要信息被随意改动,成为当务之急。如果在Word工具栏中添加一个加密插件,可以对文档全部内容或部分内容加密,便能有效防止信息泄漏。

本论文采用VB编写Word插件,通过采用Windows下的动态链接库技术(DLL),在VC中把DES算法封装起来做成DLL模块供VB调用,实现了开发加密插件时对加密函数的调用,提高了加密算法的效率。通过使用该插件在Word中添加的工具按键,便能简单有效地对文档内容加解密,使用户在操作WORD文档时更加方便安全。

关键词:加密插件;信息安全;COM组件;动态链接库

目 录

论文总页数:20页

1 引言 ........................................................... 1 1.1选题背景 ..................................................... 1 1.2选题意义 ..................................................... 1 2理论基础 ......................................................... 2 2.1 DES算法描述 ................................................. 2 2.1.1 DES算法框图 ............................................. 2 2.1.2 DES解密 ................................................. 2 2.1.3 DES算法原理 ............................................. 2 2.2 COM组件简介 ................................................. 5 2.2.1 组件 ..................................................... 5 2.2.2 接口 ..................................................... 6 2.2.3 创建 ..................................................... 7 2.2.4 复用 ..................................................... 7 2.3 插件简介 .................................................... 8 3 需求分析和方案设计 ............................................... 8 3.1 需求分析 ..................................................... 8 3.1.1功能需求 .................................................. 8 3.1.2 开发环境 ................................................. 9 3.2 方案设计 ..................................................... 9 4 程序的实现 ...................................................... 10 4.1 VC建立DES算法模块 ......................................... 10 4.1.1 加密导出函数的定义 ...................................... 10 4.1.2解密导出函数的定义 ....................................... 11 4.1.3加解密相关函数的声名 ..................................... 11 4.2 VB编写WORD插件 ............................................ 11 4.2.1建立Word插件工程 ........................................ 11 4.2.2 Word代码的编写 .......................................... 13 5 测试 ............................................................ 15 结 论 .......................................................... 16 参考文献 .......................................................... 17 致 谢 .......................................... 错误!未定义书签。 声 明 .......................................... 错误!未定义书签。

商业源代码,全套计算机毕业设计免费下载 http://www.ibaidusoft.com 更多全套设计联系QQ:1042897696

最新设计大全 http://www.bylw168.com/sf/20100915/3539.html

1 引言

1.1选题背景

DES是Data Encryption Standard(数据加密标准)的缩写。它是由IBM

公司研制的一种加密算法,美国国家标准局于1977年公布把它作为非机要部门使用的数据加密标准,二十多年来,它一直活跃在国际保密通信的舞台上,扮演了十分重要的角色。

DES是一个分组加密算法,他以64位为分组对数据加密。同时DES也是一个对称算法:加密和解密用的是同一个算法。它的密匙长度是56位(因为每个第8 位都用作奇偶校验),密匙可以是任意的56位的数,而且可以任意时候改变。其中有极少量的数被认为是弱密匙,但是很容易避开他们。所以保密性依赖于密钥。

按照组件化的程序设计的思想,复杂的应用程序被设计成一些小的,功能单一的组件模块,这些组件模块可以运行在同一台机器上,也可以运行在不同的机器上。

为了实现这样的应用软件,组件程序和组件程序之间需要一些极为细致的规范,只有组件程序遵守了这些共同的规范,然间系统才能正常运行。

为此,OMG和Microsoft分别提出了CORBA(Common Object Request Breaker Architecture)和COM(Component Object model)标准,目前CORBA模型主要应用于UNIX操作系统平台上,而COM 则主要应用于Microsoft Windows操作系统平台上。

在COM标准中,一个组件程序也被称为一个模块,它可以是一个动态连接库(DLL), 被称为进程内组件(in-of-process component),也可以是一个可执行程序(EXE),被称为进程外组件(out-of-process component)。

COM对象是建立在二进制可执行代码级的基础上,而C++等语言中的对象是建立在源代码级基础上的,因此COM对象是语言无关的。这一特性使用不同编程语言开发的组件对象进行交互成为可能。

在Microsoft Windows系统平台上,COM技术被应用于系统的各个层次,从底层的COM对象管理到上层的应用程序交互都用到了COM标准。

1.2选题意义

Word是当今非常流行的一款字处理软件,是装机的必备程序。但随之而来的信息安全问题也收到普遍关注。为了防止信息财产被故意或偶然地非授权泄漏,保护用户的利益和隐私,有必要对文档进行加密。目前Word文档可以通过设置密码来决定用户是否有打开文档的权限,从而保护文档信息安全。这样是对整个文件的操作,并且必须要有密码配合。我们可以通过一个插件对文档内容加

第 1 页 共 20 页

解密,这样使用起来更加简单方便。

2理论基础

2.1 DES算法描述

2.1.1 DES算法框图

DES对64(bit)位的明文分组M进行操作,M经过一个初始置换IP置换成m0,将m0明文分成左半部分和右半部分m0=(L0,R0),各32位长。然后进行16轮完全相同的运算,这些运算被称为函数f,在运算过程中数据与密匙结合。经过16轮后,左,右半部分合在一起经过一个末置换。

在每一轮中,密匙位移位,然后再从密匙的56位中选出48位。通过一个扩展置换将数据的右半部分扩展成48位,并通过一个异或操作替代成新的32位数据,在将其置换换一次。这四步运算构成了函数f。然后,通过另一个异或运算,函数f的输出与左半部分结合,其结果成为新的右半部分,原来的右半部分成为新的左半部分。将该操作重复16次,就实现了。具体如图1所示:

商业源代码,全套计算机毕业设计免费下载 http://www.ibaidusoft.com

更多全套设计联系QQ:1042897696

最新设计大全 http://www.bylw168.com/sf/20100915/3539.html

图1 DES算法框图

2.1.2 DES解密

加密和解密使用相同的算法。

DES加密和解密唯一的不同是密匙的次序相反。如果各轮加密密匙分别是K1,K2,K3?.K16那么解密密匙就是K16,K15,K14?K1。

2.1.3 DES算法原理 (1)处理密钥:

从用户处获得64位密钥.(每第8位为校验位,为使密钥有正确的奇偶校验,每个密钥要有奇数个\位.(本文如未特指,均指二进制位)

(2)具体过程:

对密钥实施变换,使得变换以后的密钥的各个位与原密钥位对应关系如下表所示:

57 49 41 33 25 17 9 1 58 50 42 34 26 18 10 2 59 51 43 35 27 19 11 3 60 52 44 36 63 55 47 39 31 23 15 7 62 54 49 38 30 22 14 6 61 53 45 37 29 21 13 5 28 20 12 4

把变换后的密钥等分成两部分,前28位记为C[0],后28位记为D[0].

第 2 页 共 20 页


基于DES加密算法的WORD加密插件的实现.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:化学教材教法试题和答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: