关于签名与验签一般都要求在服务器端进行更安全,这样客户端每次调用服务器获取加签后的参数,然后去请求第三方url。但是有个漏洞是,如何保证客户端请求服务器获取签名数据的安全性?? 400 报错
关于签名与验签一般都要求在服务器端进行更安全,这样客户端每次调用服务器获取加签后的参数,然后去请求第三方url。但是有个漏洞是,如何保证客户端请求服务器获取签名数据的安全性?如果有人向你的获取签名的url发送请求获取到签名后请求第三方就没办法了。
签名是保证数据的完整性与不篡改.
加密是保证安全不被别人查看到明文.
不是一回事.
######这点我当然清楚,加签本身就是防篡改。签名本身是用到了加密的。加密方案如果放到客户端就容易泄露。如果放到服务端你调用获取签名及内容看似安全,但是你调用获取黑客也可以获取。除非你获取的url也加签,这样就是个无限循环。######为什么要请求服务器获取签名,签名是客户端直接就做好了然后船王服务器验证码?
######回复 @小桥流水凌凌漆 : 你浏览器里面要做签名?######回复 @关河 : 秘钥在客户端,如果是app还好。如果是浏览器,一定会泄露,因为逻辑就在js里写。对所有人可见的######回复 @小桥流水凌凌漆 : 秘钥分配给你啊,秘钥不泄露不就行了######客户端比如浏览器你要做签名 要有签名工具,要有秘钥。这种东西放在客户端,很容易就泄露了。别人拿到这些东西想怎样就怎样。######你说的也有道理,主要就是这个secret如何安全不泄露出去,但是互联网通信几乎没有一定安全的吧,签名也只是相对安全的做法
######https相对能做到信息的加密,做不到100%防篡改。只做到客户端对服务器的信任,做不到服务器对客户端信任。token本来可以做到对客户端信任,但是由于在客户端导致容易被泄露。所以密码、签名。再互联网就是个永恒的循环无解。支付表秘钥也只是把责任推给了商户,商户把秘钥丢了怪不着支付宝,不是终极解决方案。还是要保证客户端代码不透明,直接客户端做签名才行。版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。