2013-10-11 28 views
6

Şu anda C ve Lua'da bir oyun geliştiriyorum. Oyun bittiğinde oyunumu satmayı planladığımdan kaynak kodunu kapalı tutmak istiyorum. Dolayısıyla sorum şu ki, kullanıcı bakabilmem için bir şekilde Lua kodumu saklayabileceğim ya da bir şekilde C'den erişebileceğim bir yol olup olmadığı. Şu anda, uygulamam erişebildiğim için Lua kodumla aynı yere yerleştirildi.Lua Kaynak Kodunu Gizleme C Uygulama

Bunu okuduğunuz için teşekkür ederiz ve herhangi bir yardım için teşekkür ederiz. Çok muğlak davranıyorsam lütfen daha fazla bilgi için bana sorun.

+0

Lua kaynağını şifreleyebilir ve anahtarı yürütülebilir dosyadan ayıklamak için hiç kimsenin denemeyeceğini varsayabilirsiniz. – Dai

+0

Şifreleme anahtarını almak onların için ne kadar zor olabilir ve başka seçenekler var mı? – hyrumcoop

+3

lua komut dosyanızı derleyebilir ve bayt kodunu bir C dizisine kaydedebilir ve bazı temel kaynak gizliliği sağlayabilirsiniz. Bunun ötesinde, yapabileceğiniz çok daha fazla şey yoktur - belirlenmiş herhangi bir saldırgan, ikiliyi her zaman daha yüksek seviyeli temsillere dönüştürür. Bu, oyununuzu programlamak için kullandığınız dilden bağımsız olarak doğrudur. – greatwolf

cevap

5

Doğru cevabın, yapamayacağınızı düşünüyorum. Sadece kırıcı için hayatı zorlaştırabilirsiniz. Kodun bytecode'a girilmesinden daha iyi koruma şemaları kırılmıştır. Oyununuz popüler değil ise, zaten fark etmez. Önce oyunu yaz, sonra kodunu saklamanın endişesi.

+4

Evet, bu doğru, yapamazsın. Bildiğim en iyi gizleme yöntemi: http://stackoverflow.com/a/8500005/661171 – cib

+0

Teşekkür ederim. Daha sonra en ufak detaylar hakkında en önemli ve endişelenen konulara odaklanmam gerektiğine katılıyorum. – hyrumcoop

5

Lua kılavuzu says:

[Lua] topakları da ikili bir forma precompiled edilebilir; Ayrıntılar için program luac'a bakın. Kaynak ve derlenmiş formlardaki programlar birbiriyle değiştirilebilir; Lua dosya türünü otomatik olarak algılar ve buna göre davranır.

Bu kolayca okunabilir olmayacak ikili formuna Lua kod derlemek için luac (Lua derleyici) kullanabileceğiniz anlamına gelir, ama yine de bile yapılabilir ki (ne yaptığını öğrenmek için demonte edilebilir C yeterince karar verirseniz).

İlgili konular