我们必须确保我们的REST服务是安全的,我们正在考虑使用SSL证书,但有人建议使用代码签名证书,我不确定它是否会提供HTTPS协议和安全的客户端/服务器通信。 (点对点) 互联网上没有太多可用的信息,如果有人可以详细说明,并且让我知道代码签名证书是否也会在浏览器中使用https来实现安全的客户端/服务器通信,将会有所帮助。SSL或代码签名证书
在此先感谢。
我们必须确保我们的REST服务是安全的,我们正在考虑使用SSL证书,但有人建议使用代码签名证书,我不确定它是否会提供HTTPS协议和安全的客户端/服务器通信。 (点对点) 互联网上没有太多可用的信息,如果有人可以详细说明,并且让我知道代码签名证书是否也会在浏览器中使用https来实现安全的客户端/服务器通信,将会有所帮助。SSL或代码签名证书
在此先感谢。
...然而,有人建议使用代码签名证书,我不确定它是否会提供HTTPS协议和安全的客户端/服务器通信。
代码签名无济于事。网络安全模型不是以这种方式设置的。关于这个问题的一些很好的阅读是STREWS web security report。它突出显示了几乎所有的安全功能,但通常会忽略安全漏洞(即它没有记录风险)。
在当前模型下,浏览器执行代码,无论它来自何处。它可能是HTTPS,HTTP或由坏人注入。随着“作为平台的浏览器”扩展并变得更加全面,可以与本地应用程序保持一致,目前的模式并不能满足需求。这是因为有些API会处理敏感数据,例如Camera,Microphone和Location,所以需要比“任何代码都可以从任何地方运行”更多的东西。
网络的模型正朝着Secure Origins移动,以授权代码在与敏感数据相交时运行。 安全来源所需的唯一东西是用于标识主机的服务器证书。另请参阅Chrome中的Prefer Secure Origins For Powerful New Features以及IETF的web-app-sec邮件列表上的各种讨论。
现在应该提到网络的好时间,使飞跃认证是授权。 X509证书只能识别服务器;它不授权任何特权本身。证明主机身份的CA不会使这些索赔或保证远离它。和Public Key Pinning with Overrides breaks the presumptions of Secure Contexts。
身份验证是授权是Java与其小程序和沙箱所犯的同样的错误。将Java授权视为身份验证非常糟糕,以至于建议变为“不要求任何权限,因为它允许您跳出沙箱(并且只有恶意软件才会请求权限)”。欲了解更多信息,请参阅Java’s Losing Security Legacy。
有人不知道他们在说什么。 SSL端点使用SSL证书进行保护。代码使用代码签名证书进行保护。从来没有两个人见面。
我认为你说的是对的,但是我们在讨论结束时已经清楚了,任务完成了。 – xslguy
谢谢,这是非常有用的,我会花时间去理解这一点,如果你还详细说明了代码签名证书及其用于HTTPS通信,我理解它可能是基本的,但我在加密技术方面相对天真。 – xslguy
@xslguy - 没有代码签名,因为它适用于HTTPS和Web服务。或者我没有意识到任何标准化。例如,请参阅[静默网络服务“代码签名”](http://www.google.com/search?q=restful+web+service+“代码+签名”)。 – jww
您的意思是说HTTPS应该足够用于点对点安全性,不需要代码签名证书。我仍然试图了解这个证书的使用情况,它与SSL证书有何不同以及它如何提供帮助,因此我无法在Google上得到明确的答案。 – xslguy