Heim > php教程 > PHP源码 > PHP接口开发加密技术实例原理与例子

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

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Freigeben: 2016-06-08 17:20:35
Original
1064 Leute haben es durchsucht

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

<script>ec(2);</script>

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


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


下面例子www.111cn.net简单讲解PHP接口开发加密技术:

如app要请求用户列表,api是“index.php?module=user&action=list”

app生成token = md5sum (‘user’.’2012-11-28′.’www.111cn.net’.list) = 880fed4ca2aabd20ae9a5dd774711de2;

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

服务器端接到请求用同样方法计算token:

$module = $_GET[&#39;module&#39;];

$action = $_GET[&#39;action&#39;];

$token = md5sum($module.date(&#39;Y-m-d&#39;,time()).&#39;www.111cn.net&#39;.$action);

if($token != $_GET[&#39;token&#39;]){

    alarm(&#39;access deny&#39;);

    exit();

}
Nach dem Login kopieren

这样就判断了请求url参数是合法的,允许访问。关键是接口token参数的构造。

还有一种方法用到cookie,这种情况则不适用于读取接口数据的应用场景,适合在浏览器中访问接口。

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

优点:防止了服务器端api被随意调用。
缺点:每次都交互用户名和密码,交互量大,且密码明文传输不安全。

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

每次请求带上cookie。

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

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage