Я хочу сжать и зашифровать все мое приложение, возможно, с помощью Zip, 7z, Bz2, Tar или любым другим методом сжатия, и использовать AES-128/256 в качестве алгоритма шифрования в целях безопасности.
Затем создайте приложение запуска, которое будет обрабатывать выполнение приложения и расшифровку архива.
У меня уже есть идея, как этого добиться, но только со ссылками / библиотеками:
Приложение будет обрабатывать дешифрование файла с помощью #ZipLib,
пароль может храниться внутри
SecureString
Создайте новый домен приложений и запустите исполняемый файл из архива.
не извлекая его (просто загрузка
байт-коды)
Вторичный AppDomain должен реализовывать событие AssemblyResolve
и всякий раз, когда ему нужно загрузить
монтаж; он попытается расшифровать это
файл из архива.
Но как насчет файлов, необходимых приложению, таких как изображения, встроенная база данных (например, SQLite), XML и другие внешние файлы?
Есть ли другой способ сделать это?