如何发起https请求并加密POST参数?

问题描述 投票:0回答:2

我开发了一个移动应用程序,通过 RESTful API 连接到我的 Web 服务。

现在,我需要有人可以通过 WireShark 嗅探我的 API 来保护它。我只需要以某种方式隐藏我的 URL 和 POSTed 参数...我该怎么做?

我的风险是,如果“某人”获取了我的 API 的 Url 并更改了每个请求的 user_id 参数,则可能会充当其他用户,并做坏事...

(我不使用Oauth 2.0)

ios rest https ios5
2个回答
0
投票

实现此目的最简单的方法是使用 HTTPS

客户端连接服务器

客户端和服务器执行 SSL 握手 客户端发送加密的内容,例如

POST /resource/ HTTP1.1 

Name=Jonathan+Doe&Age=23&Formula=a+%2B+b+%3D%3D+13%25%21

0
投票

第一步是切换到 HTTPS。这将加密您的 POST 参数。

第二步是修复协议以对用户进行身份验证。始终可以对您的协议进行逆向工程。如果唯一的身份验证是 user_id 参数,那么您很容易受到攻击。再多的混淆也无法保护你。您的协议必须能够抵御未经授权的应用程序的连接。

© www.soinside.com 2019 - 2024. All rights reserved.