Я пытаюсь продублировать следующий код Python на Erlang:
python -c "import random,string,crypt;
print crypt.crypt('example', '\$6\$5H0QpwprRiJQR19Y\$')"
OUTPUT: $6$5H0QpwprRiJQR19Y$B8EBtKxKU4Poxi.qLsL/t7uoriHX/cdnn9kT7kTsUIvwKPR6oJLOl8NAH8vPT.BNPdEY7a4.rz8YhziecWQ6I/
Из чтения онлайн:
- $ 6 $ указывает, что это хэш 512
- '5H0QpwprRiJQR19Y' - это соль для хэша
- в приведенном выше коде парольная фаза 'example'
Мой текущий код erlang ниже:
crypto:hash(sha512, "example5H0QpwprRiJQR19Y")
Который производит:
<<167,181,70,20,213,141,24,28,86,204,170,121,182,75,217,3,51,222,3,209,44,43,34,243,130,214,247,156,149,150,162,81,200,207,103,85,60,202,37,189,30,25,128,221,61,79,146,86,225,126,35,85,4,161,156,152,8,6,90,17,207,229,235,241>>
Я пытался манипулировать возвратом, но не могу заставить их соответствовать.