Skip to content

Commit 6cd7e5f

Browse files
authored
Merge pull request #32 from preemptive/PreEmptive
Add documentation on Dotfuscator CE
2 parents 244befa + 507ff04 commit 6cd7e5f

File tree

10 files changed

+437
-0
lines changed

10 files changed

+437
-0
lines changed

docs/ide/TOC.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -222,6 +222,10 @@
222222
## [Troubleshooting the Help Viewer](troubleshooting-the-help-viewer.md)
223223
## [Accessibility Features of the Help Viewer](accessibility-features-of-the-help-viewer.md)
224224
### [Shortcut Keys (Help Viewer)](shortcut-keys-help-viewer.md)
225+
# [Dotfuscator Community Edition (CE)](dotfuscator/index.md)
226+
## [Capabilities of Dotfuscator](dotfuscator/capabilities.md)
227+
## [Install Dotfuscator CE](dotfuscator/install.md)
228+
## [Upgrade Dotfuscator CE](dotfuscator/upgrades.md)
225229
# [Globalizing and Localizing Applications](globalizing-and-localizing-applications.md)
226230
## [Introduction to International Applications Based on the .NET Framework](introduction-to-international-applications-based-on-the-dotnet-framework.md)
227231
## [Localizing Applications](localizing-applications.md)

