Недавно, когда я писал программное обеспечение, я придумал идею: если я запускаю программу .exe хорошо защищённой, но если DLL не защищён, моё приложение будет использовать файл dll, будут ли другие отладивать мою программу через файл dll?
Сегодня давайте напишем специальную программу для тестирования, используем приложение для вызова метода в dll, следующим образом:
Код прост:
Код DLL:
Код приложения:
Затем я создаю новый проект, новую библиотеку классов и копирую тот же тип и файл CS, следующим образом:
Заменим сгенерированный dll следующим рисунком:
Программа успешно вызывает метод dll, который мы создали, как предотвратить подделку сгенерированного нами dll?
Я придумал простую идею: добавить файл ресурса в приложение, заполнить файл dll для загрузки, значение md5 файла, точку входа в программу, и сначала проверить значение md5 в dll, которое нужно загрузить
Если значение MD5 DLL-файла не соответствует значению MD5 файла в списке ресурсов, это означает, что DLL-файл был подделан или злонамеренно вмешан. Это ещё не практиковано, это логически возможно!
|