Криптовалюта Bitcoin SV [BSV] ー история и перспективы хардфорка

Вопрос о том, кто контролирует возможность добавления кода в GitHub-репозиторий Bitcoin Core поднимается снова и снова, с завидной периодичностью. На протяжении многих лет возможность добавления кода упоминалась различными сторонами как «центральная точка контроля» протокола Биткойн, но я убежден, что такая постановка вопроса представляет собой ложный след, который может дать развитие авторитарной перспективе — а эта модель не применима к Биткойну. Для непрофессионала, конечно, не очевидно, почему это так, поэтому цель этой статьи — объяснить, как работает Bitcoin Core и, на более высоком уровне, как развивается протокол Биткойн как таковой.

История Bitcoin Core

Bitcoin Core — это, скорее, точка фокуса разработки протокола Биткойн, чем точка управления и контроля. Если она по какой-либо причине прекратит свое существование, возникнет новая точка фокуса; техническая коммуникационная платформа, на которой она поставлена (в настоящее время — репозиторий GitHub), всего лишь вопрос удобства, а не целостности проекта или его определения. Фактически, мы уже видели в прошлом, как точка фокуса разработки Биткойна меняла платформы и даже имена!

  • В начале 2009 года исходный код проекта Биткойн представлял собой обыкновенный файл .rar, размещенный на SourceForge. Первые разработчики на самом деле обменивались патчами с Сатоши по электронной почте;
  • 30 октября 2009 года Sirius (Марти Мальми/Martti Malmi) создал репозиторий для проекта Биткойн на SourceForge;
  • В 2011 году проект проект Биткойн перешел с SourceForge на GitHub;
  • В 2014 году проект проект Биткойн был переименован в Bitcoin Core.

История и технология Bitcoin SV

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

Bitcoin Cash ABC под руководством Роджера Вера (Roger Ver) выбрал своей целью внедрение децентрализованных приложений (dapp) и транзакций между блокчейнами (функция, которая позволит обойтись без бирж). Сейчас ABC представляют собой токены BCH, которые позже изменят BCHABC.

Bitcoin SV во главе с Крейгом Райтом (Craig Wright) решает проблему масштабирования (которое влияет на скорость принятия транзакций). В дальнейшем планируется расширить блок до 128 MB. Сеть BCH разделилась на блоке №556767.

Поэтому Bitcoin SV повторяет во многом технологию BCH, в частности разработчики остановились на алгоритме консенсуса Proof-of-work и пока не собираются его менять. На блоке 557301 произошла реорганизация блоков, что иногда характерно для PoW криптовалют.

Не доверяй никому

Хотя на организационном уровне существуют несколько аккаунтов GitHub «майнтайнеров», наделённых полномочиями добавлять код в основную ветвь, это скорее вспомогательная функция, чем должность, наделяющая властью. Если бы кто угодно мог внедрять код в «мастер»-ветвь, то это очень быстро превратилось бы в сценарий «слишком много хозяек на кухне». Bitcoin Core следует принципам наименьших привилегий, так чтобы любые полномочия, выданные отдельным лицам, было бы легко отобрать, если ими начнут злоупотреблять.

Core is transparent about the list that matters: the PGP keys who can sign merge commits.

The lesson to be learned here is to not trust GitHub! Even Bitcoin Core doesn’t know the full list of people who can change the repo, as that extends to probably dozens of GitHub employees.

— Peter Todd (@peterktodd) October 4, 2018

С точки зрения безопасности, GitHub — система с отсутствием доверия. Любое количество сотрудников проекта в GitHub может использовать свои административные привилегии для добавления кода в репозиторий без согласия мэйнтэйнеров. Но также, маловероятно, что злоумышленник на GitHub сможет скомпрометировать PGP-ключ мэйнтэйнера Bitcoin Core.

Вместо того, чтобы полагаться на целостность кода в зависимости от политики аккаунтов на GitHub, Bitcoin Core использует систему непрерывной интеграции, проверяющую доверенные ключи PGP, которые должны подписывать каждое добавление кода (коммит). Хотя эти ключи связаны с известными лицами, все-таки небезопасно предполагать, что так будет всегда — ключ может быть скомпрометирован, и мы об этом не узнаем, если подлинный владелец ключа не уведомит других мэйнтэйнеров. Таким образом, ключи для добавления кода также не гарантируют идеальную защиту; они просто затрудняют атакующему ввод произвольного кода.

Где хранить монету BSV

Команда проекта Bitcoin SV рекомендует несколько кошельков для хранения, правда, часть из них в бета-версии. Какой bitcoin sv кошелек выбрать:

  • Centbee (beta) ー приоритет в простом интерфейсе и быстрых транзакций;

  • CashPay ー только BCH и его форки;
  • Coinomi поддерживает не только Bitcoin SV, но и 500 других криптовалют;
  • Guarda ー поддерживает топовые криптовалюты, в основном его выбирают ETH холдеры;
  • Pixel Wallet ー на данный момент недоступен.

Ключи от царства

На момент написания статьи, доверенными отпечатками PGP являются:

71A3B16735405025D447E8F274810B012346C9A6 133EAC179436F14A5CF1B794860FEB804E669320 32EE5C4C3FA15CCADB46ABE529D4BCB6416F53EC B8B3F1C0E58C15DB6A81D30C3648A882F4316B9B CA03882CB1FC067B5D3ACFE4D300116E1C875A3D

Эти ключи зарегистрированы на:

Wladimir J. van der Laan <[email protected]> Pieter Wuille <[email protected]> Jonas Schnelli <[email protected]> Marco Falke <[email protected]> Samuel Dobson <[email protected]>

Значит ли это, что мы доверяем этим пяти людям? Не совсем. Ключи не являются доказательством личности — эти ключи потенциально могут попасть в руки других людей. Какие гарантии вам действительно даёт запуск скрипта verify-commits на Питоне?

python3 contrib/verify-commits/verify-commits.py Using verify-commits data from bitcoin/contrib/verify-commits All Tree-SHA512s matched up to 309bf16257b2395ce502017be627186b749ee749 There is a valid path from “HEAD” to 82bcf405f6db1d55b684a1f63a4aabad376cdad7 where all commits are signed!

Скрипт verify-commits  выполняет проверку целостности. Любой разработчик может запустить его на своём компьютере. При выполнении, скрипт проверяет подпись PGP для каждого коммита добавления кода с момента коммита 82bcf405… в декабре 2015 года — более 3400 добавлений на момент написания. Если скрипт завершается успешно, он говорит, что каждая строка кода, которая была изменена с того момента, прошла через процесс разработки Bitcoin Core и была «подписана» кем-то с ключом мэйнтэйнера. Хотя это не является железной гарантией того, что никто не ввел вредоносный код (мэйнтэйнер может стать злонамеренным или у него могут быть украдены ключи), это значительно снижает вероятность атаки. Что такое мэйнтэйнеры и как они получили эту роль? Мы углубимся в это чуть позже.

Многоуровневая безопасность

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

Безопасность пул реквестов

  1. Совершенно любой человек может свободно предлагать изменения кода для улучшения программного обеспечения, открывая запрос в пул реквест в основную ветку на bitcoin/bitcoin.
  2. Разработчики проверяют пул реквесты, чтобы убедиться, что они не являются вредоносными. Любой желающий может свободно просматривать пул реквесты и предоставлять обратную связь — нет никаких привратников или вступительных экзаменов для участия в Bitcoin Core. Если пул реквест доходит до того, что не имеется разумных возражений против его добавления, мэйнтэйнер выполняет коммит (слияние).
  3. Основные майнтайнеры установили это скрипт для гарантии, что не смогут разместить неподписанные коммиты в репозиторий.
  4. Коммитам добавления кода опционально проставляются метки времени через OpenTimestamps.
  5. “Система непрерывной интеграции Travis” (Travis Continuous Integration system) регулярно запускает этот скрипт для проверки целостности дерева git (истории) и для проверки того, что все коммиты в основной ветви были подписаны одним из доверенных ключей PGP.
  6. Любой желающий может запустить этот скрипт для проверки подписей PGP во всех коммитах, начиная с декабря 2015 года. Я запустил его во время написания этой статьи, и для его выполнения на моем ноутбуке потребовалось 25 минут.

