Настройка компьютера для работы с КЭП (MacOS) — УЦ АЙТИКОМ

Введение

В новой версии macOS Apple сделала обязательными некоторые требования к приложениям, которые раньше были рекомендациями: 64-битные исполняемые файлы, подписывание и нотаризация. Не удовлетворяющие этим требованиям приложения больше запускаться не будут.

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

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

Я только что закончил разбираться с тем, как реализовать соответствие этим требованиям для моей игры Airships: Conquer the Skies. Airships работают на Java, а потому требуют ещё и JVM, но в целом всё остальное будет применимо для большинства разработчиков.

Вот что я узнал о подписывании и нотаризации приложения для Mac, которое не было скомпилировано непосредственно Xcode. Учтите, что информация получена из моих собственных исследований и может быть точной не на 100%. Вопросы и поправки приветствуются.

Что нужно для работы с кэп под macos:

  1. КЭП на USB-токене Рутокен Lite или Рутокен ЭЦП
  2. криптоконтейнер в формате КриптоПро
  3. со встроенной лицензией на КриптоПро CSP
  4. открытый сертификат должен храниться в контейнере закрытого ключа

Носители 
eToken и JaCarta в связке с КриптоПро под macOS не поддерживаются. Носитель Рутокен Lite – оптимальный выбор, стоит 500..1000= руб., шустро работает и позволяет хранить до 15 ключей.

Криптопровайдеры VipNet, Signal-COM и ЛИССИ в macOS не поддерживаются. Преобразовать контейнеры никак не получится. КриптоПро – оптимальный выбор, стоимость сертификата должна быть порядка 1300= руб. для ИП и 1600= руб. для ЮЛ.

Обычно годовая лицензия на КриптоПро CSP уже зашита в сертификат и многими УЦ предоставляется бесплатно. 
Если это не так, то необходимо купить и активировать бессрочную лицензию на КриптоПро CSP строго версии 4 стоимостью 2700=. КриптоПро CSP версии 5 под macOS в данный момент не работает.

Обычно открытый сертификат хранится в контейнере закрытого ключа, но это нужно уточнить при выпуске КЭП и попросить сделать как нужно. Если не получается, то импортировать открытый ключ в закрытый контейнер можно самостоятельно средствами КриптоПро CSP под Windows.

Необходимое программное обеспечение:

Минимальные требования: 

Операционная система: Mac OS X 10.9.Наличие учетной записи с правами администратора.

Ссылки на необходимое программное обеспечение:

1. Удаляем все старые ГОСТовские сертификаты

Если ранее были попытки запустить КЭП под macOS, то необходимо почистить все ранее установленные сертификаты. Данные команды в terminal удалят только сертификаты КриптоПро и не затронут обычные сертификаты из Keychain в macOS.

sudo /opt/cprocsp/bin/certmgr -delete -all -store mroot sudo /opt/cprocsp/bin/certmgr -delete -all -store uroot /opt/cprocsp/bin/certmgr -delete -all

В ответе каждой команды должно быть:

No certificate matching the criteria

или

Deleting complete

2. Устанавливаем корневые сертификаты

Корневые сертификаты являются общими для всех КЭП, выданных любым удостоверяющим центром. Скачиваем со страницы загрузок УФО Минкомсвязи:

Устанавливаем командами в terminal:

sudo /opt/cprocsp/bin/certmgr -inst -store mroot -f ~/Downloads/4BC6DC14D97010C41A26E058AD851F81C842415A.cer sudo /opt/cprocsp/bin/certmgr -inst -store mroot -f ~/Downloads/8CAE88BBFD404A7A53630864F9033606E1DC45E2.cer sudo /opt/cprocsp/bin/certmgr -inst -store mroot -f ~/Downloads/0408435EB90E5C8796A160E69E4BFAC453435D1D.cer

Каждая команда должна возвращать:

Installing: … [ErrorCode: 0x00000000]

3. Скачиваем сертификаты удостоверяющего центра

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

4. Устанавливаем сертификат с Рутокен

Команда в terminal:

/opt/cprocsp/bin/csptestf -absorb -certs

Команда должна вернуть:

OK. [ErrorCode: 0x00000000]

1 КриптоПро ЭЦП Browser plug-in

