Code: Select all
$ openssl passwd -1 -salt stack overflow
$1$stack$MVcBmQ3RlrBu5Xoj74NBA0
Code: Select all
$ openssl passwd -1 -salt stack overflow | cut -f 4 -d '$'
MVcBmQ3RlrBu5Xoj74NBA0
Code: Select all
salt = b'stack'
input = b'overflow'
output = hashlib.md5(salt + input).hexdigest()
print(output)
73868cb1848a216984dca1b6b0ee37bc
Code: Select all
salt = b'stack'
input = b'overflow'
output = hashlib.md5(salt + input).digest().decode()
print(output)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x86 in position 1: invalid start byte
Code: Select all
$ openssl passwd -salt stack overflow
st22n6QiCXNQY
< /code>
salt = 'stack'
input = 'overflow'
output = crypt.crypt(input, salt)
print(output)
st22n6QiCXNQY
< /code>
But as soon openssl passwd -1
steht
Code: Select all
-1 MD5-based password algorithm
< /code>
I cannot reproduce it anymore.
How can I recreate MD5-based password algorithm in Python? I would preferably use hashlib