Средства шифрования
Средства шифрования предоставляют средства командной строки для подписывания кода, проверки подписи подписи и других задач шифрования.
Знакомство с подписыванием кода
Отрасль программного обеспечения должна предоставлять пользователям средства доверия к коду, включая код, опубликованный в Интернете. Многие веб-страницы содержат только статические сведения, которые можно скачать с небольшим риском. Однако некоторые страницы содержат элементы управления и приложения для скачивания и запуска на компьютере пользователя. Эти исполняемые файлы могут быть рискованными для скачивания и запуска.
Упаковаемое программное обеспечение использует фирменную символику и доверенные торговые точки для обеспечения целостности, но эти гарантии недоступны при передаче кода в Интернете. Кроме того, сам Интернет не может гарантировать личность создателя программного обеспечения. Кроме того, он не может гарантировать, что любое скачаемое программное обеспечение не было изменено после его создания. Браузеры могут содержать предупреждающее сообщение, которое объясняет возможные опасности скачивания данных любого вида, но браузеры не могут проверить, что код является тем, что он утверждает. Необходимо использовать более активный подход, чтобы сделать Интернет надежным средством распространения программного обеспечения.
Одним из подходов к обеспечению подлинности и целостности файлов является присоединение цифровых подписей к этим файлам. Цифровая подпись, присоединенная к файлу, положительно определяет распространитель этого файла и гарантирует, что содержимое файла не было изменено после создания подписи.
Цифровые подписи можно создавать и проверять с помощью API шифрования Майкрософт. Дополнительные сведения о шифровании и функциях CryptoAPI см. в статье Cryptography Essentials.
Подробные сведения о цифровых подписях, сертификатах и хранилищах сертификатов см. в следующих разделах:
- Хэши и цифровые подписи
- Цифровые сертификаты
- Управление сертификатами с помощью хранилищ сертификатов
- Проверка доверия сертификатов
В настоящее время средства CryptoAPI поддерживают технологию Microsoft Authenticode, позволяя поставщикам программного обеспечения подписывать следующие типы файлов для проверки Authenticode.
Расширение имени файла | Содержимое |
---|---|
.appx, .msix, .appxbundle, .msixbundle |
Упакованные приложения Windows. |
CAB |
Автономные файлы, используемые для установки и установки приложений. В файле кабинета несколько файлов сжимаются в один файл. Они обычно находятся на дисках распространения программного обеспечения Майкрософт. |
.Кошка |
Файлы, содержащие цифровые отпечатки нескольких файлов. Файл CAT можно использовать для обеспечения целостности файлов, отпечаток которых он включает. |
.dll |
Файлы, содержащие исполняемые функции. |
.exe |
Файлы, содержащие исполняемые программы. |
.js .vbs .Wsf |
Файлы оболочки Windows для JScript или Microsoft Visual Basic Scripting Edition (VBScript). |
.msi MSP MST |
Файлы установщика Windows. |
OCX |
Файлы, содержащие элементы управления Microsoft ActiveX. |
PS1 |
Файлы, содержащие скрипты PowerShell. |
.stl |
Файлы, содержащие список доверия сертификатов (CTL). |
.Sys |
Файлы, содержащие двоичные файлы драйверов. |
Сведения о цифровой подписи см. в следующих документах:
- CCITT, рекомендация X.509, Платформа проверки подлинности каталогов, Консультативный комитет, Международный телефон и телеграф, Международный телекоммуникационный союз, Женева, 1989.
- RsA Laboratories, PKCS #7: синтаксис криптографических сообщений стандартный. Версия 1.5, ноябрь 1993 г.
- Шнейер, Брюс, примененная криптография, 2d ed. Нью-йорк: Джон Уили и Сыновья, 1996.
- https://www.rsa.com
Примечание.
Эти ресурсы могут быть недоступны на некоторых языках и странах или регионах.
Средства шифрования Майкрософт
Средства публикации и dll подписывания устанавливаются в каталог \Bin установки пакета SDK Для Майкрософт. Они включают следующие файлы.
Имя файла | Замечания |
---|---|
Cert2SPC.exe | Создает сертификат издателя программного обеспечения (SPC) только для тестирования. |
CertMgr.exe | Управляет списками отзыва сертификатов, списков отзыва сертификатов и списков отзыва сертификатов . |
MakeCat.exe | Создает файл без знака каталога, содержащий хэши набора файлов вместе с связанными атрибутами каждого файла. |
Makecert.exe | Создает сертификат X.509 только для тестирования. |
Pvk2pfx.exe | Преобразует файл сертификата издателя программного обеспечения (SPC) или файл закрытого ключа (PVK) в формат файла PFX. |
SetReg.exe | Задает разделы реестра, управляющие проверкой сертификата. |
SignTool.exe | Подписи и метки времени файла. Кроме того, проверка подписи файла. |