Come implementare la crittografia autenticata usando pycrypto o una libreria python?

2

Sto usando pycrypto per crittografare i file che verranno archiviati nel cloud. Mi aspetto che l'utente inserisca una password per decodificare i file, ma la crittografia non dovrebbe richiedere una password (per consentire allo script di essere eseguito da cron). Pertanto, ho esaminato la crittografia a chiave pubblica utilizzando RSA con la crittografia PKCS1_OAEP.

Riesco a vedere come crittografare un file usando pycrypto, ma esiste un metodo preesistente per eseguire la crittografia autenticata, o mi aspetto che lo realizzi da solo? C'è un parametro per passare un algoritmo di hashing su Crypto.Cipher.PKCS1_OAEP.new (), ma verrà utilizzato per firmare i dati crittografati?

Analogamente per verificare prima della decrittografia, tutto questo è incorporato nel metodo decrypt ()?

Nota: non ho alcun allegato particolare a pycrypto - se un'altra libreria crittografica python fornisce uno schema di crittografia autenticato, per favore suggeriscilo.

Grazie

    
posta Andrew 23.01.2013 - 12:07
fonte

1 risposta

0

PGP ( python-gnupg ) suona davvero come il tuo modo di andare.

La crittografia a chiave pubblica è confusa perché l'effettivo codice asimmetrico viene utilizzato solo per crittografare una chiave di sessione monouso, che viene quindi utilizzata con crypto simmetrico (ad es. AES) per crittografare i file. Gestire tutto ciò manualmente sarebbe un mal di testa. Ma PGP ha già elaborato tutti i dettagli, devi solo chiamare le funzioni appropriate.

Inoltre, hai strumenti CLI preconfigurati (gpg) per consentirti di lavorare con i messaggi all'esterno della tua app.

    
risposta data 24.01.2013 - 01:52
fonte

Leggi altre domande sui tag