Важные новости

Зачем в блокчейне приватные и публичные ключи

Шифрование в блокчейне: зачем нужна цифровая подпись

Шифрование в блокчейне: зачем нужна цифровая подпись обложка

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

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

Вспоминаем основные понятия

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

Симметричное и асимметричное шифрование

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

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

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

Симметричное шифрование

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

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

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

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

Асимметричное шифрование

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

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

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

Публичный ключ и адрес в блокчейне

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

Прежде чем купить биткоины, необходимо создать кошелек, на котором они будут храниться. Кошельком называют программу, с помощью которой можно получить как приватные, так и публичные ключи от блокчейна. Для биткоинов есть много таких программ: Bitcoin Core, Electrum, Samurai Wallet.

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

Публичный ключ и адрес в блокчейне

С помощью публичного ключа создается адрес или QR-код адреса

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

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

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

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

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

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

Рассмотрим как создается и подписывается транзакция в блкочейне:

Подпись транзакции в блокчейне

  1. Информация об отправлении шифруются с помощью SHA-256.
  2. Алгоритм ECDSA получает на вход приватный ключ и хеш подписываемых данных.
  3. В результате работы алгоритма ECDSA и создается цифровая подпись.
  4. В транзакцию записывается зашифрованная информация об отправлении и цифровая подпись.

Хеш информации вместе с приватным ключом образуют цифровую подпись

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

Проверка подписи в транзакции

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

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

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

Заключение

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

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

Блокчейн (Blockchain): инструкция по безопасному применению

Данным материалом открываю серию публикаций из цикла «Цифровая экономика» (по мотивам «Moscow Digital School. Blockchain Lawyer»).

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

Говоря простым языком — что за «петрушка» все эти блокчейны, смарт-контракты, цифровые сделки, токены, токенизация активов, децентрализованные автономные организации (DAO), краудфандинг и краундинвестинг, майнинг.

Что полезно знать практикующему юристу, адвокату, чтобы вполне обоснованно оперировать (или козырять) термином «Blockchain Lawyer». Некоторые моменты в данной статье будут повторяться как мантра несколько раз под разным углом для лучшего восприятия.

Биткоин и блокчейн

Биткоин (Bitcoin, BTC), особенно его курс, у многих вызывает ассоциации некоей финансовой пирамиды — цифрового казино, где играют «счастливчики», когда-то сделавшие ставки по 70-80 долларов за 1 BTC, при курсе на момент написания материала в 30 598 BTC/USD, а также «безумцы», которые переводят традиционную шуршащую бумагу в «абстрактный» электронный формат.

Биткоин и блокчейн (Blockchain) воспринимаются практически как синонимы, т.к. появились одновременно. Однако, необходимо определить и разделить эти понятия.

Блокчейн — это технология, придуманная в 2008 году человеком или группой людей под именем «Сатоси Накамото».

Биткоин — это криптовалюта, созданная по технологии блокчейн (Bitcoin, BTC — от англ. bit — минимальная единица информации и coin — монета).

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

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

Интересный факт — никто до сих пор не знает, кто такой или кто такие «Сатоси Накамото». В качестве подтверждения личности Сатоси, общественность приписывает владение биткоинами, добытыми им (или ими) в 2009–2010 годах
(размер капитала более миллиона биткоинов, которые до сих пор ни разу не приходили в движение, за исключением нескольких тестовых транзакций, отправленных для доказательства работоспособности блокчейна).

Технология блокчейн (blockchain)

Blockchain представляет собой результат обобщения нескольких направлений развития информационных и финансовых технологий, объединенных разработками, открытиями «Сатоси Накамото».

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

Каждый блок содержит информацию о себе и о предыдущем блоке.

Епт… Что за блоки? Что за правила и кто отслеживает их соблюдение? Кто соединил?

Когда-то компьютеры соединили между собой и получили интернет. Условие доступа к сети — наличие точки доступа. Порог доступа — наличие технической возможности. Есть доступ — ты в сети.

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

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

Ни одна мышь ни с одной самой хитрой отверткой не сможет откорректировать данные, занесенные в блокчейн.

Творение «Сатоси Накамото» открыло широкие возможности:

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

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

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

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

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

И здесь возникает резонный вопрос — на кой он нужен этот блокчейн с его блоками?

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

Для ответа на этот вопрос подробно рассмотрим финансовые транзакции в централизованной и децентрализованной системе.

Транза́кция (англ. transaction, от лат. transactio — соглашение, договор) — минимальная логически осмысленная операция, которая имеет смысл и может быть совершена только полностью.

Финансовая транзакция — операция, состоящая в переводе денежных средств с одного счёта на другой; сделка купли-продажи.

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

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

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

Банки под титулом всевозможных законов и правил проверяют и следят:

а) Есть ли у Васи деньги на перевод. Не много ли Вася переводит для «среднего Васи»

б) Нет ли у Васи ограничений на финансовые транзакции, вызванные нарушением установленных государством и (или) банками правил

в) Получил ли Петя деньги от Васи

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

ж) Можно ли «откусить» у Васи и Пети еще немного для интересов банковского капитала

Это типичная централизованная система.

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

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

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

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

Законность и легитимность начинает определять капитал, который, как мы помним:

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

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

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

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

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

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

В поиске базиса надежности и надежде уберечь свои средства, люди мало помалу начали искать иные, децентрализованные системы, без посредников, вспомнив фразу, что «спасение утопающих — дело рук самих утопающих».

И здесь как раз на помощь пришел блокчейн.

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

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

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

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

