Kebingungan permainan HTML5

8

Game HTML5 memiliki kode sumber yang dapat dilihat. Apakah ada cara untuk menjadikannya seperti file swf?

Bagaimana cara menyembunyikan algoritma game?

Apa pendapat Anda tentang Pengaya dan Pengaya Firefox JavaScript Deobfuscator ?

Rustam
sumber
1
Jika Anda memberi tahu kami alasan Anda ingin mengaburkan, kami dapat memberikan jawaban yang jauh lebih baik, mungkin (mungkin), menunjukkan kepada Anda bahwa Anda sebenarnya tidak perlu menyembunyikan kode Anda.
jcora
3
Juga file SWF juga tidak dilindungi .. Anda dapat dengan mudah mendekompilasi dan mengekstrak semua aset dan kode dari itu. Ada obfuscator di luar sana, tetapi mereka tidak menghentikan sesuatu yang benar-benar ditentukan.
bummzack
Berapa banyak waktu yang Anda perlukan untuk mengembalikan aplikasi swf sepenuhnya setelah mendekompilasi?
Rustam
Juga, mengapa kamu mau?
brice

Jawaban:

10

Jika Anda ingin melindungi sumber Anda, jangan menulisnya dalam HTML / Javascript?

Bagian dari hal-hal yang sangat menyenangkan tentang web karena semuanya dapat dibaca oleh manusia. Ini menjadikannya sumber belajar yang sangat baik. Jika Anda memberi tahu saya bahwa Anda belum pernah melihat sumber situs web untuk mempelajari bagaimana melakukan sesuatu, silakan katakan bahwa saya salah.

Saya semua berbagi cinta dengan kode, jika tidak saya tidak akan menjawab pertanyaan di situs web tentang menawarkan bantuan, semuanya gratis, bukan?

Sunting: Saya sudah mengatakan apa yang saya pikirkan, apakah ada cara untuk membuatnya tidak dapat dibaca? Tidak, tidak dalam JS / HTML murni. Alasannya sederhana: Di suatu tempat di bawah garis, itu menjadi mudah dibaca. Jika Anda mengaburkannya maka deobfuscator membuat Anda. Jika Anda menggunakan sandi atau menerjemahkannya entah bagaimana, pada titik tertentu Anda harus menerjemahkannya kembali ke javascript (dan kode untuk menerjemahkannya kembali harus ada di sumber Anda juga!).

Yang terbaik yang dapat Anda lakukan adalah untuk melindungi dari pencurian bandwidth dan mengaburkan jika Anda benar-benar merasa perlu, tetapi itu tidak akan menghentikan orang jika mereka benar-benar ditentukan.

Matt Kemp
sumber
6
flash dan java dapat didekompilasi, binari dapat dibongkar, javascript dapat didekobekan. Sumber Anda tidak dilindungi hanya karena Anda tidak menulisnya dalam javascript.
Esailija
2
@ EEailija upaya rata-rata yang diperlukan tidak sama, kecuali Anda adalah insinyur reverse / ahli keamanan / hacker / waht terlatih yang pernah ada.
daemonfire300
3
Hanya kutipan dari mana saja: "Apa yang dilakukan pria mana pun yang bisa dibatalkan pria lain." dan saya menambahkan: "Dengan niat dan kemauan yang benar, tidak ada yang benar-benar terlindungi."
Ricardo Souza
baik saya tidak akan menyebutnya hal yang sangat bagus; lebih dari situasi "berkah dan kutukan"
CobaltHex
Saya akan menyebutnya 'mekanik dasar': sangat mudah untuk mencuri di web. Inilah sebabnya kami memiliki kecepatan dan kompleksitas inovasi yang kami lakukan. Newton, Picasso, Eliot, dan saya yakin lebih banyak yang memiliki prinsip-prinsip seputar pencurian langsung, bahkan jika dibenarkan oleh pundak raksasa. Shakespeare sangat ahli dalam pencurian.
Matt Kemp
5

Anda dapat meletakkan banyak di server melalui Node.js dan baru saja mengembalikan hasil fungsi. tapi selain itu seperti yang dikatakan Matt Kemp. Kode yang dijalankan dapat dibaca oleh manusia, tidak mungkin disembunyikan.

David Gillen
sumber
2

Bahkan jika Anda tidak mengaburkan kode Anda, HTML / JS sudah sekitar tingkat kesulitan yang sama untuk membalikkan rekayasa sebagai SWF.

File SWF berisi kode Actionscript, (IIRC) asli, dengan komentar dll, kecuali jika dikaburkan. Nama-nama objek dll, juga terkandung dalam SWF.

