[Hack-Competition] Make a Hack for my Program

03/04/2011 17:38 xNopex#76
Man kann die Zahl nicht in verschiedenen Formaten speicher. Zum 100.000.000mal jetzt. Eine Zahl ist eine Zahl.

0x1 = 1 = 0L
0x2 = 2 = L0
...

Der Computer arbeitet halt mit dem binären System, weil er so leichter rechnen kann. Beim Programmieren arbeitet man normalerweise mit dem Hexadezimalsystem, weil es übersichtlicher ist mit den Einheiten zu arbeiten. In der Schule in Mathe rechnest du üblicherweise im Dezimalsystem, weil es für den Menschen einfacher ist.
Alle Zahlensysteme beschreiben aber die gleichen Zahlen. Demnach ist es egal, ob du nach einer Zahl, die im Dezimalsystem 1 lautet, mit der Hexadezimalschreibweise 0x1 oder in der binärschreibweise 0L suchst. Du wirst sie immer finden, weil das keine verschiedenen Formate sind, wie du dir das vollkommen falsch denkst, sondern lediglich Schreibweisen. Demnach kannst du die Schreibweisen auch mischen:

0L + 10 = 0xB

Ich hoffe du hast es jetzt endlich verstanden.
03/04/2011 17:50 lolkop#77
Quote:
Originally Posted by xNopex View Post
Man kann die Zahl nicht in verschiedenen Formaten speicher. Zum 100.000.000mal jetzt. Eine Zahl ist eine Zahl.

0x1 = 1 = 0L
0x2 = 2 = L0
...

Der Computer arbeitet halt mit dem binären System, weil er so leichter rechnen kann. Beim Programmieren arbeitet man normalerweise mit dem Hexadezimalsystem, weil es übersichtlicher ist mit den Einheiten zu arbeiten. In der Schule in Mathe rechnest du üblicherweise im Dezimalsystem, weil es für den Menschen einfacher ist.
Alle Zahlensysteme beschreiben aber die gleichen Zahlen. Demnach ist es egal, ob du nach einer Zahl, die im Dezimalsystem 1 lautet, mit der Hexadezimalschreibweise 0x1 oder in der binärschreibweise 0L suchst. Du wirst sie immer finden, weil das keine verschiedenen Formate sind, wie du dir das vollkommen falsch denkst, sondern lediglich Schreibweisen. Demnach kannst du die Schreibweisen auch mischen:

0L + 10 = 0xB

Ich hoffe du hast es jetzt endlich verstanden.
ich denke er geht davon aus, das man die zahl als string speichert. in diesem falle würde es natürlich einen unterschied machen, welches format man wählt, wobei das wohl eine der schlechtesten verschlüsselungen wäre, die man sich vorstellen kann...

bsp man hat eine 10 als zahl und gespeichert wird 'A'. in diesem falle als char, da es ja nur ein buchstabe ist, bei höheren werten halt als string.
03/04/2011 18:33 Mi4uric3#78
Kinder Kinder Kinder..
Kaum hat man mal 3 Tage kein Internet, schon gehts hier rund :D
Yay neuer [Only registered and activated users can see links. Click Here To Register...] :D

Also.
Ja ich benutze .Net Reactor, da der Quellcode nicht entschlüsselt werden soll. Da es ja bei einem richtigen Spiel, was auf keinen Fall in .NET Sprache geschrieben werden sollte, auch nicht funktioniert. Man kann ja keine c++ Application Disassemblen.

@[Only registered and activated users can see links. Click Here To Register...]
Dass es nur sicher ist, wenn alles serverseitig behandelt wird, habe ich [Only registered and activated users can see links. Click Here To Register...] schon gesagt.
Dann ist es egal, ob es clientseitig verändert wird, da der Server alles berechnet.
Man kann sich dann nicht einfach teleportieren, da der Server das "Laufen" übernimmt.
03/04/2011 20:07 Akorn#79
Quote:
Originally Posted by Mi4uric3 View Post
.
Ja ich benutze .Net Reactor, da der Quellcode nicht entschlüsselt werden soll. Da es ja bei einem richtigen Spiel, was auf keinen Fall in .NET Sprache geschrieben werden sollte, auch nicht funktioniert. Man kann ja keine c++ Application Disassemblen.
Wie biste den auf den Quatsch gekommen?
Klar kann man Programme die in C++ geschrieben wurden Disassemblieren.
03/04/2011 20:12 Mi4uric3#80
Quote:
Originally Posted by Akorn View Post
Wie biste den auf den Quatsch gekommen?
Klar kann man Programme die in C++ geschrieben wurden Disassemblieren.
Dann gib mir mal den Sourcecode von der metin2client.bin :)
03/04/2011 20:16 Akorn#81
Quote:
Originally Posted by Mi4uric3 View Post
Dann gib mir mal den Sourcecode von der metin2client.bin :)
Natürlich kann man nicht den original sourcecode aus der Executable zurückgewinnen aber das hat ja auch nichts direkt mit Disassemblieren zu tuen.
03/04/2011 20:20 Mi4uric3#82
Quote:
Originally Posted by Akorn View Post
Natürlich kann man nicht den original sourcecode aus der Executable zurückgewinnen aber das hat ja auch nichts direkt mit Disassemblieren zu tuen.
Ja aber wenn du dir mal genau durchegelsen hättest, aus welchem Grund ich .NET Reactor benutzt habe, hättest du verstanden, dass es hier um den Sourcecode geht :rolleyes:
03/04/2011 20:34 Akorn#83
Quote:
Originally Posted by Mi4uric3 View Post
Ja aber wenn du dir mal genau durchegelsen hättest, aus welchem Grund ich .NET Reactor benutzt habe, hättest du verstanden, dass es hier um den Sourcecode geht :rolleyes:
Es war mir von anfahng an klar das es dir um den Sourcecode geht aber das ändert nichts daran das diese aussage
Quote:
da der Quellcode nicht entschlüsselt werden soll. Da es ja bei einem richtigen Spiel [...] auch nicht funktioniert. Man kann ja keine c++ Application Disassemblen.
total falsch ist. Du scheinst garnicht zu wissen was Disassemblieren heist.
03/04/2011 20:44 Mi4uric3#84
Quote:
Originally Posted by Akorn View Post
Es war mir von anfahng an klar das es dir um den Sourcecode geht aber das ändert nichts daran das diese aussage total falsch ist. Du scheinst garnicht zu wissen was Disassemblieren heist.
Das ist doch völlig unwichtig hier in dem Thread.
03/04/2011 21:12 Akorn#85
Quote:
Originally Posted by Mi4uric3 View Post
Das ist doch völlig unwichtig hier in dem Thread.
Das ist für dich aber wohl erst unwichtig geworden nachdem du gemerkt hast das deine tolle aussage
Quote:
Liegt vielleicht daran, dass das Wort "Disassemblieren" nicht existiert
die du grade schnell wegeditiert hast ein totales eigenfail ist.
03/04/2011 21:13 Mi4uric3#86
Quote:
Originally Posted by Akorn View Post
Das ist für dich aber wohl erst unwichtig geworden nachdem du gemerkt hast das deine tolle aussage
die du grade schnell wegeditiert hast ein totales eigenfail ist.
Glückwunsch, und jetzt verschwinde aus meinem Thread, wenn du nichts beizutragen hast.
03/05/2011 10:58 Kaktusfresser#87
Ich möchte zur Sicherheit lieber nochmal fragen obs stimmt, wenn nein versuch ich nochmal ranzugehen:
Hast du den Rijndael-Algorithmus zum verschlüsseln der Value genutzt?
Wenn ja, dann kann man meiner Meinung nach nix tun, selbst wenn man die Adresse des Rijndael-verschlüsselten Strings findet. Ich hab mal gelesen, dass man bei einer Schlüssellänge von 128 bit ein paar Milliarden Jährchen zum Brute-Forcen bräuchte^^
03/05/2011 11:04 Mi4uric3#88
Quote:
Originally Posted by Kaktusfresser View Post
Ich möchte zur Sicherheit lieber nochmal fragen obs stimmt, wenn nein versuch ich nochmal ranzugehen:
Hast du den Rijndael-Algorithmus zum verschlüsseln der Value genutzt?
Wenn ja, dann kann man meiner Meinung nach nix tun, selbst wenn man die Adresse des Rijndael-verschlüsselten Strings findet. Ich hab mal gelesen, dass man bei einer Schlüssellänge von 128 bit ein paar Milliarden Jährchen zum Brute-Forcen bräuchte^^
Ich denke die Verschlüsselung stammt von .NET Reactor
Aber es ist eine gute Idee das reinzubringen :D
03/05/2011 11:18 Kaktusfresser#89
Also liegt die Value als Zahl im Speicher?
03/05/2011 13:55 Mi4uric3#90
Quote:
Originally Posted by Kaktusfresser View Post
Also liegt die Value als Zahl im Speicher?
Jap
Aber nicht unbedingt als die Zahl, die du im Label siehst ;D