Двухфакторная аутентификация на сайте с использованием USB-токена. Теперь и для Linux / Блог компании «Актив» / Хабр

Двухфакторная аутентификация на сайте с использованием USB-токена. Теперь и для Linux / Блог компании «Актив» / Хабр Электронная цифровая подпись
Содержание
  1. Что делать, если потеряли электронную подпись
  2. Начало работы
  3. Что такое электронная подпись
  4. Что такое двухфакторная аутентификация?
  5. Средства простой аутентификации
  6. Строгие средства аутентификации
  7. Apache
  8. Fido u2f — универсализируем второй фактор
  9. Usb-токены и смарт-карты
  10. Биометрические методы аутентификации
  11. Браузер
  12. Второй блок задач: взаимодействие с контролирующими органами через интернет
  13. Выписывание сертификатов
  14. Где можно использовать электронную подпись
  15. Зачем нужна электронная подпись
  16. Как можно подтвердить свою личность?
  17. Как начать работать с квалифицированной электронной подписью
  18. Как перевыпустить сертификат
  19. Как подключить двухфакторную аутентификацию в «яндексе»
  20. Как подключить двухфакторную аутентификацию в google
  21. Как подключить двухфакторную аутентификацию в telegram
  22. Как подключить двухфакторную аутентификацию во «вконтакте»
  23. Как подписать документ электронной подписью
  24. Как приобрести подпись физическому лицу
  25. Как приобрести подпись юридическому лицу и ип
  26. Как проверить подлинность подписи
  27. Как устроена эп
  28. Как это работает?
  29. Кто использует?
  30. Особенности:
  31. Пароль или ключ? смотрим на риски
  32. Первый блок задач: осуществление безналичных платежей с использованием электронных сервисов банков
  33. Поддержка браузерами
  34. Примечания
  35. Проверяем работу в firefox
  36. Сервисы с множественными точками входа
  37. Системы управления идентификацией и доступом к информационным ресурсам
  38. Создаём ключи и сертификат root ca
  39. Спецификации
  40. Суть работы:
  41. Третий блок задач: электронный документооборот внутри компании и с контрагентами.
  42. Цифровая подпись
  43. Эцп как сервис
  44. Четвертый блок задач: работа с веб-сервисами
  45. Шаг второй — защита от фишинга
  46. Шаг первый — вызов-ответ
  47. Шаг пятый— аттестация ключа
  48. Шаг третий — приватность или регистрационно-зависимая пара ключей
  49. Шаг четвертый — защита от клонирования
  50. Шаг шесть с половиной — защита от перебора
  51. Подводим итоги

Что делать, если потеряли электронную подпись

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

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

Начало работы

  1. Устанавливаем:
    $ apt-get install xca
  2. И запускаем:
    $ xca
  3. Создаём нашу базу данных для CA — /root/CA.xdb
    Мы рекомендуем хранить базу данных Certificate Authority в папке, куда есть доступ только у администратора. Это важно для защиты закрытых ключей корневых сертификатов, которые используются для подписывания всех остальных сертификатов.

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

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

Что такое двухфакторная аутентификация?

2FA, или двухфакторная аутентификация — это такой метод идентификации пользователя для входа в сервис, при котором нужно двумя разными способами подтвердить, что именно он — хозяин аккаунта. В некоторых сервисах, например, «ВКонтакте», она называется «подтверждение входа».

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

Средства простой аутентификации

Общий признак — отсутствие криптографических механизмов защиты.

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

Строгие средства аутентификации

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

Apache

Так же как и с nginx проблем с установкой apache ни у кого не должно возникнуть. Если же вы не знаете, как установить этот web-сервер, просто воспользуйтесь официальной документацией.

Fido u2f — универсализируем второй фактор

В 2021 году в Кремниевой Долине был организован FIDO (Fast IDentity Online) альянс для того, чтобы адресовать проблемы легкой и безопасной аутентификации в интернете. На данный момент FIDO имеет более трёхсот ассоциативных членов и тридцать членов правления.

Основные цели, которые FIDO ставит перед собой, это простые в использовании, безопасные, приватные и стандартизированные решения.

На данный момент FIDO представили два стандарта: U2F (Universal Second Factor) — универсальный второй фактор, UAF (Universal Authentication Framework) — универсальный аутентификационный фреймворк для биометрической аутентификации. Сегодня мы поговорим о U2F. Если тема будет интересна, то в будущем я могу написать статью по UAF.

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

Usb-токены и смарт-карты

Смарт-карты и USB-токены могут служить персональным средством аутентификации и электронной подписи для организации защищенного и юридически значимого документооборота (см. Рисунок 3). Более того, их применение позволяет унифицировать средства аутентификации — начиная с операционных систем и заканчивая системами контроля доступа в помещения.

Биометрические методы аутентификации

Системы двухфакторной аутентификации применяются в таких областях, как электронная коммерция, включая интернет-банкинг, и аутентификация при удаленном доступе с недоверенного рабочего места. Более строгую аутентификацию обеспечивают биометрические методы.

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

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

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

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


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

Браузер

Алгоритм взаимодействия с U2F на стороне браузера такой:

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

  • Браузер передает подпись зависимой стороне

  • Зависимая сторона верифицирует подпись

Второй блок задач: взаимодействие с контролирующими органами через интернет

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

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

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

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

Выписывание сертификатов

В предыдущих статьях мы опирались на то, что сертификаты сервера и клиентов будут выписываться с помощью Microsoft CA. Но раз уж мы настраиваем все в Linux, то заодно расскажем про альтернативный способ выписывания этих сертификатов — не покидая Linux.


В качестве CA будем использовать XCA (

Где можно использовать электронную подпись

ПростаяНеквалифицированнаяКвалифицированная
Внешние и внутренние электронные документы
Документооборот с физическими лицами
Госуслуги
Документы для ИФНС в личном кабинете налогоплательщика
ПФР и ФСС
Арбитражный суд

Зачем нужна электронная подпись

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

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

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

Как можно подтвердить свою личность?

Большинство приложений и сервисов предлагают пользователю на выбор такие варианты двойной аутентификации:

Как начать работать с квалифицированной электронной подписью

Чтобы начать работать с электронной подписью, необходимо подготовить свое рабочее место и приобрести сертификат подписи. Сертификат выдают быстро — в течение часа.

Еще для работы с квалифицированной подписью надо будет установить программу для криптозащиты информации (СКЗИ). Самые распространенные средства криптозащиты в России — это «Криптопро CSP», Signal-com CSP, «Лисси CSP», Vipnet CSP. Все они примерно одинаковые.

Какое конкретно СКЗИ потребуется и какие настройки будут нужны, вам скажут в удостоверяющем центре или МФЦ.

Как перевыпустить сертификат

Срок действия сертификата электронной подписи — год. Когда он подойдет к концу, выпустите новый сертификат. Для этого обратитесь с заявлением в удостоверяющий центр или МФЦ. Если в документах ничего не изменилось, нести их снова не нужно. Если какие-то документы поменялись, нужно принести оригиналы только этих документов.

Как подключить двухфакторную аутентификацию в «яндексе»

Чтобы подключить двухфакторную аутентификацию в сервисах «Яндекса», обязательно нужно приложение «Яндекс.Ключ». Это же приложение можно использовать для входа в любые другие сервисы, поддерживающие подтверждение входа через приложения-аутентификаторы.

Как подключить двухфакторную аутентификацию в google

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

Дальше необходимо выбрать способ, которым вы будете получать коды в дальнейшем: SMS, звонок, резервные коды.

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

Подтвердите, что вы действительно хотите подключить эту функцию.

Как подключить двухфакторную аутентификацию в telegram

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

Нужно выбрать «Настройки» → «Конфиденциальность» → «Безопасность» → «Двухэтапная аутентификация».

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

Как подключить двухфакторную аутентификацию во «вконтакте»

Зайдите в «Настройки» → Во вкладке «Безопасность» выберите «Подтверждение входа» → «Подключить». Дальше нужно будет ввести свой пароль, ввести последние цифры номера, с которого на ваш телефон поступит звонок, и функция подтверждения входа будет подключена.

Зайдите в «Настройки» (в приложении они находятся в меню в нижней части экрана) → выберите «Управление аккаунтом VK Connect» → «Безопасность и вход» → «Подтверждение входа».

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

Как подписать документ электронной подписью

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

Например, так работает процесс подписания с помощью программы «Крипто-АРМ»:

  1. Кликните правой кнопкой мыши по документу.
  2. Найдите пункт меню «Крипто-АРМ» и нажмите «Подписать».
  3. После этого запускается мастер создания электронной подписи, который подробно объяснит все дальнейшие шаги.
  4. В итоге рядом с документом появится новый файл документ.doc.sig — это и есть файл электронной подписи.
Запуск мастера создания электронной подписи с помощью «Крипто-АРМ» в Виндоус

В результате документ становится недоступным для изменения, а рядом с ним в папке появится файл подписи в формате документ.doc.sig.

Если у вас установлена СКЗИ и есть подпись, то подписать документ можно прямо в ворде

В «Гугл-докс» плагины для электронной подписи можно найти во вкладке «Дополнения».

Чтобы подписать документ в «Гугл-докс» с помощью плагина eSignGSA, найдите плагин в разделе «Дополнения» и установите его. Затем нажмите Start

Как приобрести подпись физическому лицу

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

  1. Заявление на изготовление квалифицированного сертификата — шаблон дадут в МФЦ.
  2. Паспорт.
  3. СНИЛС.
  4. Свидетельство о присвоении ИНН.

В Москве электронная подпись для граждан стоит 900—950 рублей. Вместе с носителем цена составит 1500—1600 Р. Отдельно носитель будет стоить от 1500 рублей. Эта цена отличается в зависимости от тарифа удостоверяющего центра и того, насколько защищенную подпись вы хотите использовать.

Как приобрести подпись юридическому лицу и ип

Юридические лица получают квалифицированные сертификаты подписи в удостоверяющем центре или МФЦ.

Как проверить подлинность подписи

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

  1. Портал «Криптопро».
  2. Сайт госуслуг.
  3. Сервис «Контур-крипто».
На сайте «Криптопро» укажите путь к подписанному документу и подписи в специальном окне, и программа выдаст результат

Как устроена эп

Файл электронной подписи генерирует специальная программа — средство криптографической защиты информации (СКЗИ). Когда вы подпишете документ электронной подписью, эта программа просканирует документ. В итоге она создаст уникальное сочетание данных документа — хэш-сумму.

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

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

  1. Кто владеет подписью.
  2. Какие у него полномочия.
  3. Какая организация выдала подпись и какие у нее полномочия.

Программа СКЗИ проверяет хэш-сумму и сравнивает ее с содержанием документа. Если все совпало, документ не меняли и подпись цела. Несовпадения означают, что документ изменили после того, как подписали. Тогда подпись автоматически считается недействительной и документ теряет юридическую силу.

Как это работает?

У U2F протокола три уровня абстракции: Пользователь, Браузер(тех. Клиент) и сам Протокол.

Кто использует?

Google, Github, WordPress, Dropbox, Evernote. Правительство Великобритании недавно ввело поддержку U2F для своих государственных сайтов, что немало доставляет.

Особенности:

  • Максимальный уровень защищенности. 

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

  • Максимально неудобные в использовании средства.

Спектр устройств, на которых возможно применение данных средств, ограничен (необходим внешний разъем для подключения устройства). Требуется установка ПО на компьютер, а также настройка рабочего места. Устройство может выйти из строя, при этом его восстановление или замена потребует времени.

  • Ненулевая стоимость. Из трех видов это самое дорогое средство.

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

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

Пароль или ключ? смотрим на риски

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

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

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

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

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

Поддержка браузерами

Chrome поддерживает U2F из коробки с начала 2021. U2F поддержка в Firefox в данный момент в активной разработке. Microsoft анонсировала поддержку U2F как для Windows 10 так и для Edge как часть FIDO2.0 стека, и она уже доступна в Insider Build.

Примечания

Если вы хотели бы больше узнать о U2F и его внедрении, а так же о других решениях FIDO альянса, пишите в комментариях.

Проверяем работу в firefox

Раз уж мы всё полностью делаем в Linux, то будем считать, что и наши пользователи тоже работают в Linux (если у них Windows, то

  1. Запускаем Firefox.
  2. Попробуем в начале зайти без токена. Получаем вот такую картинку:
  3. Заходим на about:preferences#privacy, и идём в Security Devices…
  4. Жмём Load, чтобы добавить новый PKCS#11 Device Driver и указываем путь до нашей librtpkcs11ecp.so.
  5. Для проверки того, что сертификат видится можно зайти в Certificate Manager. Отобразится запрос на ввод PIN-кода. После корректного ввода можно проверить, что на вкладке Your Certificates появился наш сертификат с токена.
  6. Теперь заходим с токеном. Firefox предлагает выбрать сертификат, который будет выбран на сервер. Выбираем наш сертификат.
  7. PROFIT!

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

Сервисы с множественными точками входа

Возьмем для примера Gmail.

В Gmail можно войти как с веб интерфейса, так и с мобильного. Как можно произвести авторизацию пользователя с андроид приложения, если AppID нашего приложения и AppID сервиса будут различаться?

Для этого есть фасеты (facets).

Фасеты — это JSON файл со списком всех ID, которым разрешается производить аутентификацию для выбранного сервиса. Для примера, вот фасеты Google:

Системы управления идентификацией и доступом к информационным ресурсам

Автоматизировать работу администратора безопасности и быстро реагировать на изменения политик безопасности помогают системы централизованного управления жизненным циклом средств аутентификации и ЭЦП. Например, система JaСаrta Management System (JMS)

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

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

Как считают в компании «Аладдин Р.Д.», JMS (см. Рисунок 7), имеющая сертификат ФСТЭК России, повышает уровень корпоративной безопасности благодаря использованию сертификатов открытого ключа стандарта X.509 и хранению закрытых ключей в защищенной памяти смарт-карт и USB-токенов.

Сегодня все более важную роль приобретают системы идентификации и управления доступом к информационным ресурсам предприятия (IDM). Недавно компания «Аванпост» выпустила четвертую версию своего продукта — программного комплекса Avanpost (см. Рисунок 8).

По мнению разработчиков, в отличие от зарубежных решений внедрение IDM Avanpost 4.0 происходит в сжатые сроки и требует меньших затрат, а его интеграция с другими элементами информационных систем является наиболее полной. Разработанный российской компанией, продукт соответствует отечественной нормативной базе в области ИБ, поддерживает отечественные удостоверяющие центры, смарт-карты и токены, обеспечивает технологическую независимость в такой важной области, как комплексное управление доступом к конфиденциальной информации.

Avanpost 4.0 решает задачу комплексного управления доступом: IDM используется в качестве центрального звена корпоративной системы ИБ, с которой интегрируются инфраструктуры PKI и единой авторизации (Single Sign On, SSO). ПО предусматривает поддержку двух- и трехфакторной аутентификации и биометрических технологий идентификации, реализацию SSO для мобильных платформ Android и iOS, а также коннекторы (модули сопряжения) с различными приложениями (см. Рисунок 9).

Как подчеркивают в компании «Аванпост», на российском рынке популярность интегрированных систем, включающих IDM, СКУД и аппаратные средства биометрической аутентификации, будет постепенно расти, однако еще более востребованными станут программные технологии и решения, в которых задействованы мобильные устройства: смартфоны и планшеты. Поэтому на 2021 год намечен выпуск ряда обновлений ПО Avanpost 4.0.

На базе Avanpost 4.0 можно создавать комплексные средства управления доступом для систем, объединяющих традиционные приложения и частные облака, работающие по модели IaaS, PaaS и SaaS (в последнем случае требуется API облачного приложения). В компании «Аванпост» заявляют, что ее решение для частных облаков и гибридных систем уже полностью проработано, а его коммерческое продвижение начнется, как только на российском рынке появится устойчивый спрос на подобные продукты.

В модуль SSO включен функционал Avanpost Mobile, поддерживающий популярные мобильные платформы Android и iOS. Этот модуль предоставляет безопасный доступ через браузер с мобильных устройств к внутрикорпоративным порталам и интранет-приложениям (портал, корпоративная почта Microsoft Outlook Web App и др.).

Версия для OS Android содержит встроенную полнофункциональную систему SSO, поддерживающую VoIP-телефонию, видео- и видео-конференц-связь (Skype, SIP), а также любые Android-приложения (например, клиенты корпоративных систем: бухгалтерских, CRM, ERP, HR и др.) и облачные Web-сервисы.

Создаём ключи и сертификат root ca

В основе инфраструктуры открытых ключей (PKI) лежит иерархическая система. Главным в этой системе является корневой центр сертификации или root CA. Его сертификат и надо создать в первую очередь.

  1. Создаём для CA закрытый ключ RSA-2048. Для этого на вкладке Private Keys нажимаем New Key и выбираем соответствующий тип.
  2. Задаём имя для новой ключевой пары. Я её назвал — CA Key.
  3. Выписываем сам сертификат CA, с использованием созданной ключевой пары. Для этого переходим на вкладку Certificates и нажимаем New Certificate.
  4. Обязательно выбираем SHA-256, потому что использование SHA-1 уже не может считаться безопасным.
  5. В качестве шаблона обязательно выбираем [default] CA. Не забудьте нажать на Apply all, иначе шаблон не применяется.
  6. На вкладке Subject выбираем нашу ключевую пару. Там же вы можете заполнить все основные поля сертификата.

Спецификации

На данный момент готовы спецификации для USB, NFC и Bluetooth LE.

Суть работы:

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

Третий блок задач: электронный документооборот внутри компании и с контрагентами.

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

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

Вторым по значимости фактором является юридическая значимость документов — они должны иметь вес в суде.

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

Цифровая подпись

Применяемые в смарт-картах и токенах (см. Рисунок 2) технологии установления подлинности отправителя становятся все более зрелыми, практичными и удобными. Например, их можно использовать в качестве механизма аутентификации на Web-ресурсах, в электронных сервисах и платежных приложениях с ЭЦП.

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

Частный ключ, у которого только один владелец, используется для цифровой подписи и шифрования при передаче данных. Само сообщение может быть прочитано любым, кто имеет открытый ключ. Электронная цифровая подпись может генерироваться USB-токеном — аппаратным устройством, которое формирует пару ключей.

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

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

Разработчики предлагают различные компоненты для встраивания криптографических функций в Web-приложения — например, SDK и подключаемые модули к браузерам с программным интерфейсом доступа к криптографическим функциям. С их помощью можно реализовывать функции шифрования, аутентификации и ЭЦП с высоким уровнем безопасности. Средства цифровой подписи предоставляются также в виде онлайновых сервисов (см. врезку «ЭЦП как сервис»).

Эцп как сервис

Для автоматизации подписи, обмена и хранения электронных документов можно воспользоваться онлайновым сервисом eSign-PRO (www.esign-pro.ru). Все регистрируемые в нем электронные документы защищаются цифровой подписью, причем формирование и проверка ЭЦП осуществляются на стороне клиента с помощью криптографического модуля eSign Crypto Plugin для браузера, устанавливаемого при первом обращении к порталу. Рабочие станции взаимодействуют с Web-сервером портала по протоколу TLS в режиме односторонней аутентификации сервера. Аутентификация пользователей выполняется на основе персональных идентификаторов и паролей, передаваемых на сервер после установления защищенного соединения.

Сервис eSign-PRO поддерживается инфраструктурой открытых ключей на базе удостоверяющего центра e-Notary, аккредитованного ФНС России и принадлежащего компании «Сигнал-КОМ», но могут приниматься и сертификаты, выпущенные другим удостоверяющим центром.

Как подчеркивают разработчики, этот сервис соответствует требованиям Федерального закона № 63-ФЗ «Об электронной подписи» и использует сертифицированные ФСБ России средства криптографической защиты «Крипто-КОМ 3.2». Ключевая информация может храниться на различных носителях, включая USB-токены.

«Инфраструктура PKI является наилучшей схемой для безопасной аутентификации пользователей, — считает Кирилл Мещеряков, руководитель направления по работе с технологическими партнерами компании «Актив». — Ничего надежнее цифровых сертификатов в данной области еще не придумали.

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

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

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

Четвертый блок задач: работа с веб-сервисами

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

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

Шаг второй — защита от фишинга

Подписываем оригинальный URL и Channel IDПодписываем оригинальный URL и Channel ID

Шаг первый — вызов-ответ

Для начала мы производим простой вызов-ответ. Сервер посылает нам случайный вызов. Наше устройство подписывает вызов и возвращает подпись серверу, после чего сервер сверяет подпись.

Шаг пятый— аттестация ключа

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

Зачем это надо? Например, если вы — форум о котятах, то вы возможно не сильно волнуетесь о том, насколько безопасны U2F устройства ваших пользователей, а если вы банк, то возможно вы разрешите только устройства, выполненные в железе, и только если они сертифицированы FIDO альянсом.

Шаг третий — приватность или регистрационно-зависимая пара ключей

Генерируем регистрационно-зависимую паруГенерируем регистрационно-зависимую пару

Шаг четвертый — защита от клонирования

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

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

Шаг шесть с половиной — защита от перебора

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

Подводим итоги

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

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

Читайте также:  Как получить электронную подпись — Удостоверяющий центр — СКБ Контур
Оцените статью
ЭЦП Эксперт
Добавить комментарий