我正面临着解密的问题。我正在传递加密值,面临着解密的问题。请帮我解决这个问题。提前谢谢。
代码:
#!/usr/bin/env/python
from cryptography.fernet import Fernet
def decrypt_message(message):
print('message recieved',message)
key=Fernet.generate_key()
print('key', key)
f=Fernet(key)
print(f)
decrypted_message=f.decrypt(message)
return decrypted_message
if __name__ == '__main__':
decrypt_message("gAAAAABfXuoyHoPiHXpRmM6vVslU2B5u7lZ-Q1Q_zC0MbxbQomycVogHJdrkpej16uhX8KxDbvRe66n2Jew7GHS_YukIT0M9ew==")错误:
root@5CG7242QFY:~# python decrypt.py
('message recieved', 'gAAAAABfXuoyHoPiHXpRmM6vVslU2B5u7lZ-Q1Q_zC0MbxbQomycVogHJdrkpej16uhX8KxDbvRe66n2Jew7GHS_YukIT0M9ew==')
('key', '4k8-dtzXqWSlA3wSfNoSa3UmNmXHBgu-bSbPO3uVfuI=')
<cryptography.fernet.Fernet object at 0x7fc8134b9d50>
Traceback (most recent call last):
File "decrypt.py", line 14, in <module>
decrypt_message("gAAAAABfXuoyHoPiHXpRmM6vVslU2B5u7lZ-Q1Q_zC0MbxbQomycVogHJdrkpej16uhX8KxDbvRe66n2Jew7GHS_YukIT0M9ew==")
File "decrypt.py", line 10, in decrypt_message
decrypted_message=f.decrypt(message)
File "/usr/lib/python2.7/dist-packages/cryptography/fernet.py", line 103, in decrypt
raise InvalidToken
cryptography.fernet.InvalidToken发布于 2020-09-16 07:29:51
Fernet令牌是对称加密值。这意味着它们只能使用用于加密它们的相同密钥进行解密。在您的示例中,每次调用decrypt_message()时都会生成一个新密钥,然后尝试解密现有的令牌。如果这起作用,那将是一个灾难性的安全问题。
https://stackoverflow.com/questions/63897110
复制相似问题