473,386 Members | 1,738 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,386 software developers and data experts.

.NET and keeping my source code to myself...


I'm sure this has been discussed here plenty of times before (feel free
to point me to the thread!) but I want to learn as much as possible
about the single most talked about issue with .NET development.
Disassembly into source code and preventing that from happening!

Thinstall (thinstall.com) - I own it from previous projects (non - .NET)
but don't have faith that it can single handedly protect my source code.

What can I do to help, and what level of *real* protection can I get
with the obfuscators and other protection tools that are out there? Is
there any single solution to this problem?

Thanks!

--
- Mitchell Vincent
Jul 21 '05 #1
5 1470
Encryption of your goodies lke code, strings & resources is called as
Obfuscation.

You can search for "protect .net code disassembly" in any search engine &
follow the first link to get demo tools that can be used for Obfuscation.

"Mitchell Vincent" wrote:

I'm sure this has been discussed here plenty of times before (feel free
to point me to the thread!) but I want to learn as much as possible
about the single most talked about issue with .NET development.
Disassembly into source code and preventing that from happening!

Thinstall (thinstall.com) - I own it from previous projects (non - .NET)
but don't have faith that it can single handedly protect my source code.

What can I do to help, and what level of *real* protection can I get
with the obfuscators and other protection tools that are out there? Is
there any single solution to this problem?

Thanks!

--
- Mitchell Vincent

Jul 21 '05 #2
Hi Mitchell,

First of all, I would like to confirm my understanding of your issue. From
your description, I understand that you need to obfuscate your assembly to
prevent others disassembly into source code. If there is any
misunderstanding, please feel free to let me know.

Visual Studio .NET 2003 has provided us with a tool called Dotfuscator.
Dotfuscator is an obfuscator for .NET assemblies.

Dotfuscator is completely non-intrusive and requires no changes to your
source code, making it the most natural way to protect your intellectual
property on the .NET platform. In addition, many of the elements within the
Dotfuscator family of .NET packaging tools make unprecedented steps towards
smaller and faster .NET applications. Dotfuscator combines a mix of
well-known and novel algorithms to allow customers to produce the best .NET
applications possible.

For more information, please check the following link:

http://msdn.microsoft.com/library/de...us/dotfuscator
/dotf3e5x.asp

Kevin Yu
=======
"This posting is provided "AS IS" with no warranties, and confers no
rights."

Jul 21 '05 #3
There are a number of obfuscators available offering differing degrees of
protection. We use one called Xenocode, there's Protector from Salamander
and a load others I can't name off the top of my head. Search the Google
archives for these groups for more dicussion. Software is never safe from
crackers, .NET or otherwise. Work out what you're willing to spend to put a
stumbling block in, and then unfortunately you do have to accept that there
will be people that refuse to pay for software. One of the best solutions is
to add something beyond just the code (support, usage guides, tutorials etc)
and of course the best solution is a client/server arrangement where the
code isn't available to be disassembled.

Steve

"Mitchell Vincent" <mv******@newsgroup.nospam> wrote in message
news:%2****************@TK2MSFTNGP12.phx.gbl...

I'm sure this has been discussed here plenty of times before (feel free to
point me to the thread!) but I want to learn as much as possible about the
single most talked about issue with .NET development. Disassembly into
source code and preventing that from happening!

Thinstall (thinstall.com) - I own it from previous projects (non - .NET)
but don't have faith that it can single handedly protect my source code.

What can I do to help, and what level of *real* protection can I get with
the obfuscators and other protection tools that are out there? Is there
any single solution to this problem?

Thanks!

--
- Mitchell Vincent

Jul 21 '05 #4

Thanks for all the feedback guys, I really appreciate you all taking the
time to reply!

I'm aware of what obfuscators are, my real questions is : How well do
they work? Which is the "best" (a balance of cost and functionality) in
your opinion(s)..

Thanks again!

--
- Mitchell Vincent
- kBilling - Invoices Made Easy!
- http://www.k-billing.com
Jul 21 '05 #5
Hi Mitchell,

As Steve said there are a number of obfuscators available offering
differing degrees of protection. The obfuscators makes others harder to
disassembling our components.

For example, the dotfuscator. Many of the Dotfuscator Professional
transforms such as String Encryption and Control Flow obfuscation tend to
break or crash decompilers. Even if Dotfuscator Professional does not
outright crash the decompiler, it will stop it from generating useful
input. For example, the decompiler may generate an empty or incorrect
method because it had control flow obfuscation or string encryption applied
to it. And additional transforms such as enhanced overload induction will
make it almost impossible to figure out what is going on anyway.

HTH.

Kevin Yu
=======
"This posting is provided "AS IS" with no warranties, and confers no
rights."

Jul 21 '05 #6

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

10
by: Frank Millman | last post by:
Hi all I would like some advice, and I hope that the good people on c.l.p will give me the benefit of their experience. I am busy developing an accounting package, using Python and wxPython,...
2
by: greatbooksclassics | last post by:
Open Source DRM? What does everyone think about it? Will Open Source DRM ever catch up to MS DRM? Will DRM ever be integrated into common LAMP applications?...
4
by: kj | last post by:
I consider myself quite proficient in C and a few other programming languages, but I have never succeeded in understanding a largish program (such as zsh or ncurses) at the source level. ...
19
by: Swaregirl | last post by:
Hello, I would like to build a website using ASP.NET. I would like website visitors to be able to download code that I would like to make available to them and that would be residing on my...
5
by: Mitchell Vincent | last post by:
I'm sure this has been discussed here plenty of times before (feel free to point me to the thread!) but I want to learn as much as possible about the single most talked about issue with .NET...
13
by: Dave Schwimmer | last post by:
Is it possible to 'hide' javascript from a user. I am thinking of putting some fairly proprietary logic client side (to release burden on server) - but I dont want to make the source freely...
1
by: t.mitchell | last post by:
Hi, I have a python gtk app that allows users to have one project open at a time. I have recently discovered that projects are not being freed when they are closed - the refcount is not hitting...
3
by: samtilden | last post by:
During my code's processing of an exception, I would like to format the exception myself. I can get almost everything (I can get exception itself, stack trace, file name, line number, method,...
0
by: jehugaleahsa | last post by:
On Jun 13, 3:09 pm, "Bob Powell " <b...@spamkillerbobpowell.net> wrote: I apologize for the size. I should have probably put this on a blog or something. I'm not interested in tools. I...
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.