2012-03-11 18 views
18

Chcę przekazać moich gości do płatnej strony trzeciej. Ten 3rd party będzie przetwarzać ich wypłaty i post mi token 64 znaków wygenerowany z unikalnym numerem porządkowym i udostępnionego hasło używając PHP hash_hmac przy użyciu algorytmu SHA256, tak:Czy istnieje odpowiednik hash_hmac PHP w Pythonie/Django?

$token = hash_hmac("sha256", "12345", "sharedpassword"); 

Następnie chcę korzystać z tego samego algorytmu na moim końcu, aby wygenerować (mam nadzieję) ten sam token, aby zweryfikować, czy użytkownik zapłacił. Problem polega na tym, że nie mogę znaleźć równoważnej funkcji ani sposobu replikowania funkcji w Pythonie. Najbliższy, do którego przyszedłem, to Python hashlib, ale wydaje się, że nie ma funkcji, która może przyjąć 2 argumenty - dane i wspólne hasło. Czy ktoś wie o odpowiedniku hash_hmac, który miałby zastosowanie w tym przypadku?

Odpowiedz

40

Chcesz hmac.

hmac.new("sharedpassword", "12345", hashlib.sha256).hexdigest() 
+1

Dziękujemy! Domyślam się, że moje google-fu wymaga honowania. – kshen

Powiązane problemy