I giochi HTML5 hanno un codice sorgente visualizzabile. C'è un modo per renderli come file swf?
Come nascondere l'algoritmo di gioco?
Cosa ne pensi del plug-in Deobfuscator di Firefox JavaScript e dell'offuscamento ?
I giochi HTML5 hanno un codice sorgente visualizzabile. C'è un modo per renderli come file swf?
Come nascondere l'algoritmo di gioco?
Cosa ne pensi del plug-in Deobfuscator di Firefox JavaScript e dell'offuscamento ?
Risposte:
Se vuoi proteggere la tua fonte, non scriverla in HTML / Javascript?
Parte delle cose davvero belle del web in quanto è tutto leggibile dall'uomo. Questo lo rende un'ottima risorsa di apprendimento. Se mi stai dicendo che non hai mai guardato la fonte di un sito web per sapere come fa qualcosa, allora sentiti libero di dirmi che mi sbaglio.
Sto tutti condividendo l'amore con il codice, altrimenti non risponderei alle domande su un sito web sull'offerta di aiuto, tutto gratis, vero?
Modifica: ho detto cosa ne penso, c'è un modo per renderlo non leggibile? No, non in puro JS / HTML. Il motivo è semplice: da qualche parte lungo la linea, diventa leggibile. Se lo offuschi, allora un deobfuscatore ti prende. Se usi un codice o lo traduci in qualche modo, a un certo punto devi tradurlo in javascript (e anche il codice per tradurlo deve essere nella tua fonte!).
Il meglio che puoi fare è proteggere dal furto della larghezza di banda e offuscare se ne senti davvero il bisogno, ma non fermerà le persone se sono veramente determinate.
Puoi metterne molto sul server tramite Node.js e restituire semplicemente i risultati delle funzioni. ma a parte questo è come dice Matt Kemp. Il codice che viene eseguito è leggibile da un essere umano, è impossibile nasconderlo.
Anche se non offuschi il tuo codice, HTML / JS ha già lo stesso livello di difficoltà nell'ingegnerizzazione di SWF.
I file SWF contengono il codice ActionScript originale, (IIRC), con commenti ecc., A meno che non siano offuscati. Nomi di oggetti ecc., Sono anche contenuti nel file SWF.
Esistono decompilatori / ricompilatori SWF e solo perché non è possibile vederlo con un editor di testo, ciò non significa che SWF sia in alcun modo al sicuro dal reverse engineering.
In effetti il livello di offuscamento non è davvero diverso da un SWF. Potresti offuscare il tuo codice JS usando un po 'di offuscatore, ma ciò rende solo più difficili da interpretare le segnalazioni di bug.
Probabilmente vuoi concentrare i tuoi sforzi nel rendere qualcosa che valga la pena rubare, piuttosto che impedire alle persone di rubarlo. Molti SWF vengono strappati e utilizzati per scopi non autorizzati (con grafica modificata, ecc.)
Utilizza il compressore Yahoo YUI gratuito.
Lo uso perché comprime drasticamente il mio codice (inclusa la rimozione di commenti e spazi bianchi non necessari). Questo mi permette di commentare e strutturare il mio codice esattamente come voglio senza preoccuparmi di quanto sia facile farlo per i ladri.
Inoltre, se vuoi leggere il Javascript per un sito complesso dopo che tutti i nomi di variabili e funzioni sono stati sostanzialmente distrutti, beh, buona fortuna. È molto più difficile capire cosa sta facendo il codice quando non hai suggerimenti.
(Anche se con il compressore YUI potrebbe essere necessario aumentare la sua funzionalità per sbarazzarsi anche dei nomi delle funzioni. Ho modificato il modo in cui nome le funzioni in modo specifico allo scopo di rimuovere automaticamente e selettivamente la maggior parte dei nomi delle funzioni. Ciò potrebbe richiedere un codice personalizzato da parte tua .)
I giochi HTML5 hanno un codice sorgente visualizzabile. C'è un modo per renderli come file swf?
Sì, usa Flash e traduci il tuo codice in ActionScript.
Come si potrebbe nascondere gli algoritmi di gioco?
In termini assoluti, non puoi farlo.
Cosa ne pensi del plug-in Deobfuscator di Firefox JavaScript e dell'offuscamento?
L'offuscamento non è altro che una barriera molto sottile per qualcuno che vorrebbe seriamente rubare il tuo codice. Tuttavia, è semplice da configurare, può respingere i kiddie di script più stupidi ed è l'unica cosa che puoi fare per proteggere il codice lato client. Ha il vantaggio aggiuntivo di ridurre le dimensioni dello script (download più veloce) e persino di ottimizzare il codice (esecuzione più veloce). Controlla questa voce su Stack Overflow per dettagli sull'offuscamento. Riepilogo: hai molte opzioni. Personalmente ho provato UglifyJS e ho avuto risultati molto soddisfacenti.
Come tutti sappiamo, HTML5 si basa su JavaScript come linguaggio di programmazione. In teoria tutti gli strumenti che proteggono JavaScript dovrebbero funzionare su HTML5.
L'unico strumento che conosco che attualmente supporta HTML5 nel contesto dello sviluppo del gioco è JScrambler . Non sono sicuro se gli altri funzioneranno.
Per la discussione, l'offuscamento non è un proiettile d'argento. Abbiamo un software che viene compilato crittografato, protetto con diverse soluzioni anti copia e che può ancora ottenerlo senza pagare. Detto questo, credo che l'offuscamento batte lasciando il tuo codice aperto a chiunque possa leggerlo quando la tua intenzione non è quella.
Amo davvero l'open source e sostengo il movimento, ma a volte chiudere la fonte ha molto senso.