Узлы такого блокчейна, называемые кошельками (wallets), представляют собой аналоги банковских счетов, точно так же адрес в сети Bitcoin аналогичен номеру счета клиента в банке или идентификатору банка в системе SWIFT.

Блокчейн кошелек

Для осуществления транзакции нашим Васи и Пете необходимо всего одно условие — наличие кошельков в блокчейне.

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

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

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

За все действия пользователя с кошельком отвечает сам пользователь.

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

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

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

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

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

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

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

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

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

Все, что нужно, это два ключа, выдаваемых системой.

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

  1. Вася пишет Пете сообщение: Привет, Петр!
  2. Шифрует его ключом Пети (Wallet Пети), предварительно позвонив ему и попросив публичный ключ.
  3. Теперь Пете, чтобы прочесть написанное Васей, нужно дешифровать все это своим приватным ключом.

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

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

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

Например, для просмотра транзакций того же биткоина можно установить специальную программу, вроде «Block Explorer» и просмотреть транзакции того или иного кошелька, просто зная его публичный ключ.
Сама транзакция происходит по следующему алгоритму:

1. Для передачи монет (токенов) в блокчейне производятся списание средств с одного адреса (кошелек Васи) с зачислением на другой (Кошелек Пети) в финансовых блокчейнах (например — BTC)

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

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

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

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

Ключ к познанию блокчейна – это понимание криптографических хешей

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

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

Хеш-функция — это процесс преобразования входных данных в битовую строку установленной длинны. Хеш-функция берёт данные и, по сути, переводит их в строку букв и цифр. Вы вводите что-то длинное, а на выходе получается что-то короткое, олицетворяющее то длинное.

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

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

Например, в блокчейне того же биткойна хеши состоят из 256 бит или 64 символов.

Если взять том «КАПИТАЛА» Карла Маркса (примерно 1200 страниц) и обработать хэш-функцией, то все содержимое можно представить именно строкой из 64 символов.

1200 страниц информации = уникальная строка из 64 символов букв и цифр

Примеры, взятые с сайта «Bitnovosti.com»:

Это было самое прекрасное время, это было самое злосчастное время, – век мудрости, век безумия, дни веры, дни безверия, пора света, пора тьмы, весна надежд, стужа отчаяния, у нас было всё впереди, у нас впереди ничего не было, мы то витали в небесах, то вдруг обрушивались в преисподнюю, – словом, время это было очень похоже на нынешнее, и самые горластые его представители уже и тогда требовали, чтобы о нём – будь то в хорошем или в дурном смысле – говорили не иначе, как в превосходной степени:

обрабатываем хэш-фукнцией, получаем:

Тогда как хеш слова «пёс»:

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

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

Таким образом составляется неразрывная цепь. Разорвать или изменить ее возможно, только если пересчитать все заголовки блоков и собрать цепочку заново с точки разрыва.

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

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

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

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

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

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

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

Наш блокчейн с Васей и Петей и их транзакцией по передаче 1 биткоина это страница книги, где записано:

  1. Вася перевел Пете 1 биткоин
  2. Некто перевел кому-то еще сколько-то денег.

В одном блоке записаны тысячи таких транзакций. Когда блок заканчивается — он закрывается, подписывается и переходит на новый блок.

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

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

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

В основу экономической части концепции новой валюты «Сатоси Накамото» поставил (или поставили) свойства золота.

Выпуск (эмиссия) монет в криптовалютах и подобных им блокчейнах сравнивается с добычей драгоценных металлов.
По аналогии с добычей полезных ископаемых процесс эмиссии монет (токенов) в блокченйе называется майнингом (англ. mining — добыча полезных ископаемых).

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

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

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

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

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

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

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

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

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

Поэтому транзакции могут быть какие угодно:

  1. Петя создает кошелек в блокчейне, после чего просит у Васи перевести ему 1 биткоин
  2. Вася спрашивает у него публичный ключ, Петя передает публичный ключ Васе.
  3. Создается транзакция для публичного ключа Пети: «Держи биткоин»
  4. Петя хочет передать 0,5 биткоина Свете, блокчейн создает транзакцию для публичного ключа Светы: «Вася мне дал 1 биткоин, я хочу 0,5 биткоина Свете, а 0,5 биткоина вернуть себе», и подписывает ее своим приватным ключом.
  5. Так, как балансов в блокчейне нет, система должна понять, что у Васи есть этот 1 биткоин для перевода, и она проверяет историю операций — откуда у Васи появился этот 1 биткоин.
  6. После того как система убедится в том, что 1 биткоин был переведен от Васи, и после этого других переводов не было, а, следовательно, у Пети есть 1 биткоин, блокчейн разрешит перевести 0,5 биткоина Свете

Возможности блокчейн (blockchain)

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

1. Финансовые операции (Криптовалюта)

2. Заключение и исполнение контрактов (Смарт контракты)

3. Хранение информации (недвижимость, сделки, любые реестры)

4. Краундфандинговые компании

5. Управление предприятием

6. Охрана интеллектуальной собственности, любые базы данных

7. Политические умные выборы. Честное голосование

Уязвим ли блокчейн и возможен ли его контроль?

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

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

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

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

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

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

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

Отсюда и примерное направление работы Федеральной налоговой службы — доказательство привязки того или иного субъекта к тому или иному кошельку.

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

Резюме

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

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

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

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

В любом случае — все течет, все стремительно меняется.

https://maff.io/private_public_key/
https://pravorub.ru/articles/97862.html

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *