Inhoudsopgave:

Versleutelde bestandsverplaatsing: 7 stappen
Versleutelde bestandsverplaatsing: 7 stappen

Video: Versleutelde bestandsverplaatsing: 7 stappen

Video: Versleutelde bestandsverplaatsing: 7 stappen
Video: 20sept21 GSG Infosessie Digitaal Wedstrijd Formulier 2024, November
Anonim
Versleutelde bestandsverplaatsing
Versleutelde bestandsverplaatsing

Een jaar geleden maakte ik deel uit van een project. We moesten wat gevoelige informatie door het land verplaatsen.

Ik zal de achtergrond bespreken van waarom, ga gerust naar stap 1.

De achtergrond:

Mijn team werd op korte termijn ingeschakeld om een computer te herstellen van een teamlid dat boventallig was geworden. Het grootste deel van de computer bestond uit uw normale gegevens, voornamelijk tekstbestanden. Terwijl ik door de computer bladerde, vond ik een bestand op de lokale schijf met gevoelige personeelsgegevens.

Na het rapporteren aan degenen boven mij en een paar argumenten waarom deze informatie niet kan worden gemaild, werd besloten om het fysiek te verplaatsen. Maar dit moest zo gebeuren dat de informatie tijdens het transport niet in gevaar kon komen.

De voorwaarden om het bestand te verplaatsen waren:

Geen netwerkverbinding, de hostcomputer was nooit verbonden met een netwerk en dit bestand wordt opgeslagen op een apparaat dat niet met een netwerk is verbonden.

Er wordt dus gebruik gemaakt van een USB.

Als het bestand tijdens het transport verloren gaat, kunt u het niet op een computer aansluiten en er toegang toe krijgen. Je kunt het apparaat ook niet brute forceren.

Het bestand moet worden gecodeerd en vervolgens in 4 worden gesplitst. Elke 1/4 gaat op een andere USB. Met de sleutel op een 5e.

5 verschillende USB's met elk een ander gedeelte. Merk op dat deze methode alleen werkt met 1 USB, maar sla de stappen voor splitsen en opnieuw compileren over.

Stap 1: Wat heb je nodig?

Wat heb je nodig?
Wat heb je nodig?

De bedoeling is dat dit eenvoudig is. Maar als u nog steeds niet zeker bent, staat er een ZIP aan het einde met de code.

Alle software is gratis. Het is ook gemaakt door de code in de instructable.

Python3

Pip kennis. Zie onderstaande link. U hoeft alleen maar te weten hoe u modules installeert.

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

We zullen al onze bestanden omwille van de eenvoud in 1 map plaatsen.

Stap 2: PIP in de modules

Voer in de opdrachtprompt voor Windows het volgende in:

pip cryptografie installeren

of Terminal voor Linux/OSX voer in:

pip3 cryptografie installeren

Stap 3: Een sleutel genereren

Een sleutel genereren
Een sleutel genereren

Net als een slot heeft ons versleutelde bestand een sleutel nodig om het te ontgrendelen. 'password123' zal niet veilig zijn voor dit bestand (als dat je wachtwoord is, verander het dan…nu.)

In plaats daarvan zullen we een sleutel voor ons laten genereren.

Maak een map waarin al je python-scripts moeten worden opgeslagen. Maak een nieuw bestand, ik noem de mijne Key_Gen.py

In Key_Gen.py zal ik invoeren:

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

Sla op en druk op F5 om te starten.

Wat we hier doen, is de modules importeren die we nodig hebben.

Een sleutelvariabele maken en een sleutel in de variabele genereren.

Een bestand met de naam 'key.key' openen en ernaar schrijven.

Als u uw map opent, heeft u nu 2 bestanden.

Key_Gen.py en key.key

Als ik het gemaakte key.key-bestand lees, luidt het:

XhnytBaYzzlDKyOUfU8DM4OjcD4cYvWtolJsyAdbwLg=

Dit is mijn sleutel. De jouwe zal anders zijn en zal veranderen elke keer dat je het programma uitvoert. Dus als u uw sleutel gebruikt, kunt u uw bestand niet terugkrijgen.

Als uw wachtwoord wachtwoord123 was, raadpleeg dan meer bronnen hieronder om te zien of uw nieuwe wachtwoord veiliger is.

Ga naar https://www.howsecureismypassword.io/ om uw wachtwoordsterkte te controleren

of gebruik een wachtwoordbeheerder.

Stap 4: Het bestand versleutelen

Niemand zou ooit 1 bestand hoeven te versleutelen. Behalve ik (zie inleiding). De meeste niet-ik-mensen hebben een manier nodig om meerdere bestanden te versleutelen. Er is een heel eenvoudige methode om consistentie te garanderen. Zet al uw bestanden in een ZIP.

Als je niet weet hoe je moet zippen, ga dan hier als je Windows gebruikt:

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

Als je Linux gebruikt, ben ik erg teleurgesteld dat je niet weet hoe je moet zippen. TAR-back-ups zijn hier je vriend, of kijk of je distro een archiefbeheerder heeft.

Nadat u uw bestanden hebt gezipt, hoeven we ons nu nog maar zorgen te maken over het versleutelen van 1 bestand. Dus laten we onze map openen en een bestand maken met de naam 'Encrypt File.py'

Het vullen met de code

van cryptography.fernet import Fernet

file = open('key.key', 'rb') key = file.read() file.close() input_file = 'secret.zip' output_file = 'transfer.encrypted' met open(input_file, 'rb') als f: data = f.read() fernet = Fernet(sleutel) gecodeerd = fernet.encrypt(data) met open(output_file, 'wb') als f: f.write(gecodeerd)

Dus wat gebeurt er?

Van cryptografie zullen we Fernet importeren.

We openen dan ons key.key-bestand dat we eerder hebben gemaakt en lezen het in het programma.

We hebben dan ons invoerbestand nodig. Dit is de variabele die u wilt aanpassen aan de naam van uw ZIP-bestand. In mijn geval is het 'secret.zip'

Dit wordt dan uitgevoerd als 'transfer.encrypted'

Open het invoerbestand en lees het in, versleutel het met de sleutel en schrijf het vervolgens naar het uitvoerbestand.

U ziet nu hoe een versleuteld bestand klaar is voor transport.

Stap 5: USB-methode splitsen

Gesplitste USB-methode
Gesplitste USB-methode

In mijn oorspronkelijke project moest het bestand worden verspreid over 4 USB's. Dit werd gedaan door het uitvoerbestand te nemen. Openen in Kladblok en 1/4 van het bestand op elke USB zetten. Het key.key-bestand is met het programma Decrypt op USB 5 gezet.

Aan de andere kant wordt het tekstbestand weer in elkaar gezet, klaar om te decoderen.

Stap 6: decoderen

Nu komt het moment om onze informatie terug te brengen.

We hebben een nieuw bestand nodig, laten we het 'Decrypt File.py' noemen

We hebben ook de onderstaande code nodig.

from cryptography.fernet import Fernetinput_file = 'transfer.encrypted' file = open('key.key', 'rb') key = file.read() file.close() met open(input_file, 'rb') als f: data = f.read() fernet = Fernet(sleutel) versleuteld = fernet.decrypt(data) met open('output.zip', 'wb') als f: f.write(gecodeerd)

Deze code brengt ons transfer.encrypted-bestand als invoer, key.key als onze sleutel. Het zal het decoderen en het vervolgens wegschrijven als output.zip

Stap 7: Conclusie

Hoewel er veel andere coderingsprogramma's op de markt zijn, waarvan er vele gratis zijn. Er zijn er maar weinig die implementeerbaar zijn op een gesloten systeem en weten dat het veilig is tijdens het transport.

In mijn situatie tijdens het transport van de 5 USB's. USB 1 was zoekgeraakt. Ik kon bestand 1 weer op een nieuwe USB laden om te transporteren. Maar dit hielp om te bewijzen waarom het werd verplaatst zoals het was. USB 1 is verloren gegaan. Als de bestanden niet waren gesplitst, bestaat het risico dat het bestand kan worden gedecodeerd.

Als u deze code gebruikt om met uw gegevens om te gaan, hoor ik graag van u in de opmerkingen.

Als u problemen ondervindt met uw code, heb ik alles in een bijgevoegd ZIP-bestand geplaatst.

Blijf veilig.

Aanbevolen: