Эквивалентная замена crypt.crypt?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Эквивалентная замена crypt.crypt?

Сообщение Anonymous »

Есть ли замена модуля Python crypt для кода, показанного ниже?
Модуль crypt в стандартной библиотеке Python устарел. При импорте отображается следующее предупреждение:

Код: Выделить всё

DeprecationWarning: 'crypt' is deprecated and slated for removal in Python 3.13
Согласно документации Python, пакет passlib может заменить все варианты использования этого модуля.
Вот первая попытка замены crypt.crypt один в один, но вывод отличается от того, что генерирует crypt.

Код: Выделить всё

import base64
import crypt
import secrets
from passlib.hash import sha512_crypt

secret_bytes = secrets.token_bytes(60)
secret = base64.standard_b64encode(secret_bytes).decode()

pw = sha512_crypt.using(salt='').hash(secret).split('$')[-1]
print(f'passlib: $6$${pw}')
pw = crypt.crypt(secret, salt='$6$')
print(f'crypt:   {pw}')
Вывод

Код: Выделить всё

passlib: $6$$hdHFHtZ76R54qDgAEh607JrTGwjhphIdb3PYVr6gxiyV1oaDXTuuX/6IfPfqUVWUEhdK3U97tgoObPrDtzeJl.
crypt:   $6$$0d/bb9nahTRv6XcGU4pCx..4/rzTcfg4hIGdihTK8M1DPC4PqVzMOEgz8O9DKG14yKE4uQZQdDXC8gl3hkINM0
Какие изменения кода необходимы, чтобы выходные данные passlib совпадали с выводами crypt?


Подробнее здесь: https://stackoverflow.com/questions/785 ... rypt-crypt
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»