Wenn Sie aus Sicherheitsgründen Hashes usw. verwenden, wird diese verstümmelt und unlesbar, auch wenn sie wie beim Drucken angezeigt wird. Dies ist also ein Memo, als ich damit herumgespielt habe.
'test' == b'test'
Da es sich um einen srt-Typ und einen Byte-Typ handelt, ist dies natürlich unterschiedlich, sodass False zurückgegeben wird.
'test'.encode('utf-8') == b'test'
True wird zurückgegeben, da str in den Bytetyp konvertiert wird.
from binascii import hexlify
hexlify(b'A')
"B'41 '" wird zurückgegeben.
from binascii import unhexlify
unhexlify(b'41')
Da es das Gegenteil von hexlify ist, wird "b'A '" zurückgegeben.
b'A'.decode('utf-8')
import hashlib
from binascii import hexlify
origin = 'Ah'
encoded_origin = origin.encode('utf-8')
hash_obj = hashlib.sha256()
hash_obj.update(encoded_origin)
digest = hash_obj.digest()
print(digest) #Menschen können nicht lesen
print(hexlify(digest)) #Für Menschen lesbar
Recommended Posts