从配置文件中读取一个字节 python
Read a byte from configuration file python
我正在尝试读取存储在配置文件中的加密密码(base 64+AES 编码)。我必须使用有限的库,因此我无法尝试我发现的许多加密方法。
我使用的代码是
def encrypt_password(): # for encryption
from Crypto.Cipher import AES
obj = AES.new('This is a key123', AES.MODE_CFB, 'This is an IV456')
message = "password"
ciphertext = obj.encrypt(message) #ciphertext is the encrypted password
我将密文作为 enc_password 放在配置文件中
待解密
def decrypt_password():
from Crypto.Cipher import AES
cipher_text=RPF.readfromConfigFile('LoginCredentials','enc_password')
obj2 = AES.new('This is a key123', AES.MODE_CFB, 'This is an IV456')
message = obj2.decrypt(cipher_text)
message = message.decode("utf-8") #gives the decrypted password
我面临的问题是,在读取配置文件时,加密密码被读取为字符串,而它应该是一个字节(我相信)。这是我从配置文件中读取的方式:
if moduleName == 'LoginCredentials':
import io
config.read('configuration.INI')
list_of_variables = [config.get('LoginCredentials', 'url'), config.get('LoginCredentials', 'UserName'),
config.get('LoginCredentials', 'enc_password')]
希望大佬们给个解决办法..
`
我开始使用 .enc 文件,而不是使用 config.ini 来存储加密密码。
写入 enc 文件:
with open('file.enc', 'wb') as f:
f.write(b'abcdefg')
从 enc 文件读取:
with open("file.enc", "rb") as f:
iv = f.read(16)
这成功了!!!!
我正在尝试读取存储在配置文件中的加密密码(base 64+AES 编码)。我必须使用有限的库,因此我无法尝试我发现的许多加密方法。
我使用的代码是
def encrypt_password(): # for encryption
from Crypto.Cipher import AES
obj = AES.new('This is a key123', AES.MODE_CFB, 'This is an IV456')
message = "password"
ciphertext = obj.encrypt(message) #ciphertext is the encrypted password
我将密文作为 enc_password 放在配置文件中
待解密
def decrypt_password():
from Crypto.Cipher import AES
cipher_text=RPF.readfromConfigFile('LoginCredentials','enc_password')
obj2 = AES.new('This is a key123', AES.MODE_CFB, 'This is an IV456')
message = obj2.decrypt(cipher_text)
message = message.decode("utf-8") #gives the decrypted password
我面临的问题是,在读取配置文件时,加密密码被读取为字符串,而它应该是一个字节(我相信)。这是我从配置文件中读取的方式:
if moduleName == 'LoginCredentials':
import io
config.read('configuration.INI')
list_of_variables = [config.get('LoginCredentials', 'url'), config.get('LoginCredentials', 'UserName'),
config.get('LoginCredentials', 'enc_password')]
希望大佬们给个解决办法.. `
我开始使用 .enc 文件,而不是使用 config.ini 来存储加密密码。
写入 enc 文件:
with open('file.enc', 'wb') as f:
f.write(b'abcdefg')
从 enc 文件读取:
with open("file.enc", "rb") as f:
iv = f.read(16)
这成功了!!!!