我正在为最终用户创建一个Web服务,它将以Adobe AIR桌面应用程序的形式提供前端,但用户也可以通过网站访问他们的数据。用户的数据将在服务器和本地数据存储之间同步。问题是我无法获得SSL证书。有没有办法让这更安全......
我想我可以使用像两条腿的oAuth或像Amazon S3这样的身份验证系统吗? 在这种情况下你会推荐什么?
答案 0 :(得分:4)
第一个问题是:为什么你不能获得SSL证书?我可以想到两个原因:
如果您的问题是#1,StartSSL提供1年有效期的免费证书,或者对于有效期为2年的无限期证书(包括通配符)收取50美元。它们被Mozilla和Microsoft信任商店都认可。
如果问题是#2,为什么不发布自签名证书并将其硬编码到您的应用程序中?这根本不会损害系统的安全性(只有您的特定证书才会被应用程序接受),但无需从其他地方“获取”SSL证书。
如果您确实无法使用SSL,请查看质询 - 响应系统(如Kerberos)或匿名密钥材料生成器(如Diffie-Helman)(使用非对称密钥进行服务器身份验证)。存在许多用于在不安全线路上进行安全双方认证的方法。关键是ID验证步骤必须是质询 - 响应,而不是“发送给我你的秘密”方案。