docs/ide/dotfuscator/capabilities.md

Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,108 @@
1+
---
2+
title: "Capabilities of Dotfuscator | Microsoft Docs"
3+
ms.date: "2017-02-08"
4+
ms.prod: "visual-studio-dev15"
5+
ms.devlang: "dotnet"
6+
ms.technology:
7+
- "dotfuscator"
8+
ms.topic: "article"
9+
keywords: Dotfuscator, Dotfuscator CE, PreEmptive, PreEmptive Solutions, PreEmptive Protection, protection, community edition, obfuscation, .NET, free, Visual Studio 2017
10+
helpviewer_keywords:
11+
- "PreEmptive Protection - Dotfuscator"
12+
- "Dotfuscator Community Edition"
13+
- "Dotfuscator CE"
14+
- "Dotfuscator"
15+
- "obfuscation"
16+
- "protection"
17+
description: "Learn the capabilities of the free Dotfuscator Community Edition included in Visual Studio 2017."
18+
ms.assetid: 0ee89c58-c900-48fc-a6a2-65ace00e8bab
19+
author: "Joe-Sewell-PreEmptive"
20+
manager: "ghogen"
21+
translation.priority.ht:
22+
- "cs-cz"
23+
- "de-de"
24+
- "es-es"
25+
- "fr-fr"
26+
- "it-it"
27+
- "ja-jp"
28+
- "ko-kr"
29+
- "pl-pl"
30+
- "pt-br"
31+
- "ru-ru"
32+
- "tr-tr"
33+
- "zh-cn"
34+
- "zh-tw"
35+
---
36+
37+
# Capabilities of Dotfuscator
38+
39+
This page focuses on the capabilities of Dotfuscator Community Edition (Dotfuscator CE) with some references to advanced options available through [upgrades][upgrades].
40+
41+
Dotfuscator is a *post-build* system for .NET applications.
42+
With Dotfuscator CE, Visual Studio users are able to [obfuscate assemblies][obfuscation] and inject [active defense][checks] and [analytics tracking][analytics] into the application – all without Dotfuscator needing to access the original source code.
43+
Dotfuscator protects your application in multiple ways, creating a layered protection strategy.
44+
45+
Dotfuscator CE supports a wide range of .NET assembly and application types, including [Universal Windows Platform (UWP)][uwp] and [Xamarin][xamarin].
46+
47+
## Intellectual Property Protection
48+
49+
Your application's design, behavior, and implementation are forms of intellectual property (IP).
50+
However, applications created for the .NET Framework are essentially open books; it's very easy to reverse engineer .NET assemblies, [as they contain high-level metadata and intermediate code][assemblies].
51+
52+
Dotfuscator CE includes basic [.NET obfuscation][obfuscation] in the form of [renaming][renaming].
53+
Obfuscating your code with Dotfuscator reduces the risk of unauthorized access to source code through reverse engineering, as important naming information will no longer be public.
54+
Obfuscation also shows effort on your part to protect your code from examination - a valuable step in establishing that your IP is legally protected as trade secret.
55+
56+
Many of the [application integrity protection features](#application-integrity-protection) of Dotfuscator CE further hinder reverse engineering.
57+
For instance, a bad actor may attempt to attach a debugger to a running instance of your application in order to understand the program logic.
58+
Dotfuscator can inject [anti-debug behavior][debug] into your application to obstruct this.
59+
60+
## Application Integrity Protection
61+
62+
In addition to protecting your source code, it's also important to ensure your application is used as designed.
63+
Attackers can attempt to hijack your application in order to circumvent licensing policies (i.e., software piracy), to steal or manipulate sensitive data handled by the application, or to change the behavior of the application.
64+
65+
Dotfuscator CE can inject [application validation code][checks] into your assemblies,
66+
including [anti-tamper][tamper] and [anti-debug][debug] measures.
67+
When an invalid application state is detected, the validation code can [call upon application code to address to the situation in an appropriate way][check-app].
68+
Or, if you prefer not to write code to handle invalid uses of the application, Dotfuscator can also inject [telemetry reporting][check-telemetry] and [response][check-action] behaviors, without requiring any modification to your source code.
69+
70+
Many of these same methods may also be used to enforce [end-of-life deadlines][shelflife] for evaluation or trial software.
71+
72+
## Application Monitoring
73+
74+
When developing an application, it is critical to understand the behavior patterns of users, including beta testers and users of prior versions.
75+
Application analytics allows you to track how frequently the application is used and how it is used, including what errors customers experience.
76+
77+
Dotfuscator CE can inject [exception-tracking][exceptions], [session-tracking][sessions], and [feature-tracking][features] code into your application.
78+
When run, the processed application will transmit analytics data to a configured [PreEmptive Analytics endpoint][endpoints].
79+
80+
## See Also
81+
82+
[This topic in the full Dotfuscator CE User Guide][full]
83+
84+
[assemblies]: https://docs.microsoft.com/en-us/dotnet/articles/standard/assembly-format
85+
[uwp]: https://www.preemptive.com/blog/article/856-uwp-applications-in-dotfuscator-ce/91-dotfuscator-ce
86+
[xamarin]: https://www.preemptive.com/obfuscating-xamarin-with-dotfuscator
87+
88+
[upgrades]: upgrades.md
89+
90+
[obfuscation]: https://www.preemptive.com/dotfuscator/ce/docs/help/5.27/obfuscation_overview.html
91+
[renaming]: https://www.preemptive.com/dotfuscator/ce/docs/help/5.27/obfuscation_renaming.html
92+
93+
[analytics]: https://www.preemptive.com/dotfuscator/ce/docs/help/5.27/analytics_overview.html
94+
[endpoints]: https://www.preemptive.com/dotfuscator/ce/docs/help/5.27/analytics_overview.html#endpoints
95+
96+
[checks]: https://www.preemptive.com/dotfuscator/ce/docs/help/5.27/checks_overview.html
97+
[check-app]: https://www.preemptive.com/dotfuscator/ce/docs/help/5.27/checks_overview.html#app-notification
98+
[check-action]: https://www.preemptive.com/dotfuscator/ce/docs/help/5.27/checks_overview.html#action
99+
100+
[tamper]: https://www.preemptive.com/dotfuscator/ce/docs/help/5.27/checks_tamper.html
101+
[debug]: https://www.preemptive.com/dotfuscator/ce/docs/help/5.27/checks_debug.html
102+
[shelflife]: https://www.preemptive.com/dotfuscator/ce/docs/help/5.27/checks_shelflife.html
103+
[exceptions]: https://www.preemptive.com/dotfuscator/ce/docs/help/5.27/analytics_exceptions.html
104+
[sessions]: https://www.preemptive.com/dotfuscator/ce/docs/help/5.27/analytics_sessions.html
105+
[features]: https://www.preemptive.com/dotfuscator/ce/docs/help/5.27/analytics_features.html
106+
[check-telemetry]: https://www.preemptive.com/dotfuscator/ce/docs/help/5.27/analytics_checks.html
107+
108+
[full]: https://www.preemptive.com/dotfuscator/ce/docs/help/5.27/intro_capabilities.html

docs/ide/dotfuscator/index.md

Lines changed: 119 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,119 @@
1+
---
2+
title: "Dotfuscator Community Edition (CE) | Microsoft Docs"
3+
ms.date: "2017-02-08"
4+
ms.prod: "visual-studio-dev15"
5+
ms.devlang: "dotnet"
6+
ms.technology:
7+
- "dotfuscator"
8+
ms.topic: "article"
9+
keywords: Dotfuscator, Dotfuscator CE, PreEmptive, PreEmptive Solutions, PreEmptive Protection, protection, community edition, obfuscation, .NET, free, Visual Studio 2017
10+
helpviewer_keywords:
11+
- "PreEmptive Protection - Dotfuscator"
12+
- "Dotfuscator Community Edition"
13+
- "Dotfuscator CE"
14+
- "Dotfuscator"
15+
- "obfuscation"
16+
- "protection"
17+
description: "Learn how you can protect your .NET applications with the free Dotfuscator Community Edition included in Visual Studio 2017."
18+
ms.assetid: d9550502-0a82-49a6-b005-2caa791fbe02
19+
author: "Joe-Sewell-PreEmptive"
20+
manager: "ghogen"
21+
translation.priority.ht:
22+
- "cs-cz"
23+
- "de-de"
24+
- "es-es"
25+
- "fr-fr"
26+
- "it-it"
27+
- "ja-jp"
28+
- "ko-kr"
29+
- "pl-pl"
30+
- "pt-br"
31+
- "ru-ru"
32+
- "tr-tr"
33+
- "zh-cn"
34+
- "zh-tw"
35+
---
36+
37+
# Dotfuscator Community Edition (CE)
38+
39+
*PreEmptive Protection – Dotfuscator* provides comprehensive .NET application protection that easily fits into your secure software development lifecycle.
40+
Use it to harden, protect, and prune desktop, mobile, server, and embedded applications to help secure trade secrets and other intellectual property (IP), reduce piracy and counterfeiting, and protect against tampering and unauthorized debugging.
41+
Dotfuscator works on compiled assemblies without the need for additional programming or even access to source code.
42+
43+
## Why Protection Matters
44+
45+
It's important to **protect your intellectual property** (IP).
46+
Your application's code contains design and implementation details which can be considered IP.
47+
However, applications built on the .NET Framework [contain significant metadata and high-level intermediate code][assemblies], making them very easy to reverse engineer, just by using one of many free, automated tools.
48+
By disrupting and stopping reverse-engineering, you can prevent unauthorized IP disclosure, as well as demonstrate that your code contains trade secrets.
49+
Dotfuscator can [obfuscate][obfuscation] your .NET assemblies to hinder reverse-engineering, while maintaining original application behavior.
50+
51+
It's also important to **protect the integrity of your application**.
52+
In addition to reverse-engineering, bad actors may attempt to pirate your application, alter the application's behavior at runtime, or manipulate data.
53+
Dotfuscator can inject your application with the capability to [detect, report, and respond to unauthorized uses][checks], including tampering and third-party debugging.
54+
55+
For more information on how Dotfuscator fits into a secure software development lifecycle, see PreEmptive Solutions' [SDL App Protection page][sdl-protection].
56+
57+
## About Dotfuscator CE
58+
59+
Your copy of Microsoft Visual Studio 2017 includes a free license for ***PreEmptive Protection - Dotfuscator* Community Edition**, also known as Dotfuscator CE.
60+
For instructions on how to install the version of Dotfuscator CE included with Visual Studio 2017, see the [Installation page][install].
61+
62+
Dotfuscator CE offers a range of [software protection and hardening][software-protection] services for developers, architects and testers.
63+
Examples of [.NET Obfuscation][obfuscation] and other [Application Protection][app-protection] features included in Dotfuscator CE are:
64+
65+
* *[Renaming][renaming]* of identifiers to make reverse-engineering of the compiled assemblies more difficult.
66+
* *[Anti-tamper][tamper]* to detect the execution of tampered applications, transmit incident alerts, and terminate tampered sessions.
67+
* *[Anti-debug][debug]* to detect the attachment of a debugger to a running application, transmit incident alerts, and terminate debugged sessions.
68+
* *[Application expiration behaviors][shelflife]* that encode an "end-of-life" date, transmit alerts when applications are executed after their expiration date, and terminate expired application sessions.
69+
* *[Exception tracking][exceptions]* to monitor unhandled exceptions occurring within the application.
70+
* *[Session][sessions] and [feature][features] usage tracking* to determine what applications have been executed, what versions of those applications, and what features are used in those applications.
71+
72+
For details on these features, including how they fit into your application protection strategy, see the [Capabilities page][capabilities].
73+
74+
Dotfuscator CE offers basic protection out-of-the-box.
75+
Even more application protection measures are available to registered users of Dotfuscator CE,
76+
and to users of *PreEmptive Protection - Dotfuscator* Professional Edition, the world's leading [.NET Obfuscator][net-obfuscator].
77+
For information about enhancing Dotfuscator, see the [Upgrades page][upgrades].
78+
79+
## Getting Started
80+
81+
To begin using Dotfuscator CE from Visual Studio, type `dotfuscator` into the **Quick Launch** (Ctrl+Q) search bar.
82+
83+
* If Dotfuscator CE is already installed, this will bring up the *Menu* option to start the Dotfuscator CE user interface. For details, see [the Getting Started page of the full Dotfuscator CE User Guide][get-started].
84+
* If Dotfuscator CE is not yet installed, this will bring up the relevant *Install* option. See the [Installation page][install] for details.
85+
86+
You can also get the **latest version** of Dotfuscator CE from [the Dotfuscator Downloads page on preemptive.com][download].
87+
88+
## Full Documentation
89+
90+
This page and its sub-pages provide a high-level overview of Dotfuscator CE's features, as well as [instructions for installing the tool][install].
91+
92+
Please see [the full Dotfuscator CE User Guide at preemptive.com][full] for detailed usage instructions, including [how to start using the Dotfuscator CE user interface][get-started].
93+
94+
[assemblies]: https://docs.microsoft.com/en-us/dotnet/articles/standard/assembly-format
95+
[software-protection]: https://www.preemptive.com/software-protection
96+
[obfuscation]: https://www.preemptive.com/obfuscation
97+
[app-protection]: https://www.preemptive.com/application-protection
98+
[sdl-protection]: https://www.preemptive.com/solutions/SDL-App-Protection
99+
[net-obfuscator]: https://www.preemptive.com/products/dotfuscator/overview
100+
[download]: https://www.preemptive.com/products/dotfuscator/downloads
101+
102+
[install]: install.md
103+
[capabilities]: capabilities.md
104+
[upgrades]: upgrades.md
105+
106+
[get-started]: https://www.preemptive.com/dotfuscator/ce/docs/help/5.27/gui_getstarted.html
107+
108+
[renaming]: https://www.preemptive.com/dotfuscator/ce/docs/help/5.27/obfuscation_renaming.html
109+
110+
[checks]: https://www.preemptive.com/dotfuscator/ce/docs/help/5.27/checks_overview.html
111+
[tamper]: https://www.preemptive.com/dotfuscator/ce/docs/help/5.27/checks_tamper.html
112+
[debug]: https://www.preemptive.com/dotfuscator/ce/docs/help/5.27/checks_debug.html
113+
[shelflife]: https://www.preemptive.com/dotfuscator/ce/docs/help/5.27/checks_shelflife.html
114+
115+
[exceptions]: https://www.preemptive.com/dotfuscator/ce/docs/help/5.27/analytics_exceptions.html
116+
[sessions]: https://www.preemptive.com/dotfuscator/ce/docs/help/5.27/analytics_sessions.html
117+
[features]: https://www.preemptive.com/dotfuscator/ce/docs/help/5.27/analytics_features.html
118+
119+
[full]: https://www.preemptive.com/dotfuscator/ce/docs/help/5.27/index.html

docs/ide/dotfuscator/install.md

Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
---
2+
title: "Install Dotfuscator Community Edition (CE) | Microsoft Docs"
3+
ms.date: "2017-02-08"
4+
ms.prod: "visual-studio-dev15"
5+
ms.devlang: "dotnet"
6+
ms.technology:
7+
- "dotfuscator"
8+
ms.topic: "article"
9+
keywords: Dotfuscator, Dotfuscator CE, PreEmptive, PreEmptive Solutions, PreEmptive Protection, protection, community edition, obfuscation, .NET, free, Visual Studio 2017, install
10+
helpviewer_keywords:
11+
- "PreEmptive Protection - Dotfuscator"
12+
- "Dotfuscator Community Edition"
13+
- "Dotfuscator CE"
14+
- "Dotfuscator"
15+
- "obfuscation"
16+
- "protection"
17+
- "Dotfuscator installer"
18+
- "Dotfuscator setup"
19+
- "install Dotfuscator"
20+
- "installing Dotfuscator"
21+
- "set up Dotfuscator"
22+
description: "Learn how to install the free Dotfuscator Community Edition included in Visual Studio 2017."
23+
ms.assetid: f2146651-e24a-4e24-ade8-8ddee8ff4e43
24+
author: "Joe-Sewell-PreEmptive"
25+
manager: "ghogen"
26+
translation.priority.ht:
27+
- "cs-cz"
28+
- "de-de"
29+
- "es-es"
30+
- "fr-fr"
31+
- "it-it"
32+
- "ja-jp"
33+
- "ko-kr"
34+
- "pl-pl"
35+
- "pt-br"
36+
- "ru-ru"
37+
- "tr-tr"
38+
- "zh-cn"
39+
- "zh-tw"
40+
---
41+
42+
# Install Dotfuscator Community Edition (CE)
43+
44+
Visual Studio 2017 introduces a new low-impact installation experience.
45+
As a result, Dotfuscator Community Edition (Dotfuscator CE) is not installed by default.
46+
However, it is easy to install Dotfuscator CE even if you have already installed Visual Studio.
47+
48+
> [!NOTE]
49+
> In addition to the versions of Dotfuscator CE shipped with releases of Visual Studio,
50+
> PreEmptive Solutions also periodically provides updated versions on its website.
51+
> If you want to download the **latest version** directly instead of installing from Visual Studio,
52+
> **[click here to go to the Dotfuscator Downloads page][download]**.
53+
54+
## Within Visual Studio
55+
56+
You can install Dotfuscator CE from the Visual Studio IDE:
57+
58+
1. In the **Quick Launch** (Ctrl+Q) search bar, type `dotfuscator`. <br/> <br/> ![](media/install_from_vs_12.png) <br/> <br/>
59+
2. In the Quick Launch results shown, under the *Install* heading, select **PreEmptive Protection - Dotfuscator (Individual Component)**.
60+
* If you instead see, under the *Menus* heading, **Tools → PreEmptive Protection - Dotfuscator**, then Dotfuscator CE is already installed. For usage details, see [the Getting Started page of the full Dotfuscator CE User Guide][get-started].
61+
3. A Visual Studio Installer window will launch, pre-configured with to install Dotfuscator CE.
62+
* You may be required to provide administrator credentials to continue.
63+
4. Close all instances of the Visual Studio IDE. <br/> <br/> ![](media/install_from_vs_345.png) <br/> <br/>
64+
5. In the Visual Studio Installer window, click *Install*.
65+
66+
Once the installation is complete, you can start using Dotfuscator CE. For details, see [the Getting Started page of the full Dotfuscator CE User Guide][get-started].
67+
68+
## During Visual Studio Installation
69+
70+
If you have not yet installed Visual Studio 2017, you can obtain the installer from [the Visual Studio website][2017-install].
71+
When run, it will display installation options for the selected Visual Studio edition.
72+
73+
![](media/install_ui.png)
74+
75+
You can then install Dotfuscator CE as an individual component of Visual Studio 2017:
76+
77+
1. Select the **Individual components** tab.
78+
2. Under *Code tools*, check the *PreEmptive Protection - Dotfuscator* item.<br/> <br/> ![](media/install_individually_12.png) <br/> <br/>
79+
3. The *Summary* panel displays *PreEmptive Protection - Dotfuscator* under the *Individual Components* section. <br/> <br/> ![](media/install_individually_3.png) <br/> <br/>
80+
4. Configure any further installation settings as appropriate for your environment.
81+
5. When ready to install Visual Studio, click the *Install* button.
82+
83+
Once the installation is complete, you can start using Dotfuscator CE. For details, see [the Getting Started page of the full Dotfuscator CE User Guide][get-started].
84+
85+
## See Also
86+
87+
[This topic in the full Dotfuscator CE User Guide][full]
88+
89+
[2017-install]: https://www.visualstudio.com/downloads/#vs-2017
90+
[get-started]: https://www.preemptive.com/dotfuscator/ce/docs/help/5.27/gui_getstarted.html
91+
92+
[download]: https://www.preemptive.com/products/dotfuscator/downloads
93+
94+
[full]: https://www.preemptive.com/dotfuscator/ce/docs/help/5.27/intro_install.html
Loading
Loading
Loading
Loading
88.8 KB
Loading

0 commit comments

Comments
 (0)