? Hur vet du att filen du hämtat inte har omprogrammeras med skadlig kod eller skrivas om eftersom den författare skapade det ? Utan någon mekanism för att kontrollera att filen inte har ändrats , kan du inte . Detta är anledningen till applikationer och viktiga dokument på Internet använder kompilerade signaturer , filer eller teckensträngar vars sammanställning är beroende av det exakta innehållet i uppgifterna . När du checkar in en fil mot sin signatur , vet du om det har förändrats . Innehåll Integrity
Att kunna kontrollera att filen du ska hämta är exakt samma som den som dess påstådda skapare släppt förhindrar två stora problem : mannen i mitten attacker och skadade data . En man i mitten attack är en hacka teknik där hacker får en fil från sin ursprungliga skapare , modifierar den att innehålla skadlig kod , och sedan överför den till en slutanvändare , som inte inser att en hacker ändrat filen . Alternativt skulle en programfil som drabbades data korruption i transit lider av buggar eller krasch i mitten av användning .
Checksummor
En metod för att underteckna en fil innehåll är att köra den genom en checksumma program . Dessa program skapar en sträng med tecken och bokstäver som är unika för de exakta uppgifterna i en viss fil . Varje ändring av filen kommer att orsaka samma program för att producera en annan alfanumerisk sträng . När en utvecklare släpper filens ursprungliga checksumma som en signatur , kan slutanvändarna köra filen de laddar ner genom samma program . Om checksumman filen producerar på sin dator matchar dess summa signatur check , då filen inte har manipulerats eller skadad .
Addera ditt Fristående signaturer en annan metod av att underteckna filer är att använda en fristående signatur. Denna metod är baserad på användning av asymmetriska krypteringsnycklar , där en användare har en privat nyckel han håller för sig själv och en publik nyckel han släpper till allmänheten . När en utvecklare skapar en signatur för ett dokument eller program han kommer att släppa , sin privata nyckel och krypteringsprogram skapar kryptografiska innehåll för signatur . Den som laddar ner dokumentet eller programmet kan också hämta sin skapare publika nyckel . Samma krypteringsprogram kan sedan berätta om dokumentet eller programmet har ändrats från dess innehåll , dess skapare publika nyckel och innehållet i signatur.
Source Code vs Binaries
Kompilerade signaturer är vanliga sätt att verifiera ett programs innehåll , särskilt med öppen källkod . När en slutanvändare är att få en signatur - vare sig det är en fil eller en checksumma - för ett program han hämtat , måste han se till att han får den rätta . Signaturen för Windows-versionen av programvaran kommer att vara annorlunda från Mac-versionen av programvaran , och båda kommer att vara annorlunda från Linux-versionen av programvaran . Slutligen kommer signaturen för programvarans källkod vara annorlunda från alla tre .