Verschlüsselung durch "Gartenzaunverschlüsselung"

Du hast eine Idee für ein Projekt?
wrrr91
User
Beiträge: 9
Registriert: Donnerstag 12. März 2009, 18:23

sma hat geschrieben:

Code: Alles auswählen

def encrypt(m):
    m = m.upper().replace(" ", "")
    return m[::2] + " " + m[1::2]
    
print encrypt("Hallo Welt")
Stefan
#


Hallo stefan =) das ist auch sehr schön nur wie kann ich den verschlüsselten etxt wieder entschlüsseln lassen ? :P
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

wrrr91 hat geschrieben: Hallo stefan =) das ist auch sehr schön nur wie kann ich den verschlüsselten etxt wieder entschlüsseln lassen ? :P
Wie wärs mit ein wenig Engagement in Bezug auf Hausaufgaben? ;-)

Schreibt ihr eigentlich niemals Klausuren über solch ein Thema? Mich wundert es irgend wie, dass man Hausaufgaben gerne von anderen erledigt bekommen möchte, ohne darüber nachzudenken, dass man das irgend wann gezwungener Maßne einmal selber können muss.
wrrr91
User
Beiträge: 9
Registriert: Donnerstag 12. März 2009, 18:23

Hyperion hat geschrieben:
wrrr91 hat geschrieben: Hallo stefan =) das ist auch sehr schön nur wie kann ich den verschlüsselten etxt wieder entschlüsseln lassen ? :P
Wie wärs mit ein wenig Engagement in Bezug auf Hausaufgaben? ;-)

Schreibt ihr eigentlich niemals Klausuren über solch ein Thema? Mich wundert es irgend wie, dass man Hausaufgaben gerne von anderen erledigt bekommen möchte, ohne darüber nachzudenken, dass man das irgend wann gezwungener Maßne einmal selber können muss.

Also eine hausaufagbe war es nicht wir sollten uns mal drum kümmern / informieren und da dfachte ich mir ich sammel bei ihm ein paar pluspunkte ^^.
lunar

Pluspunkte, in dem du deinem Lehrer zeigst, dass du Code fehlerfrei aus dem Internet kopieren kannst?
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Ich habe mir auch gedacht, dass ich etwas üben kann und habe die Gartenzaunverschlüsselung in Scheme implementiert. Die Höhe des Zauns kann man beliebig einstellen; es wird sowohl Ver- als auch Entschlüsselung unterstützt. 8)

Ich muss sagen richtig zufrieden bin ich mit dem Ergebnis eigentlich nicht, vermutlich denke ich da etwas zu kompliziert und der Algorithmus nachdem ich verfahre ist viel komplexer als nötig (aber immerhin arbeitet er mit immutablen Strukturen und völlig schleifenfrei). Aber ich denke dennoch, dass es eine gute Übung war und wenn ich das Ding etwas besser kommentiere kann ich vielleicht noch auf diversen Newsgroups/Mailinglisten nach Tipps fragen.

Achja, ich wäre an weiteren Lösungen in $UNUSUAL_PROGRAMMING_LANGUAGE durchaus interessiert. Ich denke, sowas in Factor würde mich momentan aber ziemlich überfordern. :twisted:
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

prunedtree aus #concatenative hat diese nette Lösung in Factor hinbekommen (ist eigentlich ein Einzeiler):

Code: Alles auswählen

"diesisteinklartext" 6 [ dup length ] [ [1,b] dup <reversed> rest append but-last ] bi* 10 swap <repetition> concat swap head <enum> 
                    >alist sort-values keys swap nths >string .
(und es funktioniert tatsächlich)
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Antworten