SWF decompiler / recompiler ada, dan hanya karena Anda tidak dapat melihatnya dengan editor teks, tidak berarti SWF dengan cara apa pun aman dari rekayasa balik.

Bahkan tingkat kebingungan benar-benar tidak berbeda dengan SWF. Anda dapat mengaburkan kode JS Anda menggunakan beberapa obfuscator, tetapi itu hanya membuat laporan bug lebih sulit untuk ditafsirkan.

Anda mungkin ingin memfokuskan upaya Anda untuk membuat sesuatu yang layak dicuri, daripada mencegah orang mencuri itu. Banyak SWF yang ditipu dan digunakan untuk tujuan tidak sah (dengan gambar yang diubah, dll)

MarkR
sumber
2

Gunakan kompresor Yahoo YUI gratis.

Saya menggunakannya karena kompres kode saya secara drastis (termasuk menghapus komentar dan spasi yang tidak perlu). Ini memungkinkan saya mengomentari dan menyusun kode saya persis seperti yang saya inginkan tanpa khawatir tentang betapa mudahnya saya membuatnya untuk pencuri.

Selain itu jika Anda ingin membaca Javascript untuk situs yang kompleks setelah semua nama variabel dan fungsi pada dasarnya dihancurkan - yah, semoga sukses dengan itu. Jauh lebih sulit untuk mengetahui kode apa yang dilakukan ketika Anda tidak memiliki petunjuk.

(Meskipun dengan kompresor YUI Anda mungkin perlu menambah fungsinya untuk juga menghilangkan nama fungsi. Saya telah mengubah cara saya memberi nama fungsi secara khusus untuk tujuan secara otomatis dan secara selektif menghapus sebagian besar nama fungsi. Ini mungkin memerlukan beberapa kode khusus di pihak Anda. .)

DAG
sumber
1

Tidak, dan memang tidak ada alasan untuk itu! Jika Anda ingin menjual karya Anda, Anda dapat melakukannya tanpa kebingungan. Orang membayar untuk konten, bukan kode. Jual karya seni, cerita, musik, dll., Dan berikan kode secara bebas (sudah, sudah)

alekop
sumber
1

Game HTML5 memiliki kode sumber yang dapat dilihat. Apakah ada cara untuk membuatnya seperti file swf?

Ya, gunakan Flash dan terjemahkan kode Anda ke ActionScript.

Bagaimana cara menyembunyikan algoritme game?

Secara absolut, Anda tidak bisa melakukan itu.

Apa pendapat Anda tentang Pengaya dan Pengaya Firefox JavaScript Deobfuscator?

Kebingungan tidak lain adalah penghalang yang sangat tipis bagi seseorang yang serius mencuri kode Anda. Namun, ini sederhana untuk diatur, ia dapat menolak kiddies skrip yang paling bodoh, dan itu satu-satunya hal yang dapat Anda lakukan untuk melindungi kode sisi klien. Ini memiliki manfaat tambahan yaitu mengurangi ukuran skrip (unduhan lebih cepat) dan bahkan dapat mengoptimalkan kode (eksekusi lebih cepat). Periksa entri ini di Stack Overflow untuk detail tentang kebingungan. Ringkasan: Anda memiliki banyak opsi. Saya pribadi mencoba UglifyJS dan memiliki hasil yang sangat memuaskan.

Laurent Couvidou
sumber
0

Seperti kita ketahui, HTML5 mengandalkan JavaScript sebagai bahasa pemrograman. Secara teori, semua alat yang melindungi JavaScript harus bekerja di HTML5.

Satu-satunya alat yang saya tahu yang saat ini mendukung HTML5 dalam konteks pengembangan Gaming adalah JScrambler . Saya tidak yakin apakah orang lain akan bekerja.

Untuk diskusi tentang porpoise, kebingungan bukanlah peluru perak. Kami memiliki perangkat lunak yang disusun terenkripsi, dilindungi dengan beberapa solusi anti salinan dan masih bisa mendapatkannya tanpa membayar. Yang mengatakan saya percaya bahwa kebingungan mengalahkan meninggalkan kode Anda terbuka bagi siapa pun untuk membaca ketika niat Anda bukan itu.

Saya sangat suka open source dan mendukung gerakan ini, tetapi terkadang menutup sumber itu masuk akal.

rmribeiro
sumber
0

Anda dapat menggunakan kode asli. Pemrograman pada C ++ dan kompilasi untuk HTML5. Cocos2d-X adalah perpustakaan yang berfungsi di iOS, Android, dan HTML5. Kode Anda akan disembunyikan.

vgonisanz
sumber