Со страницы загрузок на сайте КриптоПро скачиваем и устанавливаем КриптоПро ЭЦП Browser plug-in версия 2.0 для пользователей – .

1. Заходим на тестовую страницу КриптоПро

В адресной строке Chromium-Gost набираем:

3. Заходим на Госуслуги

При авторизации выбираем «Вход с помощью электронной подписи». В появившемся списке «Выбор сертификата ключа проверки электронной подписи» будут отображены все сертификаты, включая корневые и УЦ, нужно выбрать ваш с usb-токена и ввести PIN.

Скриншот

Xcode и инструменты

Установите Xcode через App Store компьютера Mac. Затем установите также инструменты командной строки Xcode с

Ввод лицензии криптопро

     1. Откройте Terminal (см. пункт «Запуск приложения macOS Терминал (Terminal)»).

     2. Введите команду: sudo /opt/cprocsp/sbin/cpconfig -license -set серийный_номер_лицензии_с_дефисами.

ВАЖНО: номер лицензии необходимо вводить с дефисами. Для подтверждения ввода необходимо ввести пароль администратора. Ввод пароля не отображается в окне терминала. После ввода пароля нажмите Enter.

Видеокарта

Встройки от Intel заводятся почти всегда с той или иной степенью успешности, но нередки артефакты и глючный интерфейс даже при использовании самых новых и, казалось бы, нативных экземпляров, например UHD630. Часто требуется подмена ID видеокарты на фейковый в загрузчике ( тут бояться не надо, все будет подробно объяснено ниже ).

Использовать графику от nVidia для хака я не рекомендую. Apple не ставит её уже много лет, ни о какой нативности речи не идет. Для них не существует драйверов под Mojave 10.14 и Catalina 10.15. Есть и общеизвестные легкозаводимые карточки, например, GT210 и 630, но они уже не встречаются в продаже.

Выясняем название контейнера кэп

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

/opt/cprocsp/bin/csptest -keyset -enum_cont -fqcn -verifycontext

Команда должна вывести минимум 1 контейнер и вернуть

[ErrorCode: 0x00000000]

Нужный нам контейнер имеет вид

.Aktiv Rutoken liteXXXXXXXX

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

Выясняем хэш сертификата кэп

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

/opt/cprocsp/bin/certmgr -list

Команда должна вывести минимум 1 сертификат вида:

Двухфакторная аутентификация

Если у вас её ещё нет, включите двухфакторную аутентификацию для Apple ID. Это можно сделать с любого i-устройства или с Mac. На Mac перейдите в iCloud control panel настроек System Preferences. В верхней части должна быть панель, предлагающая включить 2FA.

Дополнение

  • Пользователь Reddit AMemoryOfEternity задав вопрос на форумах разработчиков Steam и выяснилось, что пока для приложений Steam нотаризация вообще не требуется. Они должны быть 64-битными, но непонятно, обязательно ли их подписывать. Ссылка, требуется доступ к Steamworks
  • Apple временно смягчила правила нотаризации, поэтому пока она позволяет нотаризировать приложения, не имеющие hardened runtime, имеющие подкомпоненты, не подписанные ID разработчика, не имеющие защитных меток времени, и т.д. Такие вещи всё равно будут отображаться в отчёте о нотаризации как предупреждения, поэтому чтобы позаботиться о будущем, лучше постараться от них избавиться.
  • По информации Valve, для работы Steam API необходимо дать разрешение (entitlement) com.apple.security.cs.allow-dyld-environment-variables: «Steam инъектирует API dylib через DYLD_INSERT_LIBRARIES, которые по умолчанию блокируются hardened runtime, но сама API dylib подписана и должна проходить проверку, поэтому достаточно добавить разрешение „com.apple.security.cs.allow-dyld-environment-variables“, чтобы иметь возможность присвоения переменных окружения DYLD».
Читайте также:  В чем разница между ЭЦП

Если сочетание клавиш не работает

