zoukankan      html  css  js  c++  java
  • 开放API接口签名验证

    我们开放的api接口如果不做验证,完全暴露在外面是极其不安全的,所以我们要把我们的接口进行签名。

    那签名有什么意义呢?

    1、保证数据未被篡改

    2、请求来源身份合法性

    3、请求的唯一性 (不可复制)

    那我们该如何实施呢:

    1、首先我们得给客户端分配对应的key和secret

    2、客户端访问数据接口之前需要用md5加密算法进行一次签名,签名内容是把我们提交的值转换成json字符串(用其他格式组织参数也行,反正客户端和服务端用同样的组织方式就行)加上我们的secret和时间戳一起签名,注意生成的签名需要生成大写字母。

    3、访问接口的时候需要提交我们签名参数 提交的值 和时间戳三个一起提交

    4、api服务端进行验证 首先通过key查询到客户端的secret ,然后验证时间戳是否过期,最后验证签名内容是否一致。如果签名一致的情况下说明数据未被篡改,同时表明了身份的合法性。

  • 相关阅读:
    网络编程
    反射函数与元类
    面向对象进阶
    对象的封装与接口
    对象继承
    面向对象
    包,logging模块与haslib模块
    闭包函数及装饰器
    函数对象、函数的嵌套、名称空间及作用域
    函数简介及函数参数介绍
  • 原文地址:https://www.cnblogs.com/xybs/p/12763567.html
Copyright © 2011-2022 走看看