Этим постом я начинаю серию публикаций для тех, кто хочет разобраться в технических деталях и понять, как работает Биткоин. По сути, это будет Краткое наглядное техническое руководство для новичков и не только...
Каждая публикация будет посвящена отдельной теме:
- Биткоин-сеть.
- Майнинг.
- Блокчейн.
- Блоки.
- Сложность майнинга (difficulty).
- Транзакции.
- Выходы (Outputs).
- Блокировка и разблокирование выходов.
- Публичные ключи и адреса.
- Приватные ключи и цифровая подпись.
Примечание: После выхода публикации об очередной теме, ссылка на эту публикацию появится в вышестоящем списке.
Это краткое и наглядное (будет использованы простые и понятные картинки и схемы) руководство не требует знаний программирования и будет доступно широкой аудитории.
По моему скромному мнению, это будет лучшее пособие для начинающих, чтобы разобраться в технических деталях и понять, как работает Биткоин.
Итак, начинаем...
Постановка задачи
Сначала немного предыстории…
До появления Биткоина все виды и способы денежных платежей делились на две основных категории:
- Наличные платежи, которые производятся напрямую между двумя сторонами. Они удобны, поскольку осуществляются моментально и не требуют взаимного доверия сторон, к тому же исключают задержку оплаты и посредничество третьей стороны. Основной недостаток наличных платежей — необходимость встречи обеих сторон в одном месте в одно и то же время.
- Безналичные платежи, которые требуют участия доверенной третьей стороны и производятся с помощью чеков, кредитных или дебетовых карт, банковских переводов или систем вроде PayPal. Для таких платежей по определению требуется посредник, который осуществляет перевод средств между участниками сделки. Главное преимущество посреднического платежа — возможность совершать обмен без встречи сторон, кроме того, плательщику не нужно носить деньги при себе. Главные недостатки — проблема доверия (вам придется довериться посреднику, а он может не выполнить обязательств), дополнительные издержки и время, которое получателю придется ждать для окончательного зачисления средств, прежде чем он сможет ими распоряжаться.
Разумеется, при безналичных платежах также возникает проблема владения и распоряжения деньгами. Собственник вынужден делегировать третьей доверенной стороне (как правило банку) право на владение своими деньгами как минимум на время перевода. Кроме того, передав это право, собственник де-факто уже не может свободно распоряжаться своими деньгами, а вынужден действовать в рамках заключенного соглашения между ним и банком. Фактически действуя в рамках банковских инструкций.
Как видим, у обоих видов платежей есть свои ключевые недостатки:
- операции с наличностью привязаны к месту и времени;
- безналичные (электронные) платежи нуждаются в посредничестве.
Объединить достоинства обеих категорий платежей и при этом устранить их недостатки фактически означает следующее:
Необходимо создать сеть обмена электронными деньгами между удаленными сторонами, которая будет работать без посредника (доверенного центра).
При этом надо решить следующие задачи:
- Обеспечение доверия между сторонами. Отправитель должен быть уверен, что его денежный перевод дошел до получателя и он его получил. Получатель должен быть уверен, что отправитель не может отменить отправленный денежный перевод и полученные деньги останутся у него (получателя). Т.е. необходимо обеспечить точную фиксацию транзакции между сторонами, чтобы ни одна из сторон не могла бы её оспорить в будущем.
- Проблема «двойных трат». Необходимо предотвратить двойное расходование отправленных средств. Т.е. обеспечить, чтобы отправитель не мог отправить одни и те же деньги двум или более получателям.
Долгое время не получалось решить эти задачи без участия третьей доверенной стороны. И первым инженерным решением, позволившим проводить электронные платежи напрямую, без участия доверенных посредников, стал Биткоин — децентрализованная электронная денежная система.
Цель этого руководства — объяснить простым и понятным языком, как работает Биткоин и как он решает вышеуказанные задачи. В основу этого пособия лег курс «Научи меня Биткоину» (Learn me a bitcoin), который подготовил Greg aka inersha
В следующей публикации будет рассмотрено, как работает Биткоин-сеть.
Подписывайтесь на мой аккаунт @uanix и голосуйте за меня, как делегата Голоса: https://golos.id/~witnesses