Если сочетание клавиш не работает при запуске, может помочь одно из следующих решений.

  • Нажимайте и удерживайте все клавиши в сочетании вместе, а не по одной.
  • Выключите компьютер Mac. Затем нажмите кнопку питания, чтобы включить компьютер Mac. Затем нажмите и удерживайте клавиши во время запуска компьютера Mac.
  • Прежде чем нажимать клавиши, подождите несколько секунд, чтобы компьютер Mac успел распознать клавиатуру при запуске. Некоторые клавиатуры оснащены световым индикатором, который коротко загорается при запуске, указывая, что клавиатура распознана и готова к работе.
  • Если используется беспроводная клавиатура, подключите ее напрямую к компьютеру Mac, если это возможно. Либо используйте встроенную или проводную клавиатуру. Если используется клавиатура для компьютера с ОС Windows, например клавиатура с логотипом Windows, попробуйте воспользоваться клавиатурой для компьютера Mac.
  • Если используется Boot Camp для запуска через ОС Microsoft Windows, установите настройки загрузочного диска так, чтобы запуск выполнялся через ОС macOS. Затем выключите или перезапустите компьютер и повторите попытку.

Следует помнить, что некоторые сочетания клавиш отключены, если на компьютере Mac установлен пароль прошивки.

Источник

Запуск приложения macos терминал (terminal).

Открыть стандартное приложение macOS Терминал (Terminal) возможно одним из способов:

     1. Выберите Spotlight (кнопка лупы в правом верхнем углу экрана) и введите в строку поиска «Терминал».

     2. Сверните все запущенные приложения, в верхнем меню выбирайте вкладку «Переход», в открывшемся меню нажимаете раздел «Утилиты».

     3. Запускаем «Терминал».

В окне Терминала необходимо будет вводить команды.

!!! ВАЖНО при вводе команд возможно придется вводить пароль «Password» как на изображении выше, при воде символы НЕ БУДУТ отображаться. После ввода символов пароля необходимо нажать клавишу «Enter».

Идентификатор приложения

Возможно, вам понадобится зарегистрировать ID бандла приложения в бэкенде разработчика. ID бандла можно найти в YourApp.app/Contents/Info.plist. (Открывать бандлы приложений можно, нажав на них правой клавишей мыши и выбрав «Show Package Contents».) Идентификатор должен иметь вид com.yourcompanyname.applicationname, например, у моей игры Airships это com.zarkonnen.airships.

История вопроса

В этой статье рассматривается подписывание и нотаризация. Получение 64-битного исполняемого файла программы — это уже задача вашего компилятора или среды разработки.

В macOS приложения обычно упаковываются в bundle — папки, содержащие исполняемый файл, а также дополнительные ресурсы и метаданные. Подписывание бандла означает создание криптографичекой контрольной суммы содержимого бандла с последующим созданием криптографической подписи с сертификатом, которые Apple выпускает для разработчика.

Подпись — это заявление о том, что вы лично гарантируете правильное поведение приложения. Если содержимое бандла меняется, то меняется контрольная сумма, и подпись перестаёт им соответствовать, предупреждая операционную систему, что в бандл внесены несанкционированные изменения.

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

Это своего рода метафора работы с бумажными документами. Разработчик собирает в бандл все части, из которых состоит приложение. Затем он создаёт список всех элементов бандла (контрольную сумму) и подписывает этот список (цифровой подписью), которую приклеивает к бандлу.

Затем он передаёт подписанный бандл нотариусу господину Яблокову, который проверяет, всё ли в порядке с бандлом, а затем регистрирует его. Он даёт разработчику квитанцию, которую тот степлером прикрепляет к бандлу. То есть если разработчик сказал, что приложение безопасно, и господин Яблоков тоже говорит, что оно безопасно, то так скорее всего и есть.

Как можно подписывать документы на macos по госту?

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

Однако продукт Trusted eSign ГОСТ от может исправить ситуацию. Разработчики предлагают пользователям, для которых работа на MacBook критична, установить Trusted eSign ГОСТ в качестве дополнительного программного обеспечения. Эта программа для работы с электронной подписью позволяет не отказываться от привычной macOS и в то же время использовать российские криптоалгоритмы.

Рисунок 1. Интерфейс приложения Trusted eSign понятен и прост

