http 接口请求和响应数据防止被篡改 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
httpbin - 协议调试工具
httpstatuses - 协议状态码查询
httpie - cURL-like tool for humans
Fiddler
hymie
V2EX    HTTP

http 接口请求和响应数据防止被篡改

  •  
  •   hymie 2017-04-12 11:04:59 +08:00 4955 次点击
    这是一个创建于 3115 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近在做两个系统的数据对接工作,在设计 http 接口文档的时候,请求数据中加了一个的签名参数,防止请求数据被篡改。

    领导对我的文档提出两点修改意见:

    1.请求参数在增加一个参数,标识这个请求的编号 2.响应数据也新增一个签名参数,防止响应数据被篡改

    我很少看到这样的做法 1http 请求本身就是无状态的,加一个请求编号意义不大。 2 如果是 ajax 请求,还要在前端判断响应数据是否一致,这样做是否有用和有必要。

    领导对数据传输安全比较重视,请各位发表一下看法,怎么做比较合适,我该如何说服他。

    14 条回复    2017-04-12 13:21:47 +08:00
    fenixan2010
        1
    fenixan2010  
       2017-04-12 11:12:28 +08:00
    上 https 吧
    maemual
        2
    maemual  
       2017-04-12 11:27:58 +08:00
    所以为什么不上 HTTPS
    xenme
        3
    xenme  
       2017-04-12 11:30:55 +08:00
    加个签名就够了,序号没啥必要
    shoaly
        4
    shoaly  
       2017-04-12 11:31:45 +08:00
    加一个 编号是有用的, 防止重放攻击, 也就是说 对于服务器, 同一个编号 无法连续访问 2 次
    hymie
        5
    hymie  
    OP
       2017-04-12 11:32:17 +08:00
    @fenixan2010 对忘了说,目前还不支持 HTTPS ,我会去建议一下
    hymie
        6
    hymie  
    OP
       2017-04-12 11:32:45 +08:00
    @maemual 对忘了说,目前还不支持 HTTPS ,我会去建议一下
    hymie
        7
    hymie  
    OP
       2017-04-12 11:33:27 +08:00
    @shoaly 那返回数据呢,有必要签名加密返回吗
    maemual
        8
    maemual  
       2017-04-12 11:35:46 +08:00
    @hymie #6 因为你目前的基于 HTTP 的安全方案搞到最后,就变成 HTTPS 了。。。。。
    shoaly
        9
    shoaly  
       2017-04-12 11:39:00 +08:00
    签名 有没有必要 主要看 你的需求啊, 如果需要表明数据没有被篡改过. 那就两边都加, 没加的都是不可信的
    mhycy
        10
    mhycy  
       2017-04-12 11:39:07 +08:00
    很显然,这是在实现 HTTPS 的代替品,签名加密返回还是有意义的
    zooandzoo
        11
    zooandzoo  
       2017-04-12 11:43:31 +08:00
    你可以参考微信支付的接口是怎么传的并不难,老板问你你就说微信也是这么做的。
    U7Q5tLAex2FI0o0g
        12
    U7Q5tLAex2FI0o0g  
       2017-04-12 11:51:21 +08:00
    很多支付系统接口都是双向校验的
    tinyproxy
        13
    tinyproxy  
       2017-04-12 13:15:52 +08:00 via iPhone
    请求参数加签名不是为了防低级 CC 或者滥用么。。。至于请求编号,你们 log 能 hook 上才有意义。。。
    akira
        14
    akira  
       2017-04-12 13:21:47 +08:00
    编号参数在特定情况下用处很大的。双向签名也不奇怪呀,不过客户端你校验与否就是另外一回事了。

    ----------------------
    搞这么多事情,不如上个 https
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5198 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 01:14 PVG 09:14 LAX 18:14 JFK 21:14
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86