Подскажите, пожалуйста, как подписать свое приложение, чтобы не было сообщений от Windows, что издатель неизвестен. Я тут сидел, разбирался, и решил, что все нужно делать так:
1) Заходим сюда: http://www.certum.eu/certum/cert,offer_en_standard_code_signing.xml
2) Покупаем сертификат на год, на частное лицо (к примеру)
3) Они вышлют мне, наверное, файл-сертификат
4) Затем я с помощью SignTool от Microsoft (где ее взять, кстати, если используешь Delphi, а не Студию?) подписываешь exe-шник полученным сертификатом
5) И все? Или еще можно подписать инсталлятор, сделанный с помощью InnoSetup?
Правильно ли я описал алгоритм? Или нет? Как реально подписать свое ПО?
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте,
А>Подскажите, пожалуйста, как подписать свое приложение, чтобы не было сообщений от Windows, что издатель неизвестен. Я тут сидел, разбирался, и решил, что все нужно делать так:
А>1) Заходим сюда: http://www.certum.eu/certum/cert,offer_en_standard_code_signing.xml А>2) Покупаем сертификат на год, на частное лицо (к примеру) А>3) Они вышлют мне, наверное, файл-сертификат А>4) Затем я с помощью SignTool от Microsoft (где ее взять, кстати, если используешь Delphi, а не Студию?) подписываешь exe-шник полученным сертификатом А>5) И все? Или еще можно подписать инсталлятор, сделанный с помощью InnoSetup?
А>Правильно ли я описал алгоритм? Или нет? Как реально подписать свое ПО?
Все в целом правильно.
signtool входит в Windows SDK, а также в Windows Driver Kits — можно ставить один из этих
продуктов, указывая только необходимые компоненты, без сорцов, библиотек и заголовков.
Да вроде бы на Microsoft можно где-то скачать пакет, включающий только утилиты для
подписи файлов и управления сертификатами. Поищите, я на VeriSign, по-моему, видел ссылку.
В процессе подписи не забудьте указать штамп времени, без этого подпись станет невалидной
по истечении срока действия сертификата, а со штампом ее валидность сохранится.
Для штампа времени можно указать timestamp-сервер VeriSign (бесплатно): signtool.exe sign ... (всякие опции) /t httр://timestamp.verisign.com/scripts/timestamp.dll файл
Подписывать желательно не только exe и dll программы, но и сам файл инсталлятора (exe или msi).
В этом случае сообщение Windows все равно появится, но будет серого, а не оранжевого цвета, и
вместо "Неизвестный издатель" будет указано имя, на которое получен сертификат (Subject Name).
У меня на блоге верхний пост про получение сертификата на частное лицо от startssl, гляньте, возможно пригодится.
В целом у вас все верно написано, когда сертификат есть — все дальше просто. Подписывать, естественно, имеет смысл и инсталлятор и экзешник.
хотел уже на боковую
папаху снял и сапоги
но в комментариях проснулись
враги
Во-первых, для успешной борьбы с "неизвестным издателем" нужно, чтобы корневой сертификат
той организации, которая выдаст сертификат вам, уже находился в хранилище сертификатов на
всех целевых версиях Windows. Нужный корневой сертификат может попасть туда через
Windows Update или службу обновления сертификатов, но на девственно чистых машинах его
может и не оказаться. Это важно. Если у пользователя в процессе проверки цифровой
подписи вашего файла будет отключен интернет, он, скорее всего, увидит то самое окно,
против которого вы пытаетесь бороться.
Во-вторых, корневой сертификат должен иметь достаточно долгий срок действия.
Например, один из сертификатов GlobalSign заканчивается в 2014 году — после этого
все, что было подписано его "потомками", станет недействительным.
При заказе сертификата желательно прояснять эти моменты сразу.
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте,
А>Подскажите, пожалуйста, как подписать свое приложение, чтобы не было сообщений от Windows, что издатель неизвестен.
Я в свое время потратил примерно месяц на получение сертфиката. Была морока с телефонной квитанцией.
Оно конечно теперь греет что сертификат есть. Но никакого особенного прироста продаж я не заметил.
Больше того IE9 smart screen filter все рано ругается при загрузке даже подписанного exe-шника.
Довольно много крупных поставщиков ПО не запариваются с сертификатами — взять например evernote.
И пользователи возможно привыкли давить OK и Next.
Здравствуйте, Matrix_Failure, Вы писали:
M_F>Больше того IE9 smart screen filter все рано ругается при загрузке даже подписанного exe-шника.
Если я правильно понял МС, на подписанный экзешник они перестают ругаться быстрее(то есть за меньшее число загрузок). А на последующие приложения с тем же сертификатом еще быстрее.
По моим ощущениям, несколько сотен загрузок хватает. (если ты конечно про "Файл загружается необычным образом/The file is not commonly downloaded")
хотел уже на боковую
папаху снял и сапоги
но в комментариях проснулись
враги
> M_F>Больше того IE9 smart screen filter все рано ругается при загрузке даже подписанного exe-шника. > > Если я правильно понял МС, на подписанный экзешник они перестают ругаться быстрее(то есть за меньшее число загрузок). А на последующие приложения с тем же сертификатом еще быстрее. > > По моим ощущениям, несколько сотен загрузок хватает. (если ты конечно про "Файл загружается необычным образом/The file is not commonly downloaded")
Проясни пожалуста, несколько сотен загрузок каких? Не могу понять ситуацию, IE9 нет у меня.
Здравствуйте, grosborn, Вы писали: >> По моим ощущениям, несколько сотен загрузок хватает. (если ты конечно про "Файл загружается необычным образом/The file is not commonly downloaded")
G>Проясни пожалуста, несколько сотен загрузок каких? Не могу понять ситуацию, IE9 нет у меня.
А чего там понимать?
Если .EXE файл не был скачан с помощью другими пользователями IE9 больше 9000 (или сколько-там) раз, то IE9 выдает сообщение:
"Файл загружается необычным образом/The file is not commonly downloaded".
Далее IE9 предлагает удалить exe файл. А чтобы не удалять, пользователю надо делать особые "телодвижения".
IE9 ругается даже на подписанные Verysign-ом EXE-файлы.
> G>Проясни пожалуста, несколько сотен загрузок каких? Не могу понять ситуацию, IE9 нет у меня. > > А чего там понимать? > > Если .EXE файл не был скачан с помощью другими пользователями IE9 больше 9000 (или сколько-там) раз, то IE9 выдает сообщение: > > "Файл загружается необычным образом/The file is not commonly downloaded". > > Далее IE9 предлагает удалить exe файл. А чтобы не удалять, пользователю надо делать особые "телодвижения". > > IE9 ругается даже на подписанные Verysign-ом EXE-файлы.
То есть как-то система запоминает на серверах количество обращений по этому файлу, потом уже поведение IE у всех пользователей при проверке этого файла меняется? То есть файл становится валидным и его последующие версии тоже или нет? Скажем версию 132 качали, выкладываю версию 133 она будет ругаться?
> M_F>IE9 ругается даже на подписанные EXE-файлы. > > Сейчас глянул — у меня уже не ругается. > > Но прошел уже почти год с тех пор как я на одной из страниц разместил ссылку на EXE файл вместо ZIP.
Теперь не ругается на все тобой подписанные файлы? То есть признан твой сертификат?
Здравствуйте, grosborn, Вы писали:
G>То есть как-то система запоминает на серверах количество обращений по этому файлу, потом уже поведение IE у всех пользователей при проверке этого файла меняется? То есть файл становится валидным и его последующие версии тоже или нет? Скажем версию 132 качали, выкладываю версию 133 она будет ругаться?
На последующие версии ругаться будет. Но, как я выше написал, быстрее перестанет.
Хотя, конечно, кто их, майкрософтов знает, что им взбредет в голову поменять в следующем апдейте этого своего фильтра. Но сейчас так.
хотел уже на боковую
папаху снял и сапоги
но в комментариях проснулись
враги
Здравствуйте, Brice Tribbiani, Вы писали:
BT>У меня на блоге верхний пост про получение сертификата на частное лицо от startssl, гляньте, возможно пригодится.
Здравствуйте, CRT, Вы писали:
CRT>Здравствуйте, Brice Tribbiani, Вы писали:
BT>>У меня на блоге верхний пост про получение сертификата на частное лицо от startssl, гляньте, возможно пригодится.
CRT>а почему он такой дешевый, в чем засада?
Самому интересно
Пока проблем не обнаружил. Вроде как в старых виндах, типа XP без сервиспаков и более древних нет их корневого сертификата.
хотел уже на боковую
папаху снял и сапоги
но в комментариях проснулись
враги
Здравствуйте, Brice Tribbiani, Вы писали:
BT>Самому интересно BT>Пока проблем не обнаружил. Вроде как в старых виндах, типа XP без сервиспаков и более древних нет их корневого сертификата.
сейчас посмотрел на Windows 7 на виртуальной машине, без обновлений. Корневого сертификата StartCom (которыми startssl торгует), как и Certum там нету.
Это очень плохо или не очень? Или я чего то не понимаю?
M_F>Я в свое время потратил примерно месяц на получение сертфиката. Была морока с телефонной квитанцией.
M_F>Оно конечно теперь греет что сертификат есть. Но никакого особенного прироста продаж я не заметил. M_F>Больше того IE9 smart screen filter все рано ругается при загрузке даже подписанного exe-шника.
Ваш софт нацелен на профессионалов или чайников? Имхо профессионалам на сертификат пофиг.
Здравствуйте, CRT, Вы писали:
CRT>Здравствуйте, Brice Tribbiani, Вы писали:
BT>>Самому интересно BT>>Пока проблем не обнаружил. Вроде как в старых виндах, типа XP без сервиспаков и более древних нет их корневого сертификата.
CRT>сейчас посмотрел на Windows 7 на виртуальной машине, без обновлений. Корневого сертификата StartCom (которыми startssl торгует), как и Certum там нету. CRT>Это очень плохо или не очень? Или я чего то не понимаю?
А попробуйте мою софтину поставить Без инета и с инетом. здесь
хотел уже на боковую
папаху снял и сапоги
но в комментариях проснулись
враги