Добавление лицензии в ваше веб-приложение .Net

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

Итак, моя главная цель - защитить настоящие файлы

т.е. Default.aspx Default.aspx.cs .... будут скопированы в будущем, и я не смогу помешать им использовать его.

Спасибо

Обновлено: Читая ответы, я, кажется, думаю, что обфускатор - это лучший способ. Программа-обфускатор работает только с exe или dll или также работает с отдельными страницами?

Лицензирование программного обеспечения варьируется от страны к стране, в какой стране вы находитесь?

balexandre 06.01.2009 14:00

его запутывание, а не защита, просто чтобы вы знали термины :).

Tom Anderson 06.01.2009 14:11

Так это единственный способ защитить ваш исходный код, используя обфускацию?

Velnias 06.01.2009 14:40

Читая ответы, я, кажется, думаю, что обфускатор - это то, что нужно. Программа-обфускатор работает только с exe или dll или также работает с отдельными страницами?

Velnias 06.01.2009 15:00
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
4
4 174
7

Ответы 7

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

Отличия здесь от asp.net

Что касается Default.aspx, я не знаю способа зашифровать html-страницы, которые обслуживаются через стандартные веб-серверы, и в любом случае клиенты все равно смогут просматривать исходный код, если вы не напишите всю страницу в Пишет JavaScript (ужасно управлять).

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

Нет ли программного обеспечения, где, например, я могу поставить лицензию на свой код на код, который я могу удалить из веб-приложения, чтобы сделать его непригодным для использования в любом коде. Или единственный способ добиться - использовать обфускатор и зашифровать страницы?

Velnias 06.01.2009 14:17

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

Tom Anderson 06.01.2009 14:22

ваш веб-сайт может отправлять вам некоторую информацию о сервере при каждом входе пользователя в систему. Если информация о механизме неверна, отмените вход.

Мне интересно, сработает ли простая предварительная компиляция в вашем приложении ASP.NET, мы делаем это здесь, в компании. Мы поставляем наши веб-модули предварительно скомпилированными, и никто не увидит, что находится в коде aspx, все файлы «кода программной части» переведены в библиотеки DLL.

подробнее здесь

Это похоже на использование в Visual Studio опции «Добавить как проект веб-разработки». Мне интересно, насколько легко поддерживать этот код во время разработки и т. д.?

Velnias 06.01.2009 15:09

вам нужно каждый раз генерировать и отправлять всю веб-папку, но никто не может заглянуть внутрь вашего кода!

balexandre 06.01.2009 16:53

Мне было интересно, есть ли какой-либо другой способ защитить ваш кислый код, кроме обфускатора или предварительной компиляции.

Т.е. у вас есть список страниц Default.aspx Default.aspx.cs web.config

Где ваша основная цель - предотвратить использование вашего кода третьими лицами, если у них есть доступ к исходному коду?

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

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

Это будет в .net. Итак, вы говорите, что обфускатор может работать на самом коде за страницами, поэтому веб-приложение не нужно компилировать в DLL? Также допустим, что мои страницы зашифрованы с помощью обфускатора, как это работает, когда они запускаются в реальном времени?

Velnias 06.01.2009 15:53

Я бы не стал беспокоиться обфускации: последняя версия синтаксис-сахар, трюки времени компиляции и оптимизации в .Net 3.5 уже делают простой обратный инжиниринг довольно сложным.

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

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

Я бы подписал все ваши сборки ключами - тогда, если они перевернут одну, им придется перевернуть все.

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

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

Я предлагаю вам выбрать лицензию, которая вам подходит (их много), а затем как бы то ни было позаботиться о физической защите.

Другие вопросы по теме