Я в настоящее время в процессе написания очень краткого руководства о том, как работает Bitcoin для новичков в системе и без использования фона в программировании я имел. Я просто хочу, чтобы убедиться, я есть все это правильно, так вот мое понимание основных концепций:
Монета: Криптографически безопасный "след" от всех сделок обратно в поколение упомянутой монеты.
Блок: A криптографически безопасной запись всех операций, происходящих в (примерно) 10-минутный период времени.
Сделка: публично объявленная передача права собственности на Bitcoin.
Общий процесс создания блока:
Создать раздел памяти, содержащий: Отметку время, предыдущие блоки хэш, целое число мы будем называть "данное время", И набор операций.
Добавить сделки в указанный блок, который передает 50 BTC к вам из воздуха. Поскольку это содержит ваш Bitcoin адрес, это делает блок памяти уникальным.
До тех пор пока не будет найдено решение:
- Проверьте, чтобы увидеть, если кто-то уже решил блок. Если это так, сохранить секцию памяти в такт, но посмотрите на их решение.
- Проверьте, чтобы увидеть, что все операции в блоке, метка времени и предыдущий хэш являются правильными, и хэш всего этого производит что-то меньше, чем цель. Если это так, скажите всем, вы проверили блок, и начать слушать, чтобы увидеть, если другие люди подтвердили это. Как только определенное количество людей, подтвердили его точность, (120, если быть точным), протереть участок памяти выше чистой и начать все сначала.
- Проверка новых сделок. Если это так, добавьте его в раздел памяти выше.
- Хэш раздел памяти, производя это "ДНК"/ Подпись (я нашел, что это лучший способ объяснить хэши кому-то не знаком с ними)
- Сравните этот хэш к "цель" стоимость. Это некоторое значение, что все клиенты согласовывают. Если это меньше, Shout лото.
- В противном случае, увеличить значение Nonce и петли.
При повторном подключении к сети, вы должны загрузить блоки, которые были решены с момента последнего DC'd. Каждый из них вы загружаете, вы проверить его, и вещать нашли ли это было действительным или нет. Это то, что увеличивает "подтверждения" рассчитывать в пользовательском интерфейсе.
Является ли вышеуказанная информация в целом точно? Если это так, я буду идти вперед и закончить мое руководство (написанное гораздо более лаконично, чем этот пост, я надеюсь) и разместить его здесь для других людей, чтобы переварить.