CodeKitHub
Εργαλεία δημιουργίας

MD5 Κρυπτογράφηση / Αποκρυπτογράφηση Online

Τελευταία ενημέρωση:

Οι άνθρωποι συχνά αναζητούν ένα εργαλείο "αποκρυπτογράφησης MD5", αλλά το MD5 δεν είναι κρυπτογράφηση — είναι ένα μονόδρομο hash, οπότε δεν υπάρχει τίποτα να αποκρυπτογραφηθεί. Αυτό το εργαλείο κάνει το κομμάτι που είναι πραγματικά εφικτό: μετατρέπει οποιοδήποτε κείμενο στο 32-χαρακτήρων MD5 hash του ακαριαία, εξ ολοκλήρου στον browser σας, ώστε να μπορείτε να επαληθεύσετε δεδομένα ή να τα συγκρίνετε με ένα γνωστό hash.

MD5 Hash

MD5 is a one-way hash — it cannot be reversed back into the original text.

Τι είναι αυτό το εργαλείο;

Το MD5 ("Message Digest 5") παίρνει οποιαδήποτε είσοδο — μια λέξη, έναν κωδικό πρόσβασης, ένα ολόκληρο αρχείο — και παράγει ένα σταθερό αποτύπωμα 128 bit, γραμμένο ως 32 δεκαεξαδικοί χαρακτήρες. Η ίδια είσοδος παράγει πάντα το ίδιο hash, και η αλλαγή έστω και ενός χαρακτήρα παράγει ένα εντελώς διαφορετικό.

Η λέξη "κρυπτογράφηση" αποδίδεται συχνά στο MD5, αλλά είναι τεχνικά λάθος. Η κρυπτογράφηση είναι αντιστρέψιμη με το σωστό κλειδί· το hashing δεν είναι καθόλου αντιστρέψιμο. Οι υπηρεσίες "αποκρυπτογράφησης MD5" που μπορεί να έχετε δει online δεν αντιστρέφουν πραγματικά τα μαθηματικά — αναζητούν το hash σας σε έναν τεράστιο προϋπολογισμένο πίνακα κοινών κωδικών και λέξεων, και πετυχαίνουν μόνο αν το αρχικό σας κείμενο τυχαίνει να βρίσκεται ήδη σε αυτόν τον πίνακα.

Το MD5 δημοσιεύτηκε από τον Ron Rivest το 1992 ως RFC 1321. Είναι κρυπτογραφικά «σπασμένο» για σκοπούς ασφαλείας (οι συγκρούσεις μπορούν να κατασκευαστούν σκόπιμα), αλλά εξακολουθεί να χρησιμοποιείται ευρέως για checksums, κλειδιά cache και αποδιπλασιασμό όπου η ασφάλεια δεν αποτελεί μέλημα.

Γιατί να το χρησιμοποιήσετε;

  • Δημιουργήστε ένα MD5 hash για να επαληθεύσετε ότι ένα αρχείο ή string δεν άλλαξε κατά λάθος.
  • Συγκρίνετε το hash σας με ένα γνωστό/δημοσιευμένο MD5 για να επιβεβαιώσετε την ακεραιότητα.
  • Δημιουργήστε ντετερμινιστικά κλειδιά cache ή IDs αποδιπλασιασμού.
  • Κατανοήστε καθαρά γιατί η "αποκρυπτογράφηση" ενός MD5 hash δεν είναι πραγματικά δυνατή.
  • 100% τοπικό: η είσοδός σας γίνεται hash στον browser σας και δεν ανεβαίνει ποτέ.

Πώς χρησιμοποιείται

  1. Πληκτρολογήστε ή επικολλήστε το κείμενό σας στο πλαίσιο εισαγωγής.
  2. Κάντε κλικ στο "Generate MD5".
  3. Διαβάστε το προκύπτον hash 32 χαρακτήρων (επιλέξτε "Uppercase output" αν χρειάζεστε κεφαλαία γράμματα).
  4. Κάντε κλικ στο "Copy" για να αντιγράψετε το hash, ή χρησιμοποιήστε το για να το συγκρίνετε με ένα hash που ήδη έχετε.

Παράδειγμα

Είσοδος

hello

Έξοδος

5d41402abc4b2a76b9719d911017c592

Το MD5 είναι ντετερμινιστικό: το κείμενο "hello" παράγει αυτό ακριβώς το hash σε κάθε εργαλείο, κάθε φορά.

"Κρυπτογράφηση" έναντι "hash": γιατί έχει σημασία η ορολογία

Η κρυπτογράφηση και το hashing λύνουν διαφορετικά προβλήματα, και το να τα μπερδεύετε οδηγεί σε πραγματικά σφάλματα ασφαλείας. Η κρυπτογράφηση μετασχηματίζει δεδομένα αντιστρέψιμα χρησιμοποιώντας ένα κλειδί — κρυπτογραφήστε με το κλειδί, αποκρυπτογραφήστε με το (ίδιο ή ζευγαρωμένο) κλειδί, πάρτε πίσω το αρχικό. Το hashing μετασχηματίζει δεδομένα μονόδρομα χωρίς κανένα κλειδί — δεν υπάρχει λειτουργία που μετατρέπει ένα hash πίσω στην είσοδό του, εκ σχεδιασμού.

Το MD5 είναι μια συνάρτηση hash, όχι κρυπτογράφημα. Η ονομασία του "MD5 encryption" είναι κοινή ανεπίσημη χρήση, αλλά θέτει τη λάθος προσδοκία: δεν υπάρχει νόμιμη λειτουργία "αποκρυπτογράφησης MD5". Οτιδήποτε διαφημίζεται ως τέτοιο είναι είτε πίνακας αναζήτησης (λειτουργεί μόνο για κοινές, ήδη γνωστές εισόδους) είτε απλά δεν λειτουργεί.

Πότε είναι ακόμα εντάξει να χρησιμοποιείτε το MD5

  • Επαλήθευση ότι ένα αρχείο που κατεβάσατε ταιριάζει με το checksum του εκδότη πριν το εκτελέσετε.
  • Δημιουργία ντετερμινιστικού κλειδιού cache από ένα URL ή string ερωτήματος.
  • Αποδιπλασιασμός εγγραφών κάνοντας hash σε κάθε μία και συγκρίνοντας hashes αντί για ολόκληρο το κείμενο.
  • Γρήγορος έλεγχος αν δύο αρχεία είναι πανομοιότυπα byte προς byte χωρίς να τα συγκρίνετε λεπτομερώς.

Πότε να αποφύγετε εντελώς το MD5

Ποτέ μη χρησιμοποιείτε MD5 για κωδικούς πρόσβασης, ψηφιακές υπογραφές, ή οτιδήποτε όπου έχει σημασία ένας επιτιθέμενος που επωφελείται από μια πλαστογραφημένη αντιστοίχιση. Επειδή οι συγκρούσεις μπορούν να μηχανευτούν σκόπιμα, και επειδή τα μη αλατισμένα MD5 hashes σύντομων ή κοινών εισόδων μπορούν να αντιστραφούν μέσω πινάκων αναζήτησης, το MD5 δεν προσφέρει πραγματική ασφάλεια σε αυτά τα πλαίσια. Για κωδικούς πρόσβασης, χρησιμοποιήστε bcrypt, scrypt ή Argon2. Για υπογραφές και ακεραιότητα όπου έχει σημασία η αντίσταση σε παραποίηση, χρησιμοποιήστε SHA-256 ή ισχυρότερο.

Συχνές ερωτήσεις

Μπορώ να αποκρυπτογραφήσω ένα MD5 hash πίσω στο αρχικό κείμενο;

Όχι — το hashing είναι μονόδρομο εκ σχεδιασμού· το αρχικό δεν μπορεί να υπολογιστεί από το hash. Οι ιστότοποι "αποκρυπτογράφησης MD5" απλώς αναζητούν hashes σε τεράστιους προϋπολογισμένους πίνακες κοινών εισόδων, γι' αυτό μοναδικές ή μακριές είσοδοι δεν μπορούν να αντιστραφούν.

Τι κάνουν λοιπόν πραγματικά οι ιστότοποι "αποκρυπτογράφησης MD5";

Διατηρούν τεράστιες βάσεις δεδομένων που αντιστοιχίζουν κοινές λέξεις, ονόματα και διαρρεύσαντες κωδικούς πρόσβασης στα MD5 hashes τους, μετά κάνουν μια αναζήτηση. Αν το αρχικό σας κείμενο δεν βρίσκεται στη βάση δεδομένων τους — κάτι πιθανό για οτιδήποτε μη τετριμμένο — απλά αποτυγχάνουν να επιστρέψουν αποτέλεσμα.

Είναι ασφαλές το MD5 για την αποθήκευση κωδικών πρόσβασης;

Όχι, καθόλου. Το MD5 είναι γρήγορο στο brute-force και έχει γνωστές επιθέσεις σύγκρουσης, και η "αποκρυπτογράφηση" μέσω πίνακα αναζήτησης είναι ακριβώς η επίθεση που σπάει τη μη αλατισμένη αποθήκευση κωδικών MD5. Χρησιμοποιήστε bcrypt, scrypt ή Argon2 για κωδικούς πρόσβασης αντ' αυτού.

Γιατί το ίδιο κείμενο δίνει διαφορετικό hash σε άλλο εργαλείο;

Συνήθως αόρατες διαφορές: ένας τελικός χαρακτήρας νέας γραμμής ή κενό, διαφορετικά χαρακτήρες τερματισμού γραμμής (\r\n έναντι \n), ή διαφορετική κωδικοποίηση κειμένου. Πανομοιότυπη είσοδος byte προς byte παράγει πάντα πανομοιότυπο MD5 hash.

Αποστέλλεται το κείμενό μου σε server για hashing;

Όχι. Το MD5 hash υπολογίζεται με JavaScript απευθείας στον browser σας — η είσοδός σας δεν μεταδίδεται ποτέ πουθενά.

Σχετικά εργαλεία