Хорошо, я, должно быть, тупой, потому что я уже читал это: http://www.csharp411.com/net-assembly-faq-part-3-strong-names-and-signing/
И я до сих пор не понимаю ...
Допустим, я открываю свойства своего проекта и перехожу на вкладку «Подписание», затем устанавливаю флажок «Подписать сборку» и генерирую новую сборку с паролем. Был создан ключевой файл строгого имени с расширением .pfx, включающий как открытый, так и закрытый ключи, и VS будет подписывать мою сборку цифровой подписью при компиляции, верно?
А как насчет закрытого ключа? Не должно быть приватным, и я, разработчик, должен быть единственным, у кого это есть? Разве сборка не должна быть подписана только открытым ключом?
Кто-нибудь может мне это объяснить? По сути, я хочу подписать сборку моего проекта и позволить пользователям проверять, действительно ли сборка была разработана мной, где я единственный, кто хранит закрытый ключ (что, как мне кажется, я должен).