Bir coğumuz istediğimiz ve uzerinde yoğun caba harcadığımız programları .NET dili sayesinde yapıp kişisel veya halka acık olarak kullanıyor. Kişisel programlarınız icin değilde, halka acık olarak yaptığınız programları koruma altına almak zorundasınız!

En basitinden bir ornek vereyim; Programınızda MySQL veya SQL bağlantısı kullanıyorsunuz.. bu durumda programı elinizden geldiğince koruyup şifreleme kullanmazsanız buyuk bir sıkıntı icerisindesiniz. İnternet uzerinden ucretsiz olarak indirilebilen programlar sayesinde programınızın acık kaynak kodları izlenebilir. Ben size ornek olarak bir If , Else kullanan giriş formu yazıp resimli olarak sonucları gostermek istiyorum.

Bu benim Visual Studio 2012 Express uzerinde yazdığım kod:


Şimdi ben bu yazdığım ufak uygulamayı online olarakta bulabileceğiniz bir .net decompiler ile actım ve bana programın kaynaklarını anyne bu şekilde gosterdi:


Arkadaşlar gorduğunuz gibi, herşey ap acık ortada. Peki programlarınızı nasıl guvenli yapabilirsiniz ? Daha doğrusu, crac.klenmesini ne kadar zorlaştırabilirsiniz ?

Forumda paylaştığım 2 konu var, işinize yarayacak olan:[Ders] Dizi Nasıl Şifrelenir ? Hayalet Proje - Kaynak Kodu Koruyucu
Bu iki konu haricinde Obfuscator kullanmanızı onemle tavsiye ediyorum. İnternet uzerinde bulabileceğiniz ucretsiz Obfuscatorlardan biriside Confuser'dir. Tabi bu obfuscatorları kendiniz yazmadığınız surece bunlarıda kolaylıkla de-obfuscate edebilecek programlar yok değil

Şimdi size az once yazdığım giriş uygulamasının Confused (Confuser ile obfuscate ettiğim) halini .net decompilerde actığımda iceriğin nasıl gorulduğunu gostericem:
http://i.imgur.com/IjkrA1q.png

Dediğim gibi programların crac.k yemesini veya hac.klenmesini onleyemezsiniz.. hele kullandığınız programlama dili .NET olunca o iş imkansıza biniyor .NET Uygulamaları guvenlik acısından cok zayıftır bu yuzden yaptığınız programları elinizden geldiğince koruma altına alın, ve internetten bulduğunuz anlatımlara guvenerek bir program yazmaya kalkışmayın, en azından ne yaptığınızı biliyorsanız.

100% Guvenlik Diye Birşey Yoktur. Bu konudaki butun tavsiyelere uysanız bile programınız hacklenebilir, lutfen program yazarken kodlarınıza dikkat edin. Ozellikle MySQL, SQL veya ozel bir şifre icermek zorunda olan programlarınızı direk olarak VB.NET uzerinden yazmayın, PHP veya başka bir yontem kullanın.

Bu konu aslında daha geniş, ben basit bir şekilde anlattım. Umarım işinize yaramıştır. İyi forumlar dilerim.
__________________