VB. NET БЕЗОПАСНЫЙ ВХОД НА СЕРВЕРЕ + КЛИЕНТСКОЙ СТОРОНЫ - PullRequest
2 голосов
/ 26 мая 2020

Пример ключа отправки на стороне клиента: tab c -xkaf-gaga-gtax на сервер

Сервер проверяет, существует ли ключ в базе данных, если ДА, затем возвращает ИСТИНА в качестве ответа

на стороне клиента, ЕСЛИ ОТВЕТ = TRUE THEN

OPEN FORM1

Но это небезопасный способ сделать это, потому что они могут изменить ответ проверки ServerSide, а затем получить продукт бесплатно, потому что он откроет Form1 любой как это сделать лучше?

Ответы [ 2 ]

0 голосов
/ 26 мая 2020

Как вы указали, профессиональные злоумышленники могут видеть и декодировать приложения VB. Net и, следовательно, в качестве первоначального вывода, вы не можете надежно защитить свой код. На первом этапе вы должны зашифровать свой код, используя несколько методов шифрования, например, упомянутый @Always_a_learner. Однако это не на 100% защитит ваш код от обратного проектирования (хорошее обсуждение можно найти здесь ). Хороший трюк в таких случаях - установить некоторые преднамеренные зависимости. Например, некоторые основные вычисления должны выполняться сервером (если это возможно), и только результат должен быть возвращен клиенту. Дополнительные пояснения: для основных вычислений клиент должен отправить запрос на сервер, и сервер сначала проверяет состояние действительности запрашивающей стороны (отправителя), и, если она является действительным пользователем, затем выполняет вычисления и возвращает результаты пользователю. Это решение подходит, только если вы можете найти компромисс между скоростью и безопасностью.

0 голосов
/ 26 мая 2020

Подписанный ответ на стороне сервера и проверка ответа сервера на стороне клиента, чтобы проверить, был ли ответ изменен или нет.

Обратитесь к этой статье, как поставить цифровую подпись и проверить

Кроме того, это будет типичное решение, подходящее для очень сложной защиты.

Для простого решения вы можете отправить ha sh ответа вместе с ответом сервера и преобразовать ответ в ha sh на стороне клиента. сравните оба ha sh, если они совпадают, это означает, что ответ не был изменен.

...