Sommario:

Spostamento di file crittografati: 7 passaggi
Spostamento di file crittografati: 7 passaggi

Video: Spostamento di file crittografati: 7 passaggi

Video: Spostamento di file crittografati: 7 passaggi
Video: Condividere file e connettere unità di rete Windows 10 2024, Dicembre
Anonim
Spostamento di file crittografati
Spostamento di file crittografati

Un anno fa facevo parte di un progetto. Avevamo bisogno di spostare alcune informazioni sensibili in tutto il paese.

Esaminerò lo sfondo del perché, sentiti libero di saltare al passaggio 1.

Lo sfondo:

Il mio team è stato chiamato con breve preavviso per recuperare un computer da un membro del team in esubero. La maggior parte del computer erano i tuoi dati normali, per lo più file di testo. Mentre sto esplorando il computer ho trovato un file, sull'unità locale, che conteneva dati personali sensibili.

Dopo aver segnalato a quelli sopra di me e alcuni argomenti sul motivo per cui queste informazioni non possono essere inviate via e-mail, è stato deciso di spostarle fisicamente. Ma questo doveva essere fatto in modo da non permettere che le informazioni venissero compromesse durante il transito.

Le condizioni per spostare il file erano:

Nessuna connettività di rete, il computer host non è mai stato connesso a una rete e questo file verrà archiviato su un dispositivo non connesso alla rete.

Quindi viene utilizzata una USB.

Se il file viene perso durante il trasporto, non è possibile collegarlo a un computer e accedervi. Puoi anche non forzare il dispositivo con la forza bruta.

Il file deve essere crittografato, quindi diviso in 4. Ogni 1/4 andrà su una USB diversa. Con la chiave su un 5.

5 USB diverse con una porzione diversa su ciascuna. Nota che questo metodo funzionerà solo con 1 USB, salta solo i passaggi di divisione e ricompilazione.

Passaggio 1: di cosa hai bisogno?

Di che cosa hai bisogno?
Di che cosa hai bisogno?

L'intenzione è che questo sia semplice. Ma se non sei ancora sicuro che alla fine ci sia un CAP con il codice.

Tutto il software è gratuito. È anche fatto dal codice nell'istruibile.

Python3

Conoscenza del pip. Vedi link sotto. Hai solo bisogno di sapere come installare i moduli.

www.pythonforbeginners.com/basics/python-p…

Metteremo tutti i nostri file in 1 directory per semplicità.

Passaggio 2: PIP nei moduli

Nel prompt dei comandi per Windows inserisci:

pip installa la crittografia

o Terminale per Linux/OSX inserire:

pip3 installa la crittografia

Passaggio 3: generazione di una chiave

Generazione di una chiave
Generazione di una chiave

Proprio come un lucchetto, il nostro file crittografato avrà bisogno di una chiave per sbloccarlo. 'password123' non sarà sicuro per questo file (se questa è la tua password, vai a cambiarla… ora.)

Avremo invece una chiave generata per noi.

Crea una cartella in cui archiviare tutti i tuoi script Python. Crea un nuovo file, chiamerò il mio Key_Gen.py

In Key_Gen.py inserirò:

import cryptographyfrom cryptography.fernet import Fernet key = Fernet.generate_key() file = open('key.key', 'wb') file.write(key) file.close()

Salva quindi premi F5 per eseguire.

Quello che stiamo facendo qui è importare i moduli di cui abbiamo bisogno.

Creazione di una variabile chiave e generazione di una chiave nella variabile.

Aprire un file chiamato 'key.key' e scriverci sopra.

Se apri la tua cartella ora avrai 2 file.

Key_Gen.py e key.key

Se leggo il file key.key creato si legge:

XhnytBaYzzlDKyOUfU8DM4OjcD4cYvWtolJsyAdbwLg=

Questa è la mia chiave. Il tuo sarà diverso e cambierà ogni volta che esegui il programma. Quindi se usi la tua chiave non puoi recuperare il tuo file.

