首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用非对称密钥签名webhooks

用非对称密钥签名webhooks
EN

Security用户
提问于 2019-02-07 20:15:36
回答 2查看 425关注 0票数 0

我想用JSON签名( JWT标准的一部分)对web服务中的webhooks进行签名,理想情况下使用非对称密钥(所以,使用RSA或椭圆曲线加密)。

发布我的公钥的推荐或标准方法是什么?有存放公钥的标准场所吗?它应该依赖CA吗?最终,我试图找到最“标准”的方式签署不对称密钥的网络钩子。

EN

回答 2

Security用户

发布于 2019-03-27 21:21:26

把它张贴在你的网站上。

对于大多数网络服务来说,你的网站就是你的身份。如果您在您的网站上发布您的公钥,任何通过一个安全的HTTPS连接访问它的人都可以合理地确定它属于您。如果您以任何其他方式发布它,您将需要某种方式连接到您的网站,以确保它是合法的用户。

票数 2
EN

Security用户

发布于 2019-02-24 13:15:54

发布我的公钥的推荐或标准方法是什么?有存放公钥的标准场所吗?

分发公钥的最佳方法是通过(PGP)密钥服务器。这里有两个著名的例子:Ubuntu麻省理工学院。您还可以将其发布到多个服务器,以使客户端更容易找到它。

请注意,这只负责分发。您仍然需要处理用户将如何信任此密钥。很可能,你需要在你的网站上公布PGP密钥的指纹。此时,最好直接发布您的公钥。

它应该依赖CA吗?

这不是一项要求。尽管您可以获得一个证书并将其分发给将与您的web钩子一起调用的各方,但这仍然需要您的用户实现自定义验证逻辑,因为这不是一个标准。这将解决信任问题,前提是CA受到用户的信任。

最终,我试图找到最“标准”的方式签署不对称密钥的网络钩子。

我不知道有什么标准。我认为最接近这个的是下面的流程。

  1. 有人注册到您的服务并设置一个web钩子。
  2. 您以某种方式给他们一个公钥(keyserver,直接发布),他们可以用来验证来自您的调用。
  3. 当触发web钩子时,使用相应的私钥对其进行签名。
  4. 接收端使用预共享公钥验证您的web钩子。

如果没有标准,您就无法绕过客户端需要实现自定义逻辑这一事实。您可以为他们提供一个库,用于进行密钥查找和验证。

票数 -1
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/203182

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档