2010-07-28 6 views
11

Backstory: Ich plane, ein Gelegenheitsspiel zu implementieren, das in einer Webanwendung bereitgestellt wird, aber ich möchte nicht Flash, sondern einfach nur Javascript verwenden. Ein Vorteil von Flash, den ich mir wünschen würde, ist, dass es einen Binärcode und nicht den Quellcode verteilt, so dass es einfacher ist, den Code davor zu schützen, von jemand anderem wiederverwendet/gestohlen zu werden oder den Client daran zu hindern, den Code zu "cheaten" das Spiel?Was sind die Methoden zum Schutz von JavaScript-Webanwendungen/-spielen?

Also meine Frage ist: Was sind die Möglichkeiten, eine Javascript-Anwendung ähnlich zu schützen? Bin ich auf die üblichen Methoden der Verwendung eines Code-Obfuscators beschränkt? Wird das genug sein?

+8

Downvoter: downvotes sind für schlechte Fragen, nicht Fragen über etwas, was Sie nicht wollen, dass Leute tun. Mit dieser Frage ist technisch nichts falsch. – Pointy

+2

Ich denke nicht, dass es besonders möglich sein wird. Wie Sie sagen, gibt es Techniken zur Verschleierung. Aber irgendwann muss der Browser den Code sehen können, um ihn zu interpretieren, was bedeutet, dass Sie den Code dem Client zur Verfügung stellen müssen. – David

+0

@Roy Tang - Verschleierung ist alles, was Sie tun können. Sei vorsichtig, denn einige Obfuscatoren machen einige ziemlich dumme Dinge und können deinen Code langsamer laufen lassen. Sie tun auch wenig, um Ihren Code wirklich zu "schützen". Wenn Sie Ihren Code oder einige Implementierungstechniken als wertvoll erachten, stellen Sie sie nicht als Javascript auf einer Webseite bereit. – Pointy

Antwort

2

Verwenden Sie AJAX, um Ihr Spiel gegen den von Ihnen kontrollierten Servercode verifizieren zu lassen. Dies ist auch nützlich, wenn das Spiel auf mehrere Spieler verteilt ist. Die Überprüfung verhindert, dass jemand den Code ändert, um zu schummeln.

Auch Flash ist nicht immun gegen die von jemand anderem genommen wird. Die Leute können die Binärdatei herunterladen und überall hin posten. Und Flash-De-Compiler existieren und sind sehr effektiv.

+0

dies, ich mag die Idee von - haben Sie weitere Informationen? –

+0

Danke! Ich habe bereits darüber nachgedacht, aber es bedeutet, dass ich meinen Spielstatus mit einem Ajax-Aufruf mit jeder Statusänderung an den Server zurücksende ... es könnte eine große Menge an Anfragen haben, also habe ich mich gefragt, ob es Alternativen gibt. –

+0

@Roy - In diesem Fall: Was für ein Spiel ist das? –

3

Ein Code-Obfuscator ist alles, was Sie tun können. Egal was Sie tun, der ausführbare Code wird/muss im Browser verfügbar sein.

0

Warum möchten Sie speziell, dass es in JavaScript ist? Sie können node.js verwenden, um JavaScript-Code serverseitig für das geschützte Zeug auszuführen und mit ihm vom clientseitigen JavaScript aus zu interagieren.

Verwandte Themen