Подтвердить что ты не робот

Насколько важно цифровое подписание наших исполняемых файлов?

Мы создаем систему управления контентом. Это система на базе баз данных, используемая только предприятиями и организациями и никогда не загружаемая из Интернета. То есть, это не тот тип программного обеспечения, на котором кто-то может наткнуться, и задаться вопросом, что это такое и безопасно ли его запустить. За 20 лет наша система продается, ее исполняемые файлы никогда не подписывались в цифровой форме. Пришло ли нам время начать подписывать их?

Для начала я могу подумать о нескольких плюсах и минусах:

  • Pro: Если вы используете сертификаты Verisign, Отчеты об ошибках Windows можно использовать
  • Pro: Когда Windows Vista и Windows 7 показывают один из тех раздражающих сообщений UAC, подписанные приложения представлены немного более красиво
  • Con: Сертификаты стоят денег. Не много, но если они бесполезны, это слишком много.
  • Con: Подписание имеет некоторые служебные расходы, насколько я не знаю.
4b9b3361

Ответ 1

С технической стороны вы уже указали плюсы и минусы.

С бизнес-точки зрения это зависит от ваших пользователей, возможно, если вы продаете B2B, это не имело бы значения, если бы вы продавали B2C или менее опытные пользователи, которые бы оценили более приятное сообщение UAC.

Честно говоря, я бы не стал беспокоиться... Если у вас нет желания и не может найти по-настоящему вескую причину, тогда это еще не важно.

Я предпочел бы потратить эти усилия на улучшение чего-то другого.

Ответ 2

Pro: Если вы используете сертификаты Verisign, можно использовать отчет об ошибках Windows

Собственно, для использования отчетов об ошибках Windows вам нужен сертификат подписи Verisign или другого кода, но вам нужен сертификат только для доступа к системе WinQual. Сам exe не нужно подписывать вообще, отчет об ошибках отлично работает и с unsigned exes.

Con: Подписание имеет некоторые служебные накладные расходы, насколько я не знаю. Хотелось бы полюбить здесь от вас...

Накладные расходы на техническое обслуживание сильно зависят от качества вашего строительного трубопровода. Если вы создаете приложение вручную, то да, это означает еще несколько шагов. Однако, если у вас есть конвейер сборки и ваши сборки автоматизированы, подписание кода означает добавление нескольких строк в скрипты сборки и сохранение закрытого ключа сертификата подписи кода, чтобы сборка могла получить к нему доступ (если у вас есть сервер сборки, ваш сертификат подписи кода, скорее всего, будет сохранен на нем).

Pro: Когда Vista/7 показывает одно из этих раздражающих сообщений UAC, подписанные приложения представлены чуть более красиво

Что касается приглашения UAC - вам действительно нужно приложение для повышения привилегий или привилегий администратора? Лучший способ избежать этого приглашения - не требовать каких-либо повышенных привилегий.

Ответ 3

Подписание имеет некоторые служебные накладные расходы, насколько я не знаю.

Я считаю, что если вы распространяете подписанные исполняемые файлы, все зависимые библиотеки также должны быть подписаны. Если вы используете сторонние модули, над которыми у вас нет контроля, вы можете получить проблему.