Seiten

  • Startseite
  • Impressum
  • Inhalt
  • MINT
  • Sprache
  • Soziales
  • Geist
  • Kunst
  • Gemischtes
  • Gedichte

Donnerstag, 18. Dezember 2014

Cäsar für Fortgeschrittene


Deutsch

Ei­ne Cäsar-Ver­schlüsse­lung ver­schiebt je­den Buch­sta­ben ei­nes Klar­tex­tes um n Stel­len im Al­pha­bet nach rechts. Die ver­brei­tets­te Va­ri­an­te ist der ROT13-Al­go­rith­mus, d. h. die Ver­schie­bung um 13 Stel­len.

Bsp. (13):
Ave Caesar, morituri te salutant! => Nir Pnrfne, zbevghev gr fnyhgnag!

Mei­ne Er­wei­te­rung ist ziem­lich sim­pel. An­statt al­le Buch­sta­ben um ei­ne be­stimm­te An­zahl n ro­tie­ren zu las­sen, lässt man je­den x-ten Buch­sta­ben des Klar­tex­tes um das n-te Ele­ment ei­ner Zah­len­fol­ge ro­tie­ren.

Bsp. ({2, 1, 3, 2, 4, 3, ...}):
Ave Caesar, morituri te salutant! => Cwh Gdjwgw, uvaqddcs er gnaijpej!

Bsp. ({3, 1, 4, 1, 5, 9, ...}):
Ave Caesar, morituri te salutant! => Dwi Hjgyfu, vvaluvwr an vercyeru!

Bei end­li­chen Fol­gen kommt dann der Mo­du­lo-Ope­ra­tor ins Spiel, das ist al­so auch kein Pro­blem.
Beim Pro­gram­mie­ren der (Ja­va-)Me­tho­den en­crypt(String plain­text, int[] se­quence) und de­crypt(String ci­pher­text, int[] se­quence) kam ich auf die Idee, zwei wei­te­re Me­tho­den en­crypt(String plain­text) und de­crypt(String ci­pher­text) zu im­ple­men­tie­ren. Ers­te­re wählt von meh­re­ren vor­ge­ge­be­nen Zah­len­fol­gen zufällig ei­ne aus und ver­wen­det sie, um den Klar­text zu ver­schlüsseln. Bei zwei­te­rer hat­te ich meh­re­re Ansätze (die Pro­ble­ma­tik ist ja, dass der Rech­ner mit al­len mögli­chen Fol­gen ent­schlüsselt und dann schaut, ob der ent­stan­de­ne Klar­text ein deut­scher Text sein könn­te) und ha­be mich dann für ei­ne Buch­sta­benhäufig­keits­ana­ly­se (E-N-I-S-R-A) ent­schie­den, wel­che ab ei­ner Klar­textlänge von et­wa 10 Buch­sta­ben auch re­la­tiv zu­verlässig funk­tio­niert. Die von mir vor­ge­ge­be­nen Zah­len­fol­gen sind natürlich nicht un­end­lich lang, son­dern be­rech­nen nur so vie­le Stel­len, wie nötig sind, um den kom­plet­ten Klar­text oh­ne Mo­du­lo zu ver­schlüsseln.

Möchte man im alltägli­chen Ge­brauch die­se Me­tho­de be­nut­zen, z. B. in Brie­fen, so könn­te man sich für je­den Brief ei­ne neue Fol­ge aus­den­ken. Der Schlüssel muss dann natürlich se­pa­rat über­ge­ben wer­den oder man ver­steckt ihn ir­gend­wo im Ge­heim­text. (Bspw. könn­te man im­mer mit dem glei­chen Satz be­gin­nen. So­mit weiß der Empfänger we­nigs­tens die ers­ten Zah­len der Fol­ge und kann mögli­cher­wei­se die an­de­ren schluss­fol­gern. Schöne Zah­len­fol­gen gibt's übri­gens hier.)

Keine Kommentare:

Kommentar veröffentlichen