Domanda

Ho un programma Python3 che invia e-mail.Legge le variabili da un file di configurazione, e una di queste è la password dell'account e-mail che invia le e-mail.Ora, è in chiaro testo, ma non dovrebbe, quindi sto cercando un modo per nasconderlo.

Ho pensato di scrivere direttamente il risultato dell'applicazione di MD5 alla password, come ad esempio:

password = 'write_here_the_password_encrypted'
.

Ma il seguente codice non funzionerebbe:

server = smtplib.SMTP('smtp.gmail.com:587')
server.starttls()
server.login(username, password)
server.sendmail(from_email, to_emails, msg)
server.quit()
.

C'è comunque per rendere il lavoro la linea server.login(username, password) se la password è crittografata?

È stato utile?

Soluzione

Il metodo login da SMTP ha bisogno solo di una password semplice, non ad alcuni di esso, quindi l'unico modo per farlo funzionare - UnenCrypt Password prima di passare a login().

Ma come MD5 è una funzione di hash a senso unico (o destinato ad essere un modo), quindi non è possibile decodificare la password, una volta che l'hai codificato in Hash MD5.Ma anche se potessi, che chiunque abbia accesso alla tua configurazione potrebbe anche.

Cosa è necessario fare - è separare le password e altre informazioni sensibili per separare il file e memorizzarlo in posizione sicura, non accessibile a persone non autorizzate.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top