Если вы собираетесь создать свою собственную систему, вам, вероятно, понадобится пара открытых / закрытых ключей.
Итак, вы бы заархивировали обновление.
Затем зашифруйте секретным ключом на сервере.
Затем клиент может расшифровать и распаковать его, а затем установить.
Таким образом, если ваш закрытый ключ защищен, вы можете гарантировать, что обновление является законным.
Единственным недостатком здесь является то, что если кто-то заменит открытый ключ на какой-либо другой ключ, то он может обмануть эту программу, полагая, что троян является действительным обновлением.
Существуют различные схемы, которые вы можете использовать, чтобы обойти это, но это будет зависеть от того, сколько работы вы хотите вложить в это.