Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Swoerm

Alter Hase

Beiträge: 451

Wohnort: 127.0.0.1

  • Private Nachricht senden

41

04.10.2014, 12:02

Ich hab's mit nem' Hex-Editor versucht, aber nichts gefunden. Auf das mit dem QR-Code wäre ich nicht gekommen.

C-/C++-Quelltext

1
2
    /* Keep the compiler happy */
    return(0);

CeDoMain

Alter Hase

Beiträge: 587

Wohnort: Ilmenau

Beruf: Student für Mechatronik

  • Private Nachricht senden

42

04.10.2014, 20:05

Boah geil, das ist die Lösung!!! Ich bin weiter - jetzt bei der "Zensur". :)
Mit freundlichem Gruß
CeDo
Discord: #6996 | Skype: cedomain

Lass solche persönlichen Angriffe lieber bleiben, meine sind härter.

David Scherfgen

Administrator

  • »David Scherfgen« ist der Autor dieses Themas

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

43

05.10.2014, 16:54

Schritt 5:
Von Sombreros und Lords


Zuletzt betrachteten wir den QR-Code, der im Profilbild von Hans Kobalt versteckt ist. Er enthält folgenden Text:

<!-- contest/17 glaubNichtWasDuSiehst -->

Dabei handelt es sich um einen Verweis auf die Programmier-Contests, die früher einmal mehr oder weniger regelmäßig in diesem Forum stattgefunden haben (ein neuer Contest wird sicherlich irgendwann noch kommen ;)). Einen Contest Nr. 17 gibt es jedoch nicht (damit das auch so bleibt, wird der nächste Contest einfach die Nummer 18 bekommen!).

Die Auflösungen früherer Contests waren häufig unter URLs wie https://www.spieleprogrammierer.de/contest/14/ zu finden.
Versuchen wir doch einfach mal die Nummer 17 dort einzusetzen:
https://www.spieleprogrammierer.de/contest/17/

Wir gelangen auf eine Seite, die wie eine typische 404-Fehlerseite ausschaut.
Sieht man jedoch genauer hin, so erkennt man einen Hinweis ("Or was it?"), der nahelegt, dass es hier sehr wohl etwas gibt. Ein Blick in den HTML-Quellcode bringt dann folgenden Kommentar ans Tageslicht:

Quellcode

1
2
3
4
5
6
7
8
9
<!--
RVA UREE ZVG EBGRZ FBZOEREB NHF FVZONOJR GEVGG IBA UVAGRA NA QVPU URENA HAQ FGRPXG QVE RVARA MRGGRY MH:

ONFR64: nkrJ8/MhbpjEwuqQs4gl+h85iGxNiHKQuoUwwpZHZat=
URK: 6o1796s3s66rn1pp118r17437s8o72snrs39oq3900oq45p385o1r38qp3143278

QVR YBEQF QNRZRA HAQ EVWZRA XBRAARA QVE URYSRA.
REERVPUR QNMH ZVAQRFGRAF 9000 CHAXGR ORV "PBZVPNGGNPX".
 -->

OK, das sieht wieder nach ROT13 aus.
Wir erhalten:

Quellcode

1
2
3
4
5
6
7
8
9
<!--
EIN HERR MIT ROTEM SOMBRERO AUS SIMBABWE TRITT VON HINTEN AN DICH HERAN UND STECKT DIR EINEN ZETTEL ZU:

BASE64: axeW8/ZuocwRjhdDf4ty+u85vTkAvUXDhbHjjcMUMng=
HEX: 6b1796f3f66ea1cc118e17437f8b72faef39bd3900bd45c385b1e38dc3143278

DIE LORDS DAEMEN UND RIJMEN KOENNEN DIR HELFEN.
ERREICHE DAZU MINDESTENS 9000 PUNKTE BEI "COMICATTACK".
 -->

Den ersten Satz mit dem roten Sombrero behalten wir erst einmal nur im Hinterkopf. Wir werden ihn später noch brauchen.
Es folgt ein "Datenblock", der einmal Base64-kodiert und einmal hexadezimal angegeben ist. Ob diese Daten wohl irgendwie verschlüsselt sind?
Dass die beiden Lords Daemen und Rijmen uns weiterhelfen können, legt dies nahe - handelt es sich dabei doch um die beiden Erfinder der AES-Verschlüsselung.

Wenn der Datenblock also tatsächlich mit AES verschlüsselt wurde, dann fehlt uns jetzt noch der Schlüssel.
Und den bekommen wir wohl, indem wir mindestens 9000 Punkte bei "ComicAttack" erreichen. Was das überhaupt ist, und wie man das bewerkstelligt - damit geht's beim nächsten Mal weiter!

Zum Abschluss noch TGGCs "verrückte Ideen" hierzu:


David Scherfgen

Administrator

  • »David Scherfgen« ist der Autor dieses Themas

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

44

06.10.2014, 09:16

Schritt 6:
It's over 9000!!!!!!111


Um den Schlüssel für die geheime Botschaft zu finden, die uns der Mann mit dem Sombrero zugesteckt hat, sollen wir also über 9000 Punkte bei "ComicAttack" erreichen (wer das mit der 9000 nicht versteht, sollte mal hier vorbeischauen). Wenn man bei Google nach "ComicAttack" sucht, findet man erst einmal nicht das Richtige. Bezieht man aber noch "spieleprogrammierer" mit ein, so stößt man auf den 2. sppro-Spiele-Programmierwettbewerb und das Spiel "ComicAttack", das zu jenem Wettbewerb außer Konkurrenz von mir eingereicht wurde.



Nun erwarte ich nicht ernsthaft, dass es jemand schafft, über 9000 Punkte in diesem Spiel zu erreichen. Das dürfte auch so gut wie unmöglich sein. Aber wir sind doch schließlich hier in einem Programmiererforum, also sollte ein Blick in den Quellcode des Spiels zumutbar sein. Dort sollte es doch irgendwo eine Abfrage wie if (score >= 9000) geben. Sucht man nach "9000", so stößt man auch gleich auf folgende Programmzeile:

String secretKeyScore9000 = "ThatWasEasy";

Ist "ThatWasEasy" nun also unser AES-Schlüssel?
Kurze Antwort: Nein, das ist eine Falle! Die Variable secretKeyScore9000 kommt nirgends im Spiel vor - außer in dieser einen Zeile. Das wäre auch tatsächlich ein bisschen zu einfach gewesen, oder?

Suchen wir ein bisschen weiter, so finden wir folgende Zeile:

if (score >= 30 * 30 * 10) rating = "Key (128-Bit): Username(3480)";

Wie gemein von mir. Da habe ich die 9000 doch glatt als 30 * 30 * 10 dargestellt, damit man nicht so leicht danach suchen kann! XD
Anstatt den Quellcode zu durchforsten, hätte man auch einfach die Punktzahl zu Beginn des Spiels direkt auf 9000 setzen können, dann hätte man die entsprechende Nachricht bei Ende des Spiels gesehen.

Gut, unser AES-Schlüssel soll nun also Username(3480) sein. Und wer ist der Benutzer mit der ID 3480? Es ist BlueCobold!
Entschlüsseln wir unsere geheime Botschaft also mit dem Schlüssel "BlueCobold". Dazu kann man beispielsweise diese Website benutzen. Wir erhalten folgenden Text:

nunsagsmirschon (RFC 1464)

Und damit geht's beim nächsten Mal weiter.
Zum Abschluss wie immer TGGCs Video:


KeksX

Community-Fossil

Beiträge: 2 107

Beruf: Game Designer

  • Private Nachricht senden

45

06.10.2014, 09:21

Soweit so gut! Beim nächsten Teil hab ich mir echt etwas vor den Kopf gefasst, da musste ich etwas überlegen.
WIP Website: kevinheese.de

Sylence

Community-Fossil

Beiträge: 1 663

Beruf: Softwareentwickler

  • Private Nachricht senden

46

06.10.2014, 10:18

Ok jetzt fühle ich mich richtig dumm... auf die Idee mir mal den Quellcode genauer anzuschauen bin ich nicht gekommen :dash:

CeDoMain

Alter Hase

Beiträge: 587

Wohnort: Ilmenau

Beruf: Student für Mechatronik

  • Private Nachricht senden

47

06.10.2014, 10:49

Ich hab im Ernst versucht bis 9000 zu spielen... :crazy: Dann dachte ich, schauen wir doch mal den Code an - Firefox kann das ja! Ich habe komischerweise die "if" zuerst gefunden! :)
Mit freundlichem Gruß
CeDo
Discord: #6996 | Skype: cedomain

Lass solche persönlichen Angriffe lieber bleiben, meine sind härter.

drakon

Supermoderator

Beiträge: 6 513

Wohnort: Schweiz

Beruf: Entrepreneur

  • Private Nachricht senden

48

06.10.2014, 13:08

Ich habs zuerst auch probiert, dann aber gemerkt, dass ich da niemals 9k erreichen werden. xD - Wollte dann zuerst irgendwie den Punktewert manipulieren, als ich aber nicht gleich herausgefunden habe wie das am besten geht bin ich mal in den Code gegangen. Das mit dem "30 * 30 * 10" fand ich witzig als ichs gesehen habe. Dachte mir noch "David du alter Schlingel". ;)

Helmut

5x Contest-Sieger

Beiträge: 692

Wohnort: Bielefeld

  • Private Nachricht senden

49

06.10.2014, 14:03

Oh ne, so einfach:) Ich hab das Spiel ComicAttack nicht gefunden. Hab nur diese komische Konferenz in Thüringen bei Google gefunden:)
Sei stets geduldig gegenüber Leuten, die nicht mit dir übereinstimmen. Sie haben ein Recht auf ihren Standpunkt - trotz ihrer lächerlichen Meinung. (F. Hollaender)

TGGC

1x Rätselkönig

Beiträge: 1 799

Beruf: Software Entwickler

  • Private Nachricht senden

50

06.10.2014, 14:11

Ich habs zuerst auch probiert, dann aber gemerkt, dass ich da niemals 9k erreichen werden. xD - Wollte dann zuerst irgendwie den Punktewert manipulieren, als ich aber nicht gleich herausgefunden habe wie das am besten geht bin ich mal in den Code gegangen. Das mit dem "30 * 30 * 10" fand ich witzig als ichs gesehen habe. Dachte mir noch "David du alter Schlingel". ;)
Genauso gings mir auch, bin zufaellig ueber Davids Trick gestolpert, als ich nach einer guten Stelle zum Cheaten im Code gesucht hab.

Werbeanzeige