Безопасность релизов

  1. Детерминистические системы сборки Gitian запускаются независимо несколькими разработчиками с целью создания идентичных бинарников. Если кому-то удаётся создать сборку, которая не соответствует сборкам других разработчиков, это признак того, что сборка недетерминированная, поэтому окончательный релиз не случится. Если обнаруживается не-детерминизм, разработчики отслеживают, что пошло не так, исправляют это, затем собирают другой релиз-кандидат. Как только детерминированная сборка прошла успешно, разработчики подписывают получившиеся бинарники, гарантируя, что бинарники и тулчейн не были подделаны, и что использовался один и тот же источник. Этот метод снимает с процесса сборки и распространения возможность стать единой точкой отказа. Любой пользователь, владеющий необходимыми техническими навыками, может запустить свою собственную систему сборки; инструкции здесь.
  2. Как только сборки Gitian завершены успешно и бинарники подписаны сборщиками, один из мэйнтэйнеров Bitcoin Core подписывает сообщение PGP с хэшами SHA256 каждой сборки. Если вы решите запустить предварительно собранный бинарник, можете проверить его хэш после загрузки, а затем проверить подлинность подписанного сообщения о релизе с помощью хешей. Инструкции для этого можно найти здесь.
  3. Всё вышеперечисленное — открытый исходный код и может быть проверено любым, кто обладает навыками и желанием проделать это.
  4. Наконец, даже после прохождения всех вышеперечисленных проверок качества и целостности, код, который вносится в Bitcoin Core и в конечном итоге превращается в релиз, не запускается в сети узлов какой-либо централизованной организацией. Скорее, каждый оператор узла должен принять осознанное решение обновить код, который он запускает. Bitcoin Core намеренно не включает в себя функцию автообновления, так как автообновление потенциально может заставить пользователей запустить код, который они не выбирали самостоятельно.

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

Охват кода

В Bitcoin Core много кода для тестирования. Существует набор интеграционных тестов, который работает с каждым PR (pull request), и расширенный набор тестов, который каждую ночь запускается на мастере.

Вы можете самостоятельно проверить покрытие кода тестами:

  1. Склонируйте репозиторий Bitcoin Core на GitHub;
  2. Установите необходимые зависимости для сборки из исходного кода;
  3. Запустите эти команды;
  4. Просмотрите отчет на ./total_coverage/index.html .

Также, вы можете увидеть отчет о покрытии кода, предоставленный здесь Марко Фальке.


Отчёт о покрытии кода тестами Такой высокий уровень покрытия тестами означает высокую уверенность в том, что код функционирует как задумано.

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

“Тест — это тест программного обеспечения, но что тестирует этот тест? Программное обеспечение. Чтобы проверить тест, вы должны взломать программное обеспечение” — Грег Максвелл

Как быстро сделать скриншот

Письма по четвергам

Как не спамить и выполнять КPI. Какие инструменты маркетинга лучше, а какие хуже. Как отправлять красивые и понятные письма.

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

Существует множество способов сделать скриншот быстро:

  • нажать горячие клавиши в операционной системе;
  • использовать встроенную программу в системе;
  • установить расширение в браузере;
  • загрузить программу на компьютер или ноутбук.

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

Что сделатьКакой инструмент использовать
Скриншот всей страницыGoFullPage, Joxi, Awesome Screenshot, FireShot
Скриншот произвольной формыНожницы, Набросок на фрагменте экрана
Скриншот активного окнаСкриншотер (декстопная версия), Screen-shooter, FireShot, Ножницы
Использовать горячие клавишиJoxi, Awesome Screenshot, Скриншотер (декстопная версия), Lightshot (декстопная версия)
Затереть конфиденциальные данныеAwesome Screenshot, Joxi, Скриншотер (декстопная версия), Screen-shooter
Добавить последовательность шаговJoxi, Screen-shooter, Awesome Screenshot (платно)
Выбрать качество изображенияScreen Capture, Lightshot (декстопная версия), Joxi (декстопная версия)
Найти похожие изображения в GoogleLightshot
Быстро поделиться скриншотом в соцсетяхJoxi, Lightshot
Сохранить скриншот в PDFGoFullPage, Awesome Screenshot, FireShot
Делать скриншоты и снимать скринкасты в одном инструментеAwesome Screenshot, Скриншотер (декстопная версия)

