Как подписать заявление эцп: Как сделать электронную подпись, как подписать документ электронной цифровой подписью (ЭЦП) в Москве

Как подписать заявление эцп: Как сделать электронную подпись, как подписать документ электронной цифровой подписью (ЭЦП) в Москве

Содержание

Как подписать документы электронной подписью на Госуслугах в 2022 году

Электронная подпись на Госуслугах позволит сэкономить время и оформлять важные документы из дома. Чтобы ее выпустить, необходимо предпринять несколько шагов.

Содержание

Кому и зачем пригодится ЭЦП на Госуслугах

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

Какие услуги получат физические лица, оформив электронную подпись через Госуслуги для использования на портале:

  1. Замена паспорта гражданина Российской Федерации.
  2. Получение или замена загранпаспорта.
  3. Регистрация по месту жительства.
  4. Представление налоговой декларации.
  5. Оформление договора на заключение услуг связи и т.д.
  6. Зарегистрировать ИП и т.д.

Эксперты КонсультантПлюс разобрали, что нужно знать об электронной подписи. Используйте эти инструкции бесплатно.

Для чтения получите доступ в КонсультантПлюс (бесплатно на 2 дня).

Как получить ЭЦП

Минцифры России в содружестве с крупными компаниями страны запустило приложение «Госключ». Документы, подписанные ЭЦП, имеют такое же одинаковое юридическое значение, что и ручная подпись. Для ее получения необходима подтвержденная учетная запись. Несколько способов, как добавить электронную подпись на Госуслугах: с использованием приложения «Госключ» или в аккредитованных удостоверяющих центрах. Такую подсказку дает помощник на портале.

Радует и цена электронной подписи для Госуслуг: она бесплатная.

Порядок получения электронной ЦП пошагово:

Шаг 1. Проверьте, подтверждена ли учетная запись, внесен ли в нее номер телефона. Для этого зайдите на портал Госуслуги, в правом верхнем углу нажмите на ваш профиль.

Шаг 2. Проверьте наличие загранпаспорта нового образца.

Шаг 3. Для оформления потребуется и смартфон с NFC-модулем (технология беспроводной передачи данных малого радиуса действия).

Шаг 4. Скачайте приложение «Госключ» и установите его.

Вот QR-коды с официального сайта:

Шаг 5. Зарегистрируйтесь в приложении с помощью учетной записи портала.

Шаг 6. Предоставьте доступ к вашим персональным данным, СНИЛС, ИНН, документу, удостоверяющему личность, номеру телефона.

Шаг 7. Ознакомьтесь и подпишите лицензионное соглашение.

Шаг 8. Придумайте надежный пароль для защиты ваших данных. Длина пароля от 8 до 32 символов. Можно воспользоваться генератором пароля.

Шаг 9. Сгенерируйте ЭЦП: для этого водите пальцем по экрану в произвольном порядке.

Шаг 10. Дождитесь выпуска сертификата, процесс занимает не более минуты.

Шаг 11. Проверьте данные сертификата и подпишите его.

Шаг 12. Приложение готово к работе. С портала государственных услуг документы отправляются в «Госключ» и становятся доступными для использования ЭЦП. При необходимости задайте вопрос Роботу Максу на портале.

Есть два вида ЭЦП: УНЭП (выпускается сразу при регистрации на «Госключе») и УКЭП (выпускается дополнительно при наличии загранпаспорта).

Для выпуска УКЭП введите серию и номер загранника и срок его действия, приложите телефон к нему, как показано на картинке, и ждите, когда данные отсканируются. Выпуск занимает считаные секунды. После этого вы можете пользоваться своей подписью на портале.

Небольшая инструкция, как скачать электронную подпись с Госуслуг через мобильное приложение:

  1. Откройте настройки — « Мои сертификаты» — выберите действующий сертификат.
  2. Пролистайте до конца, нажмите на иконку «Документы выпуска».
  3. Отправьте УКЭП или УНЭП на мессенджеры, электронную почту, а потом сохраните на компьютер.

Читайте также: как отозвать электронную подпись

Как проверить ЭЦП на Госуслугах

Вот как проверить электронную подпись на Госуслугах:

  • задайте этот вопрос Роботу Максу на портале;
  • в списке появившихся от него ответов выберите «Мои сертификаты электронной подписи» или «Сервис проверки УНЭП от Госключа».

В вашем личном кабинете отразится срок действия ЭЦП, владелец, информация о том, кем выдана, и номер сертификата.

Как пользоваться ЭЦП на Госуслугах

Рассмотрим процедуру поэтапно.

Этап 1. В поиске введите запрос «Как подписать документы электронной подписью на Госуслугах» или «Подписать документы в Госключе».

Этап 2. На странице загрузки добавьте файл с компьютера.

Этап 3. Введите название документа. С таким названием он отобразится в мобильном приложении.

Этап 4. Нажмите продолжить и возьмите телефон.

Этап 5. В приложении отобразится информация об ожидающих подписания документах.

Этап 6. Проверьте содержание документа и сделайте отметку о его проверке. Сервис предлагает возможность отказаться от проставления ЭЦП при необходимости.

Этап 7. После подписания документ появится на портале государственных услуг.

Этап 8. Скачайте 2 файла: документ и ЭЦП с расширением .sig.

Для подтверждения подлинности электронной подписи на Госуслугах есть сервис проверки УКЭП. Для этого:

  1. Роботу Максу в поиске впишите одноименный запрос.
  2. В открывшемся окне добавьте файл документа и файл ЭЦП.
  3. Начнется проверка, и сервис выдаст результат, достоверна или нет ЭЦП.

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

Почему я не могу подписать документы электронной подписью?

Главная → Частые вопросы → АТИ-Доки → Почему я не могу подписать документы электронной подписью?

← АТИ-Доки

Чтобы понять, в чем ошибка, перейдите в Ваши сертификаты в АТИ-Доках.

Если отображается ошибка «Не установлено программное обеспечение», проверьте, чтобы в вашем браузере были установлены плагины КриптоПро ЭЦП Browser plug-in и CryptoPro Extension for CAdES Browser Plug-in для электронной подписи.

Ошибка «Не установлено программное обеспечение»

Если не видите список с сертификатами или не нашли свой сертификат в списке, проверьте корневой сертификат вашей подписи.

Сообщение о том, что сертификаты не найдены

Если вы пытались проверить электронную подпись в АТИ-Доках, и отображается ошибка «Ваша электронная подпись не прошла проверку на сервере», извлеките открытый ключ сертификата электронной подписи и отправьте в техподдержку АТИ.

Сообщение о том, что электронная подпись не прошла проверку

Не установлены или отключены плагины для электронной подписи


Подписать документ электронной подписью в АТИ-Доках можно через Google Chrome, Opera, Mozilla Firefox и Яндекс.Браузер. Для этого нужно установить два плагина — КриптоПро ЭЦП Browser plug-in и CryptoPro Extension for CAdES Browser Plug-in.

КриптоПро ЭЦП Browser plug-in помогает сайтам прочитать и проверить вашу электронную подпись, а CryptoPro Extension for CAdES Browser Plug-in позволяет подписывать документы через браузер этой электронной подписью.

Плагин КриптоПро ЭЦП Browser plug-in на компьютере


Проверьте, что на вашем компьютере установлен КриптоПро ЭЦП Browser plug-in. Для этого нажмите кнопку «Пуск» — «Все программы» и найдите в списке «КриптоПро».

Если вы не нашли плагин в списке, установите его.

CryptoPro ЭЦП Browser Plugin (бесплатно).

Инструкция по установке.

Плагин CryptoPro Extension for CAdES Browser Plug-in в браузере


Проверьте, что для вашего браузера установлен плагин CryptoPro Extension for CAdES Browser Plug-in.

Яндекс.Браузер — в меню выберите «Дополнения» и найдите в списке «CryptoPro Extension for CAdES Browser Plug-in».

Google Chrome — в меню выберите «Дополнительные инструменты» — «Расширения» и найдите в списке «CryptoPro Extension for CAdES Browser Plug-in».

Opera — в меню выберите «Расширения» — «Расширения» и найдите в списке «CryptoPro Extension for CAdES Browser Plug-in».

