Как скрыть исходный код на C #

Я делаю приложение для Windows и почти готово. Как я могу скрыть свой исходный код?

Я хочу передать свое приложение другу, но не знаю, как скрыть свой код и сделать приложение профессиональным.

Как заменить новые файлы DLL старыми файлами .cs?


person Abhi Khatri    schedule 10.12.2013    source источник
comment
создать exe файл и дать   -  person Linga    schedule 10.12.2013
comment
спрячьте мой код и сделайте приложение как профессиональное - это не имеет ничего общего друг с другом.   -  person CodeCaster    schedule 10.12.2013
comment
Вы имеете в виду, как скрыть свой код от реверс-инжиниринга?   -  person kvothe    schedule 10.12.2013
comment
Создайте dll (динамическую библиотеку ссылок) и предоставьте только те функции, которые вам нужны, и пусть ваши друзья ссылаются на эту dll.   -  person Jade    schedule 10.12.2013
comment
Просто соберите приложение и отправьте, если ваш друг не знает, как дизассемблировать код CIL. Если он это сделает, вам понадобится обфускатор.   -  person Tobberoth    schedule 10.12.2013
comment
obfuscator шифрует только строки, а не сам IL, использование этого только немного усложнит декодирование, но все еще возможно для декодирования.   -  person Jade    schedule 10.12.2013
comment
Может быть проще подружиться только с людьми, которым можно доверять.   -  person High Performance Mark    schedule 10.12.2013
comment
У вас есть два варианта. NGen ваше приложение так, чтобы оно было родным с самого начала ... или используйте язык, отличный от .NET, такой как C ++. Обфускация бесполезна ... она скрывает только основы и может быть полностью декомпилирована в читаемый IL.   -  person Simon Whitehead    schedule 10.12.2013
comment
Я преобразовал все файлы .cs в файлы DLL. как я могу ссылаться на них в Visual Studio 2012   -  person Abhi Khatri    schedule 10.12.2013


Ответы (2)


То, что вы ищете, я думаю, это изменение вашего приложения, поэтому ваш исходный код не может быть легко найден путем декомпиляции вашего .exe / .dll. Этот процесс называется запутыванием. Для C # Dotfuscator - хорошее начало: http://www.preemptive.com/support/dotfuscator-support

person SynerCoder    schedule 10.12.2013
comment
Хотя это дает ответ на вопрос ... обфускация бесполезна. - person Simon Whitehead; 10.12.2013
comment
Это не бесполезно, это мешает другому программисту понять, что означает код. Любую программу можно декомпилировать, но затруднение чтения декомпилированного кода значительно облегчит вам задачу. - person SynerCoder; 10.12.2013
comment
Есть некий декомпилятор, делающий его снова читаемым. Его тоже с открытым исходным кодом. Он меняет местами строки XOR и переименование символов, которые выполняют большинство обфускаторов. - person Simon Whitehead; 10.12.2013

Нецелесообразно конвертировать или изменять код; Вы должны создать .exe или, если вы хотите показать представление дизайна, вы можете поделиться снимками.

person Sandesh    schedule 10.12.2013