3DES(即Triple DES)是DES向AES过渡的对称性加密算法,它使用3条64位的密钥对数据进行三次加密。是DES的一个更安全的变形。它以DES为基本模块,通过组合分组方法设计出分组加密算法。比起最初的DES,3DES更为安全。
PHP利用扩展库Mcrypt来实现DES加密,这种加密的好处主要是不同的语言平台数据可以进行交互加密传输,防止数据外泄,实现这种方式双方必须定义一个公用的KEY(密钥)
下面是PHP与C#的3DES通用的加解密代码:
<?php
function encrypt($string) {
//加密用的密钥文件
$key = "a81970b0fa3c9b";
//加密方法
$cipher_alg = MCRYPT_TRIPLEDES;
//初始化向量来增加安全性
$iv = mcrypt_create_iv(mcrypt_get_iv_size($cipher_alg,MCRYPT_MODE_ECB), MCRYPT_RAND);
//开始加密
$encrypted_string = mcrypt_encrypt($cipher_alg, $key, $string, MCRYPT_MODE_ECB, $iv);
return base64_encode($encrypted_string);//转化成16进制
// return $encrypted_s ......
作者 陈浩 (Haohappy)
MSN: haohappy # php.net
2009-08-13
本文刊于《程序员》杂志 2009.09
转载请注明作者及出处
毫无疑问,如今PHP已经成为WEB开方当中最热门的技术之一。根据nexen.net的调查,互联网上三分之一的网站选择PHP来开发服务器端程序。在欧美和日本等国家,PHP开发市场呈现出一片欣欣向荣的景象,像Facebook、Yahoo!、Flickr和Sourceforge这样的知名PHP站点数不胜数。而近年来国内的各大网站也逐渐大量使用PHP。
依靠活跃、组织严密的开发社区,PHP语言本身一直在稳定地进步--一方面不断改善性能和稳定性,增加各种实用的开发工具;另一方面积极汲取其它编程语言的优点来充实语言特性。如今的PHP,即可以支持强大的面向对象开发(如Java),又保留了简单易学的语法(如C),同时,PHP还拥有极其多样化的各种实用的函数、扩展和类库,非常方便用于WEB开发。另外,随着面向对象开发的逐步普及,各种开源的PHP类库和开发框架层出不穷。
6月底,PHP官方正式发布了PHP5.3.0。这是一个不寻常的PHP版本,因为它修复了不少Bug(超过140个),而且带来了很多让PHP程序员们期待已久的新特性。其中有些特性原本是计划在PHP6中发 ......
版本:apache_2.2.6-win32-x86-no_ssl
直接按默认安装,安装时要关闭浏览器跟下载软件,否则安装完成后服务器不能启动,报不能绑定80端口的错误。启动后在地址栏中输入“http://localcast/”或“http://127.0.0.1/”,如果可以看到"It Works",说明安装成功。
如果需要更改默认路径,打开“C:\Program Files\Apache Software Foundation\Apache2.2\conf”目录下的httpd.conf文件,查找“DocumentRoot(这里有两处都必须改),将其路径修改成需要设置的访问路径,这里改为“D:/masterphp”(注意斜杠方向,与路径方向不同)。
LoadModule php5_module F:/php/php5apache2_2.dll
LoadFile F:/php/php5ts.dll
LoadFile F:/php/libmysql.dll
PHPIniDir "F:/php"
2. PHP的安装配置
版本:php-5.2.5-Win32
下载后直接解压就可以了,这里我们解压到“C:\Program Files\php-5.2.5-Win32”目录下。下面将PHP和Apache服务期连接:
(1)修改“C:\Program Files\php-5.2.5-Win32”目录下"ph ......
所需软件(注意版本!):
Apache2.2.3
PHP5.1.5
MySQL5.0.24
这三个软件都是免费的,可从官网上下载,目前我所有的软件名为:
apache_2.2.3-win32-x86-no_ssl.msi
mysql-5.0.24-win32.zip
php-5.1.5-Win32.zip
基于windows操作系统,在Windows XP下安装使用:
1、安装过程:
首先安装Apache服务器,双击apache_2.2.3-win32-x86-no_ssl.msi即可安装。和一般安装没有什么两样,可采用默认安装。这里选用complete安装,安装目录可以任意选择,这里为:D:\Program Files\Apache Software Foundation\Apache2.2;
接着将PHP压缩包(php-5.1.5-Win32.zip)解压到一个目录里,例如:D:\php5
最后安装MySQL,解压后双击Setup.exe文件进行安装,安装过程中最好新创建一个用户并设定密码,选择可以在命令行下运行选项;安装完之后即可进行详细的配置,如数据库目录(C:\database)等等。
2、实现主要配置:
安装是比较简单的过程,最主要的还是配置问题。
首先实现PHP与Apache的连接,在Apache安装目录下的conf目录里有个配置文件httpd.conf,用记事本打开,找到以下几行:
1)Listen 80
ServerName NerverWinter.domain:80
2)#LoadModule ssl_module modul ......
一、 开发成员
a)项目主管
b)页面美工
c)页面开发
d)服务端程序开发
e)系统与数据管理
f)测试与版本控制
二、 网站组开发简明流程
三、 开发工具与环境
a) 服务器配置
i. WEB服务器: FreeBSD6.1+Apache2.0+PHP5.0,SVN版本控制服务(仅测试机)。
ii. 数据库服务器: WIN2003 server+SQL server 2000+MySQL5.0,CLUSTERED SERVER 集群服务,邮件服务器。
iii. 100M/1000M交换机
b) 开发工具
i. 前台: Macromedia flash 8.0、Macromedia Dreamweaver 8.0、Adobe photoshop CS
ii. 后台: Zend Studio 5.2、SQL Server Enterprise Manager、PhpMyAdmin
四、 技术规则
a) 浏览器兼容策略: 兼容IE5.0以上版本,同时兼容FireFOX2.0以上浏览器。
b) 搜索引擎优化: 着重针对baidu、Google、Yahoo搜索优化,制作清晰明确的网站地图。
c) 字符编码规则: 中文网站一率采用GB2312字符标准。
d) 文件与文件夹命名: 为兼容win32与unix系统,一率采用小写字母命名。
e) 公共文件命名规则:
i. 默认首页: index.htm、index.html、index.php
ii. 主CSS文件: style.css
iii. 主JS文件: main.js
iv. 主程序配置文件:config.php
f) 公共文件目录统� ......
1、PHP4以后获取传值的方法
一般在页面中传值常见的是POST、GET和COOKIE几种,所以下面我也主要介绍这几种。PHP4以后都采用的是$_POST、$_GET等数组来获取网页传值。在PHP3.0及以下版本都是用的是$HTTP_POST_VARS、$HTTP_GET_VARS等数组,具体代码如下
echo $_POST['dopost'];
?>
< form action="weste_net.php" method="post" name='form1' id="form1">
< input type="text" name="dopost" value="hello weste.net!" />
< input type="submit" name="weste" value="提交" />
< /form>
2、旧版本PHP3以前的获取传值方法
上面说过了,可以使用$HTTP_POST_VARS、$HTTP_GET_VARS、$HTTP_COOKIE_VARS这些数组读取。在旧版本的PHP中,还可以使用如$dopost的方法直接获取传值,这种方法比较简洁,在后面的几种获取网页传值的方法中,其实icech都是围绕着如何能使用$dopost来获取网页传值的。
3、修改PHP.ini文件的配置
还有一个问题是为什么PHP3和PHP4及其以后会不兼容呢?其实有一个很重要的原因是,在PHP4以后,PHP.ini文件中的register_globals被默认设置为Off了。所以造成以前使用$dopost这种方法直接获取网页传值不能使用了。
简单的方 ......