Ранее мы уже делали обзор Trusted eSign, в котором описывали возможности продукта, его системные требования, преимущества и недостатки. Несомненным плюсом его является графический интерфейс, простота в установке и настройке. Стоит отметить, что продукт внесен в реестр отечественного программного обеспечения. Его функциональные возможности:

  • Работа с электронной подписью: возможность подписывать многие типы документов, создавать и проверять электронную подпись стандарта CMS.
  • Шифрование и расшифрование файлов: шифрование данных в адрес сертификатов получателей, архивирование файлов перед шифрованием, удаление исходных файлов после шифрования, установка ключей и сертификатов по стандартам PKCS#8 и x.509 v3.
  • Работа с сертификатами: импорт новых и экспорт зарегистрированных сертификатов.

Как установить криптопро csp 4.0 на mac os x

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

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

На сегодняшний день есть сразу три разные версии КриптоПро CSP: 3.6, 3.9 и 4.0. Различия между ними в совместимых операционных системах, в поддерживаемых криптографических алгоритмах и в сроках действия сертификатов соответствия, выданных ФСБ России. Таблицу сравнения версий и действующие сертификаты вы можете найти на сайте компании-разработчика cryptopro.ru.

В данной статье мы рассмотрим процесс установки КриптоПро CSP 4.0 на Mac OS X 10. Почему мы выбрали именно четвертую версию CSP? Потому что это последняя из выпущенных версий, и она поддерживает новые алгоритмы подписи ГОСТ Р 34.10-2021, ГОСТ Р 34.11-2021.

Загрузить дистрибутив программы можно на сайте cryptopro.ru после предварительной регистрации. После регистрации вы увидите страницу с лицензионным соглашением. Ознакомившись с правилами и условиями нажмите внизу экрана кнопку «Я согласен» для перехода в раздел загрузки дистрибутивов.

Настройка компьютера для работы с КЭП (MacOS) - УЦ АЙТИКОМ

Выбрав вариант «КриптоПро CSP 4.0 R2 для Windows, UNIX и macOS» вы увидите ссылку на дистрибутив «КриптоПро CSP 4.0 для Apple OS X (x64)» над информацией с его контрольной суммой. Нажмите ЛКМ, чтобы начать загрузку.

Читайте также:  Как пользоваться электронной подписью с флешки | Портал Про ЭЦП

Настройка компьютера для работы с КЭП (MacOS) - УЦ АЙТИКОМ

Процесс загрузки и установки предельно прост. Кликаем по ссылке на дистрибутив и ждем, загрузка начнется автоматически. После ее завершения двойным щелчком распакуйте загруженный файл macos-uni.tar.

Войдите в распакованную папку. Установка ПО осуществляется от имени пользователя, имеющего права администратора: под учётной записью root или с использованием команды sudo.

СКЗИ КриптоПро CSP требует следующей последовательности установки: сначала устанавливается провайдер, затем устанавливаются остальные модули, входящие в состав комплектации.

В ОС Mac OS X для установки ПО применяются пакеты (packages). Пакет – архив дистрибутива, содержащий файлы устанавливаемого приложения и файлы, использующиеся инсталлятором для конфигурирования среды.

Дистрибутив поставляется в упакованном виде, имеет формат .dmg и представляет собой образ диска, содержащий пакет. Для установки пакета откройте двойным щелчком образ диска с дистрибутивом (dmg).

Запустите установку, выбрав в контекстном меню «Открыть».

В окне-предупреждении нажмите продолжить.

Для установки следуйте указаниям мастера.

Ознакомьтесь с лицензионным соглашением и продолжите установку.

Нажмите «Принимаю».

На следующем шаге выберете все установочные пакеты и нажмите «Продолжить».

Нажмите «Установить».

Введите имя и пароль пользователя, имеющего права администратора или учётной записи root.

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

Установка закончена. Закройте Установщик.

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

Приобрести СКЗИ КриптоПро CSP версии 4.0 можно в нашем интернет-магазине, для этого перейдите по ссылке на страницу с описанием программы.

Для просмотра информации о лицензии выполните следующую команду:
/opt/cprocsp/sbin/cpconfig -license -view

Для активации лицензионного ключа выполните команду: sudo /opt/cprocsp/sbin/cpconfig -license -set <серийный_номер>

Серийный номер лицензионного ключа следует вводить с соблюдением регистра символов.

Установка установка КриптоПро CSP 4.0 на Mac OS X 10 на этом завершена. Успешной вам работы!

