LINUX.ORG.RU

[sha256sum][hashlib.sha256(pas.encode('...')).hexdigest()] Хеши у меня разные получаются...


0

1
$ echo 12345678 |sha256sum |awk '{print $1}'
2634c3097f98e36865f0c572009c4ffd73316bc8b88ccfe8d196af35f46e2394

$ echo 12345678 |sha256sum -b |awk '{print $1}'
2634c3097f98e36865f0c572009c4ffd73316bc8b88ccfe8d196af35f46e2394

$ echo 12345678 |sha256sum -t |awk '{print $1}'
2634c3097f98e36865f0c572009c4ffd73316bc8b88ccfe8d196af35f46e2394
$ python3
Python 3.1.2 (release31-maint, Jan 20 2011, 12:32:20) 
[GCC 4.4.4] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import hashlib
>>> pas='12345678'
>>> print (pas)
12345678
>>> print (hashlib.sha256(pas.encode('utf-8')).hexdigest())
ef797c8118f02dfb649607dd5d3f8c7623048c9c063d532cc95c5ed7a898a64f

>>> print (hashlib.sha256(pas.encode('ASCII')).hexdigest())
ef797c8118f02dfb649607dd5d3f8c7623048c9c063d532cc95c5ed7a898a64f
>>> quit()

Почему не совпадают хеши?


в добавок:

 >>> print (hashlib.sha256(b'12345678').hexdigest()) ef797c8118f02dfb649607dd5d3f8c7623048c9c063d532cc95c5ed7a898a64f 
sdh
() автор топика

pas='12345678\n'

anonymous
()
$ echo -n 12345678 | sha256sum 
ef797c8118f02dfb649607dd5d3f8c7623048c9c063d532cc95c5ed7a898a64f
$ echo 12345678 | od -A n -t x1
 31 32 33 34 35 36 37 38 0a
$ echo -n 12345678 | od -A n -t x1
 31 32 33 34 35 36 37 38
dmitry_vk ★★★
()

BTW, отдельно проверять UTF-8 и ASCII не нужно, так как первые 128 символов одинаково кодируются как в ASCII, так и в UTF-8.

nanonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.