dan*_*iel 2 javascript security rsa public-key
我需要向我的服务器发送一个ajax POST请求.
我需要确保请求源自脚本本身,而不是来自用户自己编写请求的用户.有没有安全的方法来做到这一点?脚本可以对POST请求进行签名或编码,稍后由服务器的私钥解密吗?我可以以某种方式阻止用户使用我的公钥加密?
我不是仅仅为了过滤目的而这样做 - 所以普通的旧服务器端验证不会这样做.
您在Javascript中所做的任何事情都可以被看到和分析,因为它发生在客户端.因此,安全地加密客户端信息几乎是不可能的.这使得服务器成为您可以并且需要进行验证的唯一点.
另外,为什么您会关注输入来自您的脚本还是由用户手工制作?如果输入有效且允许按照规则定义,则不应有任何区别.
对于这种情况,如果有疑问,您需要了解客户端/服务器分离的重要性.您的服务器是您的应用程序,它是您需要处理的唯一关键组件.每个输入通常都是不可信的,每个输出必须完全符合您的要求.
您交给用户的HTML/JS界面只是帮助人们与您的服务器进行通信,但这并不意味着它一旦离开您的服务器就值得信赖或安全.
其他答案是正确的:这根本不可能.从务实的角度来看,你可以做的最好的事情就是研究一些非常讨厌的方法来混淆你的JavaScript,以阻止那些可能试图看到它的人,但你可以放心,有动力的人可以毫不费力地解决这个问题. .http://en.wikipedia.org/wiki/Obfuscated_code
| 归档时间: |
|
| 查看次数: |
3683 次 |
| 最近记录: |