На macOS

Чтобы сделать скриншот:

  • всего экрана, нажмите Shift+Command+3;
  • выделенной области — Shift+Command+4;
  • окна браузера — Shift+Command+4, затем нажмите пробел и кликните на окно.

Mac все снимки сохраняет на рабочем столе в формате PNG.

На Windows

Чтобы сделать скриншот:

  • всего экрана, нажмите PrtSc;
  • активного окна — Alt + PrtSc.

Скриншот сохраняется в буфере обмена. Это удобно, когда нужно вставить изображение сразу в документ (например, в Google Документы) или в редактор (Paint, Photoshop). Чтобы вставить скриншот нажмите Ctr+v или выберите нужный пункт в контекстном меню (правая кнопка мыши).

Если хотите сразу сохранить снимок в виде файла, нажмите Win/Fn + PrtSc. Файл ищите на системном диске в папке Изображения/Снимки экрана (Screenshots).

Где найти.

Через поиск, или нажмите Shift+Command+5.

Что умеет.

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

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

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

Где найти.

Через поиск или в меню «Пуск» — «Стандартные Windows».

Что умеет.

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

Выделение в форме сердечка. Скриншот окна программы сделан с помощью клавиш Alt+PrSc

У инструмента «Ножницы» есть таймер для задержки снимка до 5 секунд.

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

Готовое изображение сохраняется в JPG или PNG.

Команда Windows 10 грозится в одном из следующих обновлений заменить инструмент «Ножницы» на утилиту «Набросок на фрагменте экрана». Чтобы получить к ней доступ, нажмите Win+Shift+S. Здесь нет таймера и возможности снять активное окно, зато есть отмена в редакторе.

Меню инструмента «Набросок на фрагменте экрана»

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

Язык.

Английский.

Что умеет.

Делает скриншот всей страницы в один клик. Для этого нажмите на значок расширения или Alt+Shift+P. Качественно и быстро скриншотит страницу целиком.

Чтобы сохранить готовый скрин в виде файла, перетащите его на рабочий стол.

Формат.

PNG или PDF.

Сколько стоит.

Бесплатно.

Установить

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

Язык.

Русский.

Что умеет.

Фотографирует выделенную область в два клика, позволяет делиться ссылкой или сохранять файл на диск. Ссылка сразу копируется в буфер.

Не понравилось, что при выборе инструмента уменьшается видимая область экрана, как будто меняется разрешение (работаю на ноутбуке на Windows 10).

Формат.

PNG.

Сколько стоит.

Бесплатно.

Установить

Расширение меняет размер экрана после запуска, из-за чего у меня не поместились картинка справа и текст подписей

Язык.

Русский.

Что умеет.

Делает скриншот выделенной области. В отличие от «Скриншотера», в Lightshot есть редактор с основными инструментами. Позволяет добавить текст, выделения, стрелки, линии и формы. Не умеет размывать части скриншота.
Из плюсов — расширение позволяет быстро поделиться снимком в соцсетях (ВКонтакте, , , Pinterest) или распечатать скрин.
Ещё одна прикольная функция — поиск похожих картинок в Google прямо через редактор сервиса.

Формат.

PNG.

Сколько стоит

. Бесплатно.

Установить

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

Язык.

Английский.

Что умеет.

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

Готовое изображение FireShot предлагает сохранить, переслать по почте или распечатать. В платной версии также есть экспорт снимков в OneNote, и Flickr.

Большой минус — в бесплатной версии нет редактора.

Формат.

PDF, JPG, PNG, GIF или BMP.

Сколько стоит.

Бесплатно без редактора. Есть пожизненная лицензия — около 3000 руб.

Установить

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

Язык.

Русский.

Что умеет.

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

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

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

Формат.

PNG.

Сколько стоит.

Бесплатно.

Установить

Joxi может расшарить картинку в 40 соцсетей

Язык.

Английский.

Что умеет.

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

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

Готовое изображение можно сохранить в виде файла на компьютере или в облаке (бесплатно доступен Google Диск), распечатать или поделиться с командой через Asana, Slack и Trello (требуется регистрация).

Большой плюс Awesome Screenshot — расширение позволяет записывать не только скриншоты, но и скринкасты.

Формат.

PNG или JPEG (выбирается в настройках), PDF.

Сколько стоит.

Бесплатно. Есть платные тарифы от 300 руб./мес. В основном прокачивают возможности для скринкастов.

Установить

Из платных инструментов наиболее полезна последовательность шагов, но и без неё легко обойтись

У Joxi и Lightshot есть декстопные версии примерно с теми же функциями, что и у расширений. Описывать их снова нет смысла. А вот у программы «Скриншотер» функций гораздо больше. Поэтому начну обзор с неё.

Язык.

Русский.

Что умеет.

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

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

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

Самая главная особенность декстопной версии «Скриншотера» — программа умеет снимать видео в формате mp4 до 60 минут.

Формат.

PNG и JPG.

Сколько стоит.

Бесплатно.

Загрузить

Редактор в программе до боли напоминает редактор Lightshot

Язык.

Русский.

Что умеет.

Снимает экран, область и активное окно. Можно настроить горячие клавиши.

Среди инструментов есть и размытие, и последовательность шагов.

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

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

Формат.

PNG.

Сколько стоит.

Бесплатно.

Загрузить

Язык.

Русский.

Что умеет.

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

Есть редактор со всеми основными инструментами.

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

Неплохая программа, но и здесь у меня осталась проблема с размером видимой части экрана — она меняется после выбора инструмента. В декстопных версиях «Скриншотера», Joxi и Lightshot этой проблемы нет.

Формат.

JPG.

Сколько стоит.

Бесплатно.

Загрузить

1. Не мельчите

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

2. Отсекайте лишнее.

Ярлыки, посторонние окна и вкладки браузера отвлекают от сути. Старайтесь убирать из кадра такие вещи или хотя бы обрезайте и размывайте наиболее отвлекающие элементы.

3. Акцентируйте внимание на важном.

Используйте стрелки и выделения.

4. Делайте аккуратно.

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

5. Убирайте конфиденциальную информация.

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

6. Думайте о цели.

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

Источник: https://www.unisender.com/ru/blog/sovety/skrinshot/

Конкуренция свободного рынка

BitMEX написали отличную статью об экосистеме имплементаций Биткойна. Существует более десятка различных имплементаций, совместимых с сетью Биткойн, и ещё больше имплементаций «конкурирующих» сетей. Это свобода открытого исходного кода — любой, кто недоволен усилиями проекта Bitcoin Core, может начать свой собственный проект. Они могут сделать это с нуля, или же «форкнуть» программное обеспечение Core.

На момент написания статьи 96% доступных узлов Биткойна были запущены на какой-либо версии Bitcoin Core. Почему это так? Как может Bitcoin Core иметь почти монопольный статус в сети узлов, если можно с минимальными усилиями перейти на программную имплементацию кого-то другого? В конце концов, многие другие имплементации предоставляют RPC API-интерфейсы, которые совместимы или, по крайней мере, очень похожи на Bitcoin Core.

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

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

Как и где купить Bitcoin SV

Как только был заявлен хардфорк, Bitcoin ABC и Bitcoin SV поддержали крупные криптовалютные площадки. Токены BCHSV можно приобрести на криптобиржах Binance, Upbit, Gate.io, Poloniex.

Bitcoin SV майнинг

Майнить Bitcoin SV можно на Asic S9 и на других моделях, поддерживающих SHA256. Крейг Райт организовал пул ー SVpool, на котором нет комиссии, ежедневные выплаты, сервера расположены преимущественно в Китае и в Европе.

Кто такие разработчики Core?

