我正在尝试使用密码学来加密字典

问题描述 投票:0回答:1

我正在尝试制作一个密码锁,它接受输入并加密数据,并且还尝试将数据保存到字典中并仅加密值。

from cryptography.fernet import Fernet 
key = Fernet.generate_key() 
f = Fernet(key)
loc = {}  # an empty dict that stores the keys and values
title = input('enter your title: ')  # getting user title as key
secret = input('enter your secret: ') # getting secret as value to be encrypted
loc[title] = secret.encode()  #turning the value into a byte for encryption
print(f.encrypt(secret)) # but am having an error trying to get through

任何帮助将不胜感激。谢谢。

python-3.x dictionary password-encryption
1个回答
0
投票

已经有一段时间了,但是...

我会加密整个字典,但在你这样做之前,你需要将字典转换为字节:

import json
from cryptography.fernet import Fernet 
key = Fernet.generate_key() 
f = Fernet(key)
loc = {}
title = input('enter your title: ')
secret = input('enter your secret: ')
loc[title] = secret

encrypt_this = json.loads(loc).encode()
encrypted = cryptography.fernet.Fernet(key).encrypt(encrypt_this)

在另一端,您可以解密它并将字节转换回字典:

decrypt_this = cryptography.fernet.Fernet(key).decrypt(encrypted)
decrypted = json.loads(decrypt_this)
© www.soinside.com 2019 - 2024. All rights reserved.