Генерация пароля Mosquitto в Python - PullRequest
0 голосов
/ 05 августа 2020

Можно ли сгенерировать зашифрованный пароль Mosquitto с помощью python? Он предназначен для автоматического c создания новых пользователей, но избегает вызова mosquitto_passwd с помощью вызова командной строки.

1 Ответ

0 голосов
/ 10 августа 2020

Вот простое решение:

#!/usr/bin/python3

import hashlib
import base64
import random

print()

chars   = b'0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'

salt    = bytes([random.choice(chars) for i in range(16)])
saltB64 = base64.b64decode(salt)

passwd  = b'Hello World!'

m = hashlib.sha512()
m.update(passwd)
m.update(saltB64)
dg = m.digest()

print('$6$%s$%s' % (repr(salt)[2:-1],repr(base64.b64encode(dg))[2:-1]))
...