sha512 в php и sha512 на python не совпадают

Есть 2 кода, на Python и на php По идеи они должны выдавать одинаковый результат, но на практике нет.

python:

def hashpass(passsw, salt):
    alphabet = string.digits + string.ascii_lowercase
    for alpha in alphabet:
        print("','".join(alphabet))
    m = hashlib.sha512()
    m.update(salt.encode('utf-8'))
    m.update(passsw.encode('utf-8'))
    byte = m.digest()
    len_byte = len(byte)
    res = ''
    for b in byte:
        print(b)
        encoded = alphabet[b % 32]
        res += encoded 
    return res`

php:

    function hashPass($hash, $salt) {
    $masiv = ['0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'];
    $ar = array_values(unpack('C*', hash_hmac('sha512', $hash, $salt, true)));
    echoh ($ar);
    $size = strlen($ar);
    $str = '';
    foreach($ar as $byte) {
        echoh($byte.'-'.$masiv[$byte % 32]);
        $str .= $masiv[$byte % 32];
    }
    return $str;
}

Везде я сую одинаковый пароль и соль.


Ответы (0 шт):