SSL或代码签名证书

时间:2016-05-05 07:31:05

标签: web-services ssl https certificate ssl-certificate

我们必须确保我们的REST服务是安全的,我们正在考虑使用SSL证书,但有人建议使用代码签名证书,我不确定它是否会提供HTTPS协议和安全客户端/服务器通信。 (点对点) 互联网上没有太多的信息,如果有人可以详细说明,它会有所帮助,如果代码签名证书也会在浏览器中使用https进行安全的客户端/服务器通信,我会知道。

提前致谢。

2 个答案:

答案 0 :(得分:2)

  

...但是有人建议使用代码签名证书,我不确定它是否会提供HTTPS协议和安全的客户端/服务器通信。

代码签名无济于事。 Web安全模型不是这样设置的。关于这个主题的一些好的阅读是STREWS web security report。它突出了几乎所有安全功能,但它经常忽略安全漏洞(即,它无法记录风险)。

在当前模型下,浏览器无论来自何处都执行代码。它可能是HTTPS,HTTP或由坏人注入。随着“作为平台的浏览器”的扩展并变得更加全面以与本机应用程序保持一致,当前的模型不能满足需求。这是因为有些API处理敏感数据,如相机,麦克风和位置,所以需要的不仅仅是“任何代码都可以从任何地方运行”。

网络模型正在向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与其applet和沙箱相同的错误。处理授权就好像是身份验证一样,使得Java变得非常糟糕,建议变成“不要求任何权限,因为它允许你打破沙箱(只有恶意软件要求权限)”。如需更多阅读,请参阅Java’s Losing Security Legacy

答案 1 :(得分:0)

有人不知道他们在说什么。 SSL端点使用SSL证书进行保护。代码使用代码签名证书进行保护。两个人永远不会见面。