Skip to main content


Zutaten: Zucker, Kakaomasse (50%), Milchzucker, Weizenmehl, Vollmilchpulver, Magermilchpulver, Butterreinfett, Sahnepulver, Butter (1,4%)
Kann Spuren von Analysis und Geometrie enthalten.

04_2022_grosse_zahl_toon_titel_04

Große Zahlen in Python

Paula hatte mit Rike das Verschlüsseln mit dem RSA-Verfahren programmiert. Sie haben das flaubertsche Wort erection verschlüsselt und nrtciiie erhalten. Dazu mussten sie die Aufgabe

lösen. Die Berechnung hat weniger als 1 s gedauert. Doch viel aufwendiger ist die Dechiffrierung. Das wollen sie heute tun.

Den Private Key bestimmen

Paula Heute machen wir weiter mit dem Dechiffrieren. Ich will es gerne wissen.

Rike Ja, ich bin gespannt, wie du den Schlüssel zum Entschlüsseln ermittelst und ob es überhaupt klappt.

Paula Na, klar. Für den Private Key müssen wir aus der Aufgabe

bestimmen.

Rike Wie machst du das?

Paula Ich gehe alle von 1 beginnend durch und teste, ob

ergibt.

04_2022_rsa_progr-ablaufdiag-d-bestimmen-07
Programmablaufplan zur Bestimmung von und dem Private Key.

 

Rike Okay! Dauert das lange?

Paula Warte, bei unserem

dauert das …, warte, hier, ich kriege

in 3 s.

Rike Wow! 11 Millionen!

Dechiffrieren

Paula Ja, 11 Millionen. Jetzt kommt die Entschlüsselung. Wir hatten das Wort

durch Verschlüsselung des Wortes

erhalten. Mit unserer Abbildung von unserem Alphabet

0ceinort
01234567

kriegen wie die Oktalzahl

und dazu die entsprechende Dezimalzahl

Das Dechiffrieren geht mit der Formel

04_2022_rsa_progr-ablaufdiag_dechiff_07
Programmablaufplan zum Dechiffrieren eines Wortes zu gegebenem Alphabet und .

 

Rike Ja, ich weiß. Das Ergebnis wird bei uns sehr groß:

Kannst du das mit Python programmieren? Das macht kein Tabellenkalkulationsprogramm oder wissenschaftlicher Taschenrechner mit.

Große ganze Zahlen

Paula In Python habe ich die Zahlentypen int und long für ganze Zahlen. Beide haben beliebig viele Stellen, es braucht nur Zeit und Arbeitsspeicher, um das zu berechnen.

Rike Okay, und wie lange braucht dein PC? Schafft er es überhaupt?

04_2022_rsa_python_screenshoot_v_18

Paula Warte, ich brauche fürs Chiffrieren weniger als eine Sekunde, für die Bestimmung von 3 s und fürs Dechiffrieren 81 s. Einmal erection hin und zurück in 84 s.

Rike Nicht schlecht! Kannst du mir mal diese Zahl

ausgeben?

Paula Ja, klar, warte, das muss ich eben noch codieren. Hier!

Rike Wie viele Stellen hat die?

Paula Warte, ca. 1 Million.

Rike Boah, das ist ja Wahnsinn! Wenn wir die Zahl hintereinanderschreiben, jede Ziffer mit Abstand zur nächsten vielleicht 4 mm breit, dann ergibt das eine Zahlenkette von der Länge

Das ist so viel wie 10 Mal ums Stadion laufen.

Paula Haha!

***

Übungsaufgaben

  1. Welches ist die letzte Ziffer von

  1. Programmiere das RSA-Verfahren!
  2. Berechne

Lösungen

  1. 2
  2. code_rsa_mit_eingabe_v_18
  3. zahl