(Umfrage) Script Confuser?

07/21/2012 22:58 qickly#1
Deleted
07/22/2012 01:16 -PinkiWinki-#2
Sowas nennt sich Obfuscator und davon gibt es mehr als genug.
07/22/2012 01:53 -PinkiWinki-#3
Und das soll was bringen? Es macht den Code für den Entwickler unlesbar, da nutzt man einfach einen Obfuscator auf das kompilierte Produkt. Ein Obfuscator macht nichts anderes als das was du da planst, nur eben für das fertige Produkt, was 10x schneller geht und 10x sinnvoller ist.
07/22/2012 03:09 tolio#4
Es gibt auch schon genug obscufator für den code, ist wahrlich keine neue idee
07/22/2012 14:12 MrSm!th#5
Es gibt auch schon genug Dateishredder und Taskmanager :/
07/23/2012 15:01 tolio#6
google mal nach "pringels source undetector", da siehste wo du rankommen musst.

der hat zwar damals alle gescammt aber trotzdem nen fettes teil was der da rausgehauen hat...
07/23/2012 17:16 MrSm!th#7
Noch nie davon gehört, dass man das Kompilat immer möglichst klein halten sollte? :/ Wenn schon so viel Müll aus 4 Zeilen wird...
07/23/2012 17:34 .SkyneT.#8
Quote:
Originally Posted by MrSm!th View Post
Noch nie davon gehört, dass man das Kompilat immer möglichst klein halten sollte? :/ Wenn schon so viel Müll aus 4 Zeilen wird...
Code:
Dim ABC123 As String
ABC123 = "This is a test!"
MsgBox(ABC123)
= 3 Zeilen ... :rolleyes:


Und jetzt aus reiner Interesse, was bringt es wenn du einen
String als "This is a test!" definierst, er aber durch deinen
Code Confuser zu irgend nem Haufen Zahlen und Buchstaben wird ?
Dann würde ja jede Definition umsonst sein, und das ganze
Programm wohl nicht funktionieren...
07/23/2012 18:29 tnd0#9
Durch den obfuscator bleibt die funktionalität erhalten, per definition. sonst wäre es kein obfuscator sondern ein kaputtfuscator. und ob die assembly größer oder kleiner ist, macht bei .net languages dann auch keinen großen unterschied mehr.
07/23/2012 19:32 MrSm!th#10
Ich habs mit nem Handy geschrieben und war zu faul nochmal zurückzuscrollen um zu zählen ;f

tnd0 inwiefern ist die Assembly Größe egal? Oder meinst du, wenn es ohnehin Schrott ist?
07/25/2012 12:57 tnd0#11
Die Geschwindigkeit einer executable kann man unterteilen in Load-Speed, also die Zeit die der NT-Imageloader braucht vom starten des programms bis der main-thread den Program Entry Point durchläuft, und Run-Speed, also die Zeit die ein Programm für Aufgabe X braucht.

Load-Speed hängt von der Assemblygröße ab, allerdings zählt nicht 'jedes byte' - sondern nur 4KiB Blöcke - soviel liest der NTImageLoader pro Aufruf von der Festplatte, d.h. ob eine Assembly 10KiB oder 11.9999KiB groß ist macht im Load-Speed keinen unterschied.
Nach dem NTImageLoader kommt bei .Net dann noch der RunTimeCompiler, der compiled line per line, im Falle von .Net spielt hier nun die Assemblygröße eine 'kleine' Rolle, da die gesamte Assembly in einem Satz compiled wird, im gegensatz zum Java-Just-in-Time compiler. Der .Net RunTimeCompiler ist aber um ein tausendfaches schneller als der NTImageLoader, ist i.d.R. schon fertig bevor der NTImageloader den letzten 4KiB Block in den Speicher geladen hat, denn die letzten paar 4KiB Blöcke sind i.d.R. resourcen die nicht compiled werden müssen.

Daher kann man behaupten, dass die Assemblygröße, wenn es um 1000 oder 5000 Zeilen Code mehr oder weniger geht, keine Rolle bei der Geschwindigkeit spielt. Wenn man Pech hat überschreitet man die 4KiB Block größe und dann braucht der ImageLoader eben einen Cycle länger.

Interessanter ist die Runtime-Geschwindigkeit, die meisten Obfuscator bauen sinnlose Jumps überall ein, dadurch muss die CPU bei der Ausführung dauernd die InstructionPipe flushen was die Performance ganz schön drückt, und das ist dann ein viel viel größerer Performanceverlust als den Cycle den der NTImageLoader ggf. mehr brauchen könnte.
07/25/2012 19:19 .SkyneT.#12
Quote:
Originally Posted by qickly View Post
Probier den Code doch aus, natürlich klappt der Code noch!
Es kann gut möglich sein das ich keine Ahnung von VB habe, aber
trotzdem bin ich mir ziemlich sicher das das:
Code:
Dim ABC123 As String
ABC123 = "This is a test!"
MsgBox(ABC123)
Auf keinen Fall dasselbe ist wie:
Da hier weder die Variable ABC123, noch deren Inhalt
"this is a test" irgendwo vorkommt. (Ne Ver&Ent-schlüsselung
erkenne ich beim überfliegen auch nirgends)
07/25/2012 22:12 tnd0#13
nur hast du so wenig ahnung von programmierung wie meine oma. daher vermute ich mal dass das nicht dein produkt ist.
07/25/2012 22:21 qickly#14
Quote:
Originally Posted by tnd0 View Post
nur hast du so wenig ahnung von programmierung wie meine oma. daher vermute ich mal dass das nicht dein produkt ist.


Warum sollte es nicht mein Produkt sein?
Ich habe wohl bessere Referenzen als viele andere hier.
07/26/2012 11:34 MoepMeep#15
Quote:
Originally Posted by qickly View Post
Warum sollte es nicht mein Produkt sein?
Ich habe wohl bessere Referenzen als viele andere hier.
Nein, du hast nur Müll :|