Skip to main content

Τι είναι η υπογραφή αρχείου;

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

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

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