【问题标题】:secure communication with the server - solution与服务器的安全通信 - 解决方案
【发布时间】:2013-09-12 03:50:52
【问题描述】:

我目前面临安全服务器通信的问题。我是一名移动开发人员,我尝试设计 REST(JSON 输出)。为了理解这个问题,让我向您展示我的应用程序中的一个流程:

  1. 第一个用户登录应用程序
  2. 然后可能会下载一些个人信息
  3. 当用户在应用程序中移动时,我想一直与服务器通信。

所以我认为登录名和密码将通过 SSL 发送(对吗?错了?这是第一个问题,也许我应该选择 OAuth?),但是然后呢?我收到登录名和密码,将其存储到我的钥匙串中,是否应该对所有用户开放其他服务?我认为第一次请求中的 SSL 只是表面上的安全性,而不是真正的安全性。

让我向你展示我目前的 REST:

登录:

请求:

https://mywebsiteforrest.com/getin

然后我把标题username=root&password=pass

回复:

{
   "status":100, /*This status tell me that everything is OK */
   "userKey":"432fdsf732fds7fstsw87frd7s5fd",
   "timestamp":1378651048,
   "userId: 342
}

以后的请求:

请求:

https://mywebsiteforrest.com/getmydata

然后我把标题userId=342&key=432fdsf732fds7fstsw87frd7s5fd

或者我应该这样要求: https://mywebsiteforrest.com/getmydata/342&key=432fdsf732fds7fstsw87frd7s5fd?

我正在寻求建议是安全的还是(就像我之前所说的)表面上的安全。我知道你讨厌这个问题,但是 - 这样做的正确方法是什么?

【问题讨论】:

    标签: ios rest mobile ssl oauth


    【解决方案1】:

    我建议使用标题。

    标头是完全加密的。通过网络“明文”传输的唯一信息与 SSL 设置和 D/H (http://en.wikipedia.org/wiki/Diffie%E2%80%93Hellman_key_exchange) 密钥交换有关。这种交换的设计方式不会向任何第三方或未经授权的人提供任何有用的信息,并且一旦发生,所有数据都会被加密。

    【讨论】:

      猜你喜欢
      • 2015-01-15
      • 1970-01-01
      • 1970-01-01
      • 2012-04-16
      • 2017-08-28
      • 1970-01-01
      • 1970-01-01
      • 2021-01-12
      • 2019-02-15
      相关资源
      最近更新 更多