VMProtect в процессе защиты приложения интегрирует в него код проверки серийных номеров. При этом используется информация, указанная в секции "Лицензии" раздела "Проект". В приложение помещается публичный ключ продукта, при помощи которого будет осуществляться расшифровка серийных номеров. Также в приложение помещается дата защиты и ряд дополнительных данных, необходимых для работы системы лицензирования.
Серийные номера могут быть созданы в секции "Лицензии" раздела "Проект" или при помощи отдельных приложений - генераторов ключей. Серийный номер - это набор данных о покупателе, зашифрованный асимметричным алгоритмом. Серийный номер передается покупателю, тот вводит его в программу, после чего он проверяется модулем лицензирования.
Модуль лицензирования предоставляет защищаемой программе несколько функций для работы с серийными номерами. Программа передает модулю лицензирования серийный номер и запрашивает информацию о нем. Модуль лицензирования выдает краткое состояние серийного номера (рабочий/нерабочий и почему), а также может выдать подробную информацию о серийном номере, такую как имя пользователя, e-mail, срок действия номера и т.д. Защищаемая программа анализирует информацию о серийном номере и принимает решение о продолжении или завершении работы, а также об ограничениях функционала.