PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : WebGL und closed source


AlecWhite
2011-02-04, 13:35:13
Hallo!

Ich würde demnächst gerne ein paar Demos für webGL coden und später eventuell auch Projekte damit aufsetzen - der Source code soll allerdings geheim bleiben.

Ist es möglich die Sourcen vor dem Benutzer zu verbergen? Ist da irgendwas im Standard vorgesehen?

Marscel
2011-02-04, 17:28:15
Komprimierung, Obfuscation, und aus rechtlicher Sicht ne strenge Lizenz setzen.

Trap
2011-02-04, 17:36:09
Ist es möglich die Sourcen vor dem Benutzer zu verbergen? Ist da irgendwas im Standard vorgesehen?
Nö, das war in Javascript nie möglich und es hat bisher dem Internet nicht geschadet ;)

Du kannst das Programm in einer anderen Programmiersprache entwickeln und zu Javascript kompilieren. Analog zum GWT. Dann schimpft aber Richard Stallman.

Demirug
2011-02-04, 17:45:53
Nö, das war in Javascript nie möglich und es hat bisher dem Internet nicht geschadet ;)

Das Zeitalter der großen Webapps wo es sich lohnt die IP zu schützen läuft ja erst an.

Du kannst das Programm in einer anderen Programmiersprache entwickeln und zu Javascript kompilieren. Analog zum GWT. Dann schimpft aber Richard Stallman.

Ja, ich mache das mit C# bzw. CIL allgemein. JavaScript ist bei großen Sachen einfach eine Qual.

Man kann übrigens auch JavaScript zu JavaScript „kompilieren“: http://code.google.com/intl/de/closure/compiler/

DanMan
2011-02-04, 20:48:19
Das Web ist ein offenes Medium. Wenn du deinen Code nicht offenlegen willst, dann solltest du dir was anderes suchen.

Ich stimme Trap im übrigen zu: "View source" ist mit das Beste am Web, und ohne das wär es heute nicht dort wo es ist.

Shink
2011-02-07, 10:35:48
Das Zeitalter der großen Webapps wo es sich lohnt die IP zu schützen läuft ja erst an.
Genau genommen kann man sich das ja schon mit .NET und Java ohne Obfuscator abschminken: Die Klassensignaturen sind immer offen; das heißt jeder böse Mensch könnte:
- Teile deines Codes verwenden
- Problemlos nachbauen: Wie Klassen, Methoden und Fields heißen ist bekannt und mit diesem Wissen den Bytecode einer einzelnen Methode nach der anderen zu lesen ist keine Wissenschaft.

Also: Wenn der Code geheim sein soll dann verwende was anderes als WebGL. (z.B. Flash, Silverlight, ein Java3D-Applet o.ä.)

Demirug
2011-02-07, 12:15:32
Genau genommen kann man sich das ja schon mit .NET und Java ohne Obfuscator abschminken: Die Klassensignaturen sind immer offen; das heißt jeder böse Mensch könnte:
- Teile deines Codes verwenden
- Problemlos nachbauen: Wie Klassen, Methoden und Fields heißen ist bekannt und mit diesem Wissen den Bytecode einer einzelnen Methode nach der anderen zu lesen ist keine Wissenschaft.

Also: Wenn der Code geheim sein soll dann verwende was anderes als WebGL. (z.B. Flash, Silverlight, ein Java3D-Applet o.ä.)

Gibt es auch Tools dafür die das wieder in Sourcecode wandeln. Obfuscaten ist im Web das einzige was man machen kann.

AlecWhite
2011-02-07, 21:13:42
Das Web ist ein offenes Medium. Wenn du deinen Code nicht offenlegen willst, dann solltest du dir was anderes suchen.

Ich stimme Trap im übrigen zu: "View source" ist mit das Beste am Web, und ohne das wär es heute nicht dort wo es ist.
Eine HTML Seite und WebGL Anwendung unterscheiden sich vom Aufwand und Know-How dann doch recht drastisch. Das Markup zu verstecken macht ohnehin nur wenig Sinn, da es einfach zu simpel ist und nur den Mehrwert der Formatierung hat.

WebGL oder komplexere JS Anwendungen haben ein ganz anderen Aufwand und da bin ich mal Egoist und sage: Wer es nutzen möchte, soll zahlen und wer nicht zahlen möchte, soll woanders glücklich werden.

/onTopic:

Obfuscation empfinde ich eher als nogo - schreckt die meisten ab aber sobald es einer raushat (und den gibst ja immer) war's das.

aoe_forever
2011-02-07, 21:50:26
Obfuscation empfinde ich eher als nogo - schreckt die meisten ab aber sobald es einer raushat (und den gibst ja immer) war's das.

Seh ich nicht so. Obfuscated Code (z.B. mit MD5-Hashes) kannst Du nicht mehr auf die Schnelle in irgendwas sinnvolles zurückverwandeln. Es gibt dabei auch kein "raushaben" (Umkehrfunktion) mehr, sondern nur noch analysieren, Variablen und Methoden/Funktionen händisch auf Verdacht zurückumbenennen usw.

Da ist man in der Regel schneller wenn man es selbst neu schreibt.

Trap
2011-02-07, 22:33:46
Obfuscation empfinde ich eher als nogo - schreckt die meisten ab aber sobald es einer raushat (und den gibst ja immer) war's das.
Dann darfst du aber garkeine Anwendung schreiben, die auf einem fremden Rechner läuft.

Da bleibt dir als einzige Möglichkeit nur die WebGL-Befehle an den Client zu schicken und die eigentliche Anwendung auf deinem Server laufen zu lassen.