首页 > php开发 > PHP接口开发加密技术实例原理与例子

PHP接口开发加密技术实例原理与例子

在手机中使用PHP接口与web对接时我们会做一个加密的值进行握手验证了,下面我们就来为各位介绍一些方法与原理了.

方法一:固定一个值,如md5('www.phprm.com') 然后把生成的字符在url或post传递时进行验证.

方法二:稍微复杂点双方约定好生成的格式

下面例子简单讲解PHP接口开发加密技术,如app要请求用户列表,api是'index.php?module=user&action=list'

app生成token = md5sum("user"."2012-11-28'."www.phprm.com".list) = 880fed4ca2aabd20ae9a5dd774711de2;

则实际发起请求为 'index.php?module=user&action=list&token=880fed4ca2aabd20ae9a5dd774711de2'

服务器端接到请求用同样方法计算token,代码如下:

$module = $_GET['module']; 
$action = $_GET['action']; 
$token = md5sum($module.date('Y-m-d',time()).'www.phprm.com'.$action); 
if($token != $_GET['token']){ 
	alarm('access deny'); 
	exit(); 
}

这样就判断了请求url参数是合法的,允许访问,关键是接口token参数的构造,还有一种方法用到cookie,这种情况则不适用于读取接口数据的应用场景,适合在浏览器中访问接口.

1.请求头里带用户username和password,到服务器端做验证,通过才继续下边业务逻辑.

优点:防止了服务器端api被随意调用。

缺点:每次都交互用户名和密码,交互量大,且密码明文传输不安全.

2.第一次请求,要求username和password,验证通过,种cookie到客户端,app保存cookie值.

每次请求带上cookie.

点评:和pc上浏览器认证的原理一样了.


文章地址:http://www.phprm.com/develop/fs9221.html

转载随意^^请带上本文地址!

标签:php接口开发 php开发加密

发表留言