Файл не может использоваться как pkcs 7
Перейти к содержимому

Файл не может использоваться как pkcs 7

  • автор:

PKCS7 файл: Что это такое?

Расширение файла PKCS7 включает в себя один основных типов файлов и его можно открыть с помощью OpenSSL (разработчик — Open Source). В общей сложности с этим форматом связано всего один программное (-ых) обеспечение (-я). Чаще всего они имеют тип формата Cryptographic Message Syntax Standard. Расширение файла PKCS7 указано преимущественно в категории Encrypted Files.

Файлы PKCS7 были обнаружены на платформах Windows, Mac и Linux. Они подходят для настольных ПК (и мобильных устройств). Рейтинг популярности основного типа файла PKCS7 составляет «Низкий», что означает, что эти файлы встречаются на стандартных настольных комьютерах или мобильных устройствах достаточно редко.

Однако следует учитывать, что существует намного больше информации, которую следует знать о файлах PKCS7; далее представлены лишь савые важные детали в отношении этих типов файлов. Если у вас возникли проблемы с открытием этих файлов, или вы хотите получить более подробную информацию, ознакомьтесь с подробной информацией, представленной ниже.

3 шага, чтобы открыть файл с расширением P7S

Обычно решить проблему с файлом P7S просто — просто установите соответствующее программное обеспечение и откройте файл. Прочтите руководство и откройте файл P7S прямо сейчас!

  1. 1. P7S расширение файла
  2. 2. Что такое P7S файл?
  3. 3. Как открыть файл P7S?
    1. 3.1 Установите программу, которая поддерживает P7S файлы
    2. 3.2 Найти и скачать подходящее программное обеспечение
      1. 3.2.1 Программы, поддерживающие файлы с расширением P7S
      P7S расширение файла
      • Тип файла Digitally Signed Email Message
      • Разработчик файлов N/A
      • Категория файла Текстовые файлы
      • Рейтинг популярности файлов
      Что такое P7S файл?

      Файлы .P7S представляют собой текстовые документы, прикрепленные к электронным письмам, защищенным цифровой подписью. Данные, содержащиеся в этих файлах, закодированы в стандарте PKCS # 7 и являются гарантией получения сообщения от указанного в нем отправителя и подтверждают, что содержание сообщения не изменилось после отправки с указанного адреса. Для менее сложных приложений электронной почты файл может отображаться в виде вложения.

      Как открыть файл P7S?

      Может быть несколько причин, по которым система не поддерживает данный файл. В случае расширения P7S вероятно, что ни одна из установленных программ не поддерживает данный тип файла. Поэтому пользователь должен предпринять следующие шаги

      Шаг 1: Установите программу, которая поддерживает P7S файлы

      Если приложение, поддерживающее файлы P7S, установлено в системе пользователя, но не используется для открытия таких файлов по умолчанию, щелкните правой кнопкой мыши значок файла и выберите в меню пункт «Открыть с помощью». Затем выберите подходящее приложение и установите флажок «Всегда использовать выбранное приложение для открытия файлов такого типа». Система будет хранить эту информацию в своем реестре и использовать выбранную программу для открытия файлов с расширением P7S по умолчанию.

      Подсказка для пользователей Mac OS

      Для пользователей Mac OS процедура аналогична — откройте меню файла, щелкнув правой кнопкой мыши по файлу P7S, выберите опцию «Информация» и выберите опцию «Открыть с помощью программы». В подменю выберите приложение и нажмите кнопку «Изменить все».

      Шаг 2: Найти и скачать подходящее программное обеспечение

      Невозможность открыть файлы P7S также может быть связана с отсутствием какого-либо приложения, поддерживающего данный файл, устанавливаемого в системе. В этом случае пользователь должен загрузить и установить одно из следующих приложений. После установки система автоматически свяжет вновь установленное приложение с файлами P7S. Если этот шаг не пройден, см. Шаг 1.

      SignTool.exe (программа подписывания)

      Sign Tool — это программа командной строки, которая присваивает цифровые подписи файлам, проверяет подписи файлов и создает отметки времени для файлов.

      Эта программа автоматически устанавливается вместе с Visual Studio. Для запуска этого средства используйте Командную строку разработчика или PowerShell для разработчиков в Visual Studio.

      Пакеты SDK, HLK, WDK и ADK для Windows 10 сборок 20236 и более поздних версий требуют указания алгоритма хэш-кода. Команда SignTool sign требует, чтобы алгоритм дайджеста /fd файла и /td параметр алгоритма дайджеста метки времени были указаны во время подписывания и метки времени соответственно. Если не указать /fd во время подписывания или /td при отметке времени, возникнет ошибка (код ошибки 1).

      В командной строке введите следующее.

      Синтаксис

      signtool [command] [options] [file_name | . ] 

      Параметры

      Аргумент Описание
      command Одна из четырех команд ( catdb , sign , Timestamp или Verify ), указывающая операцию, которую требуется выполнить с файлом. Описание каждой из команд дано в следующей таблице.
      options Параметр, изменяющий команду. Кроме глобальных параметров /q и /v каждая команда поддерживает уникальный набор параметров.
      file_name Путь к подписываемому файлу.

      Программа Sign Tool поддерживает следующие команды. Каждая команда используется с отдельными наборами параметров, которые перечислены в соответствующих подразделах.

      Get-Help Описание
      catdb Добавляет файл каталога в базу данных каталогов или удаляет его из этой базы данных. Базы данных каталогов используются для автоматического поиска файлов каталогов и определяются идентификаторами GUID. Список параметров, поддерживаемых командой catdb , см. в разделе Параметры команды «catdb».
      sign Присваивает цифровые подписи файлам. Цифровые подписи обеспечивают защиту файлов от несанкционированного доступа и позволяют пользователям проверять, кем подписан файл, на основе сертификата подписи. Список параметров, поддерживаемых командой sign , см. в разделе Параметры команды «sign».
      Timestamp Присваивает отметки времени для файлов. Список параметров, поддерживаемых командой TimeStamp , см. в разделе Параметры команды «TimeStamp».
      Verify Проверяет цифровую подпись файлов, определяя, был ли сертификат подписи выдан доверенным центром сертификации, был ли сертификат подписи отозван, и, если требуется, действителен ли сертификат подписи для конкретной политики. Список параметров, поддерживаемых командой Verify , см. в разделе Параметры команды «Verify».

      Следующие параметры доступны для всех команд программы Sign Tool.

      Глобальный параметр Описание
      /q Не отображает выходные данные, если команда выполнена успешно, и отображает минимальные выходные данные, если команда завершилась ошибкой.
      /v Отображает подробные выходные данные независимо от того, выполнена ли команда успешно или с ошибкой, и отображает предупреждения.
      /debug Отображает отладочную информацию.

      Параметры команды «catdb»

      В следующей таблице перечислены параметры, которые могут использоваться с командой catdb .

      Параметр «catdb» Описание
      /d Указывает, что используемая по умолчанию база данных каталогов обновлена. Если не указан ни параметр /d , ни /g , программа Sign Tool обновляет базу данных системных компонентов и драйверов.
      /g GUID Указывает, что база данных каталогов, заданная глобальным уникальным идентификатором GUID, обновлена.
      /r Удаляет указанные каталоги из базы данных каталогов. Если этот параметр не указан, программа Sign Tool добавляет указанные каталоги в базу данных каталогов.
      /u Указывает, что для добавляемых файлов каталогов автоматически создается уникальное имя. Пир необходимости, файлы каталогов переименовываются, чтобы предотвратить конфликты имен с существующими файлами каталогов. Если этот параметр не указан, программа Sign Tool перезаписывает любой существующий каталог, имеющий то же имя, что и добавляемый каталог.

      Параметры команды «sign»

      В следующей таблице перечислены параметры, которые могут использоваться с командой sign .

      Параметр команды «sign» Описание
      /a Автоматически выбирает лучший сертификат подписи. Программа Sign Tool найдет все действительные сертификаты, которые удовлетворяют всем указанным условиям, и выберет тот, который действителен в течение наиболее длительного периода времени. Если этот параметр не указан, программа Sign Tool находит и использует только один допустимый сертификат подписи.
      /ac Файл Добавляет дополнительный сертификат из файла file в блок подписи.
      /as Добавляет эту подпись. Если основная подпись отсутствует, данная подпись становится основной.
      /c CertTemplateName Указывает имя шаблона сертификата (расширение Microsoft) для сертификата подписи.
      /csp CSPName Указывается поставщик служб шифрования (CSP), содержащий контейнер закрытого ключа.
      /d Desc Задает описание подписанного содержимого.
      /du URL-адрес Задает URL-адрес для расширенного описания подписанного содержимого.
      /f SignCertFile Задает сертификат подписи в файле. Если формат файла — Personal Information Exchange (PFX), и он защищен паролем, задайте пароль с помощью параметра /p . Если файл не содержит закрытых ключей, с помощью параметров /csp и /kc задайте CSP и имя контейнера закрытого ключа.
      /fd Задает алгоритм хэш-кода файла, который будет использоваться при создании подписей файлов. Примечание: Если параметр не указан во время подписывания, возникает /fd ошибка.
      /fd certHash Указание строки certHash является действием по умолчанию для алгоритма, используемого в сертификате для подписи. Примечание: Если параметр не указан во время подписывания, возникает /fd ошибка.
      /i IssuerName Задает имя поставщика сертификата подписи. Это значение может быть подстрокой полного имени поставщика.
      /kc PrivKeyContainerName Задает имя контейнера закрытого ключа.
      /n Имя субъекта Задает имя субъекта сертификата подписи. Это значение может быть подстрокой полного имени субъекта.
      /nph Если поддерживается, отключает хэши страниц для исполняемых файлов. Значение по умолчанию определяется переменной среды SIGNTOOL_PAGE_HASHES и версией файла «wintrust.dll». Этот параметр игнорируется для файлов, отличных от PE-файлов.
      /p Пароль Задает пароль, который используется при открытии PFX-файла. (PFX-файл указывается с помощью параметра /f .)
      /p7 Путь Указывает, что для каждого заданного файла содержимого создается файл PKCS #7. Файлы PKCS #7 имеют имена вида путь\имя_файла.p7.
      /p7ce Значение Задает параметры для подписанного содержимого PKCS #7. Задайте значение Value как «Embedded», чтобы внедрить подписанное содержимое в файл PKCS #7, или как «DetachedSignedData», чтобы создать подписанную часть данных отсоединенного файла PKCS #7. Если параметр /p7ce не используется, подписанное содержимое встраивается по умолчанию.
      /p7co

      Задает идентификатор объекта (OID), определяющий подписанное содержимое PKCS #7.
      /ph Если поддерживается, генерирует хэши страниц для исполняемых файлов.
      /r RootSubjectName Задает имя субъекта корневого сертификата, к которому должна быть протянута цепочка сертификата подписи. Это значение может быть подстрокой полного имени субъекта корневого сертификата.
      /s StoreName Указывает хранилище, которое открывается при поиске сертификата. Если этот дополнительный параметр не указан, открывается хранилище My .
      /sha1 Hash Задает хэш SHA1 сертификата подписи. Хэш SHA1 обычно указывается, когда несколько сертификатов удовлетворяют критериям, заданным остальными ключами.
      /sm Указывает, что вместо пользовательского хранилища используется хранилище на компьютере.
      /t URL-адрес Задает URL-адрес сервера отметок времени. Если этот параметр (или параметр /tr ) отсутствует, подписанному файлу не присваивается отметка времени. Если присвоение отметки времени не удалось, выдается предупреждение. Данный параметр невозможно использовать одновременно с параметром /tr .
      /td Alg Используется с параметром /tr , чтобы запросить алгоритм дайджеста, используемый сервером отметок времени RFC 3161. Примечание: Если параметр не указан во время метки времени, возникает /td ошибка.
      /tr URL-адрес Задает URL-адрес сервера отметок времени RFC 3161. Если этот параметр (или параметр /t ) отсутствует, подписанному файлу не присваивается отметка времени. Если присвоение отметки времени не удалось, выдается предупреждение. Данный параметр невозможно использовать одновременно с параметром /t .
      /u Использования Задает расширенное использование ключа (EKU), которое должно быть представлено в сертификате подписи. Значение использования может быть задано идентификатором объекта или строкой. По умолчанию используется подписывание кода (1.3.6.1.5.5.7.3.3).
      /uw Задает использование «Windows System Component Verification» (1.3.6.1.4.1.311.10.3.6).

      Параметры команды «TimeStamp»

      В следующей таблице перечислены параметры, которые могут использоваться с командой TimeStamp .

      Параметр «TimeStamp» Описание
      /p7 Присваивает файлам PKCS #7 отметки времени.
      /t URL-адрес Задает URL-адрес сервера отметок времени. Файл, получающий отметку времени, должен быть заранее подписан. Необходимо использовать параметр /t или /tr .
      /td Alg Используется с параметром /tr , чтобы запросить алгоритм дайджеста, используемый сервером отметок времени RFC 3161. Примечание: Если параметр не указан во время метки времени, возникает /td ошибка.
      /tp Индекс Присваивает подписи метку времени в index.
      /tr URL-адрес Задает URL-адрес сервера отметок времени RFC 3161. Файл, получающий отметку времени, должен быть заранее подписан. Необходимо использовать параметр /tr или /t .

      Параметры команды «Verify»

      Параметр «Verify» Описание
      /a Указывает, что все методы могут использоваться для проверки файла. Сначала выполняется поиск в базах данных каталогов, чтобы определить, подписан ли файл в каталоге. Если файл не подписан ни в одном каталоге, программа Sign Tool пытается проверить встроенную подпись файла. Этот параметр рекомендуется использовать при проверке файлов, которые могут быть подписаны или не подписаны в каталоге. К примерам таких фалов относятся файлы или драйверы Windows.
      /ad Выполняет поиск каталога, используя базу данных каталогов по умолчанию.
      /ag CatDBGUID Выполняет поиск каталога в указанной параметром CatDBGUID базе данных каталогов.
      /all Проверяет все подписи в файле, содержащем несколько подписей.
      /as Выполняет поиск каталога, используя базу данных каталога системных компонентов (драйверов).
      /c CatFile Задает файл каталога по имени.
      /d Указывает, что программе Sign Tool следует печатать описание и URL-адрес описания.
      /ds Индекс Проверяет подпись в указанной позиции.
      /hash ( SHA1 | SHA256 ) Задает необязательный алгоритм хэширования, который должен использоваться при поиске файла в каталоге.
      /kp Указывает, что проверка должна выполняться с использованием политики подписывания работающего в режиме ядра драйвера.
      /ms Использует несколько семантик проверки. Это поведение по умолчанию вызова WinVerifyTrust в Windows 8 и более поздних версиях.
      /o Версия Проверяет файл в соответствии с версией операционной системы. Версия имеет следующую форму: PlatformID:VerMajor.VerMinor.BuildNumber. PlatformID представляет базовое значение элемента перечисления PlatformID. Важно: Рекомендуется использовать /o параметр . Если значение /o не указано, программа SignTool.exe может возвращать непредвиденные результаты. Например, если не указан параметр /o , системные каталоги, которые успешно проходят проверку в случае более старой версии операционной системы, могут не пройти проверку в ее новой версии.
      /p7 Проверяет файлы PKCS #7. Существующие политики не используются для проверки PKCS #7. Подпись проверяется, и для сертификата подписи строится цепочка.
      /pa Задает обязательное использование политики проверки Authenticode по умолчанию. Если параметр /pa не указан, программа Sign Tool использует политику проверки драйверов Windows. Данный параметр невозможно использовать одновременно с параметрами catdb .
      /pg PolicyGUID Задает политику проверки по идентификатору GUID. Идентификатор PolicyGUID соответствует идентификатору ActionID политики проверки. Данный параметр невозможно использовать одновременно с параметрами catdb .
      /ph Указывает, что программа Sign Tool должна печатать и проверять хэш-значения страниц.
      /r RootSubjectName Задает имя субъекта корневого сертификата, к которому должна быть протянута цепочка сертификата подписи. Это значение может быть подстрокой полного имени субъекта корневого сертификата.
      /tw Указывает необходимость выдачи предупреждения, если подпись не имеет отметки времени.

      Возвращаемое значение

      Программа Sign Tool при прерывании возвращает один из следующих кодов выхода.

      Код выхода Описание
      0 Выполнение прошло успешно.
      1 Сбой выполнения.
      2 Выполнение завершено с предупреждениями.

      Примеры

      Следующая команда добавляет файл каталога «MyCatalogFileName.cat» в базу данных системных компонентов и драйверов. Параметр /u создает уникальное имя, если это необходимо для предотвращения замены существующего файла каталога с именем MyCatalogFileName.cat .

      signtool catdb /v /u MyCatalogFileName.cat 

      При выполнении следующей команды файл подписывается автоматически с помощью наиболее подходящего сертификата.

      signtool sign /a /fd SHA256 MyFile.exe 

      При выполнении следующей команды файл подписывается цифровой подписью с помощью сертификата, хранящегося в защищенном паролем PFX-файле.

      signtool sign /f MyCert.pfx /p MyPassword /fd SHA256 MyFile.exe 

      При выполнении следующей команды файл подписывается цифровой подписью, и ему присваивается отметка времени. Сертификат, используемый для подписания файла, хранится в PFX-файле.

      signtool sign /f MyCert.pfx /t http://timestamp.digicert.com /fd SHA256 MyFile.exe 

      При выполнении следующей команды файл подписывается с помощью сертификата, расположенного в хранилище My , с именем субъекта My Company Certificate .

      signtool sign /n "My Company Certificate" /fd SHA256 MyFile.exe 

      Следующая команда подписывает элемент ActiveX и предоставляет сведения, отображаемые в браузере при появлении запроса на установку элемента управления.

      Signtool sign /f MyCert.pfx /d: "MyControl" /du http://www.example.com/MyControl/info.html /fd SHA256 MyControl.exe 

      При выполнении следующей команды файлу, у которого уже имеется цифровая подпись, присваивается отметка времени.

      signtool timestamp /t http://timestamp.digicert.com MyFile.exe 

      Следующая команда помечает файл с помощью сервера меток времени RFC 3161.

      signtool timestamp /tr http://timestamp.digicert.com /td SHA256 MyFile.exe 

      Следующая команда проверяет наличие подписи у файла.

      signtool verify MyFile.exe 

      Следующая команда проверяет системный файл, который может быть подписан в каталоге.

      signtool verify /a SystemFile.dll 

      Следующая команда проверяет системный файл, подписанный в каталоге с именем MyCatalog.cat .

      signtool verify /c MyCatalog.cat SystemFile.dll 

      См. также

      • Инструменты
      • Оболочки командной строки для разработчиков

      Совместная работа с нами на GitHub

      Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.

      Файл с расширением .p7s

      Иконка формата файла p7s

      Файл P7S — это сообщение электронной почты, содержащее электронную цифровую подпись (ЭЦП). Она используется для более безопасного обмена данными, удостоверяет личность отправителя и подтверждает, что в процессе передачи письмо не было изменено третьими лицами.

      С файлом P7S обычно сталкиваются при просмотре входящего email. Если почтовая программа не поддерживает работу с ЭЦП, то письмо невозможно прочесть и в виде вложения отображается файл smime.p7s. В этом случае для просмотра письма следует использовать одну из почтовых программ, корректно обрабатывающих цифровые подписи, например, Microsoft Outlook или Mozilla Thunderbird.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *