作者:被爱的李义9_556 | 来源:互联网 | 2023-05-24 12:41
1> ucdream..:
最后正确的方法是
signature = 'sha1=' + hmac.new(APP_KEY, request.body, hashlib.sha1).hexdigest()
if signature == request.META.get('HTTP_X_HUB_SIGNATURE'):
do_something()
嘿,首先感谢您发布使用的解决方案。我知道这太老了,但是对于将来的那些人,不要使用`==`进行比较,而是使用“ compare_digest”进行比较。我在hmac的文档中看到了类似以下的警告。>警告在验证例程中将hexdigest()的输出与外部提供的摘要进行比较时,建议使用compare_digest()函数而不是==运算符来减少定时攻击的脆弱性。