Saya harus khawatir tentang obfuscating saya .Kode BERSIH?

I'm yakin banyak pembaca pada apa yang telah digunakan Lutz Roeder's .NET reflector untuk menguraikan mereka .Kode BERSIH. Saya kagum betapa akurat kode sumber kami bisa recontructed dari kami yang dihimpun rakitan.

I'a menjadi tertarik mendengar berapa banyak dari anda yang menggunakan kebingungan, dan untuk apa produk?

I'm yakin bahwa ini adalah jauh lebih penting untuk, katakanlah,.NET aplikasi yang anda tawarkan untuk di-download melalui internet sebagai lawan dari sesuatu yang dibangun dipesan lebih dahulu untuk klien tertentu.

Larutan

Saya tidak't khawatir tentang hal itu terlalu banyak. I'd lebih fokus pada menempatkan sebuah produk mengagumkan, mendapatkan basis pengguna, dan memperlakukan pelanggan anda benar daripada khawatir tentang minimal persentase pengguna yang bersangkutan dengan mencuri kode anda atau mencari di sumber.

Komentar (3)

Ingat, kebingungan ini tidak di-enkripsi. IMHO, jika seseorang memandang nilai di reverse-engineering kode anda, mereka akan melakukannya. Yang's benar untuk berhasil code atau kode asli, dikaburkan atau tidak. Yakin, kebingungan menghalangi pengamat biasa, tetapi bisnis anda benar-benar terancam oleh orang-orang seperti itu? Setiap .NET kebingungan metode I've terlihat membuat hidup anda sebagai pengembang sulit.

Ada layanan yang menawarkan enkripsi, seperti SLPS dari Microsoft. Lihat http://www.microsoft.com/slps/default.aspx

Komentar (2)

Saat ini kami obfuscate semua output kami, meskipun kami adalah pakaian kecil yang menjual perangkat lunak khusus untuk sejumlah kecil dari klien.

Kami membuat keputusan ini untuk satu alasan sederhana - kami menemukan tidak puas ex-karyawan aktif mendekati klien kami meminta binari - ada beberapa kekhawatiran ia berniat untuk merekayasa fitur baru dalam rangka untuk menawarkan bersaing fungsi.

Tentu saja dia masih mampu melakukan hal ini jika ia menggunakan perangkat lunak, tetapi tidak ada alasan untuk membuatnya mudah bagi dia.

Komentar (0)

Tidak ada yang baru kebingungan, tapi banyak compiler trik sejak 1.1

Misalnya setiap kali anda menggunakan anonim jenis yang anda dapatkan IL yang mengkompilasi kembali dengan cukup jelas nama. Setiap kali anda menggunakan hasil yang anda dapatkan yang baru kelas yang mengimplementasikan kedua IEnumerable dan IEnumerator (pintar optimasi, tidak terbaca kode). Setiap kali anda menggunakan anonim delegasi yang anda dapatkan metode baru dengan nama yang's tidak valid di setiap .Net bahasa yang saya tahu, tapi itu's baik-baik saja di IL.

Komentar (0)

@Rob Cooper

Memiliki beberapa diskusi dengan saya manajer di tempat kerja, dia bilang dia doesn't obfuscate, tapi tidak NGEN di install, virus yang harus cukup untuk berhenti Reflektor bekerja pada anda majelis, tapi saya tidak tahu jika ini adalah benar dan sampai sejauh mana, jadi mohon don't mengambil itu sebagai injil :)

Ini doesn't menawarkan jenis perlindungan terhadap pembongkaran. Pertama saya bayangkan sangat mungkin untuk mengekstrak file mentah dari setiap paket instalasi seperti MSI atau CAB.

Tapi yang lebih penting, Ngen berjalan pada mesin klien setelah majelis telah diinstal. Ngen hanya pasukan perakitan untuk mengkompilasi sekarang bukan nanti menggunakan JIT. Asli perakitan tetap dan tidak berubah dan ini harus tetap karena Ngen mungkin tidak dapat mengkompilasi seluruh perakitan.

Ngen untuk kinerja, bukan jam, dan tidak apa-apa untuk mencegah pembongkaran atau bahkan sedikit lebih sulit.

Komentar (1)

mudah bagi saya - jika anda perlu untuk melindungi kekayaan intelektual - obfuicate - jika tidak tidak.

Mudah dilakukan dengan alat yang tepat.

Komentar (0)

Saya pikir untuk beberapa sejauh mana kita SEMUA harus mengkhawatirkan IP kita :)

Pertanyaan yang bagus meskipun sebagai sesuatu yang saya tertarik untuk tahu lebih banyak tentang (saya lakukan saat ini tidak obfuscate).

Setelah memiliki beberapa diskusi dengan manajer saya di kantor, dia bilang dia doesn't obfuscate, tapi tidak NGEN di install, virus itu harus cukup untuk menghentikan Reflektor kerja di majelis, tapi saya tidak tahu jika ini adalah benar dan sampai sejauh mana, jadi silahkan don't mengambil itu sebagai injil :)

Pertanyaan yang bagus :) +1

Komentar (1)

Kami don't menggunakan kebingungan untuk "non-publik" aplikasi tapi kami menggunakan ini untuk semua aplikasi yang tersedia. Obfuscated aplikasi berisi banyak sangat canggih kode yang membawa kami selangit jumlah waktu untuk menulis dan yang's alasan bahwa biarkan aku berpikir bahwa kebingungan adalah harus - setidaknya dalam kasus itu.

Komentar (0)

Obsfucation terbatas di it's efektivitas, mungkin menjaga casual pria jauh. Yang paling efektif obsfucation membuat hanya jumlah terkecil dari kode yang tersedia untuk pengguna. Jika anda bisa, membuat aplikasi anda berjalan sangat bergantung pada lemak server.

Komentar (1)

Setuju, kebanyakan orang yang tahu bagaimana kode sedikit bahkan tidak perlu untuk mencuri kode anda!

Komentar (0)