Целостность открытого ключа — человек в середине атаки

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

То, что я запланировал до сих пор;

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

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

Это возможно? Если да, что может быть решением, чтобы мой открытый ключ не был изменен?

ПРИМЕЧАНИЕ: нет подключения к Интернету.

0

Решение

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

Кто-то, у кого достаточно времени, может, конечно, выяснить, как делается подпись, и заменить ее. Они могли бы вообще обойти чек. Единственное лекарство от этого — шифрование. Но кто-то с достаточным количеством времени мог бы разработать алгоритм расшифровки …

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

Нет 100% защиты от хакеров. Все, что вам нужно сделать, это сделать это неэкономичным для ваших пользователей взломать его. Приложите усилия, чтобы взломать гораздо дороже, чем вы берете за продукт. Сделайте условия лицензирования очень четкими и предупредите о риске судебного преследования в случае нарушения. Внедрите механизм отчетности о предполагаемых нарушениях, чтобы вы могли следить за ними.

1

Другие решения


По вопросам рекламы [email protected]