Криптопро эцп browser plug-in

     1. КриптоПро ЭЦП Browser plug-in скачиваете по данной ссылке.

     2. Запустите файл установщика cprocsp-pki-2.0.14071.pkg.

     3. Начнется установка КриптоПро ЭЦП Browser Plug-in. Нажмите Продолжить.

     4. Ознакомьтесь с информацией о продукте и нажмите Продолжить.

     5. Ознакомьтесь с Лицензионным соглашением и нажмите Продолжить.

     6. Чтобы продолжить установку, потребуется принять условия Лицензионного соглашения. Для этого в появившемся окне нажмите Принять.

     7. Для продолжения установки, нажмите Установить. Не рекомендуется изменять директорию установки КриптоПро ЭЦП Browser plug-in.

     8. Если потребуется, разрешите Установщику установить КриптоПро ЭЦП Browser plug-in. Для этого необходимо ввести пароль.

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

Мини-мануал, как поставить хакинтош максимально просто и безболезненно

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

Настройка браузера chromium-gost

     1. Запускаем браузер Chromium-Gost и в адресной строке набираем:

chrome://extensions/

     2. Включаем оба установленных расширения, с помощью выключателя  Настройка компьютера для работы с КЭП (MacOS) - УЦ АЙТИКОМ(включен).

  • CryptoPro Extension for CAdES Browser Plug-in
  • Расширение для плагина Госуслуг

     3. Настраиваем расширение КриптоПро ЭЦП Browser plug-in, для этого в адресной строке Chromium-Gost набираем:

/etc/opt/cprocsp/trusted_sites.html

     4. На появившейся странице в список доверенных узлов по очереди добавляем сайты:

Нотаризация


Подписав приложение, нужно предоставить его системам Apple для нотаризации, чтобы сказать: «смотрите, я подписал вот эту штуку».

Для этого надо сначала сжать приложение в специальный файл zip с помощью команды ditto:

/usr/bin/ditto -c -k —keepParent YourApp.app YourApp.zip

Простая упаковка приложения в zip при помощи Finder или командной строки не подойдёт.

Затем отправить zip для нотаризации:

xcrun altool —notarize-app —primary-bundle-id «<id>» -u «<appleid>» -p «<app-specific password>» —file YourApp.zip

Пример:

Пароль приложения


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

Плагин для госуслуг

     1. Скачиваем корректный конфигурационный файл для расширения Госуслуг для поддержки macOS и новых ЭЦП в стандарте ГОСТ2021 по ссылке 

     2. Запустите файл установщика IFCPlugin.pkg с помощью контекстного меню (правая кнопка мыши), выбрав Открыть.

     3. Для начала установки нажимаете Установить.

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

     5. Если потребуется, разрешите Установщику установить плагин. Для этого необходимо ввести пароль.

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

     7. Конфигурационный файл плагина Госуслуг ifc.cfg доступен по данной ссылке.

     8. Скачиваем и оставляем его в папке Download/Загрузки.

     9. Открываем стандартное приложение macOS Терминал (Terminal) (см. раздел Запуск приложения macOS Терминал (Terminal)).

     10. Вводим последовательно команды:

sudo rm /Library/Internet Plug-Ins/IFCPlugin.plugin/Contents/ifc.cfg

sudo cp ~/Downloads/ifc.cfg /Library/Internet Plug-Ins/IFCPlugin.plugin/Contents

sudo cp /Library/Google/Chrome/NativeMessagingHosts/ru.rtlabs.ifcplugin.json /Library/Application Support/Chromium/NativeMessagingHosts

Подготовка приложения


Чтобы приложение правильно работало в новой системе, исполняемый файл и библиотеки должны быть 64-битными.

Кроме того, Mac OS выполняет операцию под названием «translocation»: из соображений безопасности перемещает запущенный бандл приложения в случайное место. В случае моего приложения это проявилось тем, что оно не смогло найти файлы данных, расположенные рядом с бандлом приложения. Можно получать исходное расположение бандла приложения, но я решил проблему, просто поместив всё в бандл.

Подписывание

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

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

