Skip to main content

Τι είναι ένας υπολογιστής κατακερματισμού;

Ένας υπολογιστής κατακερματισμού μπορεί να είναι πολλά πράγματα, αλλά, με πολύ ευρεία έννοια, αναφέρεται σε ένα πρόγραμμα ή μια λειτουργία που δέχεται κάποιο είδος εισόδου και στη συνέχεια εκτελεί αυτή την είσοδο μέσω ενός αλγορίθμου για τη δημιουργία μιας τιμής εξόδου, όπως ένας μεγάλος αριθμός ή ένα μπλοκτων συμβόλων.Ο όρος συχνά χρησιμοποιείται στη μετάδοση δεδομένων για να αναφέρεται σε ένα πρόγραμμα που δημιουργεί έναν τύπο κλειδιού με έναν αλγόριθμο, οπότε όποιος λαμβάνει τα δεδομένα που μεταδίδεται μπορεί να χρησιμοποιήσει τον ίδιο αλγόριθμο για να πάρει το ίδιο κλειδί για να δει αν τα δεδομένα έφτασαν άθικτα και μη τροποποιημένα.Στον προγραμματισμό των υπολογιστών, ο όρος υπολογιστής κατακερματισμού μπορεί να χρησιμοποιηθεί για να υποδείξει μια συνάρτηση κατακερματισμού που μετατρέπει κάποιο είδος δεδομένων σε ένα κλειδί κατακερματισμού που στη συνέχεια επεξεργάζεται με έναν άλλο αλγόριθμο για να δημιουργηθεί ένας δείκτης σε έναν πίνακα στον οποίο μπορούν να αποθηκευτούν οι πληροφορίες.Αν και οι δύο έννοιες της αριθμομηχανής είναι παρόμοιες, τα αποτελέσματα είναι πολύ διαφορετικά και συνήθως δεν είναι εναλλάξιμα.Μια κοινή ιδιότητα ενός αριθμομηχανή κατακερματισμού, ανεξάρτητα από τη χρήση του, είναι ότι η τιμή κατακερματισμού που παράγεται θα είναι πάντα η ίδια για ένα δεδομένο κομμάτι δεδομένων, ανεξάρτητα από το πού ή πότε εκτελείται το πρόγραμμα.είναι απλώς ένα πρόγραμμα ή μια λειτουργία που δημιουργεί ένα hash από ορισμένα δεδομένα.Ένα hash είναι απλώς μια λέξη για μια τιμή και μπορεί να είναι οτιδήποτε από έναν αριθμό σε μια σειρά εκατοντάδων αλφαριθμητικών χαρακτήρων, ανάλογα με τον τρόπο με τον οποίο χρησιμοποιείται.Τα δεδομένα που προστίθενται σε μια αριθμομηχανή κατακερματισμού για τη δημιουργία ενός hash μπορεί επίσης να είναι σχεδόν οτιδήποτε.Όταν χρησιμοποιείται για τον έλεγχο σφαλμάτων στη μετάδοση δεδομένων, η πηγή για μια τιμή κατακερματισμού συνήθως είναι ένα πλήρες αρχείο εγγράφου ή δεδομένων, όπως ένα μήνυμα ηλεκτρονικού ταχυδρομείου ή ένα αρχείο εικόνας.Στον προγραμματισμό, επειδή η τιμή κατακερματισμού χρησιμοποιείται για τον προσδιορισμό του πού αποθηκεύονται τα αρχεία δεδομένων σε έναν πίνακα κατακερματισμού, η τιμή εισόδου συνήθως είναι ένα μέρος μιας εγγραφής δεδομένων που είναι μοναδική, όπως το επώνυμο ενός ατόμου, ένας αριθμός τηλεφώνου ή έναςΑριθμός λογαριασμού

Στην περίπτωση μετάδοσης δεδομένων, ένας υπολογιστής κατακερματισμού χρησιμοποιεί οποιονδήποτε από εκατοντάδες διαφορετικούς μαθηματικούς αλγόριθμους για να δημιουργήσει τη μοναδική τιμή κατακερματισμού για τις πληροφορίες που μεταδίδονται.Αυτό μπορεί να είναι κάτι τόσο απλό όσο η προσθήκη όλων των τιμών όλων των bytes σε ένα αρχείο, οπότε η τιμή κατακερματισμού είναι το άθροισμα.Μπορεί επίσης να είναι πολύ πιο περίπλοκο, που περιλαμβάνει καταμέτρηση μπλοκ των bits ή περιττό επεξεργασία διαφορετικών αλληλουχιών αριθμών.Ωστόσο, μία από τις σημαντικότερες πτυχές οποιουδήποτε αλγόριθμου κατακερματισμού είναι ότι η προκύπτουσα τιμή κατακερματισμού πρέπει πάντα να είναι η ίδια εάν χρησιμοποιούνται τα ίδια δεδομένα ως είσοδος.Αυτή η ιδέα σημαίνει ότι, εάν ένα αρχείο μεταδοθεί με τη δική του υπολογισμένη τιμή κατακερματισμού, τότε ο δέκτης των δεδομένων μπορεί να χρησιμοποιήσει έναν αριθμομηχανή κατακερματισμού με τον ίδιο αλγόριθμο για να προσδιορίσει εάν οι τιμές κατακερματισμού για την αντιστοίχιση δεδομένων, επαληθεύοντας ότι τα δεδομένα ελήφθησαν άθικτακαι χωρίς σφάλματα ή αλλαγές.

Στον προγραμματισμό, ο όρος hash calculator συχνά χρησιμοποιείται για να περιγράψει μια λειτουργία που μετατρέπει ένα κομμάτι αναφοράς σε μια τιμή κατακερματισμού.Σε αντίθεση με τη μετάδοση δεδομένων, ο αριθμός που παράγεται από την αριθμομηχανή σε αυτή την περίπτωση δεν χρησιμοποιείται απαραιτήτως για την επαλήθευση αλλά για τον υπολογισμό ενός δείκτη σε έναν πίνακα κατακερματισμού όπου θα αποθηκευτούν οι πληροφορίες.Μια τιμή ενδιάμεσου κατακερματισμού υπολογίζεται για να επιτρέψει την προϋπόθεση ότι ένας μεγαλύτερος αριθμός αρχείων δεδομένων σε ένα μικρότερο πίνακα κατακερματισμού, με ορισμένες εγγραφές να δημιουργούν τις ίδιες τιμές υπό ορισμένες συνθήκες.Τόσο ο αλγόριθμος που χρησιμοποιείται για τον υπολογισμό μιας τιμής κατακερματισμού όσο και τα δεδομένα που χρησιμοποιούνται ως εισροές είναι αρκετά αυθαίρετα για έναν πίνακα κατακερματισμού και συνήθως ειδικά για την εφαρμογή.