Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

.NET Assembly .DLL encryption and usage in teams

I have a relatively large C# project. I want to allow other developers to collaborate with me on the project. But I'm afraid they will copy the source code verbatim. I want to protect my code. Is there a way I could grant collaborators usage of existing .dll's w/o them able to read the source code? Or grant them temporary access to the .dll's and later when they roll off the project just disable their ability to use the .dll?

like image 809
The Internet Avatar asked Dec 28 '25 16:12

The Internet


1 Answers

Absolutely, you can give other people DLLs without access to the source code. In most situations like this, you would obfuscate the dll (many tools to do this, I would start with the Dotfuscator included with Visual Studio) so they can't decompile it.

If you want them to be able to see the source, there isn't much you can do to avoid them copying it, same with "disabling their ability to use it". If they have a copy of the file, there isn't much you can stop them from doing (technologically speaking). The only security I can think of for that would be to have all public functions check against some server before executing (thus making the DLL useless if you have that server not allow them to run), but that isn't 100% and would make for a terrible experience for end-users of the code.

like image 88
BradleyDotNET Avatar answered Dec 31 '25 06:12

BradleyDotNET