Каждый исполняемый файл и динамическая библиотека в бандле приложения подписываются отдельно. В некоторых случаях библиотеки уже могут быть подписанными. То есть вежливее и спокойнее всего подписывать бандл, подписав каждый элемент по очереди, а затем подписать весь бандл. Если у какого-то элемента уже есть подпись, то она останется на своём месте.

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

Вам понадобится следующая пугающая команда:

codesign -s «Developer ID Application: <YourName>» —timestamp —options runtime -f —entitlements entitlements.plist —deep YourApp.app

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

Опция —options runtime означает, что подпись включает «hardened runtime», что также необходимо для успешной нотаризации.

Изучить подпись можно командой

codesign -d -vvvv YourApp.app

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

Читайте также:  ЭЦП для Росреестра | Сертификат квалифицированной электронной подписи для Росреестра — Удостоверяющий центр СКБ Контур

Если вы хотите подписывать элементы более вежливым образом, то уберите из команды -f и —deep, сначала подпишите все исполняемые файлы и библиотеки внутри приложения, а потом всё приложение.

Подпись файла командой из терминал (terminal)

     1. В Терминал (Terminal) переходим в каталог с файлом для подписания и выполняем команду:

/opt/cprocsp/bin/cryptcp -signf -detach -cert -der -strict -thumbprint ХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХ FILE

где ХХХХ… – хэш сертификата, полученный на шаге 1, а FILE – имя файла для подписания (со всеми расширениями, но без пути).

     2. Команда должна вернуть:

Signed message is created.[ErrorCode: 0x00000000]Будет создан файл электронной подписи с расширением *.sgn – это отсоединенная подпись в формате CMS с кодировкой DER.

Подпись файлов в macos

В macOS файлы можно подписывать в ПО КриптоАрм (стоимость лицензии 2500= руб.), или несложной командой через terminal – бесплатно.

Покупка членства

Выполните вход в

Прикрепление

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

xcrun stapler staple «YourApp.app»

Поздравляю, вы подписали и нотаризировали приложение для Mac. Теперь вы можете распространять бандл приложения любым удобным вам способом, если он не будет изменяться в процессе.

Разрешения (entitlements)

Это особые разрешения, добавляемые разработчиком вместе с подписью кода, позволяющие подписанным приложениям выполнять определённые действия. Если вы компилируете приложение при помощи Xcode, то он сделает всё самостоятельно; в противном случае вам потребуется создать файл plist, содержащий все нужные вам entitlements. Файлы plist можно создавать при помощи Xcode, а по адресу

Руководство по настройке компьютера для работы с электронной подписью в браузере.

     1. ОСНОВНЫЕ ПОНЯТИЯ (если есть аббревиатуры, понятия и т.д.):

  • Криптопровайдер – средство защиты криптографической защиты информации. Программа с помощью которой генерируется закрытая часть электронной подписи и которая позволяет производить работу с электронной подписью. Данная галочка проставляется автоматически. 
  • Плагин (модуль) — это программный блок, который встраивается в браузер и расширяет его возможности. В отличие от дополнений плагин, как правило, не имеет интерфейса. Плагины используются для проигрывания видео и аудио в браузере, просмотра PDF-документов, улучшения работы веб-служб, организующих совместную работу в интернете и т. д.

Сброс пароля на mac os x 10.4 tiger

  1. Включите или перезагрузите Мак.
  2. Во время приветствия (или серого экрана, если Вы выключили его), удерживайте на клавиатуре Command S для загрузке в однопользовательском режиме.
  3. Напишите в строке sh /etc/rc и нажмите Enter.
  4. Впишите passwd имяпользователя и замените “имяпользователя” на короткое имя пользователя того аккаунта, для которого собираетесь сбросить пароль.
  5. Введите желаемый пароль и нажмите Enter.
  6. Для перезагрузки выполните команду reboot.

Смена pin командой из terminal

/opt/cprocsp/bin/csptest -passwd -qchange -container «XXXXXXXX»где XXXXXXXX – название контейнера, полученное на шаге 1 (обязательно в кавычках).

Появится диалог КриптоПро с запросом старого PIN-кода для доступа к сертификату, затем еще один диалог для ввода нового PIN-кода. Готово.

Скриншот

Смена pin-кода контейнера

