RIPEMD-160 Υπολογιστής κωδικού κατακερματισμού
Δημοσιεύθηκε: 18 Φεβρουαρίου 2025 στις 9:40:02 μ.μ. UTC
Υπολογιστής κώδικα κατακερματισμού που χρησιμοποιεί τη συνάρτηση κατακερματισμού RACE Integrity Primitives Evaluation Message Digest 160 bit (RIPEMD-160) για τον υπολογισμό ενός κωδικού κατακερματισμού με βάση την εισαγωγή κειμένου ή τη μεταφόρτωση αρχείου.RIPEMD-160 Hash Code Calculator
Το RIPEMD-160 είναι μια κρυπτογραφική συνάρτηση κατακερματισμού που λαμβάνει μια είσοδο (ή ένα μήνυμα) και παράγει μια έξοδο σταθερού μεγέθους, 160-bit (20-byte), που συνήθως αντιπροσωπεύεται ως δεκαεξαδικός αριθμός 40 χαρακτήρων.
Το RIPEMD (RACE Integrity Primitives Evaluation Message Digest) είναι μια οικογένεια κρυπτογραφικών συναρτήσεων κατακερματισμού που έχουν σχεδιαστεί για να παρέχουν ακεραιότητα δεδομένων μέσω κατακερματισμού. Αναπτύχθηκε στα μέσα της δεκαετίας του 1990 ως μέρος του έργου RACE (Research and Development in Advanced Communications Technologies in Europe) της ΕΕ.
Η έκδοση 160 bit του RIPEMD εξακολουθεί να θεωρείται ασφαλής και είναι η πιο χρησιμοποιούμενη παραλλαγή, ίσως η πιο διάσημη στο Bitcoin, όπου χρησιμοποιείται παράλληλα με το SHA-256 για τη δημιουργία διευθύνσεων.
Πλήρης αποκάλυψη: Δεν έγραψα τη συγκεκριμένη υλοποίηση της συνάρτησης κατακερματισμού που χρησιμοποιείται σε αυτή τη σελίδα. Πρόκειται για μια τυπική συνάρτηση που περιλαμβάνεται στη γλώσσα προγραμματισμού PHP. Έφτιαξα μόνο τη διαδικτυακή διεπαφή για να την κάνω δημόσια διαθέσιμη εδώ για λόγους ευκολίας.
Σχετικά με τον αλγόριθμο κατακερματισμού RIPEMD-160
Δεν είμαι ούτε μαθηματικός ούτε κρυπτογράφος, αλλά θα προσπαθήσω να εξηγήσω πώς λειτουργεί αυτή η συνάρτηση κατακερματισμού με τρόπο που οι μη μαθηματικοί μπορούν να καταλάβουν. Αν προτιμάτε την επιστημονικά ακριβή πλήρη μαθηματική εξήγηση αντ 'αυτού, είμαι βέβαιος ότι μπορείτε να το βρείτε σε πολλές άλλες ιστοσελίδες ;-)
Το RIPEMD χρησιμοποιεί μια κατασκευή Merkle-Damgård, κάτι που έχει κοινό με την οικογένεια αλγορίθμων κατακερματισμού SHA-2. Έχω περιγράψει αυτά που λειτουργούν παρόμοια με ένα μπλέντερ σε άλλες σελίδες, και το ίδιο ισχύει και για το RIPEMD:
Βήμα 1 - Προετοιμασία (συμπλήρωση των δεδομένων)
- Πρώτον, το RIPEMD διασφαλίζει ότι τα "συστατικά" ταιριάζουν απόλυτα στο μπλέντερ. Εάν όχι, προσθέτει κάποιο επιπλέον "πληρωτικό" για να το στρογγυλοποιήσει (αυτό είναι σαν να γεμίζετε τα δεδομένα).
Βήμα 2 - Εκκίνηση του μπλέντερ (αρχικοποίηση)
- Το μπλέντερ ξεκινά με μια συγκεκριμένη ρύθμιση - όπως ταχύτητα, ισχύ και θέση λεπίδας. Αυτές είναι ειδικές τιμές εκκίνησης που ονομάζονται διανύσματα προετοιμασίας.
Βήμα 3 - Διαδικασία ανάμειξης (Crunching the Data)
- Εδώ είναι το ωραίο μέρος: Το RIPEMD δεν έχει μόνο ένα σετ λεπίδων. Έχει δύο μπλέντερ που εργάζονται δίπλα-δίπλα (αριστερά και δεξιά).
- Κάθε μπλέντερ επεξεργάζεται τα συστατικά διαφορετικά. Ο ένας κόβει ενώ ο άλλος αλέθει, χρησιμοποιώντας διαφορετικές ταχύτητες, κατευθύνσεις και μοτίβα λεπίδων.
- Αναμιγνύουν, ανταλλάσσουν και περιστρέφουν τα δεδομένα 80 φορές (όπως ανάμειξη σε κύκλους για να βεβαιωθείτε ότι όλα είναι τέλεια αναμεμειγμένα).
Βήμα 4 - Τελικό Μείγμα (Συνδυασμός Αποτελεσμάτων)
- Μετά από όλη αυτή την ανάμειξη, το RIPEMD συνδυάζει τα αποτελέσματα και από τα δύο μπλέντερ σε ένα τελικό, ομαλό hash.
Η παραλλαγή 160 bit είναι η πιο κοινή χρησιμοποιούμενη έκδοση του RIPEMD, ιδιαίτερα λόγω της χρήσης του στη δημιουργία διευθύνσεων Bitcoin παράλληλα με το SHA-256.