Вам необходимо поставить цифровую подпись выходного кода. Я могу начать со статьи Подписание и проверка кода с помощью Authenticode.
Вся цель этого состоит в том, чтобы гарантировать, что ваш код не был подделан. Если вы приобрели сертификат для подписи кода в одном из центры сертификации, вы можете предотвратить появление окна «Вы доверяете этому» вообще.
Это непростая задача для настройки, но ее можно выполнить с помощью скрипта, как только он будет запущен и запущен.
Вы не найдете простого и быстрого решения.
Вот вырезка и вставка наиболее важных разделов. Возможно, вам придется читать дальше, чтобы получить именно то, что вы хотите.
Используйте тестовую программу MakeCert для создания тестового сертификата X.509. MakeCert выполняет следующие задачи:
- Создает пару открытый/закрытый ключ для цифровых подписей и связывает ее с выбранным вами именем.
- Связывает пару ключей с выбранным вами именем издателя.
- Создает сертификат X.509 , подписанный тестовым корневым ключом или указанным вами, который связывает ваше имя с открытой частью пары ключей. Сертификат выводится в файл, системное хранилище сертификатов или и то, и другое.
Пример MakeCert Internet Explorer 3.02 UPD
Ниже приведен пример создания сертификата с использованием параметров UPD Microsoft Internet Explorer 3.02:
MakeCert -k:c:\KeyStore\MyKey.pvk -n:CN=MySoftwareCompany Cert.cer
В этом примере создается файл сертификата с именем Cert.cer. Открытая часть пары ключей, называемая MyKey, привязана к издателю, MySoftwareCompany.
После создания сертификата вы можете создать сертификат публикации программного обеспечения с помощью программы Cert2SPC. Эта программа заключает несколько сертификатов X.509 в объект подписанных данных PKCS #7. Обратите внимание, что эта программа предназначена только для тестирования. Действительный сертификат публикации программного обеспечения получен от центра сертификации. Вот пример:
Cert2SPC MyCert.cer MyCert.spc
При этом сертификат X.509, MyCert.cer помещается в сертификат публикации программного обеспечения PKCS #7 с именем MyCert.spc.
Последним шагом является фактическая подпись файла с помощью программы SignCode. Эта программа будет:
- Создайте Криптографический дайджест файла.
- Подпишите дайджест своим закрытым ключом.
- Скопируйте сертификаты X.509 из сертификата публикации программного обеспечения в новый объект подписанных данных PKCS #7. Объект PKCS #7 содержит серийные номера и издателей сертификатов, используемых для создания подписи, сертификатов и информации о подписанном дайджесте.
- Вставьте объект в файл.
- При желании он может добавить к файлу отметку времени. При подписании файла всегда следует добавлять отметку времени. Однако SignCode также имеет возможность добавлять отметку времени к ранее подписанному файлу с некоторыми ограничениями (см. примеры, следующие за таблицей параметров).
После того, как файл будет подписан (при условии, что у вас есть действующий сертификат) и проставлен отметкой времени, файл может быть распространен среди ваших клиентов. Обратите внимание, что сертификаты, созданные с помощью тестовых программ MakeCert и Cert2SPC, НЕдействительны для подписи кода, который будет распространяться среди общественности. Независимые поставщики программного обеспечения должны получить сертификат от GTE, VeriSign Inc. или другого центра сертификации для подписи кода, который будет распространяться среди общественности.
Примеры SignCode для Internet Explorer 3.02 UPD
Вот два примера того, как подписать файл и поставить отметку времени с помощью параметров UPD Microsoft Internet Explorer 3.02. В первом используется имя закрытого ключа MyKey, а во втором используется файл закрытого ключа My.pvk:
SignCode -prog MyControl.exe -spc Cert.spc -pvk MyKey -timeStamper http://timestamp.verisign.com/scripts/timstamp.dll
SignCode -prog MyControl.exe -spc Cert.spc -pvk My.pvk -timeStamper http://timestamp.verisign.com/scripts/timstamp.dll
Примечание. В приведенном выше URL-адресе указано правильное значение timstamp.dll. Это не опечатка.
В обоих случаях объект PKCS #7, Cert.spc, внедряется в дайджест файла MyControl.exe. В первом примере дайджест подписывается закрытым ключом из пары ключей MyKey и добавляется отметка времени. Во втором примере дайджест подписывается файлом секретного ключа My.pvk и добавляется отметка времени.
person
Hand-E-Food
schedule
29.07.2011