Существует два типа подписи - подпись с использованием инструмента sn.exe и подпись Authenticode. Они были разработаны для разных целей, но ни одна из них не подходит для защиты вашего приложения от изменений.
Вам необходимо выявить возможные угрозы и в зависимости от них найти способы защиты своих активов. Для большинства потребностей запутывание кода является единственным решением. Он не защищает от всех модификаций, но защищает от просмотра кода и частично от некоторых изменений.