Καλώς ήρθατε πίσω.
Σε αυτό το μάθημα, μιλάμε για το hashing,
ένα εργαλείο που βοηθά στη διασφάλιση του data integrity.
Σε αντίθεση με το encryption, που κρατά τα δεδομένα μυστικά.
Το Hashing μας βοηθά να επαληθεύσουμε ότι τα δεδομένα δεν έχουν αλλοιωθεί.
Είτε ελέγχετε κατεβασμένα αρχεία, επαληθεύετε κωδικούς πρόσβασης,
είτε υπογράφετε έγγραφα.
Το Hashing παίζει ζωτικό ρόλο στο cybersecurity.
Μια hash function λαμβάνει δεδομένα εισόδου οποιουδήποτε μεγέθους και τα μετατρέπει
σε μια συμβολοσειρά σταθερού μήκους χαρακτήρων, που ονομάζεται hash value ή digest.
Σκεφτείτε το σαν ένα ψηφιακό αποτύπωμα.
Ακόμα και η παραμικρή αλλαγή στην είσοδο παράγει ένα εντελώς διαφορετικό hash.
Αν δύο αρχεία παράγουν το ίδιο hash, είναι σχεδόν σίγουρα πανομοιότυπα.
Αν όχι, κάτι έχει αλλάξει.
Μια καλή κρυπτογραφική hash function πρέπει να έχει αυτές τις βασικές ιδιότητες.
1. Deterministic.
Η ίδια είσοδος δίνει πάντα την ίδια έξοδο.
2. Μοναδική: δύο διαφορετικές είσοδοι δεν πρέπει να δίνουν την ίδια έξοδο.
Collision resistance. 3.
Μη αναστρέψιμη.
Δεν μπορείτε να κάνετε reverse engineer την είσοδο από το hash. 4. Γρήγορη.
Θα πρέπει να υπολογίζεται γρήγορα ακόμη και για μεγάλα δεδομένα.
Δημοφιλείς hash functions περιλαμβάνουν το SHA
-256, το SHA-3, και το BLAKE2.
Το Hashing
χρησιμοποιείται σε όλα τα συστήματα cybersecurity.
Τα File integrity checks επαληθεύουν
ότι οι λήψεις δεν έχουν αλλοιωθεί ή παραποιηθεί.
Password storage: αποθήκευση
των hashes των κωδικών πρόσβασης, όχι των ίδιων των κωδικών.
Τα Digital signatures υπογράφουν το hash ενός εγγράφου αντί για ολόκληρο το πράγμα.
Blockchain.
Κάθε μπλοκ στο Bitcoin και άλλα cryptocurrencies περιλαμβάνει ένα hash
που διασφαλίζει ότι τα δεδομένα δεν έχουν αλλάξει.
Είναι σημαντικό να κατανοήσετε ότι το hashing δεν είναι encryption.
Το Encryption είναι αναστρέψιμο.
Κάνετε decrypt για να πάρετε τα αρχικά δεδομένα.
Το Hashing είναι μονόδρομος - δεν μπορείτε να πάτε προς τα πίσω.
Το Encryption χρησιμοποιεί ένα κλειδί.
Το Hashing όχι.
Το Hashing χρησιμοποιείται για την επαλήθευση δεδομένων,
όχι για την προστασία του confidentiality.
Όταν αποθηκεύουμε κωδικούς πρόσβασης με ασφάλεια,
δεν κάνουμε απλώς hash, κάνουμε salt και hash.
Ένα salt είναι μια τυχαία τιμή που προστίθεται στον κωδικό πρόσβασης πριν το hashing.
Αυτό εμποδίζει τους επιτιθέμενους
από το να χρησιμοποιούν προ-υπολογισμένους πίνακες που ονομάζονται rainbow tables για να μαντέψουν κωδικούς.
Ακόμα κι αν δύο χρήστες έχουν τον ίδιο κωδικό πρόσβασης,
τα hashes τους θα φαίνονται διαφορετικά λόγω των μοναδικών salts.
Salting συν hashing ίσον πολύ ασφαλέστερο password storage.
Έτοιμοι για ένα μικρό επαναληπτικό κουίζ;
Ερώτηση πρώτη.
Ποιος είναι ο κύριος σκοπός μιας hash function;
Α να κρυπτογραφεί αρχεία
Β να παράγει ένα μοναδικό αποτύπωμα δεδομένων.
Γ να συνδέεται σε ένα VPN.
Δ να διαγράφει τυχαία διπλότυπα αρχεία.
Παύση για να σκεφτείτε.
Η σωστή απάντηση είναι Β.
Μια hash function δημιουργεί ένα μοναδικό αποτύπωμα για την επαλήθευση του data integrity.
Ερώτηση δύο τι κάνει το hashing διαφορετικό από το encryption;
Α το hashing χρησιμοποιεί κλειδί.
Το encryption όχι.
Β το encryption δεν μπορεί να προστατεύσει αρχεία.
Γ το hashing είναι μονόδρομος και δεν μπορεί να αντιστραφεί.
Δ και τα δύο κρύβουν κωδικούς πρόσβασης μόνιμα.
Εξετάστε την απάντησή σας.
Η σωστή απάντηση είναι Γ.
Το Hashing είναι μια μονόδρομη διαδικασία.
Σε αντίθεση με το encryption, δεν μπορεί να αντιστραφεί.
Τελευταία ερώτηση γιατί προσθέτουμε ένα salt όταν κάνουμε hash κωδικούς πρόσβασης;
Α για να τους κάνουμε να φαίνονται πιο ωραίοι στη βάση δεδομένων.
Β για προστασία από brute force και rainbow table επιθέσεις.
Γ για αύξηση του μήκους του κωδικού πρόσβασης.
Δ για να επιτρέψουμε στους χρήστες να χρησιμοποιούν emojis.
Σκεφτείτε προσεκτικά.
Η σωστή επιλογή απάντησης είναι.
Β το salting προσθέτει τυχαιότητα στα hashes και προστατεύει
από pre-computed attacks.
Εξαιρετική δουλειά.
Τώρα καταλαβαίνετε τον ρόλο του hashing στο cybersecurity.
Πώς επαληθεύει το data integrity, υποστηρίζει
το secure password storage, και στηρίζει τα digital signatures.
Στο επόμενο μάθημά μας, θα βασιστούμε σε αυτό εξερευνώντας τα digital signatures
και τα certificates, πώς παρέχουν ταυτότητα,
αυθεντικότητα και εμπιστοσύνη online.
Ας συνεχίσουμε.