Se la tua password era password123, consulta altre risorse di seguito per vedere se la tua nuova password è più sicura.

Per verificare la sicurezza della tua password vai su

o utilizzare un gestore di password.

Passaggio 4: crittografia del file

Nessuno avrebbe mai bisogno di crittografare 1 file. Tranne me (vedi introduzione). La maggior parte delle persone non io avrà bisogno di un modo per crittografare più file. C'è un metodo molto semplice per garantire la coerenza. Metti tutti i tuoi file in uno ZIP.

Se non sai come eseguire lo ZIP, vai qui se sei su Windows:

support.microsoft.com/en-us/help/14200/win…

Se sei su Linux sono molto deluso che tu non sappia come ZIP. I backup TAR saranno tuoi amici qui, o controlla se la tua distribuzione ha un gestore di archivi.

Una volta che hai zippato i tuoi file, ora dobbiamo solo preoccuparci di crittografare 1 file. Quindi apriamo la nostra cartella e creiamo un file chiamato 'Encrypt File.py'

Compilandolo con il codice

da cryptography.fernet import Fernet

file = open('key.key', 'rb') chiave = file.read() file.close() input_file = 'secret.zip' output_file = 'transfer.encrypted' con open(input_file, 'rb') come f: data = f.read() fernet = Fernet(chiave) criptato = fernet.encrypt(dati) con open(output_file, 'wb') come f: f.write(criptato)

Allora cosa sta succedendo?

Dalla crittografia importeremo Fernet.

Quindi apriamo il nostro file key.key che abbiamo creato prima e lo leggiamo nel programma.

Abbiamo quindi bisogno del nostro file di input. Questa è la variabile che vuoi modificare per adattarla al nome del tuo file ZIP. Nel mio caso è "secret.zip"

Questo verrà quindi restituito come 'transfer.encrypted'

Apri il file di input e leggilo, crittografa usando la chiave, quindi scrivilo nel file di output.

Ora come un file crittografato pronto per il trasporto.

Passaggio 5: metodo USB diviso

Metodo USB diviso
Metodo USB diviso

Nel mio progetto originale il file doveva essere distribuito su 4 USB. Questo è stato fatto prendendo il file di output. Apertura nel blocco note e inserimento di 1/4 del file su ciascuna USB. Il file key.key è stato inserito su USB 5 con il programma Decrypt.

All'altra estremità il file di testo viene riassemblato pronto per essere decifrato.

Passaggio 6: decrittografia

Ora arriva il momento di riportare le nostre informazioni.

Avremo bisogno di un nuovo file, chiamiamolo "Decrypt File.py"

Avremo anche bisogno del codice sottostante.

from cryptography.fernet import Fernetinput_file = 'transfer.encrypted' file = open('key.key', 'rb') key = file.read() file.close() con open(input_file, 'rb') come f: data = f.read() fernet = Fernet(chiave) criptato = fernet.decrypt(dati) con open('output.zip', 'wb') come f: f.write(criptato)

Questo codice porterà il nostro file transfer.encrypted come input, key.key come nostra chiave. Lo decrittograferà e poi lo scriverà come output.zip

Passaggio 7: conclusione

Mentre ci sono molti altri programmi di crittografia sul mercato, molti dei quali sono gratuiti. Pochissimi sarebbero implementabili su un sistema chiuso e sanno che è sicuro in transito.

Nella mia situazione durante il trasporto delle 5 USB. USB 1 è stato smarrito. Sono stato in grado di caricare nuovamente il file 1 su una nuova USB per il trasporto. Ma questo ha aiutato a dimostrare il motivo per cui è stato spostato in quel modo. L'USB 1 è andato perso. Se i file non sono stati divisi, c'è il rischio che il file possa essere decifrato.

Se usi questo codice per gestire i tuoi dati, mi piacerebbe sentirti nei commenti.

Se riscontri problemi con il tuo codice, ho inserito tutto in un file ZIP allegato.

Stai al sicuro.

Consigliato: