Security 如何保护webhook身份
我正在开发一项服务,客户可以注册他们的webhook URL,我将发送注册URL的更新。为了安全起见,我想让客户机(接收方)识别发送请求的是我(服务器) 两者都发送一个Security 如何保护webhook身份,security,cryptography,jwt,webhooks,hmac,Security,Cryptography,Jwt,Webhooks,Hmac,我正在开发一项服务,客户可以注册他们的webhook URL,我将发送注册URL的更新。为了安全起见,我想让客户机(接收方)识别发送请求的是我(服务器) 两者都发送一个X-Hub-Signature,其中包含以密钥为前缀的有效负载哈希 我可以遵循同样的策略。但是如果我简单地使用jwt: 在注册webhook时,我与客户端共享一个密钥 然后在每个webhook请求中,我将发送一个使用相同密钥计算的jwt 我对密码学了解不多,但jwt方法似乎更有效,因为我不必反复计算签名,因为我没有在签名中使用有效
X-Hub-Signature
,其中包含以密钥为前缀的有效负载哈希
我可以遵循同样的策略。但是如果我简单地使用jwt
:
编辑:使用JWT是可以的,因为它包括一个MAC,但您必须确保有效负载经过身份验证(即包括在MAC的计算中)。同意!但是关于
在每条消息中发送一个秘密是不明智的,因为这可能会导致秘密被泄露代码>我发送的不是简单的秘密。我将发送jwt
。看起来我误读了你的部分问题。JWT包括一个MAC。您需要在MAC/JWT的计算中包含有效负载,否则攻击者可以使用不同的有效负载重用MAC。