Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
gf_informatik:daten_sca:verschluesselung [2026-05-05 07:16] scagf_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 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_.,!?" ALPHABET = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_.,!?"
  
 ################################### ###################################
 + 
 key = #TODO: HIER MUSS DER KEY FESTGELEGT WERDEN key = #TODO: HIER MUSS DER KEY FESTGELEGT WERDEN
    
 ################################### ###################################
 +
 +# key check using hashes
 +keys_hashed = ['eda0b68b535db8b5351411d0c6107ae914d2ae693bbbc4a65563c0bd7b71c236','518f09cd2ae6ed62f4f69b68100f500daf50512b770441ba3d5887aaebdec92c','240e84641bec5e258c90964f9a5dca0e491b3654fdbeb3d67303dbaad3c51fb6','1b430006cae20c25f86ffe754e00b90fe7badfb9b2da99d81ce0026c4c548b5a']
 +if not hashlib.sha256(key.encode()).hexdigest() in keys_hashed:
 +    raise Exception('Eingegebener key ist NICHT korrekt!')
  
 for c in key: for c in key:
     if c not in ALPHABET: raise Exception("Unerlaubtes Symbol im Key!")     if c not in ALPHABET: raise Exception("Unerlaubtes Symbol im Key!")
 + 
 def encryption_vigenere(cleartext,password): def encryption_vigenere(cleartext,password):
     cleartext = cleartext.replace(' ','_')     cleartext = cleartext.replace(' ','_')
Zeile 635: Zeile 642:
 </code> </code>
 ++++ ++++
 +
 +<nodisp 2>
 +
 +++++LEHRER INFO WICHTIG!|
 +
 +Die hashed PW müssen jeweils angepasst werden!
 +
 +Code dafür:
 +
 +<code python>
 +import hashlib
 +
 +text = "WORLD"
 +
 +pws = ['KSR','PIZZA','SCHWEIZ']
 +
 +for text in pws:
 +    hashed = hashlib.sha256(text.encode()).hexdigest()
 +    print(hashed)
 +</code>
 +
 +++++
 +
 +</nodisp>
 +
 +=== Auftrag ===
 +
 +++++Vorbereitung LP|
 +
 +   1. keys ausdenken, immer 1 key pro 4-5 SuS
 +   1. auf Zetteli schreiben
 +   1. hashes in Code anpassen (überprüft, ob eingegebene keys korrekt)
 +   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 =====
  • gf_informatik/daten_sca/verschluesselung.1777965416.txt.gz
  • Zuletzt geändert: 2026-05-05 07:16
  • von sca