Те, кто не знаком с процессом разработки Bitcoin Core, при взгляде на проект со стороны могут принять Core за монолитную организацию. Но такое мнение далеко от реальности! Между основными участниками часто возникают разногласия, и даже самые усердные участники написали много кода, который никогда не был добавлен в проект. Если вы прочитаете правила участия в проекте, то можете заметить, что они довольно расплывчаты — процесс лучше всего охарактеризовать как «грубый консенсус».

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

Кто же такие мэйнтэйнеры Bitcoin Core? Они участники, накопившие в рамках проекта достаточный социальный капитал, внося качественный вклад (то есть, закомитив полезный код) в течение определенного периода времени. Когда существующая группа мэйнтэйнеров считает, что будет разумно наделить этой ролью участника, проявившего компетентность, надежность и мотивацию в определенной области, они могут предоставить коммит-доступ аккаунту этого человека на GitHub. Роль ведущего мэйнтэйнера предназначена для тех, кто рассматривает все аспекты проекта и отвечает за координацию релизов. За прошедшие годы роль добровольно передавалась следующим образом:

  • atoshi Nakamoto: 1/3/09–2/23/11
  • Gavin Andresen: 2/23/11–4/7/14
  • Wladimir van der Laan: 4/7/14 — настоящее время

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

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

Точно так же, когда Джефф Гарзик (Jeff Garzik) был исключен из организации на GitHub, он и другие были расстроены этим; но он не участвовал в Core в течение двух лет. Оставление его аккаунту на GitHub прав на коммиты в репозиторий не принесло бы пользы проекту — оно только создавало угрозу безопасности и нарушало принцип наименьших привилегий, на который ссылался Владимир в своем посте.

Другие могут взглянуть на Core и подумать, что это царство технократии, где присоединение новых участников затруднено. Но если поговорить с участниками, то вы обнаружите, что это не так. Хотя, за все эти годы лишь у тринадцати человек был коммит-доступ, сотни разработчиков внесли свой вклад. Я сам сделал несколько небольших коммитов; хотя я и не считаю себя «Core разработчиком» — технически я им являюсь. Никто не может помешать вам внести свой вклад!

In 2011, as a high school student who didn’t understand what a pointer was, the @bitcoincoreorg developer community (especially people like Greg Maxwell, @pwuille, etc) worked with me to make my shitty patches worth merging and made it a great environment to learn in.

— Matt Corallo (@TheBlueMatt) November 18, 2018

In 2016, @TheBlueMatt organised a residency at @ChaincodeLabs. I’d been reading everything about Bitcoin I could lay my hands on but hadn’t dared submit a PR. Matt, Alex and Suhas were extraordinarily generous with their time in teaching us about Bitcoin and how to contribute.

— John Newbery (@jfnewbery) November 18, 2018

I started making small commits to @bitcoincoreorg and was in awe of the engagement on my PRs by @MarcoFalke @pwuille @orionwl @LukeDashjr and @jfnewbery Such a welcoming project!

— Jeff Rade [Jan/3➞₿?] (@jeffrade) November 19, 2018

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

Даже без «переворота» как такового, если спорные изменения каким-то образом попали бы в Core, нашлись бы разработчики, которые форкнули бы софт, удалили спорные изменения и выложили новую версию в доступ для пользователей. В качестве примера, именно это и произошло, когда Амори Сэшэ (Amaury Sechet) для создания Bitcoin ABC форкнул Bitcoin Core и удалил функциональность Segregated Witness. В качестве альтернативы, если Core отклоняет предложенные изменения, которые требуются некоторым людям, разработчики могут форкнуть репозиторий и добавить эти изменения. Это случалось много раз, например, когда:

  • Mike Hearn форкнул Core чтобы создать Bitcoin XT;
  • Andrew Stone форкнул Core чтобы создать Bitcoin Unlimited;
  • Jeff Garzik форкнул Core чтобы создать BTC1.

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

I hold allegiance to no man, to no dev team in Bitcoin. My intention is to run the code that I judge best protects my financial sovereignty.

— Jameson Lopp (@lopp) March 18, 2017

