Πίνακας περιεχομένων:
- Βήμα 1: Γράψτε το αρχείο εγκατάστασης
- Βήμα 2: Το αρχείο κρυπτογράφησης/αποκρυπτογράφησης
- Βήμα 3: Λειτουργία αρχείων
Βίντεο: Λογισμικό κρυπτογράφησης/αποκρυπτογράφησης ασφάλειας Python: 3 βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:36
Σε αυτό το Instructable θα σας δείξω πώς με κάποια απλή Python, μπορείτε να διατηρήσετε τα αρχεία σας ασφαλή χρησιμοποιώντας το βιομηχανικό πρότυπο AES.
Απαιτήσεις:
- Python 3.7
- Βιβλιοθήκη PyAesCrypt
- βιβλιοθήκη hashlib
Εάν δεν έχετε αυτές τις βιβλιοθήκες, μπορείτε να εγκαταστήσετε εύκολα πληκτρολογώντας:
pip3 εγκαταστήστε το hashlib
pip3 εγκαταστήστε το PyAesCrypt
στο τερματικό (ή CMD)
Θα πρέπει να έχετε ήδη αυτά:
- τυχαία βιβλιοθήκη
- os βιβλιοθήκη
- βιβλιοθήκη συστήματος
Χρησιμοποιώ OS X, αλλά δεν πρέπει να έχει μεγάλη σημασία, εκτός από την κατεύθυνση των περιθωρίων στις διαδρομές αρχείων (OS X: /, Windows:)
Λάβετε υπόψη: Λόγω κάποιου σφάλματος, οι εσοχές στον κώδικα δεν εμφανίζονται για κάποιο λόγο. Κατά συνέπεια δεν θα υπάρχουν εσοχές στον εμφανιζόμενο κώδικα, ωστόσο υπάρχουν στα αρχεία Python που έχω επισυνάψει στο τέλος, και στις συνημμένες εικόνες. Απλώς μην πάρετε τον κώδικα απευθείας από το εμφανιζόμενο κείμενο, γιατί δεν θα λειτουργήσει λόγω της έλλειψης εσοχών
Εάν έχετε εγκαταστήσει όλες τις εξαρτήσεις, ας προχωρήσουμε στο Βήμα 1.
Βήμα 1: Γράψτε το αρχείο εγκατάστασης
Ένας από τους παράγοντες που το κάνουν τόσο ασφαλές είναι η χρήση κατακερματισμών για τον έλεγχο του κωδικού πρόσβασης. Το αρχείο εγκατάστασης (καλώ το δικό μου setupsafe.py) πρόκειται να:
- Δημιουργήστε έναν φάκελο και εικονικά αρχεία για τον κωδικό πρόσβασης
- Ορίστε τον κωδικό πρόσβασης
- Ορίστε τον αριθμό αρχείου
- Κρατήστε τον κωδικό πρόσβασης
Αρχικά, θα εισαγάγουμε τις εξαρτήσεις μας:
από εισαγωγή sys *
εισαγωγή os
τυχαία εισαγωγή
εισαγωγή hashlib
Στη συνέχεια, θα δημιουργήσουμε έναν φάκελο για να στεγάσουμε τον κωδικό πρόσβασης κωδικού πρόσβασης και τα εικονικά αρχεία:
δοκιμάστε: αν όχι os.path.exists ('desktop/safesetup'):
os.mkdir ('desktop/safesetup/')
εκτός OSError:
εκτύπωση ("Σφάλμα κατά τη δημιουργία φακέλου")
Αυτός ο κώδικας θα δημιουργήσει ένα φάκελο που ονομάζεται safesetup (εκτός αν υπάρχει ήδη).
Μετά από αυτό, πρόκειται να ορίσουμε τον κωδικό πρόσβασης και να δημιουργήσουμε έναν τυχαίο αριθμό μεταξύ 1 και 100 ως τον τρόπο μας για την πλοήγηση στα εικονικά αρχεία:
καθολικός κωδικός πρόσβασης = argv [1].encode ('utf-8')
n = random.randint (1, 101)
Τώρα που έχουμε τον κωδικό πρόσβασής μας και τον αριθμό αρχείου μας, πρόκειται να δημιουργήσουμε 99 εικονικά αρχεία μέσα στο safesetup και ένα πραγματικό αρχείο που θα περιέχει τον κωδικό πρόσβασης κωδικού πρόσβασής μας:
για x στην περιοχή (101): εάν (x! = n):
f = open (("desktop/safesetup/"+str (x)), "w+")
στ. κλείσιμο ()
αλλού:
password = hashlib.sha256 (password).hexdigest ()
f = open (("desktop/safesetup/"+str (x)), "w+")
f.write (κωδικός πρόσβασης)
στ. κλείσιμο ()
εκτύπωση (n)
Το πραγματικό αρχείο ονομάζεται ό, τι ακέραιος n είναι. Αυτό το αρχείο περιέχει τον κωδικό πρόσβασής μας, αφού κατακερματιστεί χρησιμοποιώντας τον αλγόριθμο sha256 (αυτός ο αλγόριθμος κατακερματισμού χρησιμοποιείται ευρέως σε κρυπτονομίσματα, κυρίως Bitcoin).
Θυμηθείτε τι είναι το n (θα εκτυπωθεί στην κονσόλα), καθώς είναι εξίσου σημαντικό με τον κωδικό πρόσβασης.
Αυτό είναι το μόνο που χρειαζόμαστε για το πρόγραμμα εγκατάστασης, οπότε θα περάσουμε τώρα στο πρόγραμμα κρυπτογράφησης/αποκρυπτογράφησης.
Βήμα 2: Το αρχείο κρυπτογράφησης/αποκρυπτογράφησης
Η ενότητα ρύθμισης του κύριου αρχείου εισάγει τις εξαρτήσεις, κατακερματίζει τον κωδικό πρόσβασης που εισάγεται και ανακτά τον πραγματικό κατακερματισμό κωδικού πρόσβασης χρησιμοποιώντας τον αριθμό αρχείου που έχει εισαχθεί.
Πρώτον, οι εξαρτήσεις:
από sys import *import os
εισαγωγή pyAesCrypt
εισαγωγή hashlib
Στη συνέχεια, ο κατακερματισμός του εισαγόμενου κωδικού πρόσβασης:
password = argv [1].encode ('utf-8') password = hashlib.sha256 (password).hexdigest ()
Τέλος, η ανάκτηση κατακερματισμένου κωδικού πρόσβασης:
file_key = str (argv [2]) hash = open (("desktop/safesetup/" + key_key), ("r +")). διαβάστε ()
Το δεύτερο τμήμα του αρχείου κρυπτογράφησης συγκρίνει τους κατακερματισμούς, καθορίζει την αλήθεια της σύγκρισης και χρησιμοποιεί τη βιβλιοθήκη python AESCrypt για την κρυπτογράφηση ή αποκρυπτογράφηση του αρχείου της επιλογής σας. Αυτό είναι ένα αρκετά μεγάλο κομμάτι κώδικα, αλλά θα το αναλύσω:
εάν (κωδικός πρόσβασης == κατακερματισμός): εκτύπωση ("Αποδεκτός ο κωδικός πρόσβασης")
bufferSize = 64 * 1024
λειτουργία = str (είσοδος ("Ανακτάτε ή κρυπτογραφείτε αρχεία; (r ή e)"))
εάν (λειτουργία == 'r'):
όνομα_αρχείου = str (είσοδος ("Αρχείο για ανάκτηση:"))
pyAesCrypt.decryptFile ((όνομα_αρχείου + ".aes"), όνομα_αρχείου, κωδικός πρόσβασης, bufferSize)
os.remove ((όνομα_αρχείου + ".aes"))
elif (λειτουργία == 'e'):
όνομα_αρχείου = str (είσοδος ("Αρχείο για κρυπτογράφηση:"))
pyAesCrypt.encryptFile (όνομα_αρχείου, (όνομα_αρχείου + ".aes"), κωδικός πρόσβασης, bufferSize)
os.remove (όνομα_αρχείου)
αλλού:
εκτύπωση ("Σφάλμα: Λανθασμένη εισαγωγή")
αλλού:
εκτύπωση ("Η πρόσβαση απαγορεύεται")
Η πρώτη εντολή if καθορίζει εάν οι κατακερματισμένοι κωδικοί πρόσβασης ταιριάζουν. Αν το κάνουν, τότε συνεχίζει να ρωτά αν θέλετε να κρυπτογραφήσετε αρχεία ή να ανακτήσετε κρυπτογραφημένα αρχεία. Ανάλογα με την εισαγωγή σας, είτε θα κρυπτογραφήσει είτε θα αποκρυπτογραφήσει το παρεχόμενο αρχείο. Όταν σας ζητηθεί να δώσετε το όνομα του αρχείου, βεβαιωθείτε ότι έχετε καθορίσει τη διαδρομή, εκτός εάν το αρχείο βρίσκεται στον ίδιο κατάλογο με το πρόγραμμα python. Το πρόγραμμα διαγράφει το αρχείο στην προηγούμενη κατάσταση, αντικαθιστώντας το με κρυπτογραφημένο αρχείο.aes ή αποκρυπτογραφώντας το και αντικαθιστώντας το με το αρχικό αρχείο.
Στο μέλλον, μπορεί να το ενημερώσω ώστε να περιλαμβάνει αναγνώριση προσώπου χρησιμοποιώντας τη βιβλιοθήκη Python OpenCV, αλλά προς το παρόν οι κωδικοί πρόσβασης θα πρέπει να επαρκούν.
Βήμα 3: Λειτουργία αρχείων
Για να εκτελέσετε το αρχείο εγκατάστασης, ακολουθήστε τα εξής βήματα:
1. Πληκτρολογήστε το τερματικό:
python3 directory/setupname.py password (αντικατάσταση καταλόγου, ονόματος εγκατάστασης και κωδικού πρόσβασης με τις αντίστοιχες τιμές τους)
2. Το τερματικό θα εξάγει τον αριθμό αρχείου σας. Κράτησέ το.
Για να εκτελέσετε το πρόγραμμα κρυπτογράφησης/αποκρυπτογράφησης, ακολουθήστε τα εξής βήματα:
1. Πληκτρολογήστε το τερματικό:
κατάλογος python3/όνομα αρχείου.py κωδικός πρόσβασης αρχείου (αντικατάσταση καταλόγου, ονόματος αρχείου, κωδικού πρόσβασης και αριθμού αρχείου με τις αντίστοιχες τιμές τους)
2. Το τερματικό θα αποδεχτεί ή θα απορρίψει τον κωδικό πρόσβασής σας. Εάν απορριφθεί, δοκιμάστε ξανά και βεβαιωθείτε ότι πληκτρολογείτε τις σωστές τιμές. Μόλις παραχωρηθεί η πρόσβαση, το τερματικό θα σας ρωτήσει εάν θέλετε να κρυπτογραφήσετε ένα αρχείο ή να το ανακτήσετε. Για να κρυπτογραφήσετε ένα αρχείο, πληκτρολογήστε e και για να ανακτήσετε ένα κρυπτογραφημένο αρχείο, πληκτρολογήστε r.
3. Στη συνέχεια θα σας ζητηθεί να δώσετε το όνομα του αρχείου. Θυμηθείτε να δώσετε τον κατάλογο του αρχείου καθώς και το όνομα, καθώς και την επέκταση αρχείου. Ωστόσο, εάν αποκρυπτογραφείτε ένα αρχείο, μην πληκτρολογείτε το τμήμα.aes της επέκτασης, καθώς ο κώδικας το υπολογίζει.
4. Το πρόγραμμα στη συνέχεια κρυπτογραφεί ή αποκρυπτογραφεί το παρεχόμενο αρχείο και διαγράφει το αρχείο στην προηγούμενη κατάσταση (διατηρώντας το κρυπτογραφημένο ή αποκρυπτογραφημένο αρχείο).
Βοϊλα! Ευχαριστώ που το κάνατε τόσο διδακτικό, ξέρω ότι η ανάγνωση σεμιναρίων κώδικα δεν είναι το πιο διασκεδαστικό πράγμα. Τα αρχεία python περικλείονται σε αυτό το βήμα, για όσους από εσάς θέλετε να δώσετε μια ευκαιρία. Για άλλη μια φορά, σας ευχαριστώ για την ανάγνωση και σας εύχομαι καλή τύχη στις μελλοντικές σας προσπάθειες κωδικοποίησης.
Συνιστάται:
Πώς να εγκαταστήσετε το Raspbian OS στο Raspberry Pi χρησιμοποιώντας λογισμικό και smartphone NOOBS .: 6 βήματα
Πώς να εγκαταστήσετε το Raspbian OS στο Raspberry Pi χρησιμοποιώντας λογισμικό και smartphone NOOBS .: Γεια σε όλους! σήμερα σε αυτό το σεμινάριο σας δείχνω πόσο εύκολα εγκαθιστάτε το Raspbian OS στο Raspberry Pi χρησιμοποιώντας λογισμικό NOOBS και Smartphone
Πώς να φτιάξετε το πρώτο σας απλό λογισμικό χρησιμοποιώντας Python: 6 βήματα
Πώς να φτιάξετε το πρώτο σας απλό λογισμικό χρησιμοποιώντας Python: Γεια σας, καλώς ήρθατε σε αυτό το Instructables. Εδώ θα σας πω πώς να φτιάξετε το δικό σας λογισμικό. Ναι, αν έχετε μια ιδέα … αλλά ξέρετε να εφαρμόσετε ή ενδιαφέρεστε να δημιουργήσετε νέα πράγματα, τότε είναι για εσάς …… Προϋπόθεση: Θα πρέπει να έχετε βασικές γνώσεις P
Πώς να κατεβάσετε δωρεάν λογισμικό ως φοιτητής ISU (Microsoft, Adobe και λογισμικό ασφαλείας: 24 βήματα
Πώς να κατεβάσετε δωρεάν λογισμικό ως φοιτητής ISU (Microsoft, Adobe και λογισμικό ασφαλείας: Για το Adobe: μεταβείτε στο βήμα 1. Για τη Microsoft: μεταβείτε στο βήμα 8. Για την ασφάλεια: μεταβείτε στο βήμα 12. Για το Azure: μεταβείτε στο βήμα 16
Σύστημα ασφαλείας γυναικείας ασφάλειας One Touch: 3 Βήματα
Σύστημα Ασφάλειας Γυναικείας Ασφάλειας One Touch: Συναγερμός One Touch Σύστημα Ασφάλειας Γυναικών που χρησιμοποιεί μικροελεγκτή 8051Στον σημερινό κόσμο Η ασφάλεια των γυναικών είναι το πιο σημαντικό ζήτημα στην ίδια τη χώρα. Σήμερα οι γυναίκες ενοχλούνται και προβληματίζονται και μερικές φορές όταν απαιτείται επείγουσα βοήθεια. Δεν υπάρχει απαραίτητη τοποθεσία
Δημιουργία κρυπτογράφησης/αποκρυπτογράφησης απλού μηνύματος χρησιμοποιώντας το Σημειωματάριο: 5 βήματα
Δημιουργία κρυπτογράφησης/αποκρυπτογράφησης απλού μηνύματος χρησιμοποιώντας το Σημειωματάριο: Γεια σας με αυτήν την απλή εφαρμογή HTML μπορείτε να κρυπτογραφήσετε και να αποκρυπτογραφήσετε το μήνυμά σας με κωδικό πρόσβασης. Πρώτα απ 'όλα θα σας δείξω πώς να το δημιουργήσετε και στη συνέχεια θα σας δείξω πώς να το χρησιμοποιήσετε. Ας αρχίσουμε