Что такое цифровая подпись? Руководство по криптовалютам
Learn how digital signatures work in crypto and blockchain. Explore cryptographic mechanisms, algorithms, and their role in securing digital assets.
Цифровая подпись — это криптографический механизм, который использует приватный ключ для подписания цифрового документа или транзакции, создавая уникальный код, который подтверждает личность подписанта и гарантирует, что содержимое не было изменено с момента подписания. Представьте это как восковую печать на письме, защищенную от подделки: она доказывает, что письмо пришло от вас и не было вскрыто или изменено с момента, как вы его запечатали, но вместо воска используются передовые математические методы. Каждая транзакция в Bitcoin, каждый перевод NFT и каждый юридический договор с цифровой подписью опираются на этот механизм.
Что такое цифровая подпись? (Простой ответ)
Вы уже знаете, что делает собственноручная подпись: она идентифицирует вас и сигнализирует о вашем согласии. Цифровая подпись выполняет ту же функцию, но с математической гарантией, которую не могут обеспечить ручка и бумага.
Рукописная подпись может быть подделана. Кто-то может использовать ваши почерки, а страницы могут быть подменены после того, как вы подпишете последнюю. Цифровая подпись решает обе эти проблемы. Она математически связана с точным содержанием документа, поэтому любое изменение после подписания, даже один измененный символ, делает ее недействительной. Поскольку она генерируется с использованием уникального приватного ключа, которым владеете только вы, создание действительной подписи без этого ключа невозможно.
Определение цифровой подписи, используемое в технических стандартах, является точным: это криптографический код, сгенерированный с использованием приватного ключа, который подтверждает личность подписанта и гарантирует, что цифровой документ или сообщение не были изменены с момента подписания. Понимание значения цифровой подписи на этом техническом уровне, а не смешивание ее с простым напечатанным именем, отличает надежную позицию в области безопасности от ложной.
Каждая цифровая подпись обеспечивает три основных свойства:
Три основных свойства цифровой подписи
- Аутентификация: Доказательство того, что документ поступил от заявленного отправителя, а не от самозванца
- Целостность данных: Доказательство того, что содержимое не менялось с момента подписания
- Неотказуемость: Подписавший не может впоследствии отрицать факт подписания, так как только его приватный ключ мог создать эту конкретную подпись
Неотказуемость работает как квитанция о заказном письме. Как только подпись зафиксирована, а приватный ключ, которым она была создана, математически связан с вами, вы не можете позже заявить, что не подписывали ее.
Вот подробное пошаговое описание того, как работает цифровая подпись.
Как работает цифровая подпись?
Цифровая подпись работает в три этапа: документ хешируется, хеш подписывается приватным ключом, и получатель проверяет подпись с помощью публичного ключа.
Процесс вкратце:
- Шаг 1: Хешировать документ
- Шаг 2: Подписать хеш с использованием приватного ключа
- Шаг 3: Верифицировать подпись с использованием публичного ключа
Каждый шаг подробно описан ниже.
Понимание криптографии с публичным ключом
Криптография с открытым ключом (также называемая асимметричной криптографией) — это математическая система, которая делает возможными цифровые подписи. Уитфилд Диффи и Мартин Хеллман разработали ее в 1976 году. Система генерирует два математически связанных ключа: приватный ключ, который есть только у вас, и публичный ключ, которым вы можете свободно делиться с кем угодно.
Представьте себе это как почтовый ящик: кто угодно может бросить письмо через общедоступную прорезь, но только человек, владеющий приватным ключом, может открыть ящик. В цифровых подписях все немного иначе. Вы используете приватный ключ для подписи, а любой, у кого есть публичный ключ, может проверить эту подпись.
Шаг 1: Создание хеша документа
Перед созданием цифровой подписи документ проходит через хеш-функцию — математический процесс, который преобразует весь документ в уникальную строку символов фиксированной длины, называемую хешем или дайджестом. SHA-256 (Secure Hash Algorithm 256-bit), стандартизированный NIST в соответствии с FIPS 180-4, является наиболее широко используемым примером и алгоритмом, используемым в сети Биткоин.
Хеш-функция обладает тремя свойствами, которые делают ее идеальной для цифровых подписей:
- Детерминированность: один и тот же документ всегда дает один и тот же хеш
- Односторонность: вы не можете обратить хеш, чтобы восстановить исходный документ
- Лавинообразный эффект: изменение даже одного символа в документе создает совершенно другой хеш
Представьте, что хеш — это как отпечаток пальца: подобно тому, как отпечаток пальца уникально идентифицирует человека, не раскрывая о нем всей информации, хеш уникально идентифицирует документ, не раскрывая его полного содержания. Одно уточнение, которое стоит сделать прямо: хеш — это не шифрование. Шифрование обратимо с помощью ключа; хеширование по своей сути необратимо. Это различие имеет значение для понимания того, чем цифровые подписи отличаются от зашифрованных сообщений.
Шаг 2: Подписание хеша приватным ключом
Ваш приватный ключ, уникальная секретная строка символов, известная только вам, является инструментом, создающим цифровую подпись. Программное обеспечение для подписи берет хэш, полученный на шаге 1, и шифрует его с помощью вашего приватного ключа. Результатом этого шифрования является цифровая подпись.
Ваш приватный ключ подобен уникальной физической печати или пломбе, которой владеете только вы: любой может увидеть, что было проштамповано, но создать оттиск можете только вы. Затем цифровая подпись прикрепляется к документу и передается получателю.
Последствия для безопасности прямые: кто владеет приватным ключом, тот контролирует цифровую подпись. В криптовалютах ваш криптокошелек хранит ваш приватный ключ (не саму криптовалюту, которая находится в блокчейне) и использует его для создания цифровой подписи каждый раз, когда вы авторизуете транзакцию.
Шаг 3: Проверка подписи с помощью публичного ключа
Получатель проверяет подпись, используя ваш публичный ключ, общедоступную пару к вашему приватному ключу, свободно распространяемую без какого-либо риска для безопасности. Процесс проверки работает следующим образом:
- Получатель использует ваш публичный ключ для расшифровки цифровой подписи, восстанавливая исходный хэш
- Получатель независимо выполняет ту же хэш-функцию над полученным документом, создавая новый хэш
- Оба хэша сравниваются
Если они совпадают, подпись действительна: документ является подлинным и не был изменен после того, как вы его подписали. Если они не совпадают, либо документ был подделан после подписания, либо подпись является поддельной. Получатель может получить ваш публичный ключ из цифрового сертификата, выданного доверенной третьей стороной, о чем рассказывается в разделе об оформлении цифровой подписи.
Обзор пары ключей
- Приватный ключ = Подписывает (создает подпись)
- Публичный ключ = Проверяет (проверяет подпись)
- Приватный ключ — секретный. Публичный ключ — общедоступный.
Цифровая подпись против шифрования Шифрование защищает содержимое: оно преобразует данные так, что только авторизованная сторона может их прочитать (конфиденциальность). Цифровая подпись доказывает, кто отправил контент и что он не был изменен. Она не скрывает и не шифрует данные (аутентичность и целостность). Документ может быть как зашифрован, так и подписан цифровой подписью. Это разные инструменты для разных целей.
Принципы работы теперь ясны. Что отличает цифровую подпись от электронных подписей, с которыми вы, возможно, уже знакомы, рассматривается в следующем разделе.
Цифровая подпись против электронной подписи: В чем разница?
Нет. Цифровая подпись — это не то же самое, что электронная подпись, хотя в повседневных разговорах эти термины часто используют взаимозаменяемо.
Электронная подпись — это широкая юридическая категория, охватывающая любой электронный символ, звук или процесс, присоединенный к записи с намерением подписать ее. Сюда входит ввод вашего имени в поле формы, нажатие флажка «Я согласен», рисование вашей подписи на сенсорном экране и цифровые подписи. Все цифровые подписи подпадают под определение электронных подписей в соответствии с этим определением.
Цифровая подпись — это особый тип электронной подписи, использующий криптографию с публичным ключом и хэш-функцию для криптографического подтверждения подлинности и целостности документа. Ключевое отличие: любая цифровая подпись является электронной подписью, но не каждая электронная подпись является цифровой подписью. Имя, набранное в поле DocuSign, — это электронная подпись. PDF-файл, подписанный сертификатом X.509 от удостоверяющего центра, — это цифровая подпись.
| Функция | Электронная подпись | Цифровая подпись |
|---|---|---|
| Определение | Любой электронный способ указания намерения подписать | Криптографический механизм, использующий приватный ключ и хеш-функцию |
| Базовая технология | Не требуется; может быть простым, как введенное имя | Криптография с открытым ключом (пара асимметричных ключей + хеш-функция) |
| Безопасность / Обнаружение подделки | Низкий или средний; нет криптографического обнаружения подделки | Высокий; любое изменение после подписания делает подпись недействительной |
| Верификация | Не требуется; нет гарантии аутентификации | Требуется; связана с проверенной парой ключей |
| Уровень юридической гарантии (eIDAS) | Простая электронная подпись (SES) | Продвинутый (AdES) или Квалифицированный (QES) уровень |
| Требуется центр сертификации | Нет | Да (для подписания документов) |
| Типичные сценарии использования | Онлайн-формы, согласие по клику, базовые платформы электронных подписей | Юридические контракты, сертификаты PDF, транзакции в блокчейне |
Связанное различие, которое стоит прояснить: цифровой сертификат — это не то же самое, что и цифровая подпись. Представьте цифровой сертификат как ваше удостоверение личности. Он подтверждает, кем вы являетесь, и содержит ваш публичный ключ. Цифровая подпись — это само действие подписания с использованием личности, подтвержденной этим удостоверением личности. Инфраструктура открытых ключей (PKI) — это система доверенных организаций, которые выпускают и управляют цифровыми сертификатами, — обеспечивает работу всей цепочки верификации в масштабе.
Традиционные "мокрые" подписи (чернилами на бумаге) могут быть подделаны, не привязаны к содержанию документа и требуют физического присутствия. Цифровая подпись не может быть подделана без приватного ключа, криптографически привязана к точному содержанию документа и работает на любом расстоянии в цифровой форме.
Практическое применение цифровых подписей выходит далеко за рамки обычного подписания документов.
Для чего используются цифровые подписи?
Цифровые подписи используются для аутентификации личности, обеспечения безопасности транзакций и проверки целостности документов в сфере криптовалют, юридических контрактов, электронной почты, распространения программного обеспечения и государственных услуг.
Цифровые подписи в криптовалютах и блокчейне
В технологии блокчейн цифровые подписи являются фундаментальным механизмом безопасности, который авторизует каждую транзакцию и доказывает, что перевод инициировал только законный владелец. Блокчейн — это распределенный, неизменяемый реестр транзакций, поддерживаемый в сети компьютеров. Каждая транзакция, отправленная в блокчейн, должна быть подписана в цифровом виде, прежде чем сеть примет ее и запишет.
Вот как это работает на практике: когда вы отправляете криптовалюту, ваш криптокошелек использует ваш приватный ключ для создания цифровой подписи, авторизующей эту конкретную транзакцию. Сеть блокчейн затем проверяет подпись с помощью вашего публичного ключа. Только если подпись действительна, транзакция выполняется и записывается навсегда в цепочке.
Биткойн использует алгоритм цифровой подписи на эллиптических кривых (ECDSA) с эллиптической кривой secp256k1 для подписания всех транзакций. Ваш крипто-кошелек хранит ваш приватный ключ, а не саму криптовалюту (которая существует как запись в блокчейне), и автоматически генерирует подпись каждый раз, когда вы авторизуете перевод. Каждое взаимодействие с протоколом DeFi или маркетплейсом NFT работает одинаково: ваш кошелек подписывает транзакцию вашим приватным ключом, запуская смарт-контракт.
Последствие для безопасности прямое: вы не можете тратить чужие криптовалюты, потому что у вас нет их приватного ключа и, следовательно, вы не можете создать действительную цифровую подпись для их адреса кошелька. ### Цифровые подписи для юридических документов и контрактов
Цифровые подписи защищают юридические документы, контракты, государственные формы, финансовые отчеты и медицинскую документацию. Они обеспечивают защищенную от несанкционированного вмешательства и имеющую юридическую силу запись о том, кто, что и когда подписал.
Такие платформы, как Adobe Acrobat Sign и DocuSign (при использовании с цифровыми сертификатами, а не с обычными электронными подписями), применяют к PDF-файлам криптографические цифровые подписи. В подписанный PDF-файл внедряется сертификат подписанта и хэш содержимого документа. Любое изменение, внесенное после подписания, даже исправление одного слова, создает другой хэш, что делает подпись недействительной и вызывает предупреждение в Adobe Acrobat. Каждый документ с цифровой подписью также содержит защищенный от несанкционированного вмешательства журнал аудита, в котором фиксируется, когда и кем он был подписан. Эти подписи имеют юридическую силу в соответствии с законом ESIGN в США, подробно описанным ниже.
Цифровые подписи в электронной почте и программном обеспечении
Почтовые клиенты, такие как Microsoft Outlook и Apple Mail, поддерживают цифровые подписи с помощью сертификатов S/MIME (Secure/Multipurpose Internet Mail Extensions). Цифровое подписанное электронное письмо подтверждает, что сообщение исходит от заявленного отправителя и не было изменено во время передачи, защищая от подмены электронной почты и фишинга. Разработчики программного обеспечения используют сертификаты подписи кода для той же цели: подписание их кода доказывает, что он не был изменен с момента его выпуска разработчиком, предотвращая внедрение вредоносного ПО в легитимные дистрибутивы программного обеспечения.
Цифровые подписи и владение NFT
Невзаимозаменяемый токен (NFT) — это уникальный цифровой токен в блокчейне, представляющий право собственности на определенный цифровой объект, такой как произведение искусства, музыка или коллекционный предмет, а цифровые подписи подтверждают это право собственности и разрешают его передачу.
Когда NFT создается, цифровая подпись создателя записывается в блокчейн как запись об основании, устанавливая происхождение. Когда NFT продается или передается, цифровая подпись текущего владельца авторизует эту передачу. Без цифровых подписей нет криптографического доказательства того, кому принадлежит NFT, или что какая-либо передача была авторизована законным владельцем. Таким образом цифровая подпись доказывает, что вы владеете NFT: ваш приватный ключ создал подпись, записанную ончейн во время передачи, и только ваш ключ мог создать эту подпись.
Алгоритмы, генерирующие эти подписи, различаются в зависимости от контекста. Понимание их объясняет, почему различные платформы принимают разные технические решения.
Типы алгоритмов цифровой подписи
Три основных алгоритма, используемых для цифровых подписей, это RSA (Rivest-Shamir-Adleman), ECDSA (алгоритм цифровой подписи на эллиптических кривых) и DSA (алгоритм цифровой подписи). Каждый использует разный математический подход, но все они создают криптографически безопасные подписи. Стандарт цифровой подписи NIST (FIPS 186-5) официально определяет все три как одобренные алгоритмы.
| Алгоритм | Размер ключа | Основное назначение | Используется |
|---|---|---|---|
| RSA | 2 048+ бит | Подписание документов, TLS/SSL, электронная почта (S/MIME) | Корпоративные системы, веб-сертификаты |
| ECDSA | 256 бит | Транзакции в блокчейне, криптовалютные кошельки | Bitcoin, Ethereum, большинство блокчейнов |
| DSA | 2 048+ бит | Государственные системы, устаревшие приложения | Правительство США, устаревшие корпоративные решения |
RSA (Rivest-Shamir-Adleman)
RSA, названный в честь своих изобретателей Рона Ривеста, Ади Шамира и Леонарда Адлемана, разработавших его в 1977 году, является наиболее широко используемым алгоритмом цифровой подписи в корпоративной и веб-безопасности. Его безопасность основана на математической сложности разложения больших простых чисел на множители. RSA является стандартным алгоритмом для обеспечения безопасности электронной почты (S/MIME), подписания документов PDF и сертификатов TLS/SSL в Интернете. Текущие стандарты безопасности требуют минимального размера ключа 2048 бит. Обратной стороной является размер: RSA требует значительно более длинных ключей, чем ECDSA для эквивалентной безопасности, что делает его менее эффективным для использования в блокчейн, но доминирующим в традиционных корпоративных средах.
ECDSA (Алгоритм цифровой подписи на эллиптических кривых)
ECDSA (Elliptic Curve Digital Signature Algorithm, алгоритм цифровой подписи на эллиптических кривых) — это алгоритм, на который полагаются Bitcoin и Ethereum, а также большинство других крупных блокчейн-платформ для авторизации транзакций. Причиной этого является его эффективность. ECDSA представляет собой вариант DSA, использующий математику эллиптических кривых для создания более компактных, быстрых и столь же безопасных подписей по сравнению с RSA.
Биткоин использует алгоритм ECDSA с эллиптической кривой secp256k1. 256-битные ключи ECDSA Биткоина обеспечивают уровень безопасности, эквивалентный 3072-битному ключу RSA, при значительно меньших затратах на хранение и обработку данных. Меньший размер подписей и ключей снижает накладные расходы на каждый узел в сети блокчейн, поэтому блокчейн-платформы предпочитают ECDSA вместо RSA.
ECDSA — это только алгоритм подписи. Его не следует путать с ECDH (Диффи-Хеллмана на эллиптических кривых), который представляет собой протокол обмена ключами, построенный на той же математической основе, но служащий совершенно иной цели.
DSA (Алгоритм цифровой подписи)
DSA (Digital Signature Algorithm) — это государственный стандарт, разработанный NIST в 1991 году и используемый преимущественно в устаревших государственных и корпоративных системах. Его безопасность основана на задаче дискретного логарифмирования. DSA реже применяется в современных коммерческих или блокчейн-приложениях по сравнению с RSA и ECDSA. ECDSA фактически является вариантом DSA, адаптированным под математику эллиптических кривых, что обеспечивает аналогичную функцию подписи при значительно более высокой эффективности.
Для большинства профессиональных и юридических сценариев использования наиболее важным вопросом является то, имеют ли цифровые подписи юридическую силу в суде.
Имеют ли цифровые подписи юридическую силу?
Да, цифровые подписи имеют юридическую силу и подлежат судебной защите в Соединенных Штатах, Европейском союзе и большинстве других основных юрисдикций по всему миру.
Информация в этом разделе приведена в образовательных целях и отражает общие правовые основы на дату публикации. Она не является юридической консультацией. Для получения рекомендаций применительно к вашей юрисдикции, типу документа или требованиям организации обратитесь к квалифицированному юристу.
Закон ESIGN (США)
Закон об электронных подписях в глобальной и национальной коммерции (Закон ESIGN, 15 U.S.C. § 7001), подписанный 30 июня 2000 года, устанавливает, что электронные подписи (включая криптографические цифровые подписи) не могут быть лишены юридической силы исключительно на основании того, что они существуют в электронной форме.
Для того чтобы электронная подпись имела юридическую силу в соответствии с законом ESIGN, должны быть соблюдены три условия:
- Намерение подписать: Подписант должен иметь явное намерение подтвердить подлинность документа
- Согласие на электронные транзакции: Стороны должны выразить согласие на ведение деятельности в электронном виде
- Связь с записью: Подпись должна быть логически связана с подписанным документом
Закон ESIGN имеет широкое применение в отношении коммерческих сделок. Определенные типы документов исключены из сферы его действия, включая завещания, документы об усыновлении, определенные судебные приказы и некоторые государственные документы.
В широкой категории электронных подписей, признаваемых Законом ESIGN, цифровые подписи обеспечивают наивысший уровень гарантий и самые надежные доказательства неопровержимости в юридических спорах. Свойство неопровержимости цифровой подписи, математическое доказательство того, что только владелец приватного ключа мог создать подпись, является основой для ее превосходного юридического статуса при оспаривании подписи.
Регламент eIDAS (Европейский Союз)
Регламент электрон идентификации, аутентификации и доверительных услуг, известный как eIDAS (Регламент ЕС 910/2014) и действующий с 2016 года, регулирует электронные и цифровые подписи во всех государствах-членах Европейского союза посредством трехуровневой системы.
Три уровня:
[{"description":"Базовый уровень, охватывающий введенные вручную имена, отсканированные подписи и другие простые электронные индикаторы намерения.","name":"Простая электронная подпись (ПЭП)"},{"description":"Криптографически связана с подписантом; любое изменение после подписания обнаружимо.","name":"Усовершенствованная электронная подпись (УЭП)"},{"description":"Высший уровень, требующий квалифицированный цифровой сертификат от аккредитованного поставщика доверенных услуг; несет полное юридическое эквивалентное рукописной подписи во всех странах-членах ЕС.","name":"Квалифицированная электронная подпись (КЭП)"}]
Квалифицированная электронная подпись (QES) конкретно требует механизм криптографической цифровой подписи. Простая функция «кликни и подпиши» не подходит. Регламент eIDAS применяется на территории государств-членов ЕС; Великобритания имеет собственную эквивалентную нормативно-правовую базу после выхода из ЕС. eIDAS 2.0 в настоящее время находится в разработке и, как ожидается, представит рамки для Европейского кошелька цифровой идентичности (European Digital Identity Wallet).
| Юрисдикция | Применимое право | Высший уровень электронной подписи |
|---|---|---|
| США | Закон ESIGN (15 U.S.C. § 7001, 2000) | Усовершенствованная электронная подпись |
| Европейский союз | Регламент eIDAS 910/2014 (2016) | Квалифицированная электронная подпись (КЭП) |
| Великобритания | Закон Великобритании об электронных коммуникациях + сохраненное право Великобритании eIDAS | Квалифицированная электронная подпись |
Правовая база отвечает на вопрос, являются ли цифровые подписи действительными. Остается понять, что они защищают, что подводит нас к более широкой экосистеме цифровых активов.
Цифровые подписи и цифровые активы
Цифровой актив — это любой актив, существующий в цифровой форме и обладающий ценностью, включая такие криптовалюты, как биткоин, NFT, токенизированные ценные бумаги, цифровые контракты, лицензии на программное обеспечение и цифровые медиафайлы.
Примеры цифровых активов включают:
["- Криптовалюты (Bitcoin, Ether, стейблкоины)","- Невзаимозаменяемые токены (NFT), представляющие цифровое искусство, музыку, предметы коллекционирования и внутриигровые предметы","- Токенизированные реальные активы: недвижимость, акции, сырьевые товары и другие финансовые инструменты, представленные в виде токенов блокчейна","- Цифровые документы и контракты: юридически обязывающие соглашения в цифровой форме","- Лицензии на программное обеспечение, подтвержденные криптографическими учетными данными","- Цифровые медиа с правом собственности, зарегистрированным в блокчейне"]
Без цифровых подписей не было бы надежного способа доказать, кому принадлежит криптовалюта, кто авторизовал перевод NFT, или является ли цифровой контракт подлинным. Цифровые подписи — это фундаментальный механизм аутентификации и проверки владения, который делает цифровые активы надежными.
Подводя итог, как описанный выше механизм применяется во всем спектре цифровых активов:
- Криптовалюты: каждая транзакция авторизуется цифровой подписью от приватного ключа кошелька отправителя; сеть проверяет подпись перед записью перевода
- NFT: право собственности устанавливается при минтинге с помощью ончейн цифровой подписи создателя; каждый перевод требует цифровой подписи текущего владельца в качестве авторизации
- Смарт-контракты: каждое взаимодействие с протоколом DeFi или маркетплейсом NFT требует цифровой подписанной транзакции, которая активирует контракт
- Цифровые документы: аутентифицируются с помощью цифровых подписей на базе PKI, которые связывают проверенную личность подписанта с содержимым документа
Цифровые подписи также лежат в основе токенизации (процесса представления реальных активов в виде токенов блокчейна), гарантируя, что каждый выпуск и перевод токенов сопровождается проверяемым доказательством авторизации.
Любое упоминание Bitcoin, Ether или других криптовалют в данной статье приведено исключительно в ознакомительных целях и не является рекомендацией покупать, продавать или удерживать какой-либо цифровой актив.
Учитывая, насколько много зависит от цифровых подписей, возникает закономерный вопрос: насколько они надежны на самом деле?
Безопасны ли цифровые подписи?
Да, цифровые подписи безопасны при правильной реализации. Их безопасность опирается на два столпа: математическую стойкость криптографического алгоритма и секретность приватного ключа.
Столп 1: Сила алгоритма. Современные ECDSA с 256-битными ключами и RSA с ключами 2048 бит или более вычислительно невозможно взломать с помощью современных или близких по прогнозам вычислительных мощностей. Взлом любого из этих алгоритмов методом полного перебора, без приватного ключа, не является практически осуществимой атакой. NIST активно отслеживает эти стандарты и обновляет рекомендации по мере развития вычислительной мощности.
Раздел 2: Безопасность приватного ключа. Цифровая подпись настолько же безопасна, насколько и приватный ключ. Реальная угроза безопасности заключается не в алгоритме, а в компрометации приватного ключа. Надлежащим образом реализованная цифровая подпись не может быть подделана без доступа к приватному ключу подписанта. Если приватный ключ остается секретным, подпись математически уникальна и не может быть воспроизведена.
Если приватный ключ скомпрометирован, последствия различаются в зависимости от контекста:
- В контексте PKI/документов: любой, у кого есть ваш приватный ключ, может подписывать документы от вашего имени. Немедленно сообщите о компрометации в ваш удостоверяющий центр. Удостоверяющий центр аннулирует ваш цифровой сертификат, делая недействительными будущие подписи, сделанные с помощью скомпрометированного ключа. Подписи, сделанные до отметки времени аннулирования, остаются действительными; те, что сделаны после — сомнительны.
- В контексте криптовалюты: любой, у кого есть ваш приватный ключ, может тратить ваши средства. В децентрализованных блокчейн-системах механизм аннулирования отсутствует. Если приватный ключ, управляющий криптокошельком, украден, любые средства, переведенные злоумышленником, будут потеряны, а такой перевод необратим.
Практические шаги по защите вашего приватного ключа:
- Храните приватные ключи в аппаратных кошельках или защищенных системах управления ключами, а не в текстовых файлах или в хранилище браузера
- Никогда и ни при каких обстоятельствах не передавайте и не раскрывайте свой приватный ключ кому-либо
- Отозовите свой цифровой сертификат и немедленно запросите новый, если вы подозреваете компрометацию
Исследования в области постквантовой криптографии продолжаются. Современные квантовые компьютеры не могут взломать ECDSA или RSA, но это может измениться по мере развития технологий. NIST активно разрабатывает постквантовые криптографические стандарты для решения этой долгосрочной перспективы.
Как получить цифровую подпись
Получение цифровой подписи зависит от контекста. В зависимости от того, нужно ли вам подписать юридические документы или авторизовать транзакции в блокчейне, процесс будет отличаться.
Контекст 1: Документы и профессиональные цифровые подписи
Для получения электронной подписи для подписания документов требуется цифровой сертификат от удостоверяющего центра (УЦ) — доверенной организации, которая проверяет вашу личность и выдает сертификат. Шаги:
- Выберите центр сертификации или интегрированную платформу. DigiCert, Sectigo, GlobalSign и другие широко используемые центры сертификации предлагают сертификаты различных уровней подтверждения. Adobe Acrobat Sign и DocuSign также предлагают интегрированные услуги сертификации для документооборота.
- Подтвердите свою личность. Центр сертификации выполняет верификацию личности. Процесс зависит от требуемого уровня подтверждения; сертификаты с более высоким уровнем подтверждения включают более строгие проверки.
- Получите ваш цифровой сертификат. Центр сертификации выдает сертификат в формате X.509. Этот сертификат содержит ваш публичный ключ, проверенную информацию о вашей личности и собственную цифровую подпись центра сертификации, подтверждающую его действительность. Думайте об этом сертификате как о вашей ID-карте: он доказывает, кто вы. Цифровая подпись — это акт подписания с использованием личности, подтвержденной этой ID-картой.
- Используйте в программе для подписания. Установите сертификат в Adobe Acrobat, Microsoft Office, DocuSign или аналогичном программном обеспечении для подписания. С этого момента вы можете применять цифровую подпись к любому поддерживаемому документу.
Два примечания по эксплуатации: сертификаты имеют срок действия и должны быть продлены до его истечения. Центры сертификации также могут отзывать сертификаты в случае компрометации приватного ключа, что является одним из преимуществ модели инфраструктуры публичных ключей (PKI) перед чисто децентрализованными подходами.
Для подписания PDF-файлов: после установки сертификата воспользуйтесь инструментами подписи Adobe Acrobat для его применения. Подписанный PDF-файл содержит ваш сертификат и хэш содержимого документа, блокируя файл от изменений после подписания.
Контекст 2: Цифровые подписи для криптовалют и блокчейна
Если у вас уже есть криптовалютный кошелек (MetaMask, аппаратный кошелек Ledger или Coinbase Wallet), у вас уже есть возможность цифровой подписи. Когда вы авторизуете транзакцию в блокчейне, программное обеспечение вашего кошелька использует ваш приватный ключ для автоматического создания цифровой подписи. Отдельный сертификат или центр сертификации (CA) не требуется. Сеть блокчейна обрабатывает проверку через публичный ключ, связанный с адресом вашего кошелька.
Чтобы узнать больше о том, как обеспечивается безопасность и осуществляется передача цифровых активов, ознакомьтесь с нашим руководством по основам блокчейна.
Часто задаваемые вопросы о цифровых подписях
Что такое цифровая подпись и как она работает?
Цифровая подпись — это криптографический механизм, который использует приватный ключ для генерации уникального кода, доказывающего личность подписанта и подтверждающего, что документ не был изменен с момента подписания. Она работает в три этапа: документ преобразуется в хеш с помощью хеш-функции, приватный ключ подписанта шифрует этот хеш для создания цифровой подписи, а получатель расшифровывает подпись, используя публичный ключ подписанта, и сравнивает полученный хеш со свежим хешем полученного документа. Совпадение хешей подтверждает подлинность и целостность.
В чем разница между цифровой подписью и электронной подписью?
Электронная подпись — это широкая юридическая категория, включающая любой электронный метод указания намерения подписать, от напечатанного имени до щелчка по флажку и криптографической подписи. Цифровая подпись — это конкретный тип электронной подписи, который использует криптографию с публичным ключом для математической проверки личности подписанта и обнаружения любых изменений после подписания. Все цифровые подписи являются электронными, но не все электронные подписи являются цифровыми.
Имеет ли цифровая подпись юридическую силу?
Да, цифровые подписи имеют юридическую силу. В Соединенных Штатах Закон об электронных подписях в международной и внутренней торговле (ESIGN Act, 15 U.S.C. § 7001) устанавливает, что электронным подписям (включая цифровые подписи) не может быть отказано в юридической силе только на том основании, что они представлены в электронной форме. В Европейском союзе регламент eIDAS (Регламент ЕС 910/2014) приравнивает квалифицированную электронную подпись высшего уровня к собственноручной подписи во всех странах-членах ЕС.
Можно ли подделать цифровую подпись?
Нет, не без доступа к приватному ключу подписывающего. Взлом лежащего в основе алгоритма ECDSA или RSA без приватного ключа вычислительно невозможен с использованием современных технологий. Настоящий риск безопасности заключается не во взломе алгоритма, а в краже приватного ключа. Если кто-то получит ваш приватный ключ, он сможет создавать подписи, которые будут выглядеть действительными, поэтому секретность приватного ключа является фундаментом безопасности цифровой подписи.
Какой криптографический алгоритм использует Биткойн для цифровых подписей?
Bitcoin использует алгоритм цифровой подписи на эллиптических кривых (ECDSA) с эллиптической кривой secp256k1 для авторизации всех транзакций Bitcoin. ECDSA был выбран, так как его 256-битные ключи обеспечивают уровень безопасности, эквивалентный 3072-битному ключу RSA, при значительно меньшем размере, что снижает накладные расходы на хранение и обработку данных на каждом узле в сети Bitcoin.
Что такое сертификат цифровой подписи?
Сертификат цифровой подписи (также называемый цифровым сертификатом или сертификатом X.509) — это документ, выданный удостоверяющим центром, который содержит публичный ключ владельца и связывает его с его подтвержденной личностью. Когда вы подписываете документ цифровой подписью, ваш сертификат передается вместе с подписью, чтобы получатель мог подтвердить вашу личность, используя одобренный удостоверяющим центром публичный ключ. Цифровой сертификат не является цифровой подписью; сертификат — это удостоверение личности, позволяющее провести верификацию, в то время как подпись — это криптографическое действие, совершаемое с использованием вашего приватного ключа.
Кто выдает цифровые подписи?
Центры сертификации (CA) выдают цифровые сертификаты, которые обеспечивают возможность создания цифровой подписи. CA — это доверенная организация, которая проверяет личность заявителя и выдает сертификат, связывающий его личность с публичным ключом. Среди известных центров сертификации можно выделить DigiCert, Sectigo (ранее Comodo CA), GlobalSign и IdenTrust. CA выдает сертификат; подписант создает каждую отдельную цифровую подпись, используя свой собственный приватный ключ.
Каковы три типа цифровых подписей?
Цифровые подписи можно классифицировать двумя способами. По алгоритму: RSA (Rivest-Shamir-Adleman), ECDSA (Elliptic Curve Digital Signature Algorithm) и DSA (Digital Signature Algorithm). По уровню юридической значимости в соответствии с регламентом ЕС eIDAS: простая электронная подпись (SES), усиленная электронная подпись (AdES) и квалифицированная электронная подпись (QES). Уровень QES, в частности, требует наличия криптографического механизма цифровой подписи, подтвержденного аккредитованным удостоверяющим центром.