====== Lernziele Kryptologie und Python Skript (ohne 5.1, 5.2, 5.4, 5.5) ======
==== Lernziele Python ====
Die folgenden Konzepte in Python musst du verstehen:
- Variablen verwenden
- Lokale und globale Variablen verstehen (Sichtbarkeit).
- Wie kann man globale Variablen in einer Funktion verändern?
- Unterschied zwischen **=** und **==** verstehen.
- Verzweigungen mit ''if... elif.. else''
- Schleifen verstehen
- While-Schleife verstehen
- For-Schleife verstehen
- Funktionen verstehen (''def ...'')
- Wozu verwendet man eigentlich Funktionen? (Redundanz/Wiederverwendbarkeit, Strukturierung)
- Mit/ohne Argumente
- mit/ohne Rückgabewert
- Listen verstehen
- Listen erstellen
- Auf Elemente zugreifen
- range-Befehl verstehen
- Liste durchgehen mit ''for... in''
- Unterlisten bilden (z.B. ''L1[3:]'' oder ''L1[4:]''
- ''append'', ''insert'' und ''+''
- Ereignissteuerung bei Turtle verstehen
=== Beispiel 1: ===
import turtle
def draw_it(w,l,t):
for i in range(t):
turtle.forward(l)
turtle.right(w)
draw_it(90,100,4)
draw_it(130,200,50)
=== Beispiel 2: ===
import turtle
for i in range(0,300,30):
for j in range(0,300,30):
turtle.setx(i)
turtle.sety(j)
turtle.dot(10,"blue")
=== Beispiel 2: ===
a = 4
b = 1
def change(c):
global a
global b
a = a + c
print(a)
b = b + 1
return b
a = change(3)
a = change(8)
print(a)
===== Lernziele Kryptologie =====
- Unterschied zwischen Kryptographie,Steganographie und Kryptoanalyse kennen.
- Beispiele für die Steganographie angeben können
- Transposition: Skytale und Gartenzaunmethode verstehen.
- Substitution
- Monoalphabetische Substitution (Cesar-Verschlüsselung, allgemeine monoalphabetische Substitution)
- Knacken der Monalphabetischen Verschlüsselung (Häufigkeitsanalyse)
- Was ist eine Nomenklatur?
- Polyalphabetische Substitution: Vigenère-Verfahren verstehen.
- Wie kann man das Vigenere-Verfahren knacken?
- Schlüssellänge bestimmen Parallelstellensuche und Friedman)
- Wie geht man vor, wenn man die Schlüssellänge gefunden hat
- Was ist das Schlüsselaustauschproblem? (Erklären können)
- Was versteht man unter symmetrischen bzw. asymmetrischen Verschlüsselung?
- Wie kann ich mich mit einem asymmetrischen Verfahren authentifizieren (Digitale Signatur)?
- Was ist ein Hybrides Verschlüsselungssystem und warum verwendet man im Internet fast immer ein solches Verschlüsselungssystem?
- (Wie funktioniert der Schlüsseltausch nach Diffie-Hellman?)
{{ :kryptologie.pdf | Skript Kryptologie}}
{{ :crypto:moderne_kryptographie.pdf | Zusätzliche Seiten des Skripts}}
[[https://www.youtube.com/watch?v=mlzxpkdXP58|Visualisierung Blockchiffre]]
Beispiel eines [[https://www.uni-ulm.de/in/mwt/institut/mitarbeiter/maximilian-steiner/|öffentlichen Schlüssels]]
(Maximilian Steiner, Universität Ulm)
==== PGP Schlüssel erstellen ====
Erstelle ein Schlüsselpaar unter [[https://pgpkeygen.com/|https://pgpkeygen.com/]]
Stelle den öffentlichen Schlüssel auf Teams ein in den Ordner Keys unter deinem Namen.
Verschlüssle eine Nachricht an den Nächsten in der Liste mit diesem Tool: [[https://smartninja-pgp.appspot.com/]] und lege sie in Teams unter ihrem/seinem Namen.
Wenn du die Meldung bekommen hast, versuche sie wieder mit dem Link von oben zu entschlüsseln [[https://smartninja-pgp.appspot.com/]]
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: Keybase OpenPGP v2.0.9
Comment: https://keybase.io/crypto
xo0EX9HhmQEEAL5kXlMNnSfA6dYfSS1j5uYyKQ7jH29Zh3JqEf7MYl4J2rTioiNo
0LyqJbRVoXlwxyqNHLcywLfsSA9zzNMWyyxyvHllO6GMembejojacfThfD2YfcnN
2ETeHkYpD8A8nthiAfFT+pvBezxcMlAUkdOLuUeaMCFScborIvLa7txRABEBAAHN
H1JlbmUgTGVobWFubiA8bGVobWFubkBlZHVmci5jaD7CsAQTAQoAGgUCX9HhmQIb
LwMLCQcDFQoIAh4BAheAAhkBAAoJEHSpcqMVG3Zc39YD/28kpChSBex05NCapDpv
FAHuXD42MtR7Fzl2G5jRT0qDXkIiKcamQVpK4iZH7ptzMcBWHBG/+KGjAPC9eEQM
xlLEV5f1QF75/EDcvsAy+q7av/3mSE1McYEstNoVeU3bnHsfNQ+WXcFHHZ76UKOa
Rtz9pmuQ8iueJN0c7dSu9uw2zo0EX9HhmQEEAJ+k7JGiWw+eKnE+GaiFEOEe1FD+
73Ua4Epe2Q8NkwW5v2sqsLgRD1BvpY1dHVeBr74TpxneMSaSanpbreZrPe/N0Sxx
prR6qW27QmT4fLAOTTtJxoJ0CrbzSOLkUQcDEh1ZxpYJrn4Ti6yQE/lv4a/16Dyr
7PQeFwfGuzj3mCv7ABEBAAHCwIMEGAEKAA8FAl/R4ZkFCQ8JnAACGy4AqAkQdKly
oxUbdlydIAQZAQoABgUCX9HhmQAKCRAze3wRUuyZ/MKLA/sHnrFcN69pYE7Mktbp
kM6e1a+cDIBLSgaNlyiz5fF1+fU0OLugbCRoMdjb7LRWfC+y/6fdyl3yqfvZkS5+
xmkpH+zbYG8UnnY6fz6K7VHS+XDR6yGjOdq5BplEHEEqWmy9C1LCeIwYZiCSl4mE
gHfz4MTkDcJUN10xpq9OGZFo4MkfA/92vT2TlZw2UJWjNVuKrlZndRcVdsJgW/oG
qhLODMCt0Ot+tpWGSv9LFyKM4FZBFoBwY/WLgm0Yrr3m3GPbT6J0DuLOd14LiHRJ
9RjQ2+NYSzyjZq9dYhplkPcNta31yTIvCfg4MJbXas1E3hJ0WL30rtpSxt5xVOr/
k3LDtJQ0hc6NBF/R4ZkBBADDp1KAdLITs9ytpeTe/tptihCqQrbm0jBc20FXRm3e
t+csuOxldvDCyY6K8IelT1eMWfEBb1lrwT1FplzQjYRCHH28GtFx9+D2HQUKide/
vU74ulWhGHweCuNQiN/s71/OQVAWaU7yx0TYcLO0ecRkpY+cl8vNowdN0muPBHPu
NwARAQABwsCDBBgBCgAPBQJf0eGZBQkPCZwAAhsuAKgJEHSpcqMVG3ZcnSAEGQEK
AAYFAl/R4ZkACgkQcpCRQ75q/KBWvQP/Z2t49CqzkdXAG1gUgsA3FeX8e0+IG4M1
XdsB+UqtDJVSnDZuNlVpbae6Crr74MYdOoI6Q/EobU6i0Afqz8mlh0iDenUpQF4i
UBgbwui0Gx5UToXuqWYk4SLPHHjPKoqLDxWg6kqWx7NT0VzUexGcfUGMbSuDkRLB
ThMOfyQZmISVIQQAjlTkXHzcdmD0eHQ5DQ4vjFpLr9nE8Q/rE+hRBkLB4O339U2m
GEJWpic+1eoIepod87GC2XkXH6L9eEGqtM1IBqxQCAJqVMcr7QyI9ZBH0PWfc0rE
Eh6RBfr7rRdMk/wbjFhl5oxu6CxgzcWQlVqyev+A+m6Elf5rIZD8ytJPYKA=
=6vaO
-----END PGP PUBLIC KEY BLOCK-----
Meine Signatur:
-----BEGIN PGP MESSAGE-----
Version: Keybase OpenPGP v2.0.9
Comment: https://keybase.io/crypto
wYwDM3t8EVLsmfwBA/9m5LT0FR37l/HJd/Fu8cAiWBif371/MhfzNdwmBohrtUgL
ZYeUX6lndFjniRPa+Bi3/h43lkSwONiv7xDoNOmaYLGMoA6+zBBfifJxYhzN0KGH
MhMbztp97Vm45+75uTuyZ5T580z/TTpr66DTruLljbsgYIUivsQq/7ouwBhfvdJt
ASfuNlvISIL0BcKiWAa+aihO1BVmXTNQF2pOmS60Q4y6RKmQ14egIoF8CKFAV5WH
C55aV032c66TdebZ55wiRAkWCL/nxkw+dKVpQR1Ze9ap4cH1RGgn9HauRjZLiQPn
OLOIHtTdSVjSZCNU5w==
=cym+
-----END PGP MESSAGE-----