[Spielchen]Knack den Code!
lima-city → Forum → Sonstiges → Spam und sonstiges Unvergütetes
algorithmus
alphabet
ansatz
beispiel
beitrag
buchstabe
chiffre
divisor
ergebnis
klartext
mod
operator
position
sinnen
sonderzeichen
tabelle
tip
verschlu
verschlsselung
zeichenfolge
-
Halli Hallo liebe Freunde!
Ferien sind was schönes, nicht wahr? Und weil ich jetzt mal wieder Zeit habe hab ich ein wenig auf lima gelesen, bin meinen Pflichten anchgekommen und bin auf DIESEN Thread gestoßen:
http://www.lima-city.de/boards/thread/65854
Und wisst ihr was? Das hat mich inspiriert. Unzwar zu einem kleinen Spielchen:
Einer der User postet einen verschlüsselten Code. Der Code soltle nach Möglichkeit auch knackbar sein. Am besten fangt ihr leicht an und werdet immer schwerer. Von der Chiffrierung bis zur Steganographie sollte eigentlich alles erlaubt sein. ^_^
ich würde fast sagen: Wie findet ihr die idee (die zu meiner verteidigung aus purer langeweile entstand ;D) und würdet ihr mitmachen?
Von einigen Leuten in diesem Forum weiß ich jedenfalls, dass sie durchaus das potential hätten eine solche Verschlüsselung zu knacken, zu gestalten und zu erklären.
Das ganze dient sogesehen, zumindest in meinen Augen, zur Informierung und zur Belustigung der Mitspieler. ^^
Bei Bedarf würde ich den Anfang machen, aber erstmal warte ich auf ein paar Stimmen, die ihren Kommentar abgeben.^^ -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Hau rein.
-
Also wie zum Beispiel 123 = abc oder was
-
Wenn man es als.. sehr eifnaches Beispiel haben möchte, ja. ;D
-
Oder Caesar-Chiffre, genau.
-
*nick*
Das wäre zum Beispiel eine Möglichkeit. -
Ich hoffe, du bist mir nicht böse, wenn ich beginne...
kcgcvncivpxldfzrgcrrlzbhlptbma
Der Originaltext verwendet nur Kleinbuchstaben und Leerzeichen wurden ignoriert.
Um den Code zu knacken, reichen die 4 Grundrechenarten
Viel Spass!
edit: ascii-Tabelle ist überflüssig
Beitrag geändert: 8.10.2007 18:19:13 von bladehunter -
Also, ja mir war ein wenig langweilig. :-)
string.txt
kcgcvncivpxldfzrgcrrlzbhlptbma
blub1.php
<?php $s = file_get_contents ('string.txt'); $a = array (); $l = strlen ($s); for ($i = 0; $i < $l; $i++) { if (isset ($a[$s{$i}])) { $a[$s{$i}] = $a[$s{$i}] + 1; } else { $a[$s{$i}] = 1; } } foreach ($a as $i => $v) { $a[$i] = round (($v/$l)*100, 2); } arsort ($a, SORT_NUMERIC); print_r ($a); file_put_contents ('output.txt', serialize ($a)); ?>
abc.txt von http://www-ai.math.uni-wuppertal.de/~dfritzsche/Kryptographie/haeufigkeit-de.txt
a:6,51 j:0,27 r:7,00 b:1,89 k:1,21 s:7,27 c:3,06 l:3,44 t:6,15 d:5,08 m:2,53 u:4,35 e:17,40 n:9,78 v:0,67 f:1,66 w:1,89 g:3,01 o:2,51 x:0,03 h:4,76 p:0,29 y:0,04 i:7,55 q:0,02 z:1,13
blub2.php
<?php $c = file ('abc.txt'); $a = array (); foreach ($c as $v) { $s = preg_split ('/:/', $v); $a[$s[0]] = $s[1]; } arsort ($a, SORT_NUMERIC); print_r ($a); file_put_contents ('output2.txt', serialize ($a)); ?>
blub3.php
<?php $a1 = unserialize (file_get_contents ('output.txt')); $a2 = unserialize (file_get_contents ('output2.txt')); // plug and pray and play with $dif ;-) $dif = 5; $s = ''; $i = 0; foreach ($a1 as $i1 => $v1) { $b = ''; foreach ($a2 as $i2 => $v2) { if ($v1 <= $v2+$dif && $v1 >= $v2-$dif) { $b .= $i2.' '; } } $s .= 'Buchstabe '.$i.' ('.$i1.') könnte sein: '.$b."\n"; $i++; } print ($s); file_put_contents ('output3.txt', $s); ?>
Ergebnis in output3.txt:
Buchstabe 0 (c) könnte sein: e n Buchstabe 1 (r) könnte sein: n r s i t a d Buchstabe 2 (l) könnte sein: n r s i t a d Buchstabe 3 (g) könnte sein: n r s i t a d h u g l c o m Buchstabe 4 (p) könnte sein: n r s i t a d h u g l c o m Buchstabe 5 (v) könnte sein: n r s i t a d h u g l c o m Buchstabe 6 (z) könnte sein: n r s i t a d h u g l c o m Buchstabe 7 (b) könnte sein: n r s i t a d h u g l c o m Buchstabe 8 (t) könnte sein: r s i t a d h u g l c o m k b f z w y q j v x p Buchstabe 9 (a) könnte sein: r s i t a d h u g l c o m k b f z w y q j v x p Buchstabe 10 (m) könnte sein: r s i t a d h u g l c o m k b f z w y q j v x p Buchstabe 11 (h) könnte sein: r s i t a d h u g l c o m k b f z w y q j v x p Buchstabe 12 (f) könnte sein: r s i t a d h u g l c o m k b f z w y q j v x p Buchstabe 13 (n) könnte sein: r s i t a d h u g l c o m k b f z w y q j v x p Buchstabe 14 (i) könnte sein: r s i t a d h u g l c o m k b f z w y q j v x p Buchstabe 15 (x) könnte sein: r s i t a d h u g l c o m k b f z w y q j v x p Buchstabe 16 (k) könnte sein: r s i t a d h u g l c o m k b f z w y q j v x p Buchstabe 17 (d) könnte sein: r s i t a d h u g l c o m k b f z w y q j v x p
Ist nur ein Ansatz, um vllt ein paar Buchstaben zu knacken.
Beitrag geändert: 8.10.2007 20:37:40 von lucas9991 -
ich probiers mal über cesar verschlüsselung. wir wollten doch einfach anfangen.
hab leider net so viel Zeit. aber vllt schreib ich n tool dafür, dass man cesar texte ganz einfach entschlüsseln kann. Auch ohne, dass man den schlüssel kennen muss.
aktuell: ärger mit PHP^^
Beitrag geändert: 9.10.2007 0:09:42 von qbuut -
Also Caesar Chiffre schließe ich mal aus, da kommt nur Salat raus.
Grundrechenarten..hm..alle oder nur eine? Das ist die Frage...*grübel* -
Ich glaub immer noch, dass man die Nummer der Buchstaben vll erst mal 2 nehmen muss, und dann 5 abziehn.... Irgendwie sowas! Aber das ist eben dann doch schon arg schwer auf nen Sinn zu kommen!
Vll auch 4x... erst Minus, dann Mal, dann Geteilt durch und dann Minus!
Keine Ahnung! Wir brauchen mehr Tipps! -
Das mit den Häufigkeiten ist nett, aber
"rr" könnte sein: "nn", "ss", "tt", "aa", "dd", "ii". Ausschließen kann man davon "aa", "ii" und "dd".
Ach, ich wette, es ist ganz einfach :D
Ascii Tabelle unnötig - also nix mit Verschieben?
Beitrag geändert: 8.10.2007 21:50:06 von ddanne -
Tip: Ich habe den Algorithmus extra so konstruiert, dass Abzählverfahren, wie Lucas sie verwendet, an die Wand fahren
edit: wegen ascii-Tabelle: Du musst nur das Alphabet an sich kennen. Nicht die interne Speicherung, die für Buchstaben verwendet wird.
Beitrag geändert: 8.10.2007 22:02:21 von bladehunter -
So ein Mist
Aber wenn was mit Grundrechenarten ist...da muss doch was mit Buchstaben verschieben ODER substituieren sein. Wie fies. Braucht man alle Grundrechenarten? -
Tip: Ich habe den Algorithmus extra so konstruiert, dass Abzählverfahren, wie Lucas sie verwendet, an die Wand fahren
edit: wegen ascii-Tabelle: Du musst nur das Alphabet an sich kennen. Nicht die interne Speicherung, die für Buchstaben verwendet wird.
Beitrag geändert: 8.10.2007 22:02:21 von bladehunter
Wie soll das gehen?
Der Algo müsste dann jedem Buchstaben einen anderen Buchstaben zuweisen und zwar nicht zurückverfolgbar.
Das wäre dann wie bei md5, also eine Einwegverschlüsselung.
Oder habe ich da irgendwo einen Denkfehler drin?
-
Tip: Ich habe den Algorithmus extra so konstruiert, dass Abzählverfahren, wie Lucas sie verwendet, an die Wand fahren
Wie soll das gehen?
Es geht. Aber das heist noch lange nicht, dass dieser Algorithmus besonders gut wäre. Sonst hätte ich auch ausgesorgt^^.
Der Algo müsste dann jedem Buchstaben einen anderen Buchstaben zuweisen und zwar nicht zurückverfolgbar.
Nur weil du nicht geradeaus zurückgehen kannst, muss es ja nicht so sein, dass es keinen eindeutigen Rückweg gibt, oder?
Das wäre dann wie bei md5, also eine Einwegverschlüsselung.
Das würde ich euch nicht antun^^
Oder habe ich da irgendwo einen Denkfehler drin?
Versuch einfach mal über Alternativen nachzudenken. -
Ich glaube, du solltest uns einen Tipp geben. ^^
-
Ich glaube, du solltest uns einen Tipp geben. ^^
Die Verschlüsselung ist noch schwächer als bei der Caesar-Chiffre.
Seht es als ein Negativ-Beispiel, wie man es eben nicht machen sollte. Es hat sich nur deshalb bewährt, weil es ein wenig ungewöhnlich, aber keineswegs kompliziert ist.
Beitrag geändert: 8.10.2007 23:13:57 von bladehunter -
ok dann bastel ich net weiter an meinem cäsarscript.
gib uns bitte noch einen tip.
edit: gibt es blinde buchstaben? also buchstaben, die net zum Satz gehören?
Oder kann man jeden buchstaben verwenden? also nix mit 1 buchstabe dann 2. buchstabe dann 4. buchstabe usw
Beitrag geändert: 9.10.2007 0:16:01 von qbuut -
Tip: Im Gegensatz zur Caesar-Chiffre verwendet mein Algorithmus keinen Schlüssel. Deswegen ist er auch noch unsicherer als die Caesar-Chiffre.
Ich glaub immer noch, dass man die Nummer der Buchstaben vll erst mal 2 nehmen muss, und dann 5 abziehn.... Irgendwie sowas! Aber das ist eben dann doch schon arg schwer auf nen Sinn zu kommen!
Vll auch 4x... erst Minus, dann Mal, dann Geteilt durch und dann Minus!
Wir sind immer noch bei der 1. Aufgabe. Da würde ich euch sowas komplexes nicht geben. Dies Lösung ist viel einfacher.
Außerdem musst du bedenken, dass es eine Umkehrfunktion geben muss. Wenn ich jetzt mal dein Beispiel mit "mal 2 nehmen, dann 5 abziehen" nehme, dann wäre die Umkehrfunktion(=Verschlüsselung): Plus 5 dann durch 2.
Aber was wäre, wenn du "j" (10. Buchstabe) verschlüsseln willst?
(10+5)/2=7.5
Und 7.5 lässt sich keinem Buchstaben zuordnen.
Beitrag geändert: 9.10.2007 9:32:14 von bladehunter -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage