Ist die Datei noch dieselbe?
Du lädst ein Spiel herunter. Es ist 2 Gigabyte groß. Unterwegs kann ein Fehler passieren. Oder jemand hat die Datei absichtlich verändert.
Du kannst nicht jedes Byte einzeln ansehen. Aber es gibt einen Trick: einen kurzen Fingerabdruck für die ganze Datei.
Am Ende dieser Lektion
Notiz
Ich kann erklären, wie ein Hash zeigt, ob sich eine Datei verändert hat.
Schlüsselwörter
| Begriff | Was er bedeutet | Beispiel |
|---|---|---|
| Prüfsumme | eine kurze Zahl, die aus Daten berechnet wird | 13 |
| Quersumme | alle Ziffern einer Zahl zusammengezählt | 4711 ergibt 13 |
| Hash | ein kurzer Fingerabdruck aus beliebig langen Daten | |
| Hashfunktion | die Rechenregel, die den Hash erzeugt | |
| Kollision | zwei verschiedene Daten mit dem gleichen Ergebnis |
Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.
Starter: Wiederholung
Probier es aus
Starter: Wiederholung
3 FragenDeine Antworten werden hier bewertet und nicht gespeichert. Mit einem Konto bleiben deine Ergebnisse erhalten.
Eine Prüfsumme zählt Ziffern zusammen
Eine einfache Prüfsumme kennst du aus der Schule: die Quersumme. Du zählst alle Ziffern zusammen.
Die Zahl 4711 hat die Quersumme 4 + 7 + 1 + 1 = 13.
Du schickst die Zahl und die Quersumme zusammen. Die andere Person rechnet nach. Stimmt die Summe nicht, ist unterwegs etwas schiefgegangen.
Beispiel: Ein Fehler fällt auf
| Zahl | Rechnung | Quersumme | Passt zu 13? |
|---|---|---|---|
| 4711 | 4 + 7 + 1 + 1 | 13 | Ja |
| 4721 | 4 + 7 + 2 + 1 | 14 | Nein, Fehler gefunden |
| 4171 | 4 + 1 + 7 + 1 | 13 | Ja, obwohl die Zahl falsch ist |
Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.
Probiere es aus: Quersumme
def quersumme(zahl):
summe = 0
for ziffer in str(zahl):
summe = summe + int(ziffer) # jede Ziffer einzeln addieren
return summe
print(quersumme(4711))
print(quersumme(4721)) # eine Ziffer ist anders
# Ändere die Zahl im ersten print. Ändert sich die Prüfsumme?
Kontrolle
Probier es aus
Kontrolle
3 FragenDeine Antworten werden hier bewertet und nicht gespeichert. Mit einem Konto bleiben deine Ergebnisse erhalten.