Memorizzazione password per app personale [duplicato]

0

Attualmente sto scrivendo uno script su un raspberryPi (in python) per automatizzare alcune attività negli account online. Mentre alcuni di questi account online hanno API carine che posso usare, altri no e devo ricorrere all'uso di mechanize per racchiuderli. Questo presenta il problema di dover memorizzare le informazioni di accesso. Non voglio memorizzarli come testo in chiaro e archiviare nella RAM sarebbe noioso digitare ogni password ogni volta che avvio il pi.

La mia domanda allora è, qual è il modo migliore per farlo? La ricerca nei post precedenti indica che l'hashing sarebbe il migliore. Tuttavia, non esiste quindi alcun modo per ripristinare effettivamente le password dall'hash per accedere a ciascun sito Web. Le password devono essere inviate al modulo web come testo normale (proprio come un normale login). Qualsiasi aiuto sarebbe apprezzato.

    
posta DickJ 25.10.2016 - 16:43
fonte

1 risposta

1

L'idea dell'archiviazione delle password è di rendere il più difficile possibile per un utente malintenzionato ottenerlo perché non puoi mai impedirgli di ottenerlo del tutto. Hai ragione sul fatto che l'hashing non è quello che vuoi perché l'hashing è fare in modo che 2 ingressi siano gli stessi (cioè utile per verificare che un utente conosca la password), non per memorizzare le password nel modo in cui sei ne parlo.

Quello che farei nella tua situazione è una delle due cose:

  1. Prova a rimuovere la necessità delle password, puoi accedere manualmente e poi mantenere viva la chiave di sessione o farlo in modo che il programma guardi un file di password che poi cancelli (ricorda che i file salvati lasciano i fantasmi di se stessi, quindi forse avere il file su una chiavetta USB che può essere distrutto se si è consapevoli della sicurezza)
  2. Proteggi il file della password, questo può essere fatto usando l'accesso utente roba su Linux (fallo leggere solo per l'utente che è in esecuzione il programma e quindi avere una buona password su tale account utente) ma dovresti anche avere un po 'di crittografia sul file, perché l'utente l'accesso può essere ottenuto manipolando il supporto di memorizzazione direttamente. Non posso aiutarti a suggerire metodi di crittografia, ma è così sarebbe qualcosa che si inserirà una password per decodificare in modo che il programma può leggerlo e metterlo in memoria. Un SQLite database sarebbe un modo per ottenere il controllo degli accessi e la crittografia con (relativamente) poca configurazione.
risposta data 25.10.2016 - 17:01
fonte

Leggi altre domande sui tag