2011-01-02 3 views
12

Я вижу инструмент вроде SN, который генерирует пару private/public key для подписания сборки. и с помощью инструмента AL мы можем назначить сильное имя для сборкиРазница между signtool и sn или al для подписания сборки

У нас также есть инструмент «Знак», который используется для подписания сборки (возможно, для использования исключительно с сертификатами?).

Какая разница между двумя ?. Это инструмент знака, который должен использоваться при работе с сертификатами, и можем ли мы добиться его SN ?. или они совершенно разные.?

Пожалуйста, помогите.

+0

Вы пробовали интернет-поиск? что ты нашел? –

+2

Я пока не нашел статей, объясняющих различия между двумя – sveerap

ответ

7

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

Sn должен сделать сильное имя. Это просто для сборки .NET. Он обращается к проблеме с уникальным идентификатором.

Оба инструмента могут гарантировать, что файлы не закалены, но только подпись кода (signtool) может уверить вас, кто является издателем файлов.

Мы можем использовать SignTool.exe для подписания и штампа времени файла с заданным pfx, хотя файл является сильным именем dll.

+1

Спасибо за ответ. Таким образом, это означает, что у меня может быть отдельный частный/открытый ключ для сильного именования сборки, а затем выполнить подписание с помощью инструмента знака, предоставив сертификат или ключ (отличающийся от более раннего) при авторизации подписи ?. И когда мы говорим сильное имя, это означает, что цифровая подпись также является одной из составляющих правильных компонентов имени (имя, версия, культура, открытый ключ, цифровая подпись). В этом случае часть цифровой подписи будет той, которая создана с сильным названием (sn или al tool) или тем, который создан с помощью инструмента знака ?. – sveerap

+1

Кроме того, когда я проверяю сильное имя dll с ildasm, я мог видеть версию, открытый ключ, но не цифровую подпись в манифесте. где он точно хранится ?. – sveerap

+1

@sveerap: Да, у вас может быть prvate/public ключ для сильного имени, а затем выполнить подпись с помощью signtool. Ваше сильное имя использует открытый ключ/закрытый ключ, созданный с помощью инструмента sn. Я не пытался узнать подпись, и я не знаю, находятся ли они в манифесте или нет. Чтобы указать сильное имя, вам не нужно знать цифровую подпись. Почему вы хотите это узнать? –

Смежные вопросы