Также сложно убедить многих, что пользователи не принимают слепо изменения в Bitcoin Core — это может быть самодоказывающимся убеждением, потому что если пользователи не участвуют в процессе консенсуса, осознавая доступные варианты, тогда они отдают часть своих полномочий разработчикам. Однако, власть пользователей была использована во время движения UASF (User Activated Soft Fork) 2017 года. Анонимный разработчик, использующий псевдоним shaolinfry, предложил BIP 148, который заставил бы майнеров активировать функцию Segregated Witness на высоте блока примерно в районе 1 августа 2022. Однако, BIP 148 оказался слишком спорным, чтобы быть принятым в Bitcoin Core, поэтому shaolinfry форкнул Core и опубликовал программное обеспечение «Bitcoin UASF». Эта имплементация привлекла нетривиальное количество пользователей и, похоже, создала достаточное давление, чтобы убедить майнеров принять BIP 91 для активации форка до истечения срока BIP148.

На мой взгляд, лучшие участники Bitcoin Core — это те, кто практикует “экстремальное владение” (extreme ownership). Показательный пример — хотя John Newbery и не был автором кода, который содержал этот конкретный баг консенсуса, он чувствует ответственность за то, что не предотвратил добавление этого кода посредством тщательного анализа и что не обнаружил ошибку позже, при написании тестов:

I am responsible for the CVE-2018-17144 bug. https://t.co/BrPVivM296

— John Newbery (@jfnewbery) September 24, 2018

Мы все — Сатоши.

Участие в Bitcoin Core

Начать участвовать в Core может показаться пугающим, хотя есть много ресурсов, которые будут в помощь целеустремлённым разработчикам. Инструкции для участия можно найти здесь, хотя, возможно, вам захочется начать с упрощённого введения Jimmy Song:

Разработчик Core Eric Lombrozo также написал статью о том, как происходят изменения в репозитории Core:

Alex B. написал отличную статью о философии развития Биткойна — статья ниже может сэкономить массу времени любому, кто всерьёз хочет стать участником процесса разработки:

Здесь может оказаться полезным конкретный пример — при написании этой статьи я столкнулся с трудностями при попытке запустить на моем компьютере скрипт verify-commits.py для проверки целостности истории коммитов на GitHub. Чтобы избавить будущих разработчиков от решения этих проблем, я открыл пул реквест для улучшения документации. Как вы можете видеть из истории PR, четыре разных разработчика внесли свои предложения о том, как улучшить мой запрос. Они варьировались от использования разного вики-маркапа до упрощенной команды bash и до нового параметра, который можно использовать в скрипте verify-commits.py.

Я согласился с тем, что все предложения имеют смысл, поэтому я включил их в свой код и обновил пул реквест. В этот момент разработчики, которые участвовали в просмотре кода, признали, что считают пул реквест приемлемым, и майнтаинер Марко Фальке пометил его для включения в релиз 0.18. После того, как прошло ещё несколько дней без каких-либо возражений со стороны разработчиков, код был добавлен в Core мэйнтэйнером Сэмюэлем Добсоном (Samuel Dobson).

Команда BSV

На сайте Bitcoin SV написано о том, что команда проекта состоит из 5 разработчиков C++ (у которых суммарный опыт ー 95 лет), специалистов по обеспечению качества (Quality Assurance engineer), проект-менеджеров nChain.

Главный разработчик ー Дэниэл Конноли (Daniel Connolly), пришел в команду nChain из корпоративных систем Объединенных Наций, где он занимал ведущие должности в IT сфере. Дэниэл инвестировал в биткоин, Electron Cash и BitcoinJ-Cash несколько лет.

Технический директор ー Стив Шэйдерс (Steve Shadders), отвечает за формирование видения проекта, связь со спонсорами и партнерами. Стив ー инвестор в биткоин с 2011, создал один из первых открытых майнинг-пулов, инвестировал в BitcoinJ.

Bitcoin SV активно поддерживается предпринимателем Крейгом Райтом (который дает скандальные поводы для прессы, резко высказываясь о конкурентах) и мультимиллиардером Кельвина Эйра (Calvin Ayre).

Рейтинг
( 1 оценка, среднее 4 из 5 )
Понравилась статья? Поделиться с друзьями:
Для любых предложений по сайту: [email protected]