Криптография — это математическая наука, изучающая защиту информации и коммуникаций с помощью методов кодирования, гарантирующих, что доступ, проверка и изменение данных возможны только для авторизованных лиц. В контексте блокчейна и криптовалют криптография является фундаментальной технологией, которая делает возможными децентрализованные системы, не требующие доверия. Она обеспечивает математические гарантии, позволяющие использовать цифровые подписи (доказательство права собственности без раскрытия закрытых ключей), хеш-функции (создание уникальных отпечатков для данных), шифрование (защита конфиденциальной информации) и доказательства с нулевым разглашением (доказательство утверждений без раскрытия базовых данных).
Без криптографии технология блокчейн не могла бы существовать. Каждый фундаментальный аспект криптовалюты основан на криптографических примитивах: криптография с открытым ключом обеспечивает адреса кошельков и подписание транзакций, хэш-функции защищают неизменяемую структуру блокчейна, деревья Меркла обеспечивают эффективную проверку данных, цифровые подписи предотвращают несанкционированные траты, а механизмы консенсуса используют криптографические головоломки ( PoW ) или обязательства ( PoS ) для достижения сетевого соглашения.
Основными криптографическими элементами, используемыми в блокчейне, являются симметричное шифрование (один и тот же ключ шифрует и дешифрует данные, используется для защиты данных), асимметричное шифрование или криптография с открытым ключом (парные открытый и закрытый ключи, используются для цифровых подписей и обмена ключами), хеш-функции (односторонние функции, создающие выходные данные фиксированного размера из произвольных входных данных, используются для связывания блокчейна и майнинга) и, совсем недавно, доказательства с нулевым разглашением (доказательство знания без его раскрытия, используется для обеспечения конфиденциальности и масштабируемости).
Современная криптография на основе блокчейна стремительно развивается. Пороговые подписи позволяют осуществлять распределенное управление ключами, при котором ни одна сторона не владеет полным ключом. Многосторонние вычисления (MPC) позволяют нескольким сторонам совместно вычислять функции, не раскрывая свои индивидуальные входные данные. Гомоморфное шифрование позволяет выполнять вычисления над зашифрованными данными. Доказательства с нулевым разглашением обеспечивают конфиденциальность транзакций и масштабируемые агрегированные данные. Постквантовая криптография противостоит будущей угрозе взлома существующих криптографических схем квантовыми компьютерами.
Происхождение и история
Древние времена: криптография насчитывает тысячелетия. Шифр Цезаря, в котором буквы сдвигаются на фиксированное расстояние, использовался Юлием Цезарем для военной связи. Машина «Энигма» во время Второй мировой войны представляла собой значительный шаг вперед в механической криптографии.
1976 год: Уитфилд Диффи и Мартин Хеллман опубликовали работу «Новые направления в криптографии», в которой представили концепцию криптографии с открытым ключом. Этот прорыв позволил двум сторонам безопасно обмениваться данными без предварительного обмена секретным ключом, заложив основу для всех современных криптовалют.
1977 год: Рон Ривест, Ади Шамир и Леонард Адлеман разработали алгоритм RSA, первую практическую реализацию криптографии с открытым ключом. Алгоритм RSA основан на сложности разложения на множители больших простых чисел.
1985 год: Нил Коблиц и Виктор Миллер независимо друг от друга предложили эллиптическую криптографию (ECC). ECC обеспечивает эквивалентную безопасность по сравнению с RSA, но при этом имеет гораздо меньшие размеры ключей, что делает её хорошо подходящей для приложений блокчейна с ограниченными ресурсами.
2001 год: NIST опубликовал хеш-функцию SHA-256, разработанную на основе проекта Агентства национальной безопасности США (NSA). Впоследствии SHA-256 стала основной хеш-функцией, используемой в майнинге биткоинов и связывании блокчейнов.
В 2008-2009 годах Сатоши Накамото объединил несколько криптографических примитивов, хеширование SHA-256, алгоритм цифровой подписи на эллиптических кривых (ECDSA) на кривой secp256k1 и деревья Меркла, чтобы создать Биткойн, продемонстрировав первое практическое применение криптографии для децентрализованной цифровой валюты.
С 2014 по 2016 год: В Zcash, запущенном в 2016 году, были разработаны и внедрены системы доказательства с нулевым разглашением (zk-SNARKs), что позволило создать первую криптовалюту с математически гарантированной конфиденциальностью транзакций.
С 2018 по 2020 год появились схемы пороговой подписи (например, основанные на методе разделения секрета Шамира, а позже и на FROST) и кошельки MPC, позволяющие осуществлять распределенное управление ключами без единых точек отказа.
2022–2024 годы: В отрасли ускорилась подготовка к постквантовой криптографии. В августе 2024 года NIST завершил разработку первого набора стандартов постквантовой криптографии, включая ML-KEM (на основе CRYSTALS-Kyber) для инкапсуляции ключей и ML-DSA (на основе CRYSTALS-Dilithium) и SLH-DSA (на основе SPHINCS+) для цифровых подписей, а также дополнительные алгоритмы, такие как FN-DSA (на основе FALCON), которые будут включены в процесс стандартизации. Блокчейн-проекты начали исследовать пути перехода от ECC к квантово-устойчивым схемам, а zk-STARK продолжали набирать популярность отчасти потому, что они уже построены на квантово-устойчивых хеш-основах, а не на эллиптических кривых.
2025–2026 годы: В криптоиндустрии продолжается планирование перехода к постквантовой архитектуре, при этом ряд проектов и организаций, занимающихся стандартизацией, публикуют проекты дорожных карт по переходу кошельков, схем подписи и криптографии консенсусного уровня к альтернативам, устойчивым к квантовым вычислениям, в ближайшие годы, несмотря на то, что крупномасштабные, криптографически значимые квантовые компьютеры по-прежнему в целом рассматриваются как риск, рассчитанный на несколько лет или более, а не как непосредственная угроза.
«Криптография — это высшая форма ненасильственного прямого действия. Надежная криптография способна противостоять неограниченному количеству насилия. Никакое применение принудительной силы никогда не решит математическую задачу». Джулиан Ассанж.
Простыми словами
Криптография — это как набор математических замков и ключей для цифрового мира. Ваш закрытый ключ — это ключ, который есть только у вас, а ваш открытый ключ — это замок, который может увидеть любой. Только ваш закрытый ключ может открыть (подписать) транзакции, но любой, у кого есть ваш открытый ключ, может проверить, что вы их подписали.
Хэш-функции подобны цифровым отпечаткам пальцев. Как у каждого человека уникальный отпечаток пальца, так и у каждого фрагмента данных есть уникальный хэш. Измените хотя бы один символ в данных, и хэш полностью изменится. Именно так блокчейны обнаруживают любые манипуляции с записанными транзакциями.
Цифровые подписи в криптовалюте работают как подписание документа чернилами, но математически. Когда вы отправляете биткоины, вы создаете цифровую подпись, используя свой закрытый ключ, который доказывает, что вы авторизовали транзакцию. Любой может проверить подпись, используя ваш открытый ключ, но никто не сможет подделать ее без вашего закрытого ключа.
Доказательства с нулевым разглашением — это как доказательство знания ответа на головоломку без его отображения. В криптовалюте это означает, что вы можете доказать наличие достаточных средств для транзакции, не раскрывая свой баланс, или доказать свой возраст, не раскрывая дату рождения.
Важно: криптографическая безопасность зависит от качества управления ключами. Даже самые передовые криптографические алгоритмы не смогут защитить средства, если закрытые ключи будут переданы третьим лицам, храниться небезопасным образом или будут скомпрометированы в результате фишинга. Аппаратные кошельки, надлежащее резервное копирование сид-фразы и соблюдение правил безопасности необходимы независимо от используемых криптографических алгоритмов.
Основные технические характеристики
Криптография с открытым ключом (асимметричная)
У каждого пользователя блокчейна есть пара ключей: закрытый ключ (секретный) и открытый ключ (доступный для совместного использования).
Закрытый ключ подписывает транзакции; открытый ключ проверяет подписи.
Биткоин и Эфириум используют алгоритм цифровой подписи на эллиптических кривых (ECDSA) на кривой secp256k1.
Связь односторонняя: открытый ключ можно получить из закрытого, но не наоборот.
Адреса кошельков обычно формируются на основе открытого ключа путем хеширования.
Хеш-функции
SHA-256: Используется в Биткоине для хеширования блоков, майнинга (PoW) и генерации адресов.
Кеччак-256: Используется в Ethereum для генерации адресов, хеширования транзакций и EVM.
БЛЕЙК 2/БЛЕЙК 3: В некоторых новых блокчейнах используются более быстрые хеш-функции.
Ключевые свойства включают детерминированность (один и тот же входной сигнал дает одинаковый выходной сигнал), устойчивость к поиску прообраза (необратимость), устойчивость к коллизиям (трудно найти два входных сигнала с одинаковым выходным сигналом) и наличие лавинного эффекта (незначительное изменение входного сигнала приводит к совершенно другому выходному сигналу).
Как криптография обеспечивает безопасность транзакций с биткоинами
У отправителя есть закрытый ключ (случайное число размером 256 бит) и соответствующий открытый ключ.
Отправитель создает транзакцию, указывая адрес получателя и сумму.
Кошелек отправителя вычисляет хеш данных транзакции, используя алгоритм SHA-256.
Закрытый ключ подписывает хэш транзакции с использованием алгоритма ECDSA, создавая цифровую подпись.
Подпись и открытый ключ включаются в транзакцию и передаются в сеть.
Каждый узел проверяет, действительна ли подпись для заданного открытого ключа и хеша транзакции, а также соответствует ли открытый ключ адресу с достаточными средствами.
Майнеры включают подтвержденную транзакцию в блок, хешируя заголовок блока с помощью SHA-256 для доказательства работы.
Деревья Меркла
Бинарные деревья, где листовыми узлами являются хеши отдельных транзакций.
Родительские узлы представляют собой хеши их объединенных дочерних узлов, вплоть до одного корня Меркла.
Корневой элемент Меркла в заголовке блока подтверждает все транзакции в блоке.
Доказательства Меркла обеспечивают эффективную проверку, подтверждая принадлежность транзакции к блоку без загрузки всего блока целиком.
Используется «легковесными» клиентами для проверки состояния блокчейна с минимальным объемом данных.
Доказательства с нулевым знанием
zk-SNARK: Краткие подтверждения, около 200 байт, проверяемые за миллисекунды; требуют надежной настройки (используется Zcash, zkSync и другими).
zk-STARKs: Прозрачные (без необходимости в доверенной настройке) и квантово-устойчивые доказательства; более крупные, но масштабируемые (используются, в частности, StarkNet).
В блокчейне можно применять такие технологии, как обеспечение конфиденциальности (защищенные транзакции в Zcash), масштабируемость (zk-rollups проверяют тысячи транзакций с помощью одного доказательства) и идентификацию (доказательство атрибутов без раскрытия базовых данных).
Постквантовая криптография
Квантовые компьютеры теоретически могли бы взломать алгоритмы ECC и RSA, эффективно решая задачи дискретного логарифма и факторизации с помощью алгоритма Шора.
NIST завершил разработку нескольких стандартов постквантовых алгоритмов, включая ML-KEM (инкапсуляция ключей), ML-DSA (цифровые подписи) и SLH-DSA (хеш-подписи), и работа над стандартизацией других алгоритмов продолжается.
ZK-STARK уже считаются устойчивыми к квантовым атакам, поскольку они основаны на хеш-функциях, а не на эллиптических кривых.
Переход от блокчейна к криптографии, устойчивой к квантовым атакам, — это многолетний процесс, который активно исследуется и планируется в масштабах всей отрасли.
Преимущества недостатки
Преимущества
Недостатки
Безопасность без необходимости доверия: Математические доказательства заменяют необходимость доверять посредникам, позволяя создавать децентрализованные системы, в которых правила обеспечиваются программным кодом.
Бремя управления ключевыми проектами: Пользователи обязаны надежно хранить закрытые ключи и сид-фразы; потеря таких ключей обычно означает безвозвратную утрату средств без возможности восстановления.
Угроза квантовых вычислений: Современные криптографические системы на основе ECC в конечном итоге могут быть взломаны достаточно мощными квантовыми компьютерами, что, как правило, рассматривается скорее как риск, рассчитанный на несколько лет или более, чем как непосредственная угроза.
Целостность данных: Хэш-функции гарантируют, что любое изменение данных в блокчейне будет немедленно обнаружено.
Стоимость вычислений: Для сложных криптографических методов, таких как доказательства ЗК и гомоморфное шифрование, требуются значительные вычислительные ресурсы.
Конфиденциальность: Доказательства с нулевым разглашением позволяют осуществлять транзакции с сохранением конфиденциальности и проверку учетных данных.
Сложность: Понимание криптографической безопасности требует специальных знаний; пользователи могут совершать критические ошибки, не понимая её сути.
Совместимость: Стандартные криптографические примитивы (ECDSA, SHA-256) хорошо изучены, широко используются и совместимы друг с другом.
Необратимость: Криптографические транзакции необратимы; ошибки и кражи необратимы без вмешательства центрального органа власти.
Масштабируемость. Доказательства ZK сжимают вычисления, позволяя проверять тысячи транзакций с помощью одного доказательства.
Ошибки реализации: Даже проверенные криптографические алгоритмы могут быть реализованы некорректно, создавая уязвимости, которые можно использовать в своих целях.
Управление рисками
Безопасность с помощью закрытого ключа:
Для долговременного хранения используйте аппаратные кошельки (Ledger, Trezor), поскольку они хранят закрытые ключи на защищенном чипе.
Никогда не храните сид-фразы в цифровом виде, избегая фотографий, облачных хранилищ и текстовых файлов.
Используйте металлические подложки для защиты фраз-сидов от огня и воды.
Рассмотрите схемы с использованием нескольких подписей для крупных пакетов акций, например, схемы «2 из 3» или «3 из 5».
Готовность к квантовым вычислениям:
Практическая угроза, исходящая от криптографически значимых квантовых компьютеров для современной криптографии блокчейна, обычно рассматривается скорее как риск, рассчитанный на несколько лет или более, чем как непосредственная угроза, хотя оценки различаются и несколько сузились по мере развития исследований в области квантовых вычислений.
Крупнейшие блокчейн-платформы и организации, занимающиеся стандартизацией, активно исследуют и публикуют пути миграции, устойчивые к квантовым атакам.
Системы на основе zk-STARK уже считаются квантово-устойчивыми.
Не стоит проявлять самоуспокоение; начните изучать постквантовую криптографию для долгосрочного планирования.
Передовые методы криптографической практики:
Используйте только тщательно проверенные, стандартизированные криптографические реализации и избегайте попыток разработки собственных криптографических схем.
Регулярно обновляйте программное обеспечение кошелька, чтобы получать обновления безопасности.
Убедитесь, что протоколы DeFi используют стандартные криптографические библиотеки с проверенными реализациями.
Поймите, что шифрование и хеширование служат разным целям: шифрование обратимо, хеширование — нет.
Культурная значимость
Криптография является философской основой криптовалютного движения. Сам термин «криптовалюта», крипто плюс валюта, указывает на то, что весь этот класс активов построен на криптографии и защищен ею. Движение киберпанка 1990-х годов, выступавшее за использование криптографии для защиты конфиденциальности и личной свободы, непосредственно вдохновило на создание Биткойна.
Фраза «не ваши ключи — не ваши монеты» стала одним из важнейших девизов в мире криптовалют. Она отражает фундаментальную взаимосвязь между владением криптографическими ключами и контролем над активами: если вы не контролируете свои приватные ключи, вы на самом деле не владеете своей криптовалютой.
Постоянное противоречие между криптографической конфиденциальностью и прозрачностью регулирования является одной из определяющих культурных дискуссий в криптоиндустрии. Сторонники конфиденциальности утверждают, что криптографическая конфиденциальность, обеспечиваемая доказательствами ZK, является фундаментальным правом. Регуляторы же утверждают, что финансовая прозрачность необходима для предотвращения отмывания денег и финансирования терроризма. Это противоречие стимулирует разработку совместимых с требованиями законодательства решений по обеспечению конфиденциальности, таких как zk-KYC и выборочное раскрытие информации.
Угроза квантовых вычислений создала в криптосообществе ощущение неотложности ситуации. Хотя крупномасштабные, имеющие важное криптографическое значение квантовые компьютеры не считаются чем-то неминуемо будущим, длительный срок миграции, необходимый для модернизации смарт-контрактов и инфраструктуры кошельков на миллиарды долларов, означает, что подготовка должна начинаться за несколько лет вперед, что подтверждается постоянным прогрессом в экспериментальном оборудовании для квантовых вычислений в последние годы.
Примеры из реального мира
Подписание транзакций в биткоинах
Ситуация: пользователю необходимо отправить 1 BTC другому пользователю, предоставив математическое подтверждение авторизации.
Реализация: Кошелек отправителя использует алгоритм ECDSA на эллиптической кривой secp256k1 для подписи хеша транзакции своим закрытым ключом. Полученная подпись подтверждает право собственности на средства, не раскрывая при этом закрытый ключ. Каждый узел Bitcoin проверяет подпись, используя открытый ключ отправителя.
Результат: Транзакция может быть проверена любым участником сети, но могла быть создана только владельцем закрытого ключа. Это устраняет необходимость в банковской проверке или подтверждении личности, обеспечивая при этом математическую уверенность в авторизации.
Защищенные транзакции Zcash (zk-SNARKs)
Ситуация: Пользователь хочет отправить криптовалюту с полной конфиденциальностью, скрывая отправителя, получателя и сумму от публичного блокчейна.
Реализация: Zcash использует zk-SNARKs для создания доказательства действительности транзакции (правильные суммы, отсутствие двойного расходования средств, достаточное количество средств у отправителя) без раскрытия каких-либо деталей транзакции. Доказательство занимает примерно 200 байт независимо от сложности транзакции.
Результат: Транзакция отображается в блокчейне Zcash, при этом виден только ZK-доказательство. Любой может проверить действительность доказательства, подтверждающего соответствие транзакции правилам, но никто не может определить, кто и сколько кому отправил.
Масштабирование Ethereum zk-Rollup (zkSync)
Сценарий: Ethereum необходимо обрабатывать множество транзакций в секунду, сохраняя при этом безопасность уровня L1.
Реализация: zkSync обрабатывает транзакции вне блокчейна и генерирует доказательство с нулевым разглашением, подтверждающее корректность выполнения всех транзакций. Это доказательство размещается в слое L1 сети Ethereum, где его проверяет контракт-верификатор. Одно доказательство подтверждает тысячи транзакций.
Результат: zkSync обеспечивает высокую пропускную способность транзакций при значительно меньших затратах по сравнению с индивидуальной отправкой каждой транзакции в основной сети Ethereum, сохраняя при этом безопасность Ethereum. Криптографическое доказательство сжимает тысячи транзакций в один проверяемый объект, решая проблему масштабируемости за счет криптографической эффективности.
Кошельки для многосторонних вычислений (MPC)
Ситуация: Учреждению необходимо управлять криптовалютой, не предоставляя никому из сотрудников доступ к полному закрытому ключу.
Реализация: MPC-кошельки (например, предлагаемые Fireblocks и ZenGo) разделяют закрытый ключ на несколько частей, распределенных по разным серверам или устройствам. Подписи вычисляются совместно с помощью криптографического протокола; ни одна отдельная часть не может подписать ключ самостоятельно, и полный ключ никогда не восстанавливается в каком-либо одном месте.
Результат: Учреждение обеспечивает управление ключами корпоративного уровня без единой точки компрометации. Даже если один из ключей будет украден, злоумышленник не сможет подписывать транзакции. Это обеспечивает как безопасность, так и операционную гибкость, включая настраиваемые политики утверждения и ротацию ключей без смены адресов.
Сравнительная таблица
Характеристика
SHA-256 (хеш)
ECDSA (Подпись)
AES-256 (шифрование)
zk-SNARKs (ZK-доказательство)
Решеточный подход (постквантовый)
Тип
Хэш-функция
Цифровая подпись
Симметричное шифрование
Нулевое знание
Обмен ключами или подпись
Ключевое свойство
Одностороннее движение, устойчивость к столкновениям
публичный ключ: Одна из двух частей асимметричной ключевой пары, доступная для публичного использования, применяется для проверки цифровых подписей и получения адресов кошельков.
Секретный ключ: Секретная половина асимметричной ключевой пары, используемая для подписи транзакций и подтверждения права собственности на средства.
Хэш-функция: Односторонняя математическая функция, преобразующая данные в выходной результат фиксированного размера, является основополагающей для безопасности блокчейна.
Цифровая подпись: Криптографическое доказательство того, что сообщение было авторизовано владельцем конкретного закрытого ключа.
Доказательство с нулевым разглашением: Криптографический метод доказательства истинности утверждения без раскрытия лежащих в его основе данных.
Криптография эллиптических кривых (ECC): Раздел криптографии, лежащий в основе большинства схем подписи в блокчейне.
Меркл Три: Криптографическая структура данных, используемая для эффективной проверки целостности данных в блокчейнах.
Многопартийные вычисления (MPC): Криптографический метод, позволяющий выполнять совместные вычисления без раскрытия индивидуальных входных данных.
Постквантовая криптография: Криптографические алгоритмы, разработанные для обеспечения защиты от атак с использованием квантовых вычислений.
Семенная фраза: Удобочитаемое представление криптографического мастер-ключа, обычно от 12 до 24 слов.
FAQ
В: Какова роль криптографии в криптовалютах? Криптография обеспечивает все основные гарантии безопасности в криптовалютах: криптография с открытым ключом обеспечивает работу кошельков и подписание транзакций, хэш-функции создают неизменяемую структуру блокчейна, цифровые подписи предотвращают несанкционированные траты, а доказательства с нулевым разглашением обеспечивают конфиденциальность и масштабируемость. Без криптографии децентрализованные системы, не требующие доверия, были бы невозможны.
В: Можно ли взломать криптографию криптовалют? Базовые математические алгоритмы, такие как SHA-256 и ECDSA, никогда не были взломаны с помощью криптоанализа. Практически все криптографические «взломы» нацелены на ошибки реализации, уязвимости смарт-контрактов, безопасность бирж или ошибки пользователей, такие как фишинг и кража ключей, а не на сами криптографические алгоритмы. Считается, что взломать эти алгоритмы с помощью современных классических вычислительных технологий вычислительно невозможно.
В: Смогут ли квантовые компьютеры взломать криптовалюты? Теоретически квантовые компьютеры могли бы взломать ECDSA и RSA, используя алгоритм Шора, но практические, криптографически значимые квантовые компьютеры с достаточным количеством стабильных кубитов обычно рассматриваются скорее как перспектива на несколько лет или более, чем как непосредственная угроза, даже несмотря на постоянное совершенствование базового оборудования. Криптовалютная индустрия активно готовится: NIST завершил разработку нескольких постквантовых стандартов алгоритмов, zk-STARK уже устойчивы к квантовым атакам, а крупные блокчейны исследуют пути миграции.
В: В чем разница между шифрованием и хешированием? Шифрование обратимо: данные преобразуются с помощью ключа и могут быть преобразованы обратно с тем же ключом (симметричное) или с парным ключом (асимметричное). Хеширование одностороннее: данные преобразуются в результат фиксированного размера, который нельзя обратить вспять. В блокчейнах хеширование используется для обеспечения целостности данных и майнинга, а шифрование — для безопасной связи и хранения ключей.
В: Что такое доказательство с нулевым разглашением? Доказательство с нулевым разглашением — это криптографический метод, позволяющий доказать, что вы что-то знаете, не раскрывая того, что вам известно. В блокчейне это позволяет осуществлять приватные транзакции (доказывать действительность транзакции без указания суммы), масштабируемую верификацию (доказывать правильность тысяч транзакций с помощью одного доказательства) и выборочное раскрытие информации (доказывать, что вам больше 18 лет, не указывая дату рождения).
В: Как мне защитить свои приватные ключи от криптовалюты? Используйте аппаратный кошелек для крупных сумм, храните сид-фразы на металлических пластинах в безопасных местах, а не в цифровом виде, используйте кошельки с мультиподписью для больших сумм, никогда не делитесь приватными ключами или сид-фразами ни с кем и будьте бдительны в отношении попыток фишинга. Даже самая надежная криптография не может защитить ключи, которые были переданы добровольно.