То, что вы ищете, это система подписи / сертификации с асимметричными ключами. Функциональность встроена в .Net. Быстрый поиск Google показывает этот пример , который выглядит законным.
Имейте в виду, однако, что если у вас нет полного контроля над процессом сертификации (если ваше приложение находится на компьютере клиента), кто-то может декомпилировать код, чтобы обойти проверку.