Mozilla Firefox — в меню выберите «Дополнения» — «Расширения» и найдите в списке «CryptoPro Extension for CAdES Browser Plug-in»

Если вы не нашли плагин в списке расширений, установите его:

  • для Google Chrome и Яндекс. Браузер;
  • для Opera;
  • для Mozilla Firefox.

Нет доступных сертификатов или моего сертификата нет в списке


Если не видите свой сертификат в списке на странице «Ваши сертификаты», проверьте корневой сертификат вашей подписи.

Корневой сертификат показывает, что удостоверяющий центр, который выдал вам электронную подпись, прошел аккредитацию у Минкомсвязи России и получил право выдавать электронные подписи. Без корневого сертификата АТИ-Доки не могут доверять вашей электронной подписи и разрешить подписывать ей документы.

Если вы не устанавливали корневой сертификат, перейдите на сайт удостоверяющего центра, где вы получали электронную подпись, скачайте и установите корневой сертификат вашей электронной подписи.

Как установить корневой сертификат

Если вы устанавливали корневой сертификат, проверьте, правильно ли он установлен. Для этого нажмите кнопку «Пуск» — «Все программы» — «КриптоПро» — «Сертификаты».

Сертификаты в моих программах

В окне «Сертификаты» выберите «Личное» — «Сертификаты».

Список сертификатов

Откройте двойным нажатием тот сертификат, который не отображается в списке в АТИ-Доках, и перейдите на вкладку «Путь сертификации».

На вкладке отображается цепочка сертификации: ваш личный сертификат, корневой сертификат удостоверяющего центра и корневые сертификаты вышестоящих организаций, которые аккредитовали ваш удостоверяющий центр.

Цепочка сертификации

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

Если есть предупреждение — с этим сертификатом ошибка.

Нажмите на сертификат и посмотрите, в чем ошибка.

Ошибка сертификата

Если сертификат просрочен — обратитесь в удостоверяющий центр и продлите сертификат.

Если нет предупреждения, но сертификат не проходит проверку в АТИ-Доках, переустановите корневой сертификат вашего личного сертификата.

Устанавливайте корневой сертификат в папку «Доверенные корневые центры сертификации».

Как установить корневой сертификат

Электронная подпись не прошла проверку на сервере


Если вы пытались проверить электронную подпись в АТИ-Доках, и отображается ошибка «Ваша электронная подпись не прошла проверку на сервере», извлеките открытый ключ сертификата электронной подписи и отправьте в техподдержку АТИ.

Как извлечь файл открытого ключа?

Вам помогла эта статья?

ПРЕДЫДУЩАЯ

Электронная подпись

СЛЕДУЮЩАЯ

Корневой сертификат

Как подписать исполняемый файл или приложение

Не терпится запустить свое последнее приложение? Узнайте, как правильная подпись исполняемых файлов помогает защитить наиболее ценные активы вашей организации всего за четыре простых шага

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

Многие организации перевели свой бизнес в онлайн. Но как вы можете повысить доверие своих клиентов сейчас, если вы один из них? Вы можете сделать это, подписав свои исполняемые файлы и приложения. Фактически, 66 % организаций резко увеличили количество сертификатов подписи кода, которые они использовали в 2021 году. 

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

Как подписать приложение или исполняемый файл за 4 простых шага

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

  • Программное обеспечение действительно исходит от них, и
  • Оно не было изменено или повреждено с момента его подписания.

Как они это делают? Многие компании используют простой инструмент командной строки, созданный Microsoft: SignTool.

Теперь, когда у вас есть сертификат подписи кода, давайте узнаем, как подписать исполняемый файл с помощью этого инструмента. Это чертовски просто, и это не займет много времени. Мы даже резюмировали весь процесс для вас в таблице ниже!

