5.4 本章小结 24
第6章 总结与展望 25
6.1 总结 25
6.2 展望 25
毕业设计体会 26
致谢 27
参考文献 28
英文翻译资料 29
第1章 绪论
随着动态网站在全世界互联网的广泛应用,“Linux+Apache+Mysql+ PHP,简称 LAMP,已成为搭建动态网站或者服务器的黄金组合”[1]。Linux+Apache+Mysql+PHP每一个组件都是各自独立的程序,因为常被放在一起使用,所以有了越来越高的兼容性。同时由于它开源的特性,大大降低了网站开发项目的投资成本,故成为个人乃至中小企业的首选Web应用程序平台。其中PHP(hypertext preprocessor)作为一种当前非常流行的对象脚本语言,以其开源,易学易用,平台兼容性强,尤其是快速,高效等特点受到了广大业内人士的青睐,成为制作动态网页使用率最高的语言之一。再看动态网站,它最大的特点是和用户的信息交互,因此网页聊天室成为许多网站的重要功能。如果聊天涉及某些需保密的信息,为了聊天内容的保密不能直接显示聊天信息,此时就需要对聊天内容进行加密处理,以此来保证数据信息传输的安全性。
1.1 设计的研究背景
Linux操作系统在我国不断普及,越来越多的服务器或者个人开始使用Linux软件。与此同时数据加密在我们网络生活中的地位也变得越来越重要,考虑到在网络上发生的大量交易和传输的大量数据,不得不对Linux下的软件采取安全保护。如果对于Linux操作系统及相关软件采用安全措施, PHP提供的一系列安全功能是我们一定需要的。PHP是当前应用非常广泛的一门语言,仔细看看国外的Facebook、Twitter,国内的百度、腾讯、淘宝,再看看互联网上合适各样的大中小型网站都找到它的身影。PHP的成功,应该说很大程度上依赖于其开放的扩展API机制和丰富的扩展组件(PHP Extension),正是这些扩展组件使得PHP从各种数据库操作到数据加密、文件处理、图形处理、Socket等领域无所不能。有时候开发人员可能需要开发自己的PHP扩展,当前PHP5的扩展机制是基于Zend API的,Zend API提供了丰富的接口和宏定义,加上一些实用工具,使得PHP扩展开发起来难度并不算特别大。本文将介绍关于PHP加密解密扩展组件开发的基本知识。
1.2 设计的研究目的和意义
PHP是一种服务器端技术,它取得成功的一个非常重要的因素是它拥有大量的功能强大的可用扩展。反观Web,“无论Wbe开发者有何种需求,这种需求最有可能在PHP发行包里找到。PHP发行包包括支持各种数据库图形文件格式、XML技术扩展在内的许多扩展”[2]。而扩展主要的思想是:尽可能的在扩展编写者那里就隐藏PHP的内部机制和脚本引擎本身,站在设计的角度来看,就要尽可能的保证信息从加密到解密过程的稳定。与使用 PHP 内置加密函数以及使用外部加密软件相比较,PHP 扩展库的特点是支持的加密算法种类较多且能满足加解密要求,扩展所提供的函数功能齐全,使用方便,但是使用PHP扩展库,增加了开发难度以及工作量(如重新编译 PHP 扩展源代码),软件的稳定性也有待提高,更应注意的是PHP扩展当中没有提供密钥管理这样的机制。尽管这样,它提供的扩展和类库几乎能满足开发人员所有对加/解密的要求,因此从性能或功能的原因考虑来进行PHP加解密扩展库的开发是非常可靠和可行的选择。
1.3 论文研究内容及结构安排
在本篇文章中,我们将介绍Linux平台PHP使用RC5算法进行加密和解密功能,提供基本的用法,以便我们能够将扩展功能应用到软件中从而增加安全功能。首先介绍一些有关密码学的基本知识,“密码学可以通俗地被描述为对加/解密的研究和实验,加密是将易懂的资料转换为不易懂资料的过程,解密则是将不易懂的资料转换为原来易懂资料的过程。不易懂的资料被称作密码,易懂的资料被称作明码”[3]。介绍密码学基础知识是为了知道数据的加解密都需要一定的算法,在设计中怎样运用这种算法。算法介绍完毕后,本文又以实例介绍并使用PHP扩展库以实现数据加密解密,过程易掌握且实用性非常强。具体章节介绍如下。 Linux平台PHP的加解密扩展库开发(2):http://www.751com.cn/jisuanji/lunwen_39814.html