#Новичкам
Как устроен Биткоин и что такое его транзакции.
Как проводятся платежи в традиционной централизованной системе?
С помощью посредников, в роли которых выступают разные фин. учреждения, которым мы вынуждены доверять.
Каковы особенности такой системы?
- обратимые транзакции
- посредники берут %, что увеличивает стоимость транзакций и устанавливает минимальную их цену, делая непрактичным проведение нечастых и небольших транзакций
- обратимость транзакций увеличивает стоимость сервисов, чьи услуги являются неотменяемыми (транзакцию отменили. но % с нее мы уже заплатили)
- так как платеж можно аннулировать, продавец страхуется, требуя от покупателя больше информации, чем необходимо
- определенный % мошенничества неизбежен
А что, если платежная система позволит любым двум участникам осуществить перевод средств напрямую, без посредника? Вычислительная дороговизна отмены транзакций сделает мошенничества невыгодными, а механизмы эскроу защитят покупателей.
Именно такой системой является Блокчейн Биткоина.
Блокчейн -это система распределенного реестра (реестр - список, перечень).
Как это работает?
Информация (инф. о блоке, счетчик и список транзакций) записывается в блоки. Когда блок (его размер до 1 мб) заполнен, появляется новый блок. Блоки между собой связаны линейно, друг за другом по порядку, и каждый блок содержит информацию (хэш) о предыдущем. Поэтому, при желании, можно посмотреть историю вплоть до самого первого блока.
Определим электронную монету как последовательность цифровых подписей. Маша отправляет монету Васе, подписывая хэш предыдущей транзакции и публичный ключ Васи, присоединяя эту информацию к монете. Но как Вася определит, сколько раз Маша потратила эту монету? Он должен знать, что никто из предыдущих владельцев не подписал транзакцию раньше той, что находится в цепочке отправленной ему монеты. Для этого в хэш блока записывается метка времени. Она показывает, что в данный момент конкретные данные существовали и потому попали в хэш блока. Получается, лишь первая транзакция является истинной, поэтому можно не беспокоиться о поздних попытках двойной траты, информация о первой транзакции уже была и, так как она записана у всех участников системы, ложную (более позднюю) отклонят.
Со стороны пользователя операция выглядит так: Маша открывает свой кошелек, вводит адрес получателя и сумму в 2,5 (к примеру) биткоина, исполняется подпись с помощью приватного ключа. (публичный ключ или биткойн-адрес - это уникальный персональный адрес, который используется в цепочке и каждый может видеть его, А приватный ключ работает как пароль)
Внутри системы транзакция будет иметь три фрагмента информации:
1) Вход. Запись с информацией о том, откуда у Маши появились биткоины.
2) Сумма. Количество передаваемых монет. В этом случае — 2,5.
3) Выход. Адрес биткоин-кошелька Васи.
Что такое вход и выход и что делать, если их суммы не совпадают?
Биткоины, как вы уже поняли, существуют только в виде записей операций в электронном хранилище. Так, например, баланс Маши составляет 1 BTC от Саши и 3 BTC от Сережи. Все это разные транзакции, которые были проведены в разное время. В кошельке Маши записи не сливаются в единый файл с 4 BTC, а продолжают храниться отдельно.
Что бы Маше отправить Васе 2,5 BTC, хранилище пытается найти файл с такой суммой или сочетание файлов, чтобы получилось 2,5 BTC. В нашем примере нет операции с такой суммой и они не суммируются для получения нужной суммы. Маша не может разбить 3 BTC, полученные от Сережи (сумма входа), так как система не разрешает дробления. Поэтому, ей приходится отправлять 3 BTC вместо 2,5 (сумма выхода) на две транзакции или два выхода: 2,5 для Васи и 0,5 обратно в виде сдачи.
В следующие разы раскроем тему майнинга, хранения, а также поговорим о недостатках и уязвимостях блокчейна Биткоина и способах их решений.