18+
Что такое биткоин?
Опубликовано:

Что такое биткоин?

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

Так же, как любой актив, вы можете купить биткоины, быть их владельцем, передавать их другим. На данный момент в обращении находится 16 млн. биткоинов. Их число увеличивается на 12.5 через каждые 10 минут. Существует предел в 21 млн., который будет достигнут в 2140 году.

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

Цена биткоинов обычно определяется в долларах США. Она зависит от спроса и предложения на рынке, как и цена нефти или золота.

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

Как это работает? Управление платежами: блокчейн

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

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

Биткоин сеть

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

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

Peer-to-peer

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

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

P2P не имеет центральной точки, уничтожив которую, можно уничтожить сеть.

Биткоин счета: адреса и кошельки

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

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

Чтобы получить перевод в биткоинах, нужно, чтобы отправитель знал ваш публичный код.

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

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

Транзакции

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

Приватные ключи

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

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

Что происходит когда я перевожу биткоины?

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

Цифровые подписи

При отправке инструкции кошелек подписывает ее приватным ключом и отправляет ее валидаторам. Цифровая подпись демонстрирует, что вы владелец адреса.

Валидаторы

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

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

Как транзакция попадает в блокчейн?

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

Как обеспечивается безопасность биткоина? Платежи

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

Контроль блоков

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

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

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

Почему биткоин – децентрализованная валюта?

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

Открытый код

Каждый майнер может видеть код программы, которую он использует. Самая популярная версия хранится на https://github.com/bitcoin/bitcoin

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