api接口加密

在接口开发中,为了客户请求安全,常常要对其进行加密操作
加一个访问token。
例如你的api地址是http://www.example.com/api.php
需要接受的参数有a,b,c三个
那么可以加一个验证token(通过约定的key加密生成)。

例如
$a=1;
$b=2;
$c=3;
$key=‘abcdef’;

t o k e n = s h a 1 ( token=sha1( a. b . b. c.$key);

然后访问使用http://www.example.com/api.php?a=1&b=2&c=3&token=xxxx
api.php接收到a,b,c,token参数后,根据a,b,c与约定好的key,计算sha1( a . a. b. c . c. key);是否等于接收到的token,如果相同则返回数据,否则返回没有权限。
另外我在开发时使用password+时间戳(客户端请求时需要发送)来生成秘钥(使用MD5)
DigestUtils.md5DigestAsHex(password+timestamp)生成唯一的加密码
同样客户端通过发送token,在服务端进行比较,如果相同则返回数据,否则返回没有权限。
至于MD5的算法实现原理大家可以上网进行查看。

猜你喜欢

转载自blog.csdn.net/weixin_43020203/article/details/83822965