Как подписать исполняемый файл — 4 шага Обзор того, что влечет за собой этот шаг
1. Установите Microsoft SignTool.exe в этом.
2. Откройте окно командной строки от имени администратора Откройте инструмент командной строки Windows, введя CMD в окне «Выполнить» (или в строке поиска рядом с меню «Пуск»).
3. Перейдите в каталог, содержащий SignTool.exe Используйте команду: cd C:\Program Files (x86)\Windows Kits\10\bin\10.0.22000.0\x86
4. Подпишите и Временная метка вашего приложения или исполняемого файла Используйте команду: signtool sign /f «c:\filepath\codesigningcertificate.pfx» /p «yourpasswordhere» /tr https://timestamp.digicert.com /td SHA256 /fd SHA256 «c:\filepath\myexecutable.exe»

1. Установите Microsoft SignTool.exe

Инструмент входит в комплект разработки программного обеспечения (SDK) для Windows 10 и должен быть уже установлен на вашем устройстве с Windows 10. Если это не так, убедитесь, что вы установили его, прежде чем продолжить.

2. Откройте окно командной строки от имени администратора.

  • Введите cmd в строке поиска или запуска, чтобы отобразить результат для командной строки Windows.
  • Щелкните правой кнопкой мыши приложение Командная строка и выберите параметр с надписью Запуск от имени администратора. Вам будет предложено войти в систему с учетными данными администратора, поэтому убедитесь, что вы их знаете!
  • Подпись к изображению: На снимке экрана показано, как открыть командную строку в Windows 10.

    Важно! Вы подписываете свой код сертификатом подписи кода EV? Убедитесь, что USB-токен, отправленный вам из центра сертификации (ЦС), сначала вставлен в ваше устройство. Этот метод доставки аппаратного токена будет также применяться к сертификатам подписи кода OV, начиная с 15 ноября 2022 г. (14 ноября для пользователей в Северной Америке).

    3. Перейдите в каталог, содержащий SignTool.exe

    Перейдите в каталог, в котором установлен SignTool.exe. Обычно он находится в папке Program Files в папке bin, но на самом деле это зависит от того, где вы установили Windows SDK. Приведенный ниже сценарий дает представление о том, как перейти к другому каталогу при стандартной установке:

      cd C:\file_path\folder  . 

    После запуска команда будет выглядеть примерно так:

      cd C:\Program Files (x86)\Windows Kits\10\bin\10.0.22000.0\x86  
    Подпись к изображению: На снимке экрана показано, как перейти в каталог, где находится SignTool. exe.

    4. Подпишите и отметьте время своего приложения или исполняемого файла

    Подпишите исполняемый файл или приложение с помощью следующей команды:

      signtool sign /f "c:\filepath\codesigningscertificate.pfx" /p "yourpasswordhere" /tr http: //CAtimestampserver.com /td SHA256 /fd SHA256 "c:\filepath\myexecutable.exe"    

    В демонстрационных целях мы использовали в качестве примера сценарий, используемый для подписи кода с помощью существующего сертификата подписи кода DigiCert (мы будем использовать настраиваемые версии команд на снимках экрана):

     signtool sign /f "c:\codesigningcertificate\digicert_certificate\codesigningscertificate.pfx" /p "ваш парольздесь" /tr http://timestamp.digicert.com /td SHA256 /fd SHA256 "c:\codesigningcertificate\myexecutable.exe" 

    Важно! Вам будет предложено ввести пароль токена, если вы подписываете исполняемые файлы или приложения с помощью сертификата подписи кода EV. И снова, начиная с 15 ноября 2022 года, тот же пароль будет требоваться для пользователей сертификатов подписи кода OV из-за перехода к безопасному хранилищу на аппаратных токенах безопасности.

    Подпись к изображению: На снимке экрана показана командная строка, используемая при подписании и отметке времени исполняемого файла с использованием сертификата подписи кода DigiCert.

    И вуаля! Готово. Вот как подписать приложение или исполняемый файл с помощью Microsoft SignTool. Это было быстро, не так ли? На этом этапе вам нужно дважды проверить, была ли цифровая подпись успешно применена к приложению или исполняемому файлу, прежде чем сделать его доступным для клиентов и конечных пользователей.

    Подпись к изображению: На снимке экрана показано сообщение, отображаемое в командном окне после того, как вы подписали свое приложение и поставили отметку времени.

    Нужно ли это делать, даже если окна командной строки только что показали вам сообщение о том, что приложение было успешно подписано? Да. Потому что, как часто говорят журналисты: «Если твоя мама говорит, что любит тебя, проверь это». Как? Давайте узнаем это!

    Как проверить свою подпись в Microsoft SignTool

    Ничто не идеально — сбои и ошибки могут случиться практически с каждым разработчиком в тот или иной момент. Но когда на карту поставлены безопасность ваших кодов, организации, клиентов и пользователей, вы просто не можете себе позволить ошибки и сбои. Назовите меня параноиком, но как специалист по кибербезопасности я научился всегда применять девиз: «Я поверю, когда увижу». И этот случай не исключение.

    Используйте следующую команду, чтобы проверить успешность процесса подписи кода:

      signtool verify /pa /v «c:\filepath\myexecutable.exe»    

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

    Подпись к изображению: Исполняемый файл был успешно подписан. Можете ли вы увидеть все подробности об используемом сертификате и его отметке времени?

    Знаете ли вы, что ваши клиенты и пользователи также могут проверить эту информацию? Они могут сделать это просто:

    • Щелкните правой кнопкой мыши значок подписанного исполняемого файла или приложения.
    • Выбор свойств .
    • Перейдите на вкладку Цифровые подписи .

    Разве это не круто?

    Подпись к изображению: На этом изображении показано, что смогут увидеть все, кто загружает подписанный исполняемый файл или приложение.

    Параметры Microsoft SignTool

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

    • /d. Позволяет добавить описание к исполняемому файлу или приложению. Я нахожу это очень полезным, когда хочу сделать разницу между выпущенной версией и тестовой (например, /d «тестовый код») .
    • /ду. С помощью этого вы можете добавить конкретный URL-адрес к вашему исполняемому файлу или описанию приложения. Я часто использовал его, когда хотел добавить ссылку на страницу проекта кода или на любую подробную информацию, связанную с подписанным кодом (например, /du https://your_Confluence_page. tld/project/description ).

    Но есть и другие, которые также могут быть весьма полезными. На самом деле, если вы вернетесь и проверите сценарий, который мы использовали в качестве примера, о том, как подписать исполняемый файл, вы сможете распознать некоторые из них:

    • /а. В бизнесе каждая секунда на счету. Поэтому вы можете захотеть автоматизировать как можно больше задач. Добавив эту опцию в свой скрипт, лучший сертификат подписи кода будет автоматически выбран для вас из тех, что доступны в вашем хранилище сертификатов Windows.
    • /fd. Эта команда позволяет указать алгоритм дайджеста файла, который вы хотите использовать для создания файла подписи. На момент написания этой статьи рекомендуемым алгоритмом хеширования является SHA256 (например, /fd SHA256 ).
    • /n . У вас есть несколько сертификатов подписи кода и вы хотите выбрать конкретный сертификат подписи кода? Вы можете использовать эту опцию, а не a/, за которой следует обычное имя сертификата (например, /n «общее имя вашего сертификата подписи кода»).
    • /тр . Как мы уже знаем, отметка времени важна. Эта опция позволит вам указать доверенный сервер меток времени, совместимый с RFC 3161.

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

    Заключительные мысли о том, как подписать исполняемый файл или приложение

    Вы когда-нибудь думали, что процесс подписания исполняемых файлов был таким простым? Четыре простых шага, вот и все, что нужно.

    Установите Microsoft SignTool, откройте командную строку, перейдите в нужный каталог и запустите сценарий для подписи исполняемого файла. При этом вы:

    • Добавьте дополнительный уровень безопасности в процесс установки вашего приложения.
    • Докажите, что ваше заявление законно (т. е. оно подлинно, потому что вы его подписали).
    • Гарантируйте целостность вашего приложения (т. е. пользователи и операционные системы будут знать, что никто не вмешивался в него с тех пор, как вы его подписали).

    Повысьте доверие своих клиентов и увеличьте количество загрузок. И помните, даже один неподписанный (и, следовательно, незащищенный) исполняемый файл или приложение может стать причиной масштабного инцидента безопасности.

    Как подписать пакет приложения с помощью SignTool — приложения Win32

    • Статья
    • 6 минут на чтение

    Примечание

    Сведения о подписании пакета приложения для Windows см. в разделе Подписание пакета приложения с помощью SignTool.

    Узнайте, как использовать SignTool для подписи пакетов приложений Windows, чтобы их можно было развернуть. SignTool является частью пакета разработки программного обеспечения Windows (SDK).

    Все пакеты приложений для Windows должны иметь цифровую подпись, прежде чем их можно будет развернуть. Хотя Microsoft Visual Studio 2012 и более поздние версии могут подписывать пакет приложения во время его создания, пакеты, создаваемые с помощью средства упаковщика приложений (MakeAppx.exe) из Windows SDK, не подписываются.

    Примечание

    Вы можете использовать SignTool только для подписи пакетов приложений Windows в Windows 8 и более поздних версиях или Windows Server 2012 и более поздних версиях. Вы не можете использовать SignTool для подписи пакетов приложений в операционных системах более ранних версий, таких как Windows 7 или Windows Server 2008 R2.

    Что вам нужно знать

    Технологии

    • Знакомство с подписью кода
    • Пакеты приложений и развертывание
    • Инструменты для подписи файлов и проверки подписи

    Предварительные условия

    • SignTool , который является частью Windows SDK

    • Действительный сертификат подписи кода, например, файл обмена личной информацией (. pfx), созданный с помощью

      MakeCert.exe и Pvk2Pfx.exe инструменты

      Сведения о создании действительного сертификата подписи кода см. в разделе Создание сертификата подписи пакета приложения.

    • Упакованное приложение для Windows, например файл .appx, созданный с помощью средства упаковщика приложений (MakeAppx.exe)

    Дополнительные сведения

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

    • Имя субъекта сертификата должно соответствовать атрибуту Publisher , который содержится в элементе Identity файла AppxManifest.xml, хранящегося в пакете. Имя издателя является частью удостоверения упакованного приложения для Windows, поэтому необходимо, чтобы имя субъекта сертификата соответствовало имени издателя приложения. Это позволяет сверять подлинность подписанных пакетов с цифровой подписью.

      Сведения об ошибках подписи, которые могут возникнуть при подписании пакета приложения с помощью SignTool , см. раздел «Примечания» в разделе «Как создать сертификат подписи пакета приложения».

    • Сертификат должен быть действителен для подписи кода. Это означает, что оба этих пункта должны быть истинными:

      • Поле расширенного использования ключа (EKU) сертификата должно быть либо не задано, либо содержать значение EKU для подписи кода (1.3.6.1.5.5.7.3.3).
      • Поле использования ключа (KU) сертификата должно быть либо не задано, либо содержать бит использования для цифровой подписи (0x80).
    • Сертификат содержит закрытый ключ.

    • Сертификат действителен. Он активен, срок его действия не истек, и он не был отозван.

    Инструкции

    Шаг 1. Определите алгоритм хеширования для использования

    Когда вы подписываете пакет приложения, вы должны использовать тот же алгоритм хеширования, который вы использовали при создании пакета приложения.

    Если вы использовали настройки по умолчанию для создания пакета приложения, используется алгоритм хэширования SHA256.

    Если вы использовали упаковщик приложений с определенным алгоритмом хеширования для создания пакета приложения, используйте тот же алгоритм для подписи пакета. Чтобы определить хэш-алгоритм, используемый для подписи пакета, вы можете извлечь содержимое пакета и просмотреть файл AppxBlockMap.xml. Атрибут HashMethod элемента BlockMap указывает алгоритм хеширования, который использовался при создании пакета приложения. Например:

     
     

    Предыдущий элемент BlockMap

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

    HashMethod значение hashAlgorithm для использования
    https://www. w3.org/2001/04/xmlenc#sha256 SHA256 (по умолчанию .appx)
    https://www.w3.org/2001/04/xmldsig-more#sha384 ША384
    https://www.w3.org/2001/04/xmlenc#sha512 ША512

    Шаг 2. Запустите SignTool.exe, чтобы подписать пакет

    Чтобы подписать пакет сертификатом подписи из файла .pfx указан, а SHA1 не подходит для подписи пакетов приложений. Таким образом, вы должны указать этот параметр при подписании пакета приложения. Чтобы подписать пакет приложения, созданный с помощью хэша SHA256 по умолчанию, укажите параметр /fd 9.0052 параметр hashAlgorithm как SHA256:

     Знак SignTool /fd SHA256 /a /f signingCert.pfx /p путь к файлу пароля.appx
     

    Параметр /p password можно опустить, если используется файл .pfx, не защищенный паролем. Вы также можете использовать другие параметры выбора сертификата, поддерживаемые SignTool , для подписи пакетов приложений. Дополнительные сведения об этих параметрах см. в разделе SignTool.

    Примечание

    Вы не можете использовать операцию отметки времени SignTool для подписанного пакета приложения; операция не поддерживается.

    Если вы хотите поставить отметку времени на пакет приложения, вы должны сделать это во время операции подписи. Например:

     SignTool sign /fd hashAlgorithm /a /f signingCert.pfx /p password /tr timestampServerUrl
    путь к файлу.appx
     

    Сделайте параметр /tr timestampServerUrl равным URL-адресу сервера меток времени RFC 3161.

    В этом разделе обсуждается устранение ошибок подписи для пакетов приложений.

    Устранение ошибок подписи пакета приложения

    В дополнение к ошибкам подписи, которые SignTool может возвращать, SignTool также может возвращать ошибки, характерные для подписи пакетов приложений. Эти ошибки обычно отображаются как внутренние ошибки:

     Ошибка SignTool: Произошла непредвиденная внутренняя ошибка. 
    Информация об ошибке: «Ошибка: SignerSign() не удалось». (-2147024885/0x8007000B)
     

    Если код ошибки начинается с 0x8008, например 0x80080206 APPX_E_CORRUPT_CONTENT), это означает, что подписываемый пакет недействителен. В этом случае, прежде чем вы сможете подписать пакет, вы должны пересобрать пакет. Полный список ошибок 0x8008* см. в разделе 9.0028 Коды ошибок COM (безопасность и настройка) .

    Чаще всего возникает ошибка 0x8007000b (ERROR_BAD_FORMAT). В этом случае более подробную информацию об ошибке можно найти в журнале событий:

    Для поиска в журнале событий

    1. Запустите Eventvwr.msc.
    2. Откройте журнал событий: Средство просмотра событий (локальное) > Журналы приложений и служб > Microsoft > Windows > AppxPackagingOM > Microsoft-Windows-AppxPackaging/Operational
    3. Найдите самое последнее событие ошибки.

    Внутренняя ошибка обычно соответствует одному из следующих:

    Ошибка Ошибка Ошибка
    Идентификатор события Пример строки события Предложение
    150 0x8007000B: имя издателя манифеста приложения (CN = Contoso) должно совпадать с именем субъекта сертификата подписи (CN = Contoso, C = US). Имя издателя манифеста приложения должно точно совпадать с именем субъекта подписи.
    [!Note]
    Эти имена указаны в кавычках и чувствительны как к регистру, так и к пробелам.

    Можно обновить строку атрибута Publisher , определенную для элемента Identity в файле AppxManifest.xml, чтобы она соответствовала имени субъекта предполагаемого сертификата подписи. Или выберите другой сертификат подписи с именем субъекта, совпадающим с именем издателя манифеста приложения. Имя издателя манифеста и имя субъекта сертификата указаны в сообщении о событии.
    151 0x8007000B: указанный метод хэширования подписи (SHA512) должен соответствовать методу хеширования, используемому в карте блоков пакета приложения (SHA256). Параметр hashAlgorithm, указанный в параметре /fd, неверен (см. Шаг 1. Определите используемый алгоритм хеширования). Повторно запустите SignTool с hashAlgorithm, который соответствует схеме блоков пакета приложения.
    152 0x8007000B: Содержимое пакета приложения должно сверяться с его картой блоков. Пакет приложения поврежден, и его необходимо перестроить для создания новой карты блоков. Дополнительные сведения о создании пакета приложения см. в разделе Создание пакета приложения с помощью упаковщика приложений или Создание пакета приложения с помощью Visual Studio 2012.

    Вопросы безопасности

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

    Об авторе

    alexxlab administrator

    Оставить ответ