【问题标题】:Secure authentication without SSL?没有 SSL 的安全身份验证?
【发布时间】:2011-04-07 12:08:47
【问题描述】:

我正在为最终用户创建一个 Web 服务,该服务将具有 Adob​​e AIR 桌面应用程序形式的前端,但用户也可以通过该网站访问他们的数据。用户数据将在服务器和本地数据存储之间同步。问题是我无法获得 SSL 证书。有没有办法让这更安全....

我想我可以使用两腿式 oAuth 或类似 Amazon S3 的身份验证系统吗?
在这种情况下你有什么建议?

【问题讨论】:

标签: web-services security web-applications oauth air


【解决方案1】:

第一个问题是:为什么拿不到SSL证书?我能想到两个原因:

  1. SSL 证书太贵了
  2. 您不希望有第三方颁发的证书

如果您的问题是 #1,StartSSL 会提供有效期为 1 年的免费证书,或者对有效期为 2 年的无限制证书(包括通配符)收费 50 美元。它们得到 Mozilla 和 Microsoft 信任库的认可。

如果问题是 #2,为什么不颁发自签名证书并将其硬编码到您的应用程序中?这根本不会损害系统的安全性(只有您的特定证书会被应用程序接受),但无需从其他地方“获取” SSL 证书。

如果您真的不能使用 SSL,请查看诸如 Kerberos 之类的质询-响应系统或 Diffie-Helman 之类的匿名密钥材料生成器(使用非对称密钥进行服务器身份验证)。存在许多通过不安全线路进行安全两方身份验证的方法。关键是身份验证步骤必须是challenge-response,而不是“向我发送你的秘密”方案。

【讨论】:

  • 即使 SSL 证书是免费的,我也无法访问静态 IP。
  • @Shubhkarman:谁告诉你需要静态 IP 才能使用 SSL?他们错了。没有静态 IP 的问题是很难在客户端和服务器之间建立连接。但您可以使用动态 DNS 服务进行管理。
  • 某些主机要求您拥有静态 IP,因为共享主机对每个人都使用相同的 IP,并且您不能在多个站点上使用默认端口 (443)。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2010-11-24
  • 1970-01-01
  • 2023-03-02
  • 2021-07-23
  • 1970-01-01
  • 2010-09-16
相关资源
最近更新 更多