Hi.
Da ich ein wenig gegen Geld scripten möchte, aber gleichzeitig nicht betrogen werden möchte und auch zeigen möchte, dass ich meine Arbeit erledige, habe ich mir ein kleines Anti-Diebstahlscript gebastelt.
Dieses Script liest jeweils eine 8.00 Kilobyte grosse Datei, verifiziert sie und updatet diese.
Die Datei ist für Menschen einfach ein sehr langer Hexadezimalstring.
Ich nenne die generierte Datei Signatur.
Informationen:
- Der darin enthaltene String wurde mehrfach encodiert.
- Die Datei ist gleichzeitig Schlüssel und Tor: Das heisst, sie enthält die Anleitung dafür, wie man sie lesen muss, um sie zu verifizieren. Nur wenn sie richtig gelesen wird und das gelesen auch Sinn macht, wird das Tor geöffnet, bzw. bleibt offen. Wobei das Tor eine Metapher für den Server ist.
- Der Script enthält eine einzige public-Funktion. Ruft man diese auf, schiesst man sich selbst ins Bein, denn diese ist nur dazu da, um die aktuelle Signatur zu verifizieren und dann entweder Server schliessen, oder weiterlaufen zu lassen.
- Wird an der Datei herumgespielt, wird sie sehr wahrscheinlich ungültig.
- Die Signatur läuft am 30.1.2012 um etwa 20:00 ab! Danach ist sie für immer ungültig.
- Der Script nimmt keinen Kontakt zur Aussenwelt auf. Also kein Gebrauch von HTTP(...).
- Verwendung von Unix-Timestamps.
Wieso poste ich das nun hier?
Nun, mich würde es interessieren, ob irgendjemand einen Weg findet, das ganze zu umgehen.
Wie? Das ist jedem überlassen, der es versuchen möchte.
(Respekt, wenn jemand das FS dekompiliert (in PAWN-Assembly zurückverwandelt und danach auch noch kapiert, was 2000 Zeilen Assembly-Code genau machen... sofern das möglich ist, sollte eigentlich...)
Wichtig:
Da dies nicht wirklich ein Release ist, sehe ich keinen Sinn darin, den Source Code bereitzustellen, dann wär das ganze sowieso sinnlos.
Download:
http://www.sendspace.com/file/7tihwv
Einfach in die entsprechenden Ordner entpacken und Filterscript laden.
Brauch es so einen Aufwand?
kA, man weiss ja nie wie dreist die Diebe in der SA-MP-Szene sind... je nach Script braucht man ja nichtmal eine .PWN...
Vielleicht wünschen sich gewisse Leute sogar einen solchen Schutz!
Ich habe hier schon vermehrt von Leuten gelesen, welche eine .amx vor Erhalt des Geldes weitergegeben haben und dann von "Käufer" nie mehr was gehört haben.
Womöglich könnte ich eine Open Source Public Version davon erstellen, welche selbst dann ewig brauchen würde, bis ein Computer sie nach Plan decodiert hat.
Interesse? Testet es, melde euch hier oder schreibt mir eine PM.
~dos