Сертификаты подписи кода для Java, Adobe AIR, Authenticode, VBS - они отличаются?
У нас есть сертификат подписи кода, приобретенный у GlobalSign для подписи Authenticode (как они его называют). Теперь нам нужно подписать Java-апплет и вскоре Adobe AIR module (апплет?). Вопрос: с технической точки зрения существует ли какая-либо разница между сертификатом для Authenticode и сертификатом для Java или сертификатом для AIR, если они выданы одним и тем же CA (скажем, Comodo или GlobalSign)? Я не вижу смысла покупать разные сертификаты, если они заменяемы.
Я понимаю, что поле использования ключей сертификатов должно быть одинаковым (подпись кода), но, возможно, расширенное использование кода или политика или другое расширение отличается в этих сертификатах. Я был бы признателен, если бы кто-то, у кого есть сертификаты подписи кода двух или более типов, выданные одним CA, мог проверить это для меня.
3 ответов
есть явное утверждение в http://www.adobe.com/devnet/air/articles/signing_air_applications.html что:
"разработчик может использовать любой класс-3, сертификат высокой надежности предоставляемых любой CA для подписания Adobe AIR приложение."
к сожалению, я не могу найти ничего подобного для Java. Однако, независимо от минимальных требований к сертификатам для различных платформ, лучше всего связаться с вашим существующий поставщик сертификатов, чтобы спросить, есть ли какие-либо значимые различия между сертификатами, которые они предлагают для этих платформ.
некоторые из бла-бла на веб-сайте Verisign предполагают, что формат, в котором сертификат поставляется покупателю, является единственной реальной разницей между их предложениями, но они на самом деле не заявляют об этом напрямую, так что кто знает...?
из того, что я получаю от RFC 5280, расширения использования ключей могут только решить, используется ли сертификат для подписи кода или нет. Кажется, в RFC нет ничего, что может ограничить, подписываете ли вы Java-код или AIR или что-то еще. Это, по-видимому, означает, что если вы можете подписать один фрагмент кода (или любые другие неключевые данные), вы можете подписать любой.
тем не менее, в вашем сертификате могут быть расширения, специфичные для CA. Не видя сертификата, трудно скажите, есть ли ограничения.
с технической точки зрения, пока клиент (т. е. браузер, если мы говорим об апплетах) распознает ЦС и доволен вашей комбинацией использования ключа и типа сертификата (DIGITAL_SIGNATURE и OBJECT_SIGNING), тогда вы должны быть в порядке.
кажется, что любой сертификат подписи кода будет работать для любой упомянутой платформы. Я попросил поддержку GlobalSign о разнице-они не ответили, однако вскоре после этого они изменили свою веб-страницу, и теперь вы будете покупать один сертификат подписи кода для всех платформ.