Kas yra failo parašas?

Failo parašas kompiuterių programavime yra unikalus identifikavimo numeris, esantis failo pradžioje. Šis skaičius identifikuoja failo tipą ir pateikia informaciją apie faktiniame faile esančius duomenis. Šią informaciją galima naudoti norint nustatyti, kokio tipo failas yra skaitomas, kai failo plėtinys arba vartotojo klaida klaidingai nustatė failą kaip netinkamo tipo. Failo paraše taip pat gali būti informacijos, užtikrinančios, kad pirminiai duomenys, kurie buvo saugomi faile, vis dar yra nepažeisti ir nebuvo pakeisti. Šių elementų derinys leidžia failo parašui būti svarbia patvirtinimo forma, ypač nuo kompiuterinių virusų.

Failo parašo sąvoka atsirado dėl to, kad reikia failo antraštės – duomenų bloko failo pradžioje, kuris apibrėžia informacijos saugojimo faile parametrus. Dalis antraštės informacijos yra baitų seka, apibrėžianti iš pradžių sukurto failo tipą. Tai gali būti vaizdo failas, dokumentas iš konkrečios programos arba net protokolo tipas, kai failo srautas naudojamas kaip ryšio tarp kliento ir serverio būdas. Failo antraštėje nenaudojamas apibrėžtas standartas; Vietoj to, jis priklauso kiekvienam skirtingam formatui, o tai reiškia, kad programai arba operacinei sistemai reikia failo parašų duomenų bazės, kad būtų galima nustatyti nežinomo failo tipą.

Tikrasis failo parašas kartais vadinamas magišku skaičiumi. Programuojant tai yra unikali reikšmė duomenų lauke, kurį ji užima. Kai žiūrite į failo antraštę, kad nustatytumėte failo tipą, tai reiškia, kad du failo parašai neturėtų būti vienodi, todėl kiekvienam formato tipui galima turėti atskirą identifikuojančią baitų eilutę. Tai gali būti ypač naudinga perduodant ir interpretuojant failus internete, kai identifikuojantis failo plėtinys gali būti savavališkas ir juo negalima remtis kaip failo tipo identifikatoriumi.

Be tik failo tipo, failo paraše taip pat gali būti informacijos, leidžiančios atlikti failo klaidų patikrinimą, kad būtų galima patvirtinti, kad jame saugomi duomenys yra nepažeisti. Tai dažnai atliekama naudojant funkciją, vadinamą kontroline suma. Kontrolinė suma yra funkcija, kuri naudoja failo duomenų sveikųjų skaičių reikšmes, kad sukurtų matematines reikšmes, kurias galima pakartoti, kai failas yra perkeltas arba įkeltas. Paprasčiausiai šis procesas apima failo baitų serijos reikšmių pridėjimą ir sumos įrašymą, leidžiančią failą dekoduojančiai programai atlikti tą pačią funkciją. Jei dekoduojant rezultatai skiriasi, failas galėjo būti sugadintas, o duomenys gali būti neteisingi arba pakeisti piktybiniais tikslais.