Jogos em HTML5 têm código fonte visível. Existe uma maneira de fazê-los como arquivo swf?
Como ocultar o algoritmo do jogo?
O que você acha do Firefox JavaScript Deobfuscator Plugin e ofuscação?
Jogos em HTML5 têm código fonte visível. Existe uma maneira de fazê-los como arquivo swf?
Como ocultar o algoritmo do jogo?
O que você acha do Firefox JavaScript Deobfuscator Plugin e ofuscação?
Respostas:
Se você deseja proteger sua fonte, não a escreva em HTML / Javascript?
Parte das coisas realmente legais da Web, pois é tudo legível por humanos. Isso o torna um excelente recurso de aprendizado. Se você está me dizendo que nunca consultou a fonte de um site para saber como ele faz alguma coisa, fique à vontade para me dizer que estou errado.
Estou quase compartilhando o amor com o código, caso contrário não responderia perguntas em um site sobre oferecer ajuda, tudo de graça, não é?
Edit: Eu disse o que penso sobre isso, existe uma maneira de torná-lo ilegível? Não, não em JS / HTML puro. A razão para isso é simples: em algum lugar abaixo da linha, torna-se legível. Se você ofuscá-lo, um desobuscador o pega. Se você usa uma cifra ou a traduz de alguma forma, em algum momento você precisa convertê-lo novamente em javascript (e o código para traduzi-lo também precisa estar na sua fonte!).
O melhor que você pode fazer é proteger contra roubo de largura de banda e ofuscar se você realmente sentir a necessidade, mas isso não impedirá as pessoas se elas forem realmente determinadas.
Você pode colocar muito disso no servidor via Node.js e retornar os resultados das funções. mas fora isso, é como Matt Kemp diz. O código executado é legível por um humano, é impossível ocultá-lo.
Mesmo se você não ofuscar seu código, o HTML / JS já tem o mesmo nível de dificuldade para fazer engenharia reversa que o SWF.
Os arquivos SWF contêm o código Actionscript original (IIRC), com comentários etc., a menos que sejam ofuscados. Os nomes de objetos etc. também estão contidos no SWF.
Os descompiladores / recompiladores SWF existem, e apenas porque você não pode vê-lo com um editor de texto, não significa que o SWF esteja de alguma forma a salvo da engenharia reversa.
De fato, o nível de ofuscação não é realmente diferente de um SWF. Você pode ofuscar seu código JS usando algum ofuscador, mas isso dificulta a interpretação dos relatórios de erros.
Você provavelmente deseja concentrar seus esforços em fazer algo que vale a pena roubar, em vez de impedir que as pessoas o roubem. Muitos SWFs são roubados e usados para fins não autorizados (com gráficos alterados etc.)
Use o compressor Yahoo YUI gratuito.
Eu o uso porque compacta meu código drasticamente (incluindo remover comentários e espaços em branco desnecessários). Isso me permite comentar e estruturar meu código exatamente como eu quero, sem me preocupar com o quão fácil eu estou facilitando para ladrões.
Além disso, se você quiser ler o Javascript de um site complexo, depois que todos os nomes de variáveis e funções forem essencialmente destruídos - bem, boa sorte com isso. É muito mais difícil descobrir o que o código está fazendo quando você não tem dicas.
(Embora com o compressor YUI, você precise aumentar sua funcionalidade para também se livrar dos nomes das funções. Alterei a maneira como nomeio funções especificamente para remover automaticamente e seletivamente a maioria dos nomes de funções. Isso pode exigir algum código personalizado. .)
Jogos em HTML5 têm código fonte visível. Existe uma maneira de fazê-los como arquivos swf?
Sim, use o Flash e traduza seu código para o ActionScript.
Como alguém poderia esconder os algoritmos do jogo?
Em termos absolutos, você não pode fazer isso.
O que você acha do Firefox JavaScript Deobfuscator Plugin e ofuscação?
A ofuscação nada mais é do que uma barreira muito fina para alguém que seria sério em roubar seu código. Ainda assim, é simples de configurar, ele pode repelir as crianças mais burras do script, e é a única coisa que você pode fazer para proteger o código do lado do cliente. Ele tem o benefício adicional de reduzir o tamanho do script (download mais rápido) e até otimizar o código (execução mais rápida). Verifique esta entrada no Stack Overflow para obter detalhes sobre ofuscação. Resumo: você tem muitas opções. Eu pessoalmente tentei o UglifyJS e tive resultados muito satisfatórios.
Como todos sabemos, o HTML5 depende do JavaScript como linguagem de programação. Em teoria, todas as ferramentas que protegem o JavaScript devem funcionar em HTML5.
A única ferramenta que sei que atualmente suporta HTML5 no contexto de desenvolvimento de jogos é o JScrambler . Não tenho certeza se outros funcionarão.
Para fins de discussão, ofuscação não é uma bala de prata. Temos software compilado criptografado, protegido com várias soluções anti-cópia e ainda assim podemos obtê-los sem pagar. Dito isto, acredito que a ofuscação é melhor do que deixar seu código aberto para qualquer um ler quando você não pretender.
Eu realmente amo o código aberto e apoio o movimento, mas às vezes fechar o código faz muito sentido.
Você pode usar código nativo. Programação em C ++ e compilação para HTML5. O Cocos2d-X é uma biblioteca que funciona no iOS, Android e HTML5. Seu código ficará oculto.