gpt4 book ai didi

java - Facebook 实时更新 : Validating X-Hub-Signature SHA1 signature in Java

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:54:59 26 4
gpt4 key购买 nike

当 Facebook 发送实时更新时,它们会在 HTTP header 中包含一个 X-Hub-Signature。根据their documentation ,他们使用 SHA1 和应用程序 secret 作为 key 。

基于 similar question对于 C#,我尝试像这样验证签名('body' 是 facebook 在请求正文中发送的消息):

String passedSignature = req.getHeader("X-Hub-Signature").substring(5);
Mac hmac = Mac.getInstance("HmacSHA1");
hmac.init(new SecretKeySpec(FACEBOOK_SECRET.getBytes(Charset.forName("UTF-8")), "HmacSHA1"));
String calculatedSignature = Hex.encodeHexString(hmac.doFinal(body.getBytes(Charset.forName("UTF-8"))));
logger.debug("Calculated sigSHA1: " + calculatedSignature + " passedSignature: " + passedSignature);

但是 passedSignature 总是不同于 calculatedSignature。

谁能帮忙解决问题?

最佳答案

原来密码是正确的,我用错了 key :-/

无论如何,我希望这可以帮助其他人。

关于java - Facebook 实时更新 : Validating X-Hub-Signature SHA1 signature in Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17221253/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com