Можно ли записать цифровую подпись на старый токен

Обновлено: 30.06.2024

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

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

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

Хеш-функции

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

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

Криптография с открытым ключом (PKC)

Криптография с открытым ключом, или PKC, относится к криптографической системе, в которой используется пара ключей: один открытый ключ и один закрытый ключ. Эти два ключа математически связаны и могут использоваться как для шифрования данных, так и для цифровых подписей.

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

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

В некоторых случаях цифровые подписи могут включать шифрование, но это не всегда так. Например, блокчейн Биткойн использует PKC и цифровые подписи, но, вопреки мнению многих, в этом процессе нет шифрования. Технически Биткойн использует так называемый Алгоритм цифровой подписи на основе эллиптических кривых (ECDSA) для аутентификации транзакций.

Как работают цифровые подписи

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

Хеширование данных

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

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

Подписание

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

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

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

Подтверждение

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

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

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

Почему цифровые подписи важны?

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

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

Случаи использования

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

  • Информационные технологии. Для повышения безопасности систем интернет-коммуникаций.
  • Финансы. Цифровые подписи можно применять к аудитам, отчетам о расходах, кредитным договорам и многому другому.
  • Легально. Цифровая подпись всех видов деловых контрактов и юридических соглашений, включая государственные документы.
  • Здравоохранение. Цифровые подписи могут предотвратить подделку рецептов и медицинских карт.
  • Блокчейн. Схемы цифровой подписи гарантируют, что только законные владельцы криптовалюты смогут подписать транзакцию для перевода средств (при условии, что их закрытые ключи не будут скомпрометированы).

Ограничения

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

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

Электронные подписи и цифровые подписи

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

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

Заключительные мысли

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

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

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

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

Требования к сертификату для подписи токена

Для работы с AD FS сертификат для подписи токена должен соответствовать следующим требованиям:

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

Учетная запись службы AD FS должна иметь доступ к закрытому ключу сертификата для подписи токена в личном хранилище локального компьютера. Об этом позаботится программа установки. Вы также можете использовать оснастку «Управление AD FS», чтобы гарантировать этот доступ, если впоследствии вы измените сертификат для подписи токена.

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

Как сертификаты для подписи токена используются партнерами

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

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

Для сред партнеров по федерации, когда ЦС выдал сертификат для подписи токена, убедитесь, что:

Списки отзыва сертификатов (CRL) сертификата доступны проверяющим сторонам и веб-серверам, которые доверяют серверу федерации.

Сертификату корневого центра сертификации доверяют проверяющие стороны и веб-серверы, которые доверяют серверу федерации.

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

Соображения по развертыванию сертификатов для подписи маркеров

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

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

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

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

Информацию об установке сертификата при использовании Microsoft Certificate Services в качестве центра сертификации предприятия см. в разделе IIS 7.0: создание сертификата сервера домена в IIS 7.0.

Информацию об установке сертификата общедоступного центра сертификации см. в разделе IIS 7.0: запрос сертификата интернет-сервера.

Информацию об установке самозаверяющего сертификата см. в разделе IIS 7.0: создание самозаверяющего сертификата сервера в IIS 7.0.

Что

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

Что в имени? В данном случае совсем немного.

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

Давайте рассмотрим различия.

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

Согласно Федеральному закону США о ESIGN электронные подписи определяются как:

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

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

Что такое цифровая подпись?

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

  • Является ли человек, подписавший документ, тем, за кого себя выдает? Или, другими словами, как проверить, действительна ли подпись и не подделана ли она?
  • Как защитить (или, с точки зрения получателя, подтвердить), что содержимое документа не было изменено?

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

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

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

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

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

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

Как узнать, является ли подпись цифровой и ей можно доверять?

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

adobe reader зеленая галочка рядом с подлинной подписью .jpg

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

желтая предупреждающая подпись Adobe Reader имеет проблемы. jpg

Adobe Reader Red X подпись недействительна. jpg

Какие типы подписей имеют юридическую силу?

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

Цифровые подписи и печати GlobalSign помогут вам соответствовать следующим международным нормам и стандартам:

  • US ESIGN (электронные подписи в мировой и национальной торговле)
  • FDA CFR 21, часть 11
  • США UETA (Единый закон об электронных транзакциях)
  • Профессиональные инженерные печати штата США (PE)
  • Типовой закон ООН об электронной подписи
  • Сарбейнс-Оксли (SOX)
  • eIDAS (расширенные и квалифицированные электронные подписи, электронные печати)
  • CNCA (Управление по сертификации и аккредитации Китайской Народной Республики)

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

Какие платформы для подписания документов поддерживают цифровые подписи?

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

Подписать документ

DocuSign поддерживает цифровые подписи и электронные печати. Благодаря интеграции с GlobalSign документы с цифровой подписью проверяются на предмет их целостности и личности подписавшего.

Знак Adobe

Adobe поддерживает два типа цифровых подписей: Сертифицированную и Утвержденную.

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

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

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

пример сертифицированной цифровой подписи Adobe.jpg

Пример сертифицированной цифровой подписи Adobe

Майкрософт Ворд

Microsoft также поддерживает два типа цифровых подписей с использованием сертификата токена: видимые и невидимые.

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

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

Как я могу внедрить цифровые подписи в свою команду или организацию?

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

  • Вы можете подписать локально с помощью токена.
  • Или вы можете использовать облачные решения для подписи.

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

Как подписать документ цифровой подписью?

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

Дополнительная литература

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

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

Цифровые идентификаторы содержат два ключа: открытый ключ блокирует или шифрует данные; закрытый ключ разблокирует или расшифрует эти данные. Когда вы подписываете PDF-файлы, вы используете закрытый ключ для применения своей цифровой подписи. Открытый ключ находится в сертификате, который вы распространяете среди других. Например, вы можете отправить сертификат тем, кто хочет подтвердить вашу подпись или личность. Храните свое цифровое удостоверение в надежном месте, поскольку оно содержит ваш закрытый ключ, который другие могут использовать для расшифровки вашей информации.

Цифровые удостоверения личности в Acrobat

Цифровые идентификаторы включают закрытый ключ, который вы защищаете, и открытый ключ (сертификат), которым вы делитесь.

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

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

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

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

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

В Acrobat откройте меню «Правка» и выберите «Настройки» > «Подписи».

Справа нажмите "Дополнительно" для удостоверений и доверенных сертификатов.

Выберите цифровые идентификаторы слева и нажмите кнопку "Добавить идентификатор" .

Добавить новый цифровой идентификатор

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

Создать новый цифровой идентификатор

Укажите, где хранить цифровое удостоверение, и нажмите "Далее" .

Сохраняет информацию о цифровом удостоверении в файле с расширением .pfx в Windows и .p12 в Mac OS. Вы можете использовать файлы взаимозаменяемо между операционными системами. Если вы переместите файл из одной операционной системы в другую, Acrobat все равно распознает его.

Магазин сертификатов Windows (только для Windows)

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


Выполните следующие действия:

Введите свои идентификационные данные

Выполните следующие действия:

  1. Введите пароль для файла цифрового удостоверения. Для каждого нажатия клавиши измеритель надежности пароля оценивает ваш пароль и указывает надежность пароля с помощью цветовых шаблонов. Подтвердите свой пароль еще раз.
  2. Файл цифрового удостоверения хранится в папке по умолчанию, указанной в поле "Имя файла". Если вы хотите сохранить его в другом месте, нажмите «Обзор» и выберите место.
  3. Нажмите "Готово".

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

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

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

The ID создан

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

Чтобы использовать цифровое удостоверение личности, зарегистрируйте его в Acrobat или Reader.

В Acrobat откройте меню «Правка» и выберите «Установки» > «Подписи». В разделе "Удостоверения и доверенные сертификаты" нажмите "Еще".

Нажмите кнопку "Добавить идентификатор" .

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

Перемещаемый цифровой идентификатор, хранящийся на сервере

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

Устройство, подключенное к этому компьютеру

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

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

В Acrobat откройте меню «Правка» и выберите «Установки» > «Подписи». В разделе "Удостоверения и доверенные сертификаты" нажмите "Еще".

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

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

Перед выбранными опциями появляется галочка. Если вы выберете только вариант подписи, рядом с цифровым удостоверением появится значок «Подписать». Если вы выберете только вариант шифрования, появится значок блокировки. Если вы выберете только вариант сертификации или если вы выберете параметры подписи и сертификации, появится значок "Голубая лента" .

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

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

