Вы можете использовать библиотеку Python. На моей системе Fedora я сделал:
sudo dnf search bcrypt
(sudo просто для того, чтобы не тратить пространство на пользовательский dnf-кеш) и из результата видно, что есть пакеты Python2 и Python3:
py-bcrypt.x86_64 : Python bindings for OpenBSD's Blowfish password hashing code
python3-py-bcrypt.x86_64 : Python 3 bindings for OpenBSD's Blowfish password hashing code
Установите версию Python2 и перечислите файлы в пакете:
sudo dnf install py-bcrypt.x86_64
rpm -ql py-bcrypt.x86_64
Это показывает, что есть файл, /usr/lib64/python2.7/site-packages/bcrypt/__init__.py
поэтому я могу получить документацию с
pydoc bcrypt
Этого достаточно, чтобы написать следующую команду, которая хеширует строку "password"
:
$ python -c 'import bcrypt; print(bcrypt.hashpw("password", bcrypt.gensalt(log_rounds=10)))'
$2a$10$vWFRZgbOx6RKOKYxCTtyWuMJM60E90Vdm/.0nj.X/o3dYUxvQ/2Dm
Для более поздних версий bcrypt
используйте rounds=
вместо log_rounds=
.