Download controleren met SHA-256 op de Mac

Een SHA-256-hash is een controlewaarde van 64 tekens die uit de inhoud van een bestand wordt berekend. Door die waarde met een betrouwbare checksum van de maker te vergelijken, controleert u of u hetzelfde bestand hebt.

Bekijk de opdrachten in actie 12 seconden

Druk op afspelen: de opdrachten verschijnen letter voor letter. U kunt pauzeren en het beeld vergroten.

Geluidloze terminalopname met onze oefenbestanden: eerst de hash, daarna de automatische vergelijking met controle.sha256. De lange hash loopt in het smalle opnamevenster door op de volgende regel.

Stap voor stap

  1. Zorg voor het bestand én een betrouwbare controlewaarde

    Gebruik voor deze oefening de twee downloadlinks hierboven en bewaar beide bestanden in Downloads. Bewerk ze niet. Bij een echte download haalt u de SHA-256-waarde bij de officiële maker op, passend bij precies dezelfde versie en uitvoering. Een los berekende hash zegt zonder zo’n vergelijking weinig.

    Controle: Voor de oefening hebt u Voorbeeld.txt en controle.sha256. Voorkom namen met een extra nummer zoals Voorbeeld (1).txt: de naam in het controlebestand moet overeenkomen.

  2. Ga in Terminal naar de juiste map

    Open Terminal en voer deze opdracht uit als de bestanden in Downloads staan. Bij een andere opslagplek gebruikt u die map. cd verandert alleen de werkmap van de huidige terminalsessie; het verplaatst geen bestanden.

                cd ~/Downloads
              

    Controle: De volgende opdracht zoekt de bestanden in Downloads. Ziet u straks No such file or directory, controleer dan eerst de map en de precieze bestandsnaam.

  3. Bereken de SHA-256-hash

    Voer de opdracht hieronder uit. Vervang bij uw eigen download Voorbeeld.txt door de werkelijke bestandsnaam. Zet een bestandsnaam met spaties tussen dubbele aanhalingstekens. De optie -a 256 kiest expliciet SHA-256.

                shasum -a 256 Voorbeeld.txt
              

    Controle: Er verschijnt een controlewaarde van 64 tekens, gevolgd door de bestandsnaam. Vergelijk alle tekens met de SHA-256-waarde van de maker, niet alleen het begin of einde. Hoofdletters en kleine letters in de hexadecimale waarde betekenen hetzelfde.

  4. Laat een checksum-bestand automatisch controleren

    Ons bestand controle.sha256 bevat de verwachte SHA-256-waarde en de naam Voorbeeld.txt. Laat shasum beide vergelijken met de opdracht hieronder. Bij een echte download werkt dit alleen met een geschikt SHA-256-controlebestand van de maker; pas de naam van dat controlebestand aan.

                shasum -a 256 -c controle.sha256
              
    De controle met shasum geeft Voorbeeld.txt: OK.
    De berekende waarde komt overeen met het controlebestand. Het bestand is hiervoor alleen gelezen.

    Controle: Voor de ongewijzigde oefenbestanden verschijnt Voorbeeld.txt: OK. Bij gewijzigde inhoud meldt shasum FAILED. Bij een ontbrekend of anders genoemd bestand krijgt u een foutmelding; die zegt nog niet dat de inhoud is beschadigd.

Wat controleert u hiermee?

SHA staat voor Secure Hash Algorithm; SHA-256 berekent een waarde van 256 bits. In de uitvoer ziet u die als 64 hexadecimale tekens: de cijfers 0 tot en met 9 en de letters a tot en met f. Die waarde wordt vaak een hash of checksum genoemd. U hoeft die termen niet als verschillende controles uit te voeren.

De hash gaat over de inhoud. Een andere bestandsnaam verandert de hash niet, maar een controlebestand kan het bestand dan niet meer onder de verwachte naam vinden. Ook onzichtbare wijzigingen, zoals een extra regeleinde in een tekstbestand, veranderen de inhoud en daarmee de controlewaarde.

Ons tekstbestand is uitsluitend om te oefenen. De bijbehorende checksum staat in het tweede bestand; u kunt die bekijken met een teksteditor. De video gebruikt precies deze twee bestanden.

De checksum klopt niet: wat nu?

Controleer eerst of de checksum bij dezelfde download hoort. Een Mac-versie kan bijvoorbeeld andere bytes hebben dan een Windows-versie, en een nieuwere release heeft meestal een andere hash. Laat een nog lopende download afronden en vergelijk een archief met de checksum van dat archief, niet met de checksum van een uitgepakt bestand.

Blijft de waarde afwijken, gebruik de download dan nog niet. Download het bestand opnieuw via de officiële bron en controleer het nogmaals. Pas de verwachte checksum niet aan om een foutmelding weg te krijgen: daarmee verdwijnt juist de vergelijking.

De melding OK betekent dat de inhoud bij de opgegeven checksum past. Het is geen virusscan of digitale handtekening. Als iemand zowel het bestand als de opgegeven checksum kan vervangen, kan een kwaadaardig bestand ook OK krijgen. De herkomst van de controlewaarde blijft dus belangrijk.

Deze opdrachten voeren de download niet uit en veranderen hem niet. Er is achteraf geen systeeminstelling om terug te zetten. Alleen de optionele oefenbestanden blijven in uw downloadmap staan.

Bekijk alle tips