Вопрос ALL.
Как бы вы построили защиту будь у вас следующий инструментарий:
— виртуальная машина (статическая библиотека линкуется с вашим приложением) определенной архитектуры
— компилятор позовляющий писать и компилировать программы в байткод виртуальной машины
— инструмент/SDK для встраивания байткода в ваше приложение (что бы виртуальная машина могда его исполнить)
Т.е. это виртуализация, но не автоматическая как например в VMProtect.
Из за особеностей и возможностей архитектуры, ЯП к сожалению на данный момент времени не совместим с C.
Т.е. взять например алогритм RSA написанный на С и попробовать скомпилировать его для VM не получится, пока.
Я пока что вижу следующие опции:
— микропрограмма для проверки целостности критических участков кода
— микропрограмма преобразующая пользовательские данные например e-mail в какой то ключ и т.д.
Что хочется: Скомбинировать этот метода защиты (ручная виртуализация некоторых алогоритмов) с допустим тем же RSA для более "хитрой" проверки ЦП.
Будут какие то идеи?