毕业论文-程序加密技术的实现内容摘要:

公开密钥算法(也叫非对称算法)是这样设计的:用作加密的密钥不同于用作解密的密钥,而且解密密钥不能根据加密密钥计算出来(至少在合理假定的长时间内)。 之所以叫做公开密钥算法,是因为加密密钥能够公开,即陌生者能用加密密钥加密信息,但只有用相应的解密 密钥才能解密信息。 在这些系统中,加密密钥叫做公开密钥(简称公钥),解密密钥叫做私人密钥(简称私钥)。 私人密钥有时也叫秘密密钥。 为了避免与对称算法混淆,此处不用秘密密钥这个名字。 用公开密钥 K 加密表示为 EK(M)=C. 虽然公开密钥和私人密钥是不同的,但用相应的私人密钥解密可表示为: DK(C)=M 有时消息用私人密钥加密而用公开密钥解密,这用于数字签名(后面将详细介绍),尽管可能产生混淆,但这些运算可分别表示为: EK(M)=C DK(C)=M 当前的公开密码算法的速度,比起对称密码算法,要慢的多 ,这使得公开密码算法在大数据量的加密中应用有限。 4. 4 单向散列函数 单向散列函数 H(M) 作用于一个任意长度的消息 M,它返回一个固定长度的散列值 h,其中 h 的长度为 m。 输入为任意长度且输出为固定长度的函数有很多种,但单向散列函数还有使其单向的其它特性: (1) 给定 M ,很容易计算 h ; (2) 给定 h ,根据 H(M) = h 计算 M 很难 ; (3) 给定 M ,要找到另一个消息 M’ 并满足 H(M) = H(M’ ) 很难。 在许多应用中,仅有单向性是不够的,还需要称之为 “ 抗碰 撞 ” 的条件: 要找出两个随机的消息 M 和 M’ ,使 H(M) = H(M’) 满足很难。 由于散列函数的这些特性,由于公开密码算法的计算速度往往很慢,所以,在一些密码协议中,它可以作为一个消息 M 的摘要,代替原始消息 M,让发送者为 H(M) 签名而不是对 M 签名。 如 SHA 散列算法用于数字签名协议 DSA 中。 4. 5 数字签名 提到数字签名就离不开公开密码系统和散列技术。 有几种公钥算法能用作数字签名。 在一些算法中,例如 RSA,公钥或者私钥都可用作加密。 用你的私钥加密文件,你就拥有安全的数字签名。 在其它情况下,如 DSA,算法便区分开来了  数字签名算法不能用于加密。 这种思想首先由 Diffie 和 Hellman 提出。 基本协议是简单的 : (1) A 用她的私钥对文件加密,从而对文件签名。 (2) A 将签名的文件传给 B。 (3) B 用 A的公钥解密文件,从而验证签名。 这个协议中,只需要证明 A的公钥的确是她的。 如果 B不能完成第( 3)步,那么他知道签名是无效的。 这个协议也满足以下特征: (1) 签名是可信的。 当 B用 A的公钥验证信息时,他知道是由 A 签名的。 (2) 签名是不可伪造的。 只有 A 知道她的私钥。 (3) 签名是不可重用的。 签名是文件的函数,并且不可能转换成另外的文件。 (4) 被签名的文件是不可改变的。 如果文件有任何改变,文件就不可能用 A的公钥验证。 (5) 签名是不可抵赖的。 B 不用 A的帮助就能验证 A 的签名。 在实际应用中,因为公共密码算法的速度太慢,签名者往往是对消息的散列签名而不是对消息本身签名。 这样做并不会降低签名的可信性。 第五章 DELPHI介绍 Delphi 历史回顾 Delphi 是第四代编程语言,是 RAD( Rapid Application Development,快速应 用程序开发)工具的代表。 从核心上说, Delphi 是一个 Pascal 编译器。 Delphi 语言的发展历程如下: Delphi 1 1995 年, Borland 推出了 Delphi 1。 Delphi 1 提供了一种完全不同的开发 Windows 程序的方式:可视化的开发环境、编译后的可执行软件、 DDL、数据库,以及可以毫无限制地给可视环境命名。 而且 Delphi 1 是第一个综合了可视化开发环境、优化的源代码编译器、可扩展的数据库访问引擎的 Windows 开发工具,它奠定了 RAD的概念。 Delphi 2 一年后的 Delphi 2 在 32位的操作系统 Windows 95 和 Windows NT 下实现了原有的一切功能。 另外, Delphi 2 还增加了许多 Delphi 1 没有的功能,例如 32位的编译器能生成速度更快的应用程序,对象库得到进一步的丰富和扩展,完善了数据库支持,改进了字符串处理,支持 OLE对象链接与嵌入和可视化窗体继承以及与 16位的Delphi 兼容等。 Delphi 2 成为衡量其他 RAD工具的标准。 为了满足 IT产业的需要, Delphi 2 增强了数据库和客户端 /服务器的功能。 Delphi 3 1997 年, Borland公司推出了 Delphi 3。 Delphi 3 使本来极其复杂的COM、 ActiveX、 WWW应用程序开发、 “ 瘦 ” 客户应用程序、多层数据库系统体系结构等技术变得非常容易。 虽然 Delphi 3 与 Delphi 1 编写应用程序的基本方法大都相同,但 Delphi 3 的 Code Insight(代码内视)技术却简化了代码编写过程。 Delphi 4 1998 年推出的 Delphi 4 致力于使 Delphi 更易于使用。 Module Explore(模块导航)技术的引入使程序员能够以一致的图形界面浏览和编辑代码。 代码导航和类自动生成的功能使程序员只需关注应用程序本身,而不必在输入代码上花费太多精力。 IDE 经过重新设计可支持浮动或可停靠的工具栏和窗口,调试器也做了改进。 Delphi 4 不愧为一个先进的开发工具,它的 MIDAS、 DCOM和 CORBA 等技术使 Delphi 4 的应用范围扩展到企业级用户。 Delphi 5 1999 年, Delphi 5 推出。 Delphi 5 通过增加更多的功能使程序的编写更简单。 新功能包括进一步增强了 IDE和调试器的功能、提供了 Team Source 小组开发软件和转换工具等。 Delphi 5 也为简 化 Inter 的开发增加了许多新功能,包括 Active Server Object Wizard 用于创建 ASP, Inter Express 组件用于支持 XML 和 MIDAS功能,使 Delphi 成为 Inter 的一个通用数据平台。 Delphi 6 Delphi 6 不但在传统的开发能力方面持续改进,让程序员能够享有更具生产力的开发环境,而且对于最新的信息技术,例如 XML/XSL、 SOAP、 Web Service 等也都有非常良好的支持,让程序员能够快速地使用这些新技术。 此外, Delphi 6 在核心运行时函数库以及编译器方面也有了不少改善,不但让程序员可以开发功能更强的窗口应用程序,也可以更平顺地移植到 Linux 平台,再搭配跨平台的新可视化组件 Framework CLX,即使是 Windows 程序员也可以快速地开发 Linux 平台上的应用系统。 然而,实际上 Delphi 7 之所以这么快推出,很大原因上是由于 Delphi 6 的很多新特性还不是很成熟,在 Delphi 7 中这些新特性得到了很大的改善和提高。 下面,我们将会详细介绍 Delphi 6 和 Delphi 7 共有的一些新特性。 Delphi 的新特性 1. 功能更强大的集成开发环境 和以往 Delphi 的每一个新版本一样, Delphi 7 继续改善了开发环境,帮助程序员提高效率。 Delphi 7 在集成开发环境中加入了很多让程序员爱不释手的新功能,下面是对它们的一个简单介绍。 ( 1) Code Complete(代码完成) Code Complete 功能在 Delphi 5 中就已经加入了,这项功能非常受程序员的欢迎,因为 Code Complete 可以大幅度地减少程序员需要键入的程序代码,并且减少键入错误。 Delphi 7 的 Code Complete 功能在原 有的基础上继续改善,新的 Code Complete 窗口不但可以由程序员自行调整大小,而且可以使用不同的颜色代表不同的对象,例如变量、方法和特性等。 Delphi 7 的 Code Complete 窗口加入了色彩分析,以及对对象分门别类的能力。 此外,新的 Code Complete 窗口也会更聪明地过滤对象能够使用的 PME,避免了以往 Delphi 5 的 Code Complete 窗口无法显示一些 PME 的困窘。 另外,程序员在新的 Code Complete 窗口中选择使用某个方法之后, Code Complete 会自动地在方法名 称之后加上 “ (); ” 字符,把光标停在圆括号之中,并且自动显示这个方法需要的所有参数,Delphi 的确比以前更聪明更方便了。 ( 2) Object TreeView(对象树视图) 另外一个新功能就是 Delphi 7 的 Object TreeView 窗口。 这个新的窗口除了可以显示窗体中所有的对象之外,也可以以分层方式表达组件之间的关系。 当程序员在 Object TreeView 窗口中单击了一个组件之后,这个组件会立刻出现在对象查看器之中,这时程序员可以改变这个对象的特性值和事件处理程序。 当窗体复杂,拥有大量的组件 时, Object TreeView 窗口可以让用户迅速找到这个组件,并且知道与当前组件相关的组件,非常方便。 此外 Delphi 7 的编辑器也强化了 Class Complete 的功能,让程序员在定义类别程序代码时拥有更大的弹性,并且加强了 Interface Complete 的功能,让程序员在撰写接口程序代码时也能够享有 Code Complete 功能。 ( 3)可定制的 View窗口 Delphi 7 最强劲的集成开发环境功能应该要算是新的可定制的 View 窗口了。 在 Delphi 7 中,编辑器不但可以让程序员观看和编 辑 Object Pascal 的程序代码,而且如果程序员编辑的是 Web应用程序,那么还可以直接在编辑器中查看 HTML 程序代码、脚本语言程序代码,预览 Web应用程序执行结果的画面以及 Web应用程序产生的 HTML程序代码。 ( 4)新添加 Indy Intercepts 和 Indy I/O Handler 构件组 企业版的 Delphi 7 中,这两个构件组基本上提供了针对现今流行的 Inter 协议编程的构件。 可以进行更为底层的操作。 ( 5)新添加 IW Standard、 IW Data、 IW Client Side 和 IW Control 构件组 这些构件也是 Delphi 7 的显著改革之一,将 Intraweb 集成到了标准的构件板中,我们就可以很方便地开发基于 Web 的应用程序。 ( 6)新添加的 Rave报表构件组 Delphi 7 的标准构件板中已经没有了原来的 QuickReport 构件组,取而代之的是 RAVE 报表制作组件,并且提供专门的报表制作工具 Rave Designer。 Rave 报表构件是一个可视化的报表设计工具,大大简化了在应用程序中加入报表的工作。 用 Rave报表构件可以做出各种不同的报表,从最简单的到非常复杂、个 性化的报表都可以完成。 它的功能包括:图片支持、对齐、精确页面定位、打印机设置、字体控制、打印预览、报表内容重用,并支持 PDF、 HTML、 RTF 等文本格式。 . 新一代数据存取引擎 —— DBExpress Borland 为了让 Windows 平台上的 Delphi 以及 Linux 平台上的 Kylix 拥有共同的数据存取引擎,决定开发新一代的数据存取引擎,这就是 DBExpress。 DBExpress 是一组存取各种不同关联数据库的原生驱动程序,以及一组基于这些驱动程序而开发的统一的组件。 由于原生驱动程序和组件的开发都考虑 了跨平台,因此 Delphi 和 Kylix 都可以使用这组驱动程序和组件。 程序员通过统一的组件来存取不同的数据库,以方便开发数据库应用系统。 3. 开发 Inter/Intra 应用系统的 WebSnap 组件组 Delphi 7 中最重要的新增功能之一应该要算是能够让程序员开发 Inter/Intranet 应用系统的新架构和组件,这个新功能称为 WebSnap。 Delphi 7 的 WebSnap 允许程序员使用组件和可视化的方式快速开发复杂的 Inter/Intra 应用系统。 WebSnap 的特点是 允许程序员直接在这些组件之中加入脚本语言,并且能够直接在 Delphi 的集成开发环境中撰写脚本语言、预览 Web 应用程序的输出结果以及 Web 应用程序产生的 HTML 程序代码。 4. MIDAS 的进化版本 —— DataSnap 在 Delphi 7 中, MIDAS 被改名为 DataSnap。 DataSnap 不但强化了 MIDAS 原有的功能,更加入了许多新的组件,让程序员可以使用它开发出更为强劲的应用系统。 此外 DataSnap 也改善了 MIDAS 的执行效率,让使用它的应用程序能够执行得更快。 5. 对 XML/XSL 的支持 Delphi 6 的另外一个重要的改良就是对于 XML/XSL 的支持。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。