Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Önleyici Koruma - Dotfuscator, güvenli yazılım geliştirme yaşam döngünüze kolayca uyan kapsamlı .NET uygulama koruması sağlar. Ticari sırların ve diğer fikri mülkiyetlerin (IP) güvenliğini sağlamaya yardımcı olmak, korsanlığı ve sahteciliği azaltmak ve manipülasyona ve yetkisiz hata ayıklamaya karşı koruma sağlamak için masaüstü, mobil, sunucu ve gömülü uygulamaları sağlamlaştırmak, korumak ve düzenlemek için kullanın. Dotfuscator, daha fazla programlamaya ve hatta kaynak koda erişmeye gerek kalmadan derlenmiş derlemelerde çalışır.
Koruma neden önemlidir?
Fikri mülkiyetinizi (IP) korumak önemlidir. Uygulamanızın kodu, IP olarak değerlendirilebilecek tasarım ve uygulama ayrıntılarını içerir. Bununla birlikte, .NET Framework üzerinde oluşturulan uygulamalarönemli meta veriler ve üst düzey ara kod içerir. Bu da, birçok ücretsiz, otomatikleştirilmiş araçlardan birini kullanarak tersine mühendislik yapmayı kolaylaştırır. Tersine mühendisliği kesintiye uğratıp durdurarak, yetkisiz IP ifşasını önleyebilir ve kodunuzun ticari gizli diziler içerdiğini gösterebilirsiniz. Dotfuscator, .NET derlemelerinizin karıştırılmasını sağlayarak, ters mühendisliği zorlaştırabilir ve özgün uygulama davranışını koruyabilir.
Uygulamanızın bütünlüğünükorumak da önemlidir. Ters mühendislik işlemine ek olarak, kötü aktörler uygulamanızı korsan yapmaya, çalışma zamanında uygulamanın davranışını değiştirmeye veya verileri işlemeye çalışabilir. Dotfuscator, uygulamanıza kurcalama, üçüncü taraf hata ayıklama ve kök erişimli cihazlar da dahil olmak üzere yetkisiz kullanımları algılama ve yanıtlamayeteneği ekleyebilir.
Dotfuscator'ın güvenli bir yazılım geliştirme yaşam döngüsüne nasıl uyduğu hakkında daha fazla bilgi için bkz. PreEmptive Solutions'ın SDL Uygulama Koruması sayfası.
Dotfuscator Community Hakkında
Microsoft Visual Studio kopyanız, kişisel kullanım için ücretsiz olan PreEmptive Protection - Dotfuscator Communitybir kopyayı içerir. (Bu ücretsiz sürüm daha önce Dotfuscator Community Edition veya Dotfuscator CE olarak biliniyordu.)
Visual Studio'da bulunan Dotfuscator Community sürümünü yükleme yönergeleri için Yükleme sayfasına bakın.
Dotfuscator Community, geliştiriciler, mimarlar ve test ediciler için çeşitli yazılım koruması ve sağlamlaştırma hizmetleri sunar. Dotfuscator Community'de bulunan .NET Obfuscation ve diğer Application Protection özelliklerine örnekler şunlardır:
- Derlenmiş derlemelerin tersine mühendislik işlemini daha zor hale getirmek için tanımlayıcılarınve olarak yeniden adlandırılması.
- Kurcalama önleme , üzerinde oynanmış uygulamaların yürütülmesini algılamak ve kurcalanmış oturumları sonlandırmak veya yanıtlamak için.
- Hata ayıklamayı önleme , çalışan bir uygulamaya bir hata ayıklayıcı bağlanmasını algılamak ve hata ayıklanan oturumları sonlandırmak veya yanıt vermek için.
- Kök yüklü cihaz algılama sistemi, uygulamanın kök yüklü bir Android cihazında çalışıp çalışmadığını tespit etmek ve bu cihazlardaki oturumları sonlandırmak veya bu oturumlara yanıt vermek için kullanılır.
- Uygulama ömrünün sonunu ve süresi dolan uygulama oturumlarını sonlandırmayı kodlayan süre sonu davranışları,.
Uygulama koruma stratejinize nasıl uydukları da dahil olmak üzere bu özelliklerle ilgili ayrıntılar için Özellikler sayfasına bakın.
Dotfuscator Community, kutudan çıktığı gibi temel koruma sunar. Dotfuscator Community'nin kayıtlı kullanıcıları ve dünyanın önde gelen .NET Obfuscatorolan PreEmptive Protection - Dotfuscator Professionalkullanıcıları için daha fazla uygulama koruma önlemi bulunmaktadır. Dotfuscator'ı geliştirme hakkında bilgi için Yükseltmeler sayfasına bakın.
Başlangıç
Visual Studio'dan Dotfuscator Community'yi kullanmaya başlamak için Arama Kutusu (Ctrl+Q) içine dotfuscator
yazın.
- Dotfuscator Community zaten yüklüyse, Arama Kutusu, Menüler başlığı altında Dotfuscator Topluluğu'na başlama seçeneğini gösterir. Detaylar için tam Dotfuscator Community Kullanıcı Kılavuzu'nun Başlarken sayfasına bakınız.
- Dotfuscator Community henüz yüklü değilse, Arama Kutusu bunun yerine Bağımsız Bileşenler başlığı altında PreEmptive Protection - Dotfuscator Yükle seçeneğini gösterir. Ayrıntılar için Yükleme sayfasına bakın.
Dotfuscator Community'nin en son sürümünü preemptive.com üzerindeki Dotfuscator İndirmeleri sayfasındanda alabilirsiniz.
Dotfuscator Community 5'ten yükseltme
PreEmptive Protection - Dotfuscator Community 6'ya yükseltmeyi öğrenin.
Visual Studio'nun yükleme geçmişinize ve sürümüne bağlı olarak, şu anda önceki ana sürüm olan Dotfuscator Community 5'i çalıştırıyor olabilirsiniz. Bu durumda, yükseltme yapmalısınız, çünkü kodunuza en sonkoruma önlemlerinin uygulandığından emin olmak önemlidir. Yükseltmeler ücretsiz olarak kullanılabilir.
Bu makalede, şu anda hangi sürüme sahip olduğunuzu belirleme, gerekirse sürüm 6'ya yükseltme ve iki sürüm arasında hangi özelliklerin değiştirildiği veya kaldırıldığı açıklanmaktadır.
Dotfuscator sürümünü belirleme
Hangi Dotfuscator sürümünü çalıştırdığınızdan emin değilseniz, aşağıdaki seçeneklerden birini yaparak sürümü belirleyebilirsiniz:
Visual Studio'nun Araçları menüsüne gidip PreEmptive Protection - Dotfuscator Communityöğesini seçerek Dotfuscator Community grafik kullanıcı arabirimi (GUI) başlatın.
Dotfuscator GUI'sinde Yardım menüsünü açın ve Hakkında... seçeneğini seçerek Hakkında ekranını görüntüleyin.
Bu ekranda Dotfuscator'ın sürümü listelenir.
komut satırı arabirimiile Dotfuscator'ınızı derlemenize tümleştirdiyseniz, aşağıdaki örneğe benzer bir satır için derleme günlüklerinizi de kontrol edebilirsiniz.
Dotfuscator Community Version 5.42.0.9514-e0e25f754
Bu metni görmek için derlemenizin ayrıntı düzeyini artırmanız gerekebilir. Visual Studio için bkz. Ayrıntı Ayarları.
İlk nokta .
önce sürümün ilk tamsayısı Dotfuscator'ın ana sürümünü gösterir. İlk tamsayı 5
ise, en son Dotfuscator 6 özelliklerinden ve koruma güncelleştirmelerinden yararlanabilmeniz için bu sayfada yükseltme adımlarını gerçekleştirmeniz gerekir.
Yükseltme yönergeleri
Bu bölüm, Dotfuscator Community'nin tipik kullanımlarını sürüm 5'ten sürüm 6'ya yükseltmeye yönelik yönergeler kümesini içerir.
Dotfuscator 6'yi yükleme
Dotfuscator Community, Visual Studio için bir uzantı olarak dağıtılır. Dotfuscator 6'nın yüklenmesine ilişkin yönergeler, hangi Visual Studio sürümünü kullandığınıza göre değişiklik gösterir:
Visual Studio 2022 Dotfuscator Community 6, Visual Studio 2022'ye dahildir.
Visual Studio 2019 Dotfuscator Community 6, Visual Studio 2019'un sonraki sürümlerinde (sürüm 16.10.0 ve üzeri) bulunur. Visual Studio 2019 en son sürüme güncelleştirin. Visual Studio'yu güncelleştirmek tüm Dotfuscator Community 5 yüklemelerini otomatik olarak Dotfuscator Community 6'ya yükselter.
Dotfuscator henüz yüklü değilse, önce Visual Studio'yu güncelleyin ve ardından Yüklemebölümüne bakın.
Visual Studio'daki sürümlere ek olarak, Dotfuscator Topluluğu'nun en son sürümlerini Dotfuscator İndirmeleri sayfasından alabilirsiniz.
Visual Studio 2017 Visual Studio'nun bu sürümü yalnızca Dotfuscator Community 5 ile birlikte gönderilir. Ancak dotfuscator downloads sayfasına gidip uygun indirme bağlantısını seçerek Dotfuscator Community 6'yı yükleyebilir veya yükseltebilirsiniz.
İndirilen
.vsix
dosyasını çalıştırın ve Dotfuscator Community 6'yı Visual Studio'ya yüklemek için istemleri izleyin. Mevcut Dotfuscator Community 5 yüklemeleri de yükseltilir.Visual Studio Dotfuscator Community 6'nın önceki sürümleri Visual Studio'nun bu sürümlerinde desteklenmez. Visual Studio'nun daha yeni bir sürümüne yükseltmenizi veya Dotfuscator Community'den Dotfuscator Professional 'e yükseltmeyiöneririz.
Daha önce Dotfuscator Community 5'i kaydettiyseniz, Dotfuscator Community 6'yı ilk kez çalıştırdığınızda bu kayıt otomatik olarak dönüştürülür.
CLI yollarını güncelleştirin
Uygulamanızı korumak için dotfuscator 5'in komut satırı arabirimi (CLI) kullandıysanız, herhangi bir projede CLI yolunu güncelleştirmeniz ve buna başvuran betikler oluşturmanız gerekir.
Dotfuscator CLI'sinin yolunun artık geçersiz olmasının nedeni Dotfuscator Community ile yüklenen yürütülebilir dosyalardan bazılarının adlarının Dotfuscator 6'da değişmesidir. Bu değişiklik, Dotfuscator Community ve Dotfuscator Professional'daki yürütülebilir dosya adlarını aynı hale getiriyor.
Yürütülebilir dosya için... | Dotfuscator 5 | Dotfuscator 6 |
---|---|---|
GUI | dotfuscator.exe |
dotfuscatorUI.exe |
CLI | dotfuscatorCLI.exe |
dotfuscator.exe |
Not
Dotfuscator CLI, Visual Studio'nun yükleme dizinine yüklendiğinden, Visual Studio'nun ana sürümleri arasında yükseltme yaparsanız veya Visual Studio sürümlerini değiştirirseniz CLI yolu da geçersiz olabilir. Aşağıda listelenen belirtiler ve çözüm bu senaryo için de geçerlidir.
Derlemeniz geçersiz bir Dotfuscator CLI yolu kullanıyorsa aşağıdaki örneklerden biri gibi hatalar alabilirsiniz:
'"[...]\PreEmptiveSolutions\DotfuscatorCE\dotfuscatorCLI.exe"' is not recognized as an internal or external command, operable program or batch file.
The command ""[...]\PreEmptiveSolutions\DotfuscatorCE\dotfuscatorCLI.exe" Dotfuscator.xml" exited with code 9009.
Derlemenizi doğru CLI yolunu kullanacak şekilde güncelleştirmek için:
Visual Studio'nun Araçları menüsüne gidip PreEmptive Protection - Dotfuscator Communityöğesini seçerek Dotfuscator Community GUI başlatın.
tr-TR: Dotfuscator Community GUI'de Araçları menüsüne gidin ve Dotfuscator Komut İstemi'ni seçin.
Açılan komut istemine
where dotfuscator.exe
yazın. Daha sonra başvurmak için, görüntülenen ilk yolu düz metin belgesine kopyalayın. Bu yol, Dotfuscator Community 6'nın CLI'sinin yeni yoludur.Derleme sisteminiz için uygun olan projeyi veya derleme yapılandırmasını açın.
- Visual Studio projeleri için proje dosyasını (
.csproj
,.vbproj
veya.fsproj
) düz metin olarak açın. Visual Studio'da bir proje dosyası açın.
- Visual Studio projeleri için proje dosyasını (
Projenizde veya derleme yapılandırmanızda Dotfuscator Community 5'in CLI'sının eski bir yolunun kullanıldığı yerleri bulun. Genellikle
dotfuscatorCLI.exe
ile biten bir yoldur.5. adımda bulunan eski yolları, 3. adımda not ettiğiniz yeni yolla değiştirin.
Eski yollardan biri mutlak bir yol değilse, yeni yolu bağlama göre uygun şekilde ayarlamanız gerekir. Aşağıdaki örnekte, eski yolda
VSInstallDir
ortam değişkeni kullanılmıştır, bu nedenle ilgili yeni yol da aynı işlemi yapmalıdır.- 3. adımdan yeni yol:
C:\Program Files (x86)\Microsoft Visual Studio\2019\Preview\Common7\IDE\Extensions\PreEmptiveSolutions\DotfuscatorCE\dotfuscator.exe
- Proje dosyasındaki eski yol:
%VSInstallDir%\Common7\IDE\Extensions\PreEmptiveSolutions\DotfuscatorCE\dotfuscatorCLI.exe
- Proje dosyasında yeni yol:
%VSInstallDir%\Common7\IDE\Extensions\PreEmptiveSolutions\DotfuscatorCE\dotfuscator.exe
- 3. adımdan yeni yol:
Git gibi bir kaynak denetim sistemi kullanıyorsanız, 6. adımdaki değişikliklerin bu sisteme yansıtıldığından emin olun. Bu değişiklikleri sisteminize ve kuruluşunuza uygun olabilecek şekilde ekibinizin geri kalanına dağıtın.
Uyarı
dotfuscator.exe
Dotfuscator 5'teki grafik kullanıcı arabirimine (GUI) karşılık geldiğinden ancak Dotfuscator 6'daki komut satırı arabirimine (CLI) başvurduğundan, birden çok makinede paylaşılan derleme betiklerini güncelleştirirken dikkatli olun.
Dotfuscator 6 için güncelleştirilmiş bir betik çalıştıran Dotfuscator 5 yüklü bir makine, betiğin istenen komut satırı arabirimi yerine grafik kullanıcı arabirimini başlatmasına neden olur. Bu, Dotfuscator'ın korumasını uygulamamasına rağmen derlemenin başarılı olmasına neden olabilir; bu da çıkış paketlerinizin korunmayacağı anlamına gelir.
Diğer durumlarda bunun yerine derleme hatasına neden olabilir.
Bu senaryoları önlemek için Dotfuscator Community'yi tüm makinelerinizde sürüm 5'ten sürüm 6'ya yükseltin ve aynı anda betikler oluşturun.
Dotfuscator yapılandırma dosyalarını yükseltme
Dotfuscator 6'den önce oluşturulan tüm Dotfuscator yapılandırma dosyalarının (Dotfuscator.xml
gibi) yükseltilmesi gerekir.
Dotfuscator CLI'yi eski bir yapılandırma dosyasıyla çalıştırmayı denerseniz aşağıdaki örnekler gibi hatalar alırsınız:
Dotfuscator Engine Initialization error: PreEmptive Analytics, Authenticode signing, and the Introduce Explicit Method Overrides setting are no longer supported. Please open your Dotfuscator config in the Config Editor which automatically upgrades it.
Önemli
Bu hatayı alırsınız ve belirtilen özellikleri kullanmasanız bile yapılandırma dosyanızı yükseltmeniz gerekir.
Yapılandırma dosyasını yükseltmek için:
Visual Studio'nun Araçları menüsüne gidip PreEmptive Protection - Dotfuscator Communityöğesini seçerek Dotfuscator Community grafik kullanıcı arabirimi (GUI) başlatın.
Söz konusu Dotfuscator yapılandırma dosyasını açın (Ctrl+O).
Derleme Çıktısı sekmesinde aşağıdaki ileti görüntülenir:
PreEmptive Analytics, Authenticode signing, and the Introduce Explicit Method Overrides setting are no longer supported. The associated settings have been removed. Please save your upgraded Dotfuscator config.
Güncelleştirilmiş Dotfuscator yapılandırma dosyasını (Ctrl+S) kaydedin.
Git gibi bir kaynak denetim sistemi kullanıyorsanız Dotfuscator yapılandırma dosyasındaki değişikliklerin bu sisteme yansıtıldığından emin olun. Bu değişiklikleri sisteminize ve kuruluşunuza uygun olabilecek şekilde ekibinizin geri kalanına dağıtın.
Öznitelik kütüphanelerine referansları güncelleme
Dotfuscator, kaynak kodunuzda .NET öznitelikleri aracılığıyla belirli özellikleri yapılandırmanıza olanak tanır. Projeleriniz bu tür öznitelikler kullanıyorsa, Dotfuscator 6'daki değişiklikleri ele almak için bunları güncelleştirmeniz gerekebilir.
Gizleme öznitelikleri
Gizleme Özniteliklerinde hiçbir değişiklik yapılmadı. Bu öznitelikler .NET temel sınıf kitaplıklarında tanımlanır ve Dotfuscator Community 6 bunları kabul etmeye devam eder.
Öznitelikleri Denetle
Öznitelikleri Denetle içeren kitaplık değişti. Dotfuscator Community 5'te, Dotfuscator'ın kendisiyle birlikte bir dosya olarak dağıtıldı. Dotfuscator Community 6'dan başlayarak genel NuGet paketi olarak dağıtılır.
Eski konuma başvuruda bulunan bir Visual Studio projesi oluşturmaya çalışırsanız aşağıdaki örnekler gibi hatalar alabilirsiniz:
The type or namespace name 'PreEmptive' could not be found (are you missing a using directive or an assembly reference?)
The type or namespace name 'TamperCheckAttribute' could not be found (are you missing a using directive or an assembly reference?)
Şu uyarıyı da alabilirsiniz:
Could not resolve this reference. Could not locate the assembly "PreEmptive.Attributes". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors.
Projenizi yeni konumu kullanacak şekilde güncelleştirmek için:
Projenin
PreEmptive.Attributes.dll
derleme bağlantısını kaldırın.Projeye NuGet paket referansını
PreEmptive.Protection.Checks.Attributes
ekleyin. Paket, nuget.orgvarsayılan NuGet akışında kullanılabilir.
Her Check Özniteliğinin ExtendedKey
parametreleri de kaldırılmıştır.
Dotfuscator Community 5'te bu parametreler göz ardı edildi, ancak kaynak kodunuz yine de bunları kullandıysa, projenizin derlenmesi için bu kullanımları kaldırın.
Enstrümantasyon öznitelikleri
Enstrümantasyon öznitelikleri, Dotfuscator 5'te PreEmptive Analytics özelliğini yapılandırmak için kullanıldı. Ancak Dotfuscator 6'da PreEmptive Analytics kaldırılmıştır; Bkz. PreEmptive Analytics Kaldırılan Özellik alt bölümüne bakın. Sonuç olarak, enstrümantasyon öznitelikleri de kaldırılmıştır.
Araçsal öznitelikleri kullanan bir Visual Studio projesi oluşturmaya çalıştığınızda, öznitelik adları farklılık gösterse bile (örneğin, TamperCheckAttribute
yerine FeatureAttribute
), Öznitelikleri Denetle'de belirtilen benzer türde hata ve uyarılarla karşılaşabilirsiniz.
Dotfuscator'ı izleme özniteliklerinin kullanımlarını içeren önceden oluşturulmuş derlemelerde çalıştırmayı denerseniz aşağıdaki örnekler gibi hatalar alırsınız:
The PreEmptive.Attributes.FeatureAttribute attribute (annotating SomeNamespace.SomeType::SomeMethod) is not recognized by this version of Dotfuscator.
Bu sorunları çözmek için kaynak kodunuzdan izleme özniteliklerinin tüm kullanımlarını kaldırın.
Ayrıca, öznitelikleri tanımlayan kitaplığa yönelik derleme başvurularını PreEmptive.Attributes.dll
kaldırmanız gerekir.
(Bu kitaplıkta tanımlanan Öznitelikleri Denetle özelliğini de kullanıyorsanız, bunlar taşınmış olabilir; yukarıdaki Öznitelikleri Denetle bakın.)
Kaldırılan özellikler
Dotfuscator Community 6, Dotfuscator Community 5'ten farklılıklar içeren köklü değişiklikler getiriyor. Dotfuscator Community 5 kullanıyorsanız, bu bölümde derleme değişiklikleri gerektirebilecek veya Dotfuscator'ın çıkışını etkileyebilecek değişikliklerle nasıl başa çıkabileceğiniz açıklanır.
Değişikliklere ilişkin tam liste değişiklik günlüğündemevcuttur.
PreEmptive Analytics
Dotfuscator 6, Telemetriyi Denetle de dahil olmak üzere PreEmptive Analytics'i desteklemez. Ancak, Kontrolleri (Uygulama Bildirimi ve Kontrol İşlemleridahil) hala desteklenir.
Dotfuscator 6'yı kullanmak için yapılandırma dosyanızı yükselterek PreEmptive Analytics ayarlarını kaldırın.
PreEmptive Analytics'i yapılandırmak için kod içi öznitelikler kullandıysanız bunları kaynak kod kaldırın ve Dotfuscator 6 bu derlemeleri korumadan önce giriş derlemelerinizi yeniden oluşturun.
Eğer bir Denetim geçersiz bir durum algıladığında (örneğin, kurcalama algılandığında) bunu raporlamak için Check Telemetry'yi kullanıyorsanız, olayı Azure Application Insights veya tercih ettiğiniz başka bir hizmete bildiren özel bir Uygulama Bildirimi ile değiştirebilirsiniz.
Desteklenmeyen uygulama türleri
Dotfuscator 6'da aşağıdaki uygulama türleri artık desteklenmiyor:
- Windows Phone
- WinRT (Windows 8 uygulamaları)
- Silverlight
- Unity (oyun motoru)
- Evrensel Windows Platformu (UWP)
Diğer UWP uygulamalarını korumak için Dotfuscator Professional 'a yükseltin ve Uygulamanızı Koruma yönergelerini izleyin.
Desteklenmeyen girişler
Dotfuscator Community artık giriş olarak Evrensel Windows Platformu (UWP) .appx
paketlerini desteklememektedir. UWP uygulamalarını korumak için Dotfuscator Professional'a yükseltin ve Uygulamanızı Koruma yönergelerini izleyin.
Ayrıca silverlight artık desteklenmediğinden .xap
paketleri artık giriş olarak kullanılamaz.
Açık yöntem geçersiz kılmaları ekleme
Açık yöntem geçersiz kılmalarını uygulamaya yönelik Yeniden Adlandırma seçeneği Dotfuscator'dan kaldırıldı. Dotfuscator 6'yı kullanmak için yapılandırma dosyanızı yükseltin bu ayarı kaldırın.
Tam belgeler
Dotfuscator Community kullanıcı arabirimini kullanmaya başlama dadahil olmak üzere ayrıntılı kullanım yönergeleri için preemptive.com 'da Dotfuscator Topluluğu Kullanıcı Kılavuzu'nu.