Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
| Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
| gf_informatik:daten_sca:verschluesselung [2026-05-05 07:16] – sca | gf_informatik:daten_sca:verschluesselung [2026-05-11 11:55] (aktuell) – [Auftrag] sca | ||
|---|---|---|---|
| Zeile 590: | Zeile 590: | ||
| <code python> | <code python> | ||
| import unicodedata | import unicodedata | ||
| + | import hashlib | ||
| + | |||
| ALPHABET = " | ALPHABET = " | ||
| ################################### | ################################### | ||
| + | |||
| key = #TODO: HIER MUSS DER KEY FESTGELEGT WERDEN | key = #TODO: HIER MUSS DER KEY FESTGELEGT WERDEN | ||
| ################################### | ################################### | ||
| + | |||
| + | # key check using hashes | ||
| + | keys_hashed = [' | ||
| + | if not hashlib.sha256(key.encode()).hexdigest() in keys_hashed: | ||
| + | raise Exception(' | ||
| for c in key: | for c in key: | ||
| if c not in ALPHABET: raise Exception(" | if c not in ALPHABET: raise Exception(" | ||
| + | |||
| def encryption_vigenere(cleartext, | def encryption_vigenere(cleartext, | ||
| cleartext = cleartext.replace(' | cleartext = cleartext.replace(' | ||
| Zeile 635: | Zeile 642: | ||
| </ | </ | ||
| ++++ | ++++ | ||
| + | |||
| + | <nodisp 2> | ||
| + | |||
| + | ++++LEHRER INFO WICHTIG!| | ||
| + | |||
| + | Die hashed PW müssen jeweils angepasst werden! | ||
| + | |||
| + | Code dafür: | ||
| + | |||
| + | <code python> | ||
| + | import hashlib | ||
| + | |||
| + | text = " | ||
| + | |||
| + | pws = [' | ||
| + | |||
| + | for text in pws: | ||
| + | hashed = hashlib.sha256(text.encode()).hexdigest() | ||
| + | print(hashed) | ||
| + | </ | ||
| + | |||
| + | ++++ | ||
| + | |||
| + | </ | ||
| + | |||
| + | === Auftrag === | ||
| + | |||
| + | ++++Vorbereitung LP| | ||
| + | |||
| + | 1. keys ausdenken, immer 1 key pro 4-5 SuS | ||
| + | 1. auf Zetteli schreiben | ||
| + | 1. hashes in Code anpassen (überprüft, | ||
| + | 1. Teams-Chat erstellen | ||
| + | |||
| + | ++++ | ||
| + | |||
| + | |||
| + | Vorbereitung SuS: | ||
| + | |||
| + | 1. Schotte dich ab: Einzeln sitzen, Kopfhörer | ||
| + | 1. Kopiere Vigenere-Code von oben in Browser. | ||
| + | 1. Jede Person kriegt von LP einen geheimen key. Keep it private! | ||
| + | 1. Tippe key in Code: `key = ...`. Führe Code aus. Falls kein Fehler, ist key korrekt! | ||
| + | |||
| + | |||
| + | Durchführung | ||
| + | |||
| + | Ziele: | ||
| + | |||
| + | * Jeweils 4-5 Personen bilden eine Gruppe und haben das gleiche Passwort. | ||
| + | * Schreibe verschlüsselte Nachrichten im Chat. | ||
| + | * Finde alle Gruppenmitglieder. | ||
| + | * Dann löst Rätsel (-> Slides) | ||
| + | * Dann plaudert in der Gruppe miteinander: | ||
| + | * Witz erzählen! | ||
| + | * Ferienpläne diskutieren. | ||
| + | * ... | ||
| + | |||
| + | |||
| + | Regeln: | ||
| + | |||
| + | * NUR VERSCHLÜSSELT KOMMUNIZIEREN! | ||
| ===== - Zeichencodierung ===== | ===== - Zeichencodierung ===== | ||