Пользовательский PIN-код на Рутокен по-умолчанию 12345678, и оставлять его в таком виде никак нельзя. Требования к PIN-коду Рутокен: 16 символов max., может содержать латинские буквы и цифры.

Требования


Что необходимо для подписывания и нотаризации приложения:

Устанавливаем драйверы рутокен

На сайте написано что это опционально, но лучше поставить. Со страницы загрузок на сайте Рутокен скачиваем и устанавливаем Модуль поддержки Связки Ключей (KeyChain) – .

Далее подключаем usb-токен, запускаем terminal и выполняем команду:

/opt/cprocsp/bin/csptest -card -enum

В ответе должно быть:

Aktiv Rutoken… Card present… [ErrorCode: 0x00000000]

Устанавливаем и настраиваем кэп под macos

Очевидные вещи

  • все загружаемые файлы скачиваются в каталог по-умолчанию: ~/Downloads/;
  • во всех установщиках ничего не меняем, все оставляем по-умолчанию;
  • если macOS выводит предупреждение, что запускаемое ПО от неустановленного разработчика – нужно подтвердить запуск в системных настройках: System Preferences —> Security & Privacy —> Open Anyway;
  • если macOS запрашивает пароль пользователя и разрешение на управление компьютером – нужно ввести пароль и со всем согласиться.

Устанавливаем криптопро csp

Регистрируемся на сайте КриптоПро и со страницы загрузок скачиваем и устанавливаем версию КриптоПро CSP 4.0 R4 для macOS – .

Установка apple automator script

Чтобы каждый раз не работать с терминалом, можно один раз установить Automator Script, с помощью которого подписывать документы можно будет из контекстного меню Finder. Для этого скачиваем архив – .

  1. Распаковываем архив ‘Sign with CryptoPro.zip’
  2. Запускаем Automator
  3. Находим и открываем распакованный файл ‘Sign with CryptoPro.workflow’
  4. В блоке Run Shell Script меняем текст ХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХ на значение параметра SHA1 Hash сертификата КЭП, полученное выше.
  5. Сохраняем скрипт: ⌘Command S
  6. Запускаем файл ‘Sign with CryptoPro.workflow’ и подтверждаем установку.
  7. Идем в System Preferences —> Extensions —> Finder и проверяем, что Sign with CryptoPro quick action отмечено.
  8. В Finder вызываем контекстное меню любого файла, и в разделе Quick Actions и/или Services выбрать пункт Sign with CryptoPro
  9. В появившемся диалоге КриптоПро ввести PIN-код пользователя от КЭП
  10. В текущем каталоге появится файл с расширением *.sgn – отсоединенная подпись в формате CMS с кодировкой DER.

Скриншоты

Окно Apple Automator:

System Preferences:

Контекстное меню Finder:

Установка специального браузера chromium-gost

     1. Для работы с государственными порталами потребуется браузер – Chromium-GOST.

По ссылке скачивается определенная сборка браузера (71.0.3578.98), так как в более новых версиях не гарантируется корректная работа в ЛК ФНС.

     2. После скачивания файл браузера появится в папке Downloads (Загрузки), запускать его не требуется, просто перетаскиваем на панель уведомлений для удобства.

     3. Переходим к настройке плагинов ниже.

Устранение сбоев

     1. Переподключаем usb-токен и проверяем что он виден с помощью команды в Терминал (Terminal):

sudo /opt/cprocsp/bin/csptest -card -enum

     2. Очищаем кеш браузера за все время, для чего в адресной строке Chromium-Gost набираем:

chrome://settings/clearBrowserData

     3. Переустанавливаем сертификат КЭП с помощью команды в Терминал (Terminal):

/opt/cprocsp/bin/csptestf -absorb –certs

     4. Проверить статус лицензии КриптоПро CSP можно командой:

/opt/cprocsp/sbin/cpconfig -license –view

     5. Активировать лицензию КриптоПро CSP можно командой:

sudo /opt/cprocsp/sbin/cpconfig -license -set серийный_номер_лицензии

Выводы

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

Программа Trusted eSign является исключением. Ее простота, лаконичное и продуманное окно для работы пользователя позволяют сделать вывод о том, что вендор задумывается о своих потребителях и о том, как сократить время, необходимое для знакомства с новым продуктом.

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

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

Adblock
detector