Как запутать веб-приложение перед публикацией?

У меня есть решение для Visual Studio 2008 года с количеством DLLs, и веб-приложение использует их в качестве основного проекта. Это - коммерческое банковское дело и бухгалтерское программное обеспечение (тонкий клиент), и я не хочу клиент, получающий доступ к источнику в моем обмане.

Я хочу запутать все получающиеся блоки прежде, чем опубликовать их на веб-сервер с помощью меню Publish.

Как я могу сделать это? Как вставить шаг запутывания прежде, чем создать и опубликовать? Используя msbuild?

Править: Благодаря всем для ответа! Но мой вопрос больше о конкретной задаче (запутывающий в VS при публикации), чем о запутывании в целом.

11
задан abatishchev 10 March 2010 в 13:06
поделиться

6 ответов

См. Это сообщение: Защитить код .NET от обратного проектирования?

Фактически, вы ничего не можете сделать, чтобы полностью защитить свой код от обратного -инжиниринг. Лучшее, что вы можете сделать, - это использовать такой инструмент, как Dotfuscator.

Если ваш код работает, шансы, что честный клиент попытается его переписать или подделать, невелики. Если клиент нечестен, мало что можно сделать, чтобы сделать его эффективным.

Вместо того, чтобы беспокоиться об этом, беспокойтесь о производстве качественной продукции, за которую будут платить честные клиенты.

1
ответ дан 3 December 2019 в 10:03
поделиться

Существует несколько продуктов для обфускации.

Visual Studio даже поставляется с одним - DotFuscator , хотя есть другие .

Вот некоторая документация DotFuscator .

Однако даже при обфускации решительный хакер сможет перепроектировать ваш код.

5
ответ дан 3 December 2019 в 10:03
поделиться

откуда ожидать угона ? от пользователей или от хостера? Во-первых, вы не должны размещать исходные коды на сайте, а только скомпилированные сборки, во-вторых, вы должны помещать сборки в папки, где пользователи не могут получить к ним доступ. Если вы боитесь хостеров, вам следует использовать обфускатор, просто погуглите, их много на маркете.

1
ответ дан 3 December 2019 в 10:03
поделиться

Я согласен с вышеприведенными пунктами, в том смысле, что вы не должны предоставлять код ненадежной стороне. Обфускация просто затрудняет понимание вашего кода, но есть способы и средства обойти это.

Сказав это, если вы действительно хотите обфускации вашего кода, вы можете попробовать Easfuscator.NET.

1
ответ дан 3 December 2019 в 10:03
поделиться

Никогда не отправляйте клиенту ничего, что вы ему не доверяете. Всегда. Если используемый вами язык требует отправки доверенной информации ненадежным клиентам, это глупо.

1
ответ дан 3 December 2019 в 10:03
поделиться

Некоторые обфускаторы поддерживают выполнение обфускации в процессе сборки, так что опубликованное приложение уже обфусцировано.

Crypto Obfuscator является одним из таких инструментов - он поддерживает интеграцию с MSBuild, что позволяет выполнять шаг обфускации как часть публикации или ClickOnce.

1
ответ дан 3 December 2019 в 10:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: