Справку о том, что физическое лицо не является индивидуальным предпринимателем, можно получить бесплатно | ФНС России | 72 Тюменская область

Что такое выписка из егрюл?

Выписка из ЕГРЮЛ представляет собой документ на листе формата А4. На нем можно обнаружить графы, в которых содержатся сведения о юридическом лице. По закону, выписка должна быть скреплена и прошита, а последняя ее страница заверена должностным лицом налогового органа. В конце выписки указываются также реквизиты, дата выдачи и есть печать.

Сам документ содержит в себе следующие сведения:

  1. Полное или сокращенное наименование компании или организации, ее организационно-правовая форма.
  2. Юридический адрес.
  3. Полные сведения о том, каким способом данное юридическое лицо было образовано, кто является его директором и участниками. Здесь же отражаются доли в уставном капитале и все лица, которые этими долями владеют.
  4. Сведения, касающиеся правопреемников данного юрлица.
  5. Дата регистрации компании и дата постановки на учет в налоговый орган.
  6. Размер уставного капитала и то, из чего он состоит, а также стоимость частных активов (если это ОАО).
  7. Перечень лицензий, которыми обладает данная компания.
  8. Перечень филиалов, дочерних предприятий, представительств компании, которые имеют регистрацию.
  9. Дата регистрации компании в качестве страхователя и присвоенный ей страховой номер.
  10. Сведения о реорганизации компании или о стадии ее ликвидации.

Описание принципов работы плагина

КриптоПро ЭЦП Browser plug-in легко встраивается и применим в любом из современных браузеров с поддержкой сценариев JavaScript:

Поддерживаемые операционные системы:

КриптоПро ЭЦП Browser plug-in позволяет подписывать различные типы данных:

С точки зрения бизнес-функций, плагин позволяет использовать ЭП:

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

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

Создание и проверка подписи происходят на стороне пользователя. При создании подписи с помощью КриптоПро ЭЦП Browser plug-in, электронная подпись может быть либо добавлена к подписываемым данным (присоединенная ЭП), либо создана отдельно (отделенная ЭП).

КриптоПро ЭЦП Browser plug-in распространяется бесплатно (лицензионное соглашение).

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

Дата публикации: 11.03.2021 06:02 (архив)

Физические лица, не являющиеся индивидуальными предпринимателями, могут бесплатно получить справку из Единого государственного реестра индивидуальных предпринимателей. Для этого на официальном сайте ФНС создан интернет-сервис «Предоставление сведений из ЕГРЮЛ/ЕГРИП о конкретном юридическом лице/ индивидуальном предпринимателе в форме электронного документа».

Чтобы воспользоваться электронным сервисом, можно авторизироваться с помощью пароля и логина к «Личному кабинету налогоплательщика для физических лиц». Если вы не подключены к «Личному кабинету», необходимо зарегистрироваться: указать Ф.И.О., личный ИНН, адрес электронной почты, логин, после чего на адрес электронной почты приходит ссылка, по которой необходимо авторизироваться. Усиленная квалифицированная электронная подпись в данном случае  не требуется.

Для получения справки после авторизации нужно выбрать вкладку «Индивидуальный предприниматель/КФХ» и указать свой ИНН.

Справка об отсутствии запрашиваемой информации формируется в формате PDF, содержащем усиленную квалифицированную электронную подпись (ЭЦП) и её визуализацию.

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

Что делать если вы забыли пароль для доступа к сертификату ключа проверки электронной подписи

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

Здесь всё гораздо проще. Обратите внимание на нижнее окно там есть ссылка «Отозвать текущий сертификат». Смело щёлкайте по ней и после этого создавайте новый сертификат и у Вас будет новый пароль:

Если Вы всё-таки опасаетесь сразу это делать, можете для убедительности сначала щёлкнуть на «Просмотреть сертификат»:

Перед вами откроется следующее окно, которое, надеюсь развеет Ваши сомнения:

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

Удачи Вам ! И до скорых встреч на страницах блога «ПенсерМен».

4.1 Добавление строки подписи

На вкладке Вставка в группе Текст нажмите на стрелку рядом с кнопкой Строка подписи и в появившемся меню выберите Строка подписи (КРИПТО-ПРО).

Появится диалоговое окно Настройка подписи. В нём можно ввести информацию о лице, которое будет добавлять подпись. Эти сведения будут отображены в строке подписи в документе. Заполнять все пункты необязательно.

  • в поле Предложенный подписывающий вводится ФИО подписывающего.
  • в поле Должность предложенного подписывающего — название должности подписывающего.
  • в поле Адрес электронной почты предложенного подписывающего — адрес электронной почты подписывающего
  • в поле Инструкции для подписывающего можно ввести рекомендации или требования для подписывающего. Эти инструкции отображаются в диалоговом окне Подпись, в котором подписывающий будет ставить подпись.
  • для разрешения самому подписывающему добавления комментариев в процессе создания подписи установите флажок Разрешить подписывающему добавлять примечания в окне подписи.
  • для отображения даты подписания документа, установите флажок Показывать дату подписи в строке подписи.

Нажмите кнопку ОК.

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

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

WordPress 5.2 вводит проверку обновлений по цифровой подписи | вебисторий

WordPressСистема управления контентом WordPress доросла до версии 5.2. Помимо повышения системных требований отдельно стоит упомянуть со скрипом внедрённую систему проверки обновлений и дополнений посредством цифровой подписи.

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

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

Проблему не стоит преуменьшать, поскольку, по данным ресурса W3Techs, WordPress используют уже 33,8% сайтов.

WordPress 5.2 вводит проверку обновлений по цифровой подписи

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

Подобное благое начинание внедрялось очень долго из-за отсутствия в штатной поставке PHP необходимых криптографических алгоритмов. Последние появились лишь в PHP 7.2 благодаря интеграции библиотеки Libsodium. Проблема, однако, ещё и в том, что та же версия 7.2 стоит далеко не на всех веб-серверах. В качестве альтернативы разработчиками WordPress было использовано включение в WordPress 5.2 компактного варианта Libsodium — Sodium Compat. В нём на языке PHP реализован минимальный набор алгоритмов для проверки цифровых подписей.

Отметим, что в WordPress 5.2 разработчики не решились ввести блокировку обновлений из-за ошибок с цифровой подписью. На текущий момент не прохождение проверки приводит лишь к выводу предупреждающего сообщения. В дальнейшем, после дополнительных тестов, будет введёт режим блокировок. Также планируется распространить проверку цифровых подписей на темы WordPress.

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

WordPress 5.2 вводит проверку обновлений по цифровой подписи
Проверка здоровья сайта в WordPress.

Данные сообщения носят рекомендательный характер и предназначены в основном для начинающих веб-мастеров.

Выписка из егрюл/егрип онлайн за 1 минуту

Как получить электронную выписку егрюл

Выписку из ЕГРЮЛ может получить любое лицо на основании запроса в электронном виде или в письменной форме.

Как получить выписку из ЕГРЮЛ через госуслуги. Никак. Можно только подать заявку. Получать придётся лично, почтой, через МФЦ или представителя.

Как получить выписку из ЕГРЮЛ через СБИС. Любая организация с лицензией «Все о компаниях и владельцах» может посмотреть и сохранить данные ЕГРЮЛ по своей компании или по контрагенту.

Для этого в разделе «Компании» найдите организацию, сведения о которой хотите посмотреть. Нажмите «ЕГРЮЛ». Это будет информационная сводка, не имеющая юридической силы.

Чтобы запросить выписку из ЕГРЮЛ с электронной подписью, в карточке организации нажмите «Отчеты» и выберите «Выписка с подписью». Для этого нужно иметь лицензию «Все о компаниях и владельцах», тариф «Расширенные сведения» или лицензию «Поиск и анализ закупок», тариф «Расширенный».

Форма запроса выписки из ЕГРЮЛ в СБИС

Как получить выписку из ЕГРЮЛ через МФЦ. Если получать документ в МФЦ, срок выдачи увеличится до 7—10 дней. Через МФЦ можно получить выписку как в бумажном виде, так и в электронном.

Как получить выписку из ЕГРЮЛ через сайт налоговой. На сайте ФНС России есть электронный сервис «Предоставление сведений из ЕГРЮЛ/ЕГРИП о конкретном юридическом лице / индивидуальном предпринимателе в форме электронного документа».

Форма запроса на предоставление сведений из ЕГРЮЛ на сайте ФНС

Как с помощью эцп подписать документ в формате pdf

Для создания и проверки электронной подписи в программах для работы с PDF-файлами Adobe Acrobat, Adobe Reader предусмотрен модуль КриптоПро PDF.

Прежде чем подписывать документ, для работы с КриптоПро PDF нужно установить и настроить Acrobat Reader DC либо Adobe Acrobat Pro.

Рассмотрим настройку на примере Acrobat Reader DC:

  1. Заходим в меню Редактирование → Установки → Подписи.

  2. В блоке Создание и оформление нажимаем кнопку Подробнее.

  3. В пункте Метод подписания по умолчанию выбираем КриптоПро PDF.

Чтобы подписать PDF-файл:

  1. Откройте документ в Acrobat Reader DC

  2. Выберите пункт Заполнить и подписать на панели инструментов справа.

  3. 
картинка7

  4. Выберите пункт Сертификаты. Если его нет в списке, то необходимо добавить через настройки панели инструментов.

  5. 
картинка8

  6. Нажмите Поставить цифровую подпись.
  7. 
картинка9

  8. Выделите область, где будет стоять ЭЦП . После этого появится окно, в котором нужно будет выбрать цифровое удостоверение для подписи.
  9. 
картинка10а

  10. Нажмите Подписать.

  11. 
картинка10

Как создать файл электронной подписи в формате sig

Процесс создания документа в формате SIG мы рассмотрим на примере программы КриптоАРМ. Чтобы создать подписанный документ необходимо:

  1. Выбрать исходный документ, кликнув по нему правой кнопкой мыши (1), выбрать в меню КриптоАРМ (2), затем – Подписать (3).

  2. 
КриптоАРМ

  3. Нажать кнопку Далее в открывшемся Мастере создания электронной подписи.
  4. 
Мастере создания

  5. Выбрать в списке исходный файл для подписания. При необходимости можно добавить дополнительные файлы, которые нужно подписать.

  6. 
исходный файл для подписания

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

  8. 
преобразован исходный файл

  9. В блоке свойства подписи выбрать Подписано рядом с параметром Использование подписи (4). Если необходимо сохранить отдельный файл в формате SIG, отмечаем соответствующий параметр (5).

  10. 
Использование подписи

  11. Нажать кнопку Выбрать(6) в окне Выбор сертификата подписи.

  12. 
Выбор сертификата

  13. В Хранилище сертификатов выбрать сертификат ЭЦП из списка.

  14. 
Хранилище сертификатов

  15. На последнем этапе создания документа с помощью Мастера нажать Готово.

  16. 
Готово

    После завершения операции подписания документа появится окно с результатами (7).

    
SIG создан

    Готово! Документ в формате SIG создан и подписан.

Как создать электронную подпись в личном кабинете налогоплательщика

Если у Вас уже была электронная подпись в старой версии личного кабинета, то в новой (с 2021 года) её уже не будет и пароля естественно тоже. Так что сертификат ЭП придётся создавать заново.

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

  1. выбираете вкладку «Получить ЭП»;
  2. вариант хранения электронной подписи;
  3. устанавливаете пароль для доступа к сертификату;
  4. вводите его ещё раз;
  5. жмёте кнопку «Отправить запрос»:

Почему лучше выбрать хранение ключа в системе ФНС России, думаю у Вас вопросов не вызовет. Если Вы прочитали разъяснения, то заметили и сами неоспоримые преимущества именно этого варианта.

После отправки запроса появляется окно ожидания с крутящимся кружочком. Иногда оно может задержаться на довольно таки продолжительное время:

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

во всплывшем после этого окне ввести пароль, который Вы уже вводили дважды в самом начале и кнопка «Далее»:

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

Конфигурирование openssl

Openssl поддерживает российские криптоалгоритмы, начиная с версии 1.0. Для того, чтобы их использовать, в openssl требуется подгружать engine gost. В большинстве дистрибутивов openssl эта библиотека присутствует. Чтобы engine подгружалась, можно прописать ее в конфигурационном файле openssl:

[openssl_def]
engines = engine_section

[engine_section]
gost  = gost_section

[gost_section]
engine_id  = gost
default_algorithms = ALL

Если конфигурационный файл openssl не расположен в стандартном месте, то путь к нему можно задать через переменную окружения OPENSSL_CONF.

Другим вариантом подгрузки engine gost является ее передача в параметрах командной строки утилиты openssl.

Если engine gost не расположена в стандартном месте, то через переменную окружения OPENSSL_ENGINES можно задать путь к директории, в которой openssl будет ее искать.

Для получения информации о том, успешен ли был вызов утилиты openssl или нет, с возможностью уточнения ошибки, требуется парсить stdout и stderror. В конце статьи приведена ссылка на PHP-скрипт, который использует данную утилиту.

Теперь перейдем к реализации законченных пользовательских сценариев.

Механизм отправки документов подписанных усиленной электронной подписью

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

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

  1. Иванов шифрует «послание» своим закрытым ключом и как результат происходит его подписывание.
  2. Далее Иванов шифрует открытым ключом, который перед этим ему отправила Налоговая то, что получилось после выполнения пункта 1. Теперь никто посторонний не сможет ничего прочитать, если даже перехватит.
  3. После того как Налоговая получила «послание» Иванова, она сначала  расшифровывает его своим закрытым ключом и видит там  зашифрованный документ Иванова.
  4. Тут-то «Налоговая» расшифровывает его с помощью открытого ключа переданного ей Ивановым в самом начале. В результате чего происходит сверка подписи Иванова.

А на «рабоче-крестьянском» языке «явок и паролей» это будет приблизительно похоже на такое мероприятие:

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

Иванов, получив посылку и бандероль прячет, например, свою подписанный документ в шкатулку и закрывает её ключом из полученной бандероли. Укладывает эту секретную шкатулку в свой чемодан и тоже закрывает уже на свой ключ. А потом посылкой отправляет эту «матрёшку» в Налоговую. Ключи от шкатулки и чемодана оставляет у себя.

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

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

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

Обязательные реквизиты

Доверенность на использование ЭЦП руководителя компании обязательно должна содержать:

  • данные о представителе и представляемом лице (согласно ст. 185 ГК РФ п.1). К таким данным относят полное ФИО, серию и номер паспорта, полный адрес регистрации, ОГРН, ИНН и юр. адрес компании;
  • полный и подробный список возможных действий и полномочий, которыми наделяется представитель;
  • дату составления и заверения акта о передаче электронной подписи. Без этого по п. 1 ст. 186 ГК РФ документ не будет иметь юридической силы.

Помимо этого в акт желательно включить:

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

Срок действия документа определяется ст. 186 ГК РФ. Если конкретная дата не указана, то срок действия доверенности сохраняется со дня ее подписания. Если доверенность оформляется для совершения действий за границей и не содержит данных о ее сроке действия, то юридическая сила сохраняется до момента ее отмены соответствующим документом.

Передача эцп на практике

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

  • получения финансовой выгоды;
  • использования электронной подписи для компрометации организации или кражи информации;
  • получения доступа к секретной информации и т.д.

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

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

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

Порядок ведения егрюл

Каждое вновь созданное юридическое лицо заносится в реестр под своим номером. Этот номер закрепляется за юридическими лицами. С момента внесения в реестр данный код является основным государственным регистрационным номером (ОГРН) для каждого юридического лица.

Записи в реестре расположены в строгом хронологическом порядке. Реестр принадлежит Федеральной налоговой службе и его ведут как в бумажном варианте, так и в электронном. Оба эти варианта доступны гражданам. При необходимости каждый может заказать такие документы из реестра:

  • Выписку из реестра.
  • Копию документа.
  • Справку о том, что запрашиваемая информация отсутствует в реестре.

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

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

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

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

Работа с ключевыми парами гост р 34.10-2001

1. Для получения декрипторов ключевых пар, хранящихся на устройстве, требуется ввод PIN-кода. Следует понимать, что само значение закрытого ключ получено быть не может, так как ключ является неизвлекаемым.

var keys = Array();

try
{   
    plugin.login(deviceId, "12345678");
    keys = plugin.enumerateKeys(deviceId, null);
}
catch (error) 
{
    console.log(error);
}

2. Для генерации ключевой пары требуется ввод PIN-кода. При генерации ключа параметры могут быть выбраны из набора:

  • A: id-GostR3410-2001-CryptoPro-A-ParamSet
  • B: id-GostR3410-2001-CryptoPro-B-ParamSet
  • C: id-GostR3410-2001-CryptoPro-C-ParamSet
  • XA: id-GostR3410-2001-CryptoPro-XchA-ParamSet
  • XB: id-GostR3410-2001-CryptoPro-XchB-ParamSet

Пример генерации ключевой пары ГОСТ Р 34.10-2001:

var options = {};
var keyId;

try 
{
    keyId = plugin.generateKeyPair(deviceId, "A",  null, options);
}
catch (error) 
{
    console.log(error);
}

3. С помощью функции deleteKeyPair ключевая пара может быть удалена с токена.

Сертификат выдается при регистрации в системе

  • Получаем список подключенных к компьютеру устройств Рутокен ЭЦП
  • Генерируем ключевую пару ГОСТ Р 34.10-2001 на выбранном Рутокен ЭЦП
  • Cоздаем запрос PKCS#10 на сертификат для сгенерированной ключевой пары
  • Отправляем запрос на сервер
  • На сервере создаем сертификат, привязываем к аккаунту (сам сертификат или его дескриптор). Следует отметить, что дескрипторы сертификатов, полученные при вызове функции enumerateCertificates, являются уникальными и неизменными
  • Отправляем сертификат на клиент
  • На клиенте визуализируем полученный сертификат
  • Импортируем полученный сертификат в Рутокен ЭЦП

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

Далее запрос отправляется на сервер, где на его основе выдается сертификат.Для этого на сервере должен быть установлен и правильно сконфигурирован openssl версии от 1.0 и развернут функционал УЦ.

1. Генерация улюча УЦ:

openssl genpkey -engine gost -algorithm GOST2001 -pkeyopt paramset:A -out ca.key

После этого в файле ca.key будет создан закрытый ключ

2. Создание самоподписанного сертификата УЦ:

openssl req -engine gost -x509 -new -key ca.key -out ca.crt


После ввода необходимой информации об издателе в файле ca.crt будет создан сертификат УЦ.

Сертификат уже имеется на токене, выдан внешним уц

Ключевая пара при этом должна быть создана в формате, совместимом с библиотекой rtPKCS11ECP для Рутокен ЭЦП.

Последовательность вызовов на клиенте:
Справку о том, что физическое лицо не является индивидуальным предпринимателем, можно получить бесплатно |  ФНС России  | 72 Тюменская область

Подпись получается в base64-формате. При проверке ее на сервере с помощью openssl подпись следует обрамить заголовками, чтобы сделать из нее PEM. Выглядеть подобная подпись будет примерно так:

-----BEGIN CMS-----
MIIDUQYJKoZIhvcNAQcCoIIDQjCCAz4CAQExDDAKBgYqhQMCAgkFADCBygYJKoZI
hvcNAQcBoIG8BIG5PCFQSU5QQURGSUxFIFVURjg PFY 0JLRi9C/0L7Qu9C90LjR
gtGMINCw0YPRgtC10L3RgtC40YTQuNC60LDRhtC40Y4/PCE c2VydmVyLXJhbmRv
bS1kYXRhZTI6ZGE6MmM6MDU6MGI6MzY6MjU6MzQ6YzM6NDk6Nzk6Mzk6YmI6MmY6
YzU6Mzc6ZGI6MzA6MTQ6NDQ6ODM6NjY6Njk6NmI6OWY6YTU6MDk6MzQ6YmY6YzQ6
NzY6YzmgggGeMIIBmjCCAUegAwIBAgIBATAKBgYqhQMCAgMFADBUMQswCQYDVQQG
EwJSVTEPMA0GA1UEBxMGTW9zY293MSIwIAYDVQQKFBlPT08gIkdhcmFudC1QYXJr
LVRlbGVjb20iMRAwDgYDVQQDEwdUZXN0IENBMB4XDTE0MTIyMjE2NTEyNVoXDTE1
MTIyMjE2NTEyNVowEDEOMAwGA1UEAxMFZmZmZmYwYzAcBgYqhQMCAhMwEgYHKoUD
AgIjAQYHKoUDAgIeAQNDAARADKA/O1Zw50PzMpcNkWnW39mAJcTehAhkQ2Vg7bHk
IwIdf7zPe2PxHyAr6lH stqdACK6sFYmkZ58cBjzL0WBwaNEMEIwJQYDVR0lBB4w
HAYIKwYBBQUHAwIGCCsGAQUFBwMEBgYpAQEBAQIwCwYDVR0PBAQDAgKkMAwGA1Ud
EwEB/wQCMAAwCgYGKoUDAgIDBQADQQD5TY55KbwADGKJRK bwCGZw24sdIyayIX5
dn9hrKkNrZsWdetWY3KJFylSulykS/dfJ871IT 8dXPU5A7WqG4 MYG7MIG4AgEB
MFkwVDELMAkGA1UEBhMCUlUxDzANBgNVBAcTBk1vc2NvdzEiMCAGA1UEChQZT09P
ICJHYXJhbnQtUGFyay1UZWxlY29tIjEQMA4GA1UEAxMHVGVzdCBDQQIBATAKBgYq
hQMCAgkFADAKBgYqhQMCAhMFAARAco5PumEfUYVcLMb1cnzETNOuWC8Goda8pdUL
W5ASK tztCwM7wpXgAy Y6/sLtClO9sh8dKnAaEY2Yavg3altQ==
-----END CMS-----

Проверка подписи на сервере:

Сравнение программ для создания электронной подписи

 

Плагины КриптоПро

Отдельная программа КриптоАРМ

Веб-сервис Контур.Крипто

Стоимость

Платные

Бесплатна только базовая версия Старт

Все функции доступны бесплатно

Форматы документов

Word и Excel, PDF

Все

Все

Соподпись/ пакетная подпись

Есть

Есть

Есть

Максимальный вес файла

Без ограничений

Без ограничений

до 100 Мб

Создание усовершенство

ванной подпись

Есть

Только в платных версиях

Есть

Присоединенная/ отсоединенная

Есть

Присоединенная/ отсоединенная

Только отсоединенная

Функции проверки, шифрования и расшифрования

Есть

Только в платных версиях

Есть

Получить электронную подпись

Шифрование данных на клиенте для сервера

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

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

Для этого следует использовать функцию importCertificate, при этом в качестве параметра category следует передать CERT_CATEGORY_OTHER. Для использования в функции cmsEncrypt нужно получить тело сертификата по его дескриптору с помощью функции getCertificate.

При этом дескриптор является уникальным и неизменным и может быть сохранен в учетной записи пользователя на сервере при импорте сертификата сервера. Для того, чтобы использовалось аппаратное шифрование по ГОСТ 28147-89, требуется установить опцию useHardwareEncryption в true. В противном случае будет использована быстрая программная реализация ГОСТ 28147-89.

Последовательность вызовов приведена на картинке:

Шифрование данных на клиенте:

try
{
    var recipientCert = plugin.getCertificate(deviceId, certRecId);        
}
catch (error) 
{
    console.log(error);
}

var options = {};
options.useHardwareEncryption = true;
var cms;

try
{
    cms = plugin.cmsEncrypt(deviceId, certSenderId, recipientCert, data, options);
}
catch (error) 
{
    console.log(error);
}

Расшифрование данных на сервере, перед расшифрованием сообщение нужно обрамить PEM-заголовками «——BEGIN PKCS7——» и «——END PKCS7——«:

openssl smime -engine gost -decrypt -in message.cms -inform PEM -recip recipient.crt -inkey recipient.key

recipient.crt — сертификат того, для кого зашифровано сообщение, recipient.key — ключ того, для кого зашифровано сообщение.

Электронная цифровая подпись на сайте при помощи криптопро эцп browser plug-in / песочница / хабр

В данной статье рассмотрим использование электронно-цифровой подписи на сайте.

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

1) СКЗИ (средство криптографической защиты информации)
Мой опыт работы показывает, что порядка 90% использует КриптоПро CSP (скачать), который в явном или неявном виде продвигают удостоверяющие центры. Порядка 10% VipNet CSP (), который можно использовать бесплатно. С остальными СКЗИ на практике не встречался.
2) КриптоПро ЭЦП Browser plug-in (страница плагина).
3) Установленная подпись (хотя бы одна).

Проверка возможности осуществления подписи
javascript ( jquery)

1) Попытка создать объект cades.
Нужно сделать примечание, что тут и далее, будет деление на браузер с ActiveX(читай IE) и остальные.
Проверка будет осуществляться:

return ('ActiveXObject' in window);

для ActiveX:

try {
    store = new ActiveXObject('CAdESCOM.store');
    status = true;
} catch (e) {
    status = false;
}

Для остальных:

if (navigator.mimeTypes['application/x-cades']) {
    status = true;
} else {
    status = false;
}

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

Стоит иметь ввиду, что после обновления хрома до версии 42 (спасибо

статье

за информацию) нужно включить:

chrome://flags/#enable-npapi

Следующая проверка — а разрешен ли плагин для запуска (не для IE проверка)?

try {
    store = objSign.CreateObject('CAPICOM.store');
    status = true;
} catch (e) {
    status = false;
}

Где objSign:

objSign = $('<object/>', {
    'id': 'cadesplugin',
    'type': 'application/x-cades',
    'css': {
        'visibility': 'hidden',
        'height': '0px',
        'width': '0px',
        'position': 'absolute'
    }
}).appendTo('body').get(0);

Проверяем на СКЗИ путем попытки открыть хранилище.

try {
    store.Open();
    status = true;
} catch (e) {
    status = false;
}

Проверяем на существование сертификатов в хранилище:

if ('Certificates' in store) {
    certs = store.Certificates;
}

И их количество (бывает, что Certificates есть, но пуст, что нам тоже не подойдет):

if (certs.Count) {
    status = true;
} else {
    status = false;
}

Первый шаг сделали — проверили возможность подписания чего-либо.

Выбор электронной цифровой подписи

У клиента может быть установлено несколько сертификатов. Сертификаты могут быть от разных удостоверяющих центров (УЦ), выданными быть разным людям, с разными датами выдачами, поэтому надо предоставить выбор, каким именно он хочется воспользоваться.

1) Группируем по удостоверяющим центрам
Информация об удостоверяющем центре хранится в сертификате.

certs.Item(i).GetInfo(1)
где certs — сертификаты из хранилища, см выше
i — порядковый номер сертификата от 1 (обратите внимание) до certs.Count.
Обратите внимание, что, в случае «кривых» сертификатов, вернуться может и undefined, имеет смысл сделать один дефолтный УЦ для таких случаев.

Теперь мы знаем список УЦ, услугами которых воспользовался клиент.
Запоминаем их и выведем через optgroup.
Сам text у option будет таким:

cert.GetInfo(6)   ' ('   formatDate(cert.ValidFromDate)   ' - '   formatDate(cert.ValidToDate)   ')'

в

cert.GetInfo(6)

— кому выдан сертификат

в

ValidFromDate

— с какого срока сертификат начал/начнет действие

в

ValidToDate

— соответственно, до какого срока

Ну и форматирование даты стандартное:

function formatDate(d) {
    try {
        d = new Date(d);
        return ('0'   d.getDate()).slice(-2)   '.'   ('0'   (d.getMonth()   1)).slice(-2)   '.'   d.getFullYear();
    } catch (e) {
        return '';
    }
}

Еще можно подсветить option.

Зеленым — для работоспособных сертификатов, красным — нет.

Информацию можно получить при помощи самого сертификата.

try {
    return cert.IsValid().Result;
} catch (e) {
    return false;
}

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

Но самые базовые, например, проверка даты — проверяет.

В value у option запишем отпечаток cert.Thumbprint.
Можно порядковый номер записать, можно другие данные — на ваше усмотрение.

Подписание
Ну и, собственно, самый главный шаг, к которому мы стремились — подписание.

1) Находим выбранный сертификат.
Для нашего примера:

certs.Find(0, thumbprint).Item(1)

— означает, что мы ищем по отпечатку

1

— что используем первый результат выборки (по факту единственный)

2) Подписываем:

if (isActiveX()) {
    var CPSigner = new ActiveXObject('CAdESCOM.CPSigner');
} else {
    var CPSigner = objSign.CreateObject('CAdESCOM.CPSigner');
}
CPSigner.Certificate = cert;
if (isActiveX()) {
    var SignedData = new ActiveXObject('CAdESCOM.CadesSignedData');
} else {
    var SignedData = objSign.CreateObject('CAdESCOM.CadesSignedData');
}
SignedData.Content = text;
return SignedData.SignCades(CPSigner, 1, false);

где cert — сертификат, при помощи которого подписываем
text — собственно, что подписываем
Ну а в return возвращается подписанное сообщение.

p.s. По максимуму код постарался вычистить от специфики проекта. Если кому-то этот материал пригодится и будет интересно — напишу и серверную часть. Проверка подписанного сообщения (с цепочкой и без), проверка сертификата (ocsp и без), использования tsp и т.д.

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

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

Adblock
detector