В Acrobat откройте меню «Правка» и выберите «Установки» > «Подписи». В разделе "Удостоверения и доверенные сертификаты" нажмите "Еще".

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

Выбрав идентификатор, нажмите кнопку Время ожидания пароля.

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

Позволяет указать интервал.

Один раз за сеанс

Появляется один раз при каждом открытии Acrobat.

Вам никогда не будет предложено ввести пароль.

Введите пароль и нажмите OK.

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

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

В Acrobat откройте меню «Правка» и выберите «Установки» > «Подписи». В разделе "Удостоверения и доверенные сертификаты" нажмите "Еще".

Нажмите Удалить идентификатор .

Введите пароль и нажмите OK.

Если вы забыли пароль, вы не можете удалить идентификатор отсюда. При нажатии кнопки «Удалить ИД» в диалоговом окне «Безопасность Acrobat» отображается полное расположение файла цифрового удостоверения. Перейдите в это место, удалите файл и перезапустите Acrobat. Идентификатор удаляется из списка.

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

Как защитить свои цифровые идентификаторы

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

Используйте восемь или более символов.

Смешайте прописные и строчные буквы с цифрами и специальными символами.

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

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

Регулярно меняйте пароль.

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

Чтобы защитить закрытые ключи, хранящиеся в файлах P12/PFX, используйте надежный пароль и установите соответствующие параметры времени ожидания пароля. Если вы используете файл P12 для хранения закрытых ключей, которые вы используете для подписи, используйте настройку по умолчанию для параметра времени ожидания пароля. Этот параметр гарантирует, что ваш пароль всегда требуется. Если вы используете файл P12 для хранения закрытых ключей, используемых для расшифровки документов, сделайте резервную копию своего закрытого ключа или файла P12. Вы можете использовать резервную копию закрытого ключа файла P12 для открытия зашифрованных документов, если вы потеряете свои ключи.

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

Что делать, если цифровое удостоверение утеряно или украдено

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

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

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

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

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

Узнайте все о различных алгоритмах подписи JWT и о том, как выбрать правильный для вашего случая использования!

Себастьян Пейротт

Разработчик программного обеспечения

17 декабря 2015 г.

Узнайте все о различных алгоритмах подписи JWT и о том, как выбрать правильный для вашего случая использования!

Себастьян Пейротт

Разработчик программного обеспечения

17 декабря 2015 г.

OAuth2 и OpenID Connect: руководство для профессионалов

Веб-токены JSON все чаще используются в отрасли. Спецификация, которая их определяет (RFC7519), описывает их как компактные, безопасные для URL средства представления претензий между сторонами путем их кодирования в виде объектов JSON, которые могут быть подписаны цифровой подписью или зашифрованы. В этом процессе используется несколько алгоритмов, ниже мы рассмотрим некоторые из наиболее распространенных. Читайте дальше!

Для подробного ознакомления с веб-токенами JSON загрузите наше бесплатное руководство JWT ниже.

Заинтересованы в том, чтобы как можно скорее перейти на JWT?

Веб-токен JSON

  • Эмитент (iss)
  • Тема (sub)
  • Аудитория (аудио)
  • Срок действия (exp)
  • Не раньше (nbf)
  • Выпущено в (iat)
  • Идентификатор JWT (jti)

Некоторые из этих утверждений очень распространены. Субъект пункта формулы (sub) обычно описывает, кому или какому приложению выдается JWT. Выданный в заявке (iat) можно использовать для хранения времени создания JWT, что позволяет аннулировать JWT через определенное время. Можно добавить другие настраиваемые утверждения.

JWT обычно дополняется подписью или шифрованием. Они обрабатываются в собственных спецификациях как веб-подпись JSON (JWS) и веб-шифрование JSON (JWE).

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

Заголовок JOSE

Подписанные и зашифрованные JWT содержат заголовок, известный как заголовок JOSE (подписание и шифрование объектов JSON). Этот заголовок описывает, какой алгоритм (подпись или шифрование) используется для обработки данных, содержащихся в JWT. Заголовок JOSE обычно определяет два атрибута: alg и type .

  • alg: алгоритм, используемый для подписи или шифрования JWT.
  • тип: контент, который подписывается или шифруется (обычно JWT).

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

JWS также определяет компактное представление для подписанного JWT:

Компактное представление — это, по сути, объединение заголовка JOSE, JWT и деталей подписи.Каждый компонент кодируется BASE64 и отделяется одной точкой ('.').

Это приводит к типичному представлению JWT, которое мы находим в Интернете:

Компактное представление для зашифрованных JWT

Компактное представление зашифрованных JWT несколько отличается:

Зашифрованный текст обычно содержит JWT.

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

  • Подпись нельзя удалить.
  • Подпись является частной (другие не могут ее увидеть).

Распространенные алгоритмы подписи JWT

  • HMAC + SHA256
  • RSASSA-PKCS1-v1_5 + SHA256
  • ECDSA + P-256 + SHA256

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

Алгоритмы HMAC

Это, вероятно, наиболее распространенный алгоритм для подписанных JWT.

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

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

Алгоритм сам по себе довольно прост (псевдокод JavaScript с расширениями Node.js):

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

Алгоритмы RSA и ECDSA

И RSA, и ECDSA представляют собой алгоритмы асимметричного шифрования и цифровой подписи. Что асимметричные алгоритмы привносят в таблицу, так это возможность проверки или расшифровки сообщения без возможности создания нового. Это ключ к определенным случаям использования. Представьте себе большую компанию, в которой данные, сгенерированные отделом продаж, должны быть проверены отделом бухгалтерского учета. Если бы для подписи данных использовался HMAC, то и отдел продаж, и отдел бухгалтерского учета должны были бы знать один и тот же ключ. Это позволит отделу продаж подписывать данные и передавать их так, как если бы они были получены от отдела бухгалтерского учета. Хотя это может показаться маловероятным, особенно в контексте корпорации, бывают случаи, когда возможность проверить создателя подписи имеет важное значение. JWT, подписанные или зашифрованные с помощью RSA или ECDSA, обеспечивают эту возможность. Сторона использует свою частную сторону для подписания JWT. Получатели, в свою очередь, используют открытый ключ (который должен быть передан так же, как общий ключ HMAC) этой стороны для проверки JWT. Получающая сторона не может создавать новые JWT, используя открытый ключ отправителя.

Алгоритмы RSA и ECDSA сложнее, чем HMAC. Если вас интересуют подробности, прочитайте RFC 3447 для шифрования RSA и исходный документ ECDSA.

Основное различие между RSA и ECDSA заключается в скорости и размере ключа. ECDSA требует ключей меньшего размера для достижения того же уровня безопасности, что и RSA. Это делает его отличным выбором для небольших JWT. Однако RSA обычно быстрее, чем ECDSA. Как обычно, выберите тот, который лучше всего соответствует вашим требованиям.

Кроме того: делегирование реализации JWT экспертам

JWT – это неотъемлемая часть стандарта OpenID Connect — уровня идентификации, который находится поверх платформы OAuth2. Auth0 — это сертифицированная платформа идентификации OpenID Connect. Это означает, что если вы выберете Auth0, вы можете быть уверены, что он на 100 % совместим с любой сторонней системой, которая также соответствует спецификации.

Спецификация OpenID Connect требует использования формата JWT для идентификаторов, которые содержат информацию о профиле пользователя (например, имя пользователя и адрес электронной почты), представленную в форме утверждений. Эти утверждения представляют собой утверждения о пользователе, которым можно доверять, если потребитель токена может проверить его подпись.

Хотя спецификация OAuth2 не предписывает формат токенов доступа, используемых для предоставления приложениям доступа к API от имени пользователей, в отрасли также широко используется JWT для этих целей.

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

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

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

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

Заключение

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

Отправить твит

Себастьян Пейротт

Я разработчик программного обеспечения с большим интересом к технологиям с открытым исходным кодом, Linux и собственной разработке. Я работал на многих различных платформах Android, iOS, Win32, Linux, FreeRTOS, Web и других. Я прошел весь стек, и мне нравится учиться и использовать новейшие технологии. Сейчас я работаю полноценным разработчиком в Auth0.

Себастьян Пейротт

Я разработчик программного обеспечения с большим интересом к технологиям с открытым исходным кодом, Linux и собственной разработке. Я работал на многих различных платформах Android, iOS, Win32, Linux, FreeRTOS, Web и других. Я прошел весь стек, и мне нравится учиться и использовать новейшие технологии. Сейчас я работаю полноценным разработчиком в Auth0.

Читайте также: