Урок 3

Безопасность блокчейна

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

Обзор механизмов безопасности блокчейна

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

Прочитайте наш специальный и подробный курс о безопасности: Blockchain Security : Cryptography , Consensus , Hack

Если Вы новичок и хотите получить лишь небольшое представление о мире безопасности блокчейн, продолжайте читать ниже!

Основы безопасности блокчейна

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

Различия в безопасности типов блокчейна

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

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

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

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

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

Определение криптографических техник и хэш-функций

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

Что такое криптографические хэш-функции?

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

Ключевые выводы:

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

Криптографические хэш-функции предназначены для обеспечения безопасности и обеспечивают следующие свойства:

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

Примеры криптографических хэш-функций и их применения:

  • Криптовалюты: Криптографические хэш-функции имеют решающее значение в криптовалютах для безопасной обработки транзакций. Биткойн, например, использует в своем алгоритме криптографическую хэш-функцию SHA-256. Деревья Меркла, разновидность хэш-дерева, используются в криптовалютах для эффективной проверки достоверности транзакций и блоков путем объединения транзакций в группы и создания единого хэша для каждой группы.
  • Проверка паролей: Хранение паролей в виде обычного текста небезопасно, поэтому большинство сайтов хранят хэши паролей. Когда пользователь вводит свой пароль, система хэширует его и сравнивает с сохраненным хэш-значением, чтобы убедиться в совпадении.
  • Генерация и проверка подписи: Цифровые подписи проверяют подлинность цифровых документов или сообщений. Схема цифровой подписи обычно состоит из трех алгоритмов: алгоритма генерации ключа, алгоритма подписи и алгоритма проверки подписи.
  • Проверка целостности файлов и сообщений: Хэш-функции могут быть использованы для обеспечения целостности сообщений и файлов, передаваемых между отправителем и получателем. Сравнивая вычисленное хэш-значение с опубликованным значением, получатели могут подтвердить, что данные не были подделаны во время транспортировки.

Важность защиты смарт-контрактов и закрытых ключей

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

Многосторонние вычисления (MPC)

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

Смарт-контракты с нулевыми знаниями

Смарт-контракты с нулевым знанием, или zkapps, предлагают другой подход. В этих системах владелец закрытого ключа может локально выполнять логику, связанную с закрытым ключом, например, подписывать транзакцию Bitcoin. Благодаря доказательствам с нулевым знанием (ZKP) другие лица могут убедиться в том, что закрытый ключ был использован правильно, в соответствии с контрактом, не зная самого закрытого ключа. Однако такой подход требует доверия к владельцу ключа, который не допустит утечки ключа или его злонамеренного использования.

Абстракция счета

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

Комбинирование MPC с доказательствами с нулевым знанием:

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

В недавней статье под названием "Эксперименты с совместными zk-SNARK: Доказательства с нулевым знанием для распределенных секретов" представляет решение, позволяющее объединить эти две техники. Хотя пока еще не существует реализаций на цепочке, предполагается, что эта инновация может открыть новые возможности для программируемых блокчейнов.

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

Відмова від відповідальності
* Криптоінвестиції пов'язані зі значними ризиками. Дійте обережно. Курс не є інвестиційною консультацією.
* Курс створений автором, який приєднався до Gate Learn. Будь-яка думка, висловлена автором, не є позицією Gate Learn.
Каталог
Урок 3

Безопасность блокчейна

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

Обзор механизмов безопасности блокчейна

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

Прочитайте наш специальный и подробный курс о безопасности: Blockchain Security : Cryptography , Consensus , Hack

Если Вы новичок и хотите получить лишь небольшое представление о мире безопасности блокчейн, продолжайте читать ниже!

Основы безопасности блокчейна

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

Различия в безопасности типов блокчейна

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

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

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

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

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

Определение криптографических техник и хэш-функций

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

Что такое криптографические хэш-функции?

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

Ключевые выводы:

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

Криптографические хэш-функции предназначены для обеспечения безопасности и обеспечивают следующие свойства:

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

Примеры криптографических хэш-функций и их применения:

  • Криптовалюты: Криптографические хэш-функции имеют решающее значение в криптовалютах для безопасной обработки транзакций. Биткойн, например, использует в своем алгоритме криптографическую хэш-функцию SHA-256. Деревья Меркла, разновидность хэш-дерева, используются в криптовалютах для эффективной проверки достоверности транзакций и блоков путем объединения транзакций в группы и создания единого хэша для каждой группы.
  • Проверка паролей: Хранение паролей в виде обычного текста небезопасно, поэтому большинство сайтов хранят хэши паролей. Когда пользователь вводит свой пароль, система хэширует его и сравнивает с сохраненным хэш-значением, чтобы убедиться в совпадении.
  • Генерация и проверка подписи: Цифровые подписи проверяют подлинность цифровых документов или сообщений. Схема цифровой подписи обычно состоит из трех алгоритмов: алгоритма генерации ключа, алгоритма подписи и алгоритма проверки подписи.
  • Проверка целостности файлов и сообщений: Хэш-функции могут быть использованы для обеспечения целостности сообщений и файлов, передаваемых между отправителем и получателем. Сравнивая вычисленное хэш-значение с опубликованным значением, получатели могут подтвердить, что данные не были подделаны во время транспортировки.

Важность защиты смарт-контрактов и закрытых ключей

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

Многосторонние вычисления (MPC)

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

Смарт-контракты с нулевыми знаниями

Смарт-контракты с нулевым знанием, или zkapps, предлагают другой подход. В этих системах владелец закрытого ключа может локально выполнять логику, связанную с закрытым ключом, например, подписывать транзакцию Bitcoin. Благодаря доказательствам с нулевым знанием (ZKP) другие лица могут убедиться в том, что закрытый ключ был использован правильно, в соответствии с контрактом, не зная самого закрытого ключа. Однако такой подход требует доверия к владельцу ключа, который не допустит утечки ключа или его злонамеренного использования.

Абстракция счета

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

Комбинирование MPC с доказательствами с нулевым знанием:

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

В недавней статье под названием "Эксперименты с совместными zk-SNARK: Доказательства с нулевым знанием для распределенных секретов" представляет решение, позволяющее объединить эти две техники. Хотя пока еще не существует реализаций на цепочке, предполагается, что эта инновация может открыть новые возможности для программируемых блокчейнов.

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

Відмова від відповідальності
* Криптоінвестиції пов'язані зі значними ризиками. Дійте обережно. Курс не є інвестиційною консультацією.
* Курс створений автором, який приєднався до Gate Learn. Будь-яка думка, висловлена автором, не є позицією Gate Learn.