Hallo zusammen,
stehe bei diesen beiden Aufgaben leider auf dem Schlauch .
1. Substitutionschiffren
Schreiben Sie ein Python Programm, um einen gegebenen Ciphertext, welcher mit einer buchstabenweise arbeitenden Substitutionschiffre verschlüsselt wurde, automatisch zu entschlüsseln. Verwenden Sie hierzu eine Statistik für die einzelnen Buchstaben und ein Wörterbuchabgleich zur Ermittlung des Schlüssels. Vereinfachende Annahme: Der Klartext besteht lediglich aus ASC II Kleinbuchstaben und Leerzeichen.
2. Schlüssellängen
Untersuchen Sie die Angriffsdauer von Brute-Force Angriffen für die Schlüssellängen von 40, 56, 64, 112 und 128 Bit in folgenden Szenarien:
Der Angreifer verfügt über ASICs, welche 5 * 10^8 Schlüssel pro Sekunde überprüfen kann und ein Etat von 1 Mio. Euro verfügt. Die Kosten pro ASIC betragen 50 Euro und es werden weitere 50 Euro je Einheit für die Integration angenommen.
Wie viele Einheiten können mit dem zur Verfügung stehenden Etat parallel betrieben werden?
Wie lange dauert die durchschnittliche, die minimale und die maximale Schlüsselsuchzeit?
In wie viel Jahren könnte mit einem Etat von 1 Mrd. Euro unter der Annahme der Weitergeltung von Moore's Law eine Schlüsselsuchmaschine gebaut werden, welche eine durchschnittliche Suchzeit von 24 Stunden benötigt?
Kryptanalyse Klassischer Cipher
- __blackjack__
- User
- Beiträge: 13112
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
Als erstes bitte dieses Thema beachten: An alle Schüler und Studenten mit Informatikproblemen.
Als nächstes müsstest Du mal beschreiben was Du gemacht hast, und was daran nicht funktioniert, für den ersten Aufgabenteil. Also welchen Code hast Du denn geschrieben? Mit welchen Daten zum Testen hast Du den gefüttert? Liefert der eine Fehlermeldung? Falls ja welche? Komplett mit 1:1 Kopie des Tracebacks. Falls nein, kommt etwas anderes heraus als Du erwartest? Was? Und wie weicht das von Deiner Erwartung ab?
Der zweite Teil ist ja eher Mathe als Python. Was sind Deine Überlegungen dort? Wo kommst Du nicht weiter? Warum?
Als nächstes müsstest Du mal beschreiben was Du gemacht hast, und was daran nicht funktioniert, für den ersten Aufgabenteil. Also welchen Code hast Du denn geschrieben? Mit welchen Daten zum Testen hast Du den gefüttert? Liefert der eine Fehlermeldung? Falls ja welche? Komplett mit 1:1 Kopie des Tracebacks. Falls nein, kommt etwas anderes heraus als Du erwartest? Was? Und wie weicht das von Deiner Erwartung ab?
Der zweite Teil ist ja eher Mathe als Python. Was sind Deine Überlegungen dort? Wo kommst Du nicht weiter? Warum?
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
-
- User
- Beiträge: 4
- Registriert: Mittwoch 24. Oktober 2018, 15:09
Hallo nochmal,
den ersten Aufgabenteil hab ich mittlerweile:)
Beim zweiten Teil bin ich mir nicht sicher. Ich habe den erweiterten ASCII Code herangezogen (8 Bit). Die Dauer lässt sich ja simpel berechnen. Beim 40 Bit Schlüssel sind es 256^5 Kombinationen , beim 56 sind 256^6 usw. und so lässt sich mithilfe der 5*10^8 Überprüfungen je Sekunde die Dauer für jede Schlüssellänge bestimmen. Ist die minimale Suchdauer die des 40 Bit Schlüssels und die maximale die des 128 Bit Schlüssels? Die durchschnittliche Suchdauer der Mittelwert der Suchdauer für alle Schlüssellängen?
Die beiden anderen Unterpunkte der Aufgabe sind mir jedoch ein Rätsel.
den ersten Aufgabenteil hab ich mittlerweile:)
Beim zweiten Teil bin ich mir nicht sicher. Ich habe den erweiterten ASCII Code herangezogen (8 Bit). Die Dauer lässt sich ja simpel berechnen. Beim 40 Bit Schlüssel sind es 256^5 Kombinationen , beim 56 sind 256^6 usw. und so lässt sich mithilfe der 5*10^8 Überprüfungen je Sekunde die Dauer für jede Schlüssellänge bestimmen. Ist die minimale Suchdauer die des 40 Bit Schlüssels und die maximale die des 128 Bit Schlüssels? Die durchschnittliche Suchdauer der Mittelwert der Suchdauer für alle Schlüssellängen?
Die beiden anderen Unterpunkte der Aufgabe sind mir jedoch ein Rätsel.
https://de.wikipedia.org/wiki/Mooresches_Gesetz
ein ASIC kann 5 * 10^8 Schlüssel pro Sekunde überprüfen
wieviele Asics gibt es für 1Mio, wieviele für 1Mrd
wieviele Asics brauche ich um die Schlüssel in 24h zu errechnen
ein ASIC kann 5 * 10^8 Schlüssel pro Sekunde überprüfen
wieviele Asics gibt es für 1Mio, wieviele für 1Mrd
wieviele Asics brauche ich um die Schlüssel in 24h zu errechnen
Ich bin Pazifist und greife niemanden an, auch nicht mit Worten.
Für alle meine Code Beispiele gilt: "There is always a better way."
https://projecteuler.net/profile/Brotherluii.png
Für alle meine Code Beispiele gilt: "There is always a better way."
https://projecteuler.net/profile/Brotherluii.png
-
- User
- Beiträge: 4
- Registriert: Mittwoch 24. Oktober 2018, 15:09
Danke, Thomas. Mooresches Gesetz ist mir bekannt, aber ich weiß es nicht auf die Aufgabe anzuwenden:(
Das zumindest ist Dreisatzpythonjaeger11 hat geschrieben: ↑Mittwoch 24. Oktober 2018, 15:58 Wie viele Einheiten können mit dem zur Verfügung stehenden Etat parallel betrieben werden?
-
- User
- Beiträge: 4
- Registriert: Mittwoch 24. Oktober 2018, 15:09
Ich habe direkt daran gedacht, aber so einfach kann es doch nicht sein?
- __blackjack__
- User
- Beiträge: 13112
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@pythonjaeger11: Warum nicht?
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman