【问题标题】:How to choose your own password in cryptography library in python? [duplicate]如何在 python 的密码库中选择自己的密码? [复制]
【发布时间】:2021-03-29 14:52:04
【问题描述】:

我有这个示例代码,它通过 fernet 函数生成密钥(密码)来加密字符串,但我想做的是自己选择密码。请问我该怎么做?

from cryptography.fernet import Fernet
key = Fernet.generate_key()
print(key)
message = "Hello World".encode()
key_obj = Fernet(key)
encrypted_message = key_obj.encrypt(message)
print(encrypted_message)
decrypted_message = key_obj.decrypt(encrypted_message)
print(decrypted_message)

【问题讨论】:

标签: python-3.x encryption cryptography python-cryptography


【解决方案1】:

Fernet 使用带有“32 url-safe base64-encoded”的密钥。如果你想设置自己的密码,它应该是 32 字节,例如:

from cryptography.fernet import Fernet
import base64
key = base64.urlsafe_b64encode(b"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA")
print(key)
message = "Hello World".encode()
key_obj = Fernet(key)
encrypted_message = key_obj.encrypt(message)
print(encrypted_message)
decrypted_message = key_obj.decrypt(encrypted_message)
print(decrypted_message)

【讨论】:

    猜你喜欢
    • 2018-08-06
    • 2011-07-14
    • 2013-09-09
    • 1970-01-01
    • 2011-10-24
    • 2015-12-04
    • 1970-01-01
    • 2017-07-05
    • 2019-05-03
    相关资源
    最近更新 更多