Qual è la migliore crittografia password & amp; libreria di decrittazione da utilizzare con Perl? [chiuso]

StackOverflow https://stackoverflow.com/questions/459614

Domanda

Sto scrivendo uno script perl che manipola i file zip protetti da password. Di conseguenza, devo archiviare & amp; recuperare le password per farlo. Ho tre opzioni per memorizzare la password:

  1. Memorizza in testo semplice. Prima di entrare, ho praticamente escluso questa opzione.
  2. Utilizza un semplice munger password per impedire l'accesso casuale / accidentale (anche da parte dei DBA)
  3. Utilizzare una libreria di crittografia / decrittografia appropriata, come Blowfish o AES.

Qualunque cosa scelga deve essere eseguita in Perl, sotto Windows ed essere facile da usare.

Qualche suggerimento?

È stato utile?

Soluzione

Esistono alcuni pacchetti di crittografia Perl eseguiti su Windows, è possibile scaricare i PPM con il gestore pacchetti ActivePerl.

Puoi anche usare la versione Perl pura di quei moduli (cerca il nome che termina in _PP).

Ho trovato questi moduli su CPAN:

Altri suggerimenti

Il problema principale con l'approccio 3 è che, dove memorizzi la chiave del file che contiene le password? Potresti usare Base64 per l'approccio 2 ma è molto facile "decifrare".

Non ci dovrebbero essere domande qui. È necessario utilizzare uno schema di crittografia sufficientemente potente. Ti vengono affidati dati sensibili e devi fare tutto il possibile per proteggerli.

Se si utilizza Windows, è possibile sfruttare DPAPI per crittografare AESkey e memorizzarlo nel registro. Perl ha moduli per interagire con le librerie Win32.

La migliore crittografia è soggettiva, tuttavia AES 128 è sufficientemente potente da gennaio 2009 per crittografare i tuoi dati.

Anche i migliori schemi di crittografia possono essere sconfitti se l'utente non capisce completamente cosa sta facendo.

Ovviamente, hai ragione # 1 è fuori.

E anche il n. 2 è uscito per lo stesso motivo. Non è sicuro.

Per quanto riguarda il n. 3, potrei suggerire che anche questo è fuori. La decrittografia della password la porta in uno stato più vulnerabile per il confronto. MA, se hai intenzione di farlo, posso suggerire di usare Crypt :: CBC WITH Crypt :: Blowfish per Cipher Block Chaining .

[consigliato] # 4: anziché archiviare le password per il recupero, la decrittografia, quindi il confronto come nel n. 3. Usa Authen :: Passphrase abbastanza modulo Perl completo e flessibile che consente di confrontare una password inserita senza decodificare / decodificare l'originale. Vedi anche Come può Criptare e decrittografare le password in un programma Perl CGI?

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