sha-512를 사용하여 hmac를 계산하려고합니다.왜 hmac이 파이썬에서는 잘못된 결과를 얻지 만 Perl에서는 잘못된 결과를 얻지 못합니까?
펄 코드 :
9656975ee5de55e75f2976ecce9a04501060b9dc22a6eda2eaef638966280182
477fe09f080b2bf564649cad42af8607a2bd8d02979df3a980f15e2326a0a22a
,174의 잘못된 해시를 제공
import hashlib, hmac
print hmac.new("\x0b"*20, "Hi There", hashlib.sha512).hexdigest()
:
use Digest::SHA qw(hmac_sha512_hex);
$key = "\x0b"x20;
$data = "Hi There";
$hash = hmac_sha512_hex($data, $key);
print "$hash\n";
및
87aa7cdea5ef619d4ff0b4241a1d6cb02379f4e2ce4ec2787ad0b30545e17cde
daa833b7d6b8a702038b274eaea3f4e4be9d914eeb61f1702e696c203a126854
파이썬 버전의 올바른 해시를 제공합니다
파이썬 버전이 나에게 잘못된 해시를 제공하는 이유는 무엇입니까?
편집 :
버전
파이썬 2.5.1입니다 (R251 : 54,863 2009 년 1 월 13 일 10시 26분 13초)
[GCC 4.0.1 (애플사가 5465을 구축)] 다윈
의 MacPorts의 버전하십시오 버전 정보를 제공하십시오 –
그건 ... 정말 이상한 버전 문자열입니다. 귀하의 2.5.1은 나의 (구식 인) 2.5.2보다 새로운 * 올해 *입니까? 참으로 이상한 일입니다. 아마도 2.5.4로 업데이트를 시도해보십시오 (패키지를 손상시키지 않아야 함)? – kquinn