котировка
Я читал немного о Bitcoin, который является невероятно увлекательной цифровой валютой и очень отличаются от других цифровых валют, доступных. Я пытаюсь обернуть вокруг головы, как работает процесс горнодобывающей промышленности. смогли порадовать объяснить мне в очень упрощенном вниз, как Вы?
Кроме того, я читал газету Накамото на Bitcoin и было интересно, если бы вы знали, что означает следующее:
- узлы
- гашиш
- нулевые биты
- доказательство правильности работы
Кроме того, я читал газету Накамото на Bitcoin и было интересно, если бы вы знали, что означает следующее:
- узлы
- гашиш
- нулевые биты
- доказательство правильности работы
Вот некоторый краткий фон, чтобы помочь с пониманием.
Сеть Bitcoin по существу общий журнал всех операций, когда-либо сделанные (этот журнал известен как blockchain, но я буду ссылаться на него как бревно, так как я нашел жаргон быть серьезным препятствием для моего первоначального понимания). Суммируя все совокупные сделки с начала времени, текущий баланс каждого человека может быть определена (так же, как, как ваши регулярные счета в банке работ). Если вы можете легко изменить предыдущие записи в этом журнале, вы можете легко изменить свой баланс, поэтому цель добычи, чтобы сделать его неосуществимым для любого человека, чтобы искусственно изменить этот журнал.
Есть действительно две проблемы, что добыча решает - делать журнал неизменна, и позволяет группе потенциально ненадежных компьютеров, чтобы прийти к соглашению о том, что должно быть текущее состояние лог.
1) Mining, чтобы сделать журнал неизменна - т.е. сделать безопасный журнал
Для вашего Google «доказательство работы» является ключом к тому, как это работает (объяснено позже в этом письме).
Шахтеры все имеют согласованную версию журнала на своем компьютере, которые они загрузили через сеть p2p. Когда новая транзакция транслируется по сети, он должен быть добавлен в журнал. Идея добычи, чтобы сделать добавление новой транзакции простого, но сделать изменения старых транзакций трудно. Для достижения этой цели, шахтеры выполняют определенный расчет на "скоро, чтобы быть будущей версии журнала.
Шахтер ищет конкретный кусок случайных данных (иначе случайное слово). Они добавляют эту случайную часть данных в существующем журнал, а также любые новые операции, и сделать расчет по этим данным (расчет известен как «хэш»). Цель состоит в расчет, чтобы дать ответ, который меньше, чем определенное значение (знать, как «мишень»), установленной в сети. Когда шахтер находит случайный фрагмент данных, что приводит к ответу быть пригоден, они объявляют их нахождения в сеть и сеть проверяет, действительно, что часть информации дает желаемый результат, и те операции, которые добавляются в журнал всех. Это требует более глубокого объяснения, и касательной.
Хэширование процесс принятия куска данных и создания «отпечатков пальцев» для этих данных. Отпечаток известен как «хэш». Вы можете очень-очень заменителем «хэш» с «отпечатком» на протяжении всего этого документа. Вы можете хэширования фрагмент текста, файла, номер, базы данных - любой фрагмент данных. Главное о хэше, что содержание хэша будет отличаться для различных частей данных, но каждый хэш имеет тот же размер. Так, например, хэш «тест» является 098f6bcd4621d373cade4e832627b4f6 и хэш «Test» (капитала Т) 0cbc6611f5540bd0809a388dc95a615b - совершенно другой, несмотря лишь небольшое изменение на входе, но оба имеют одинаковую длину. (Хотя эти хэши есть письма, они на самом деле цифры в base16, иначе шестнадцатеричном формате а = 10, б = 11, с = 12 ... -. Шестнадцатеричные числа могут быть преобразованы в обычные числа base10 десятичных тривиальным, но base16 является дружественным к компьютеры ... Я очень сильно хочу выродок о хэшей здесь, но это немного по касательной, так что вы должны спросить меня, если вы хотите, своего рода информация). Другое дело о хэш, если кто-то дает вам хэш, вы не можете легко сказать, что исходные данные в результате этого хэша, но если у вас есть исходные данные, вычисление хэша очень легко. Это свойство приводит к хэш быть известным как «односторонней функции». Это «один-way'-Несс очень важно для добычи полезных ископаемых. Обратите внимание, что в этом примере я хэшируются «тест», который представляет собой маленький кусочек данных, но Bitcoin шахтеров хэширования всю историю Bitcoin, которая несколько гигабайт данных.
Вернуться к теме - что шахтеры сделать вычисления хэша старых трансакций (журнал), плюс новых, плюс некоторых случайных данных. Они смотрят на число, которое является результатом хэш (это совершенно непредсказуемо, что это значение будет) и посмотреть, если это меньше, чем определенное значение, установленное в сети. Если это так, то это означает, что (статистически говоря) наблюдается определенный минимальный объем вычислений, которые были предприняты, чтобы достичь этого результата. Это «доказательство» работы. Пример:
Я шахтер. Я выполнить одну из этих хэшей на старый журнал + новых сделок + случайная часть данных, и это дает мне номер 1000. Сеть говорит, что я должен найти результат, который меньше, чем 200. Он не будет принимать мой результат, так что эти новые транзакции не могут быть добавлены к сети еще. Я делаю еще один хэш с новой случайной частью данных. Результат 777. До сих пор не достаточно низко. Я попробовать хэширования третий, четвертый, пятый случайный фрагмент данных, не повезло, но мой шестой кусок случайных данных я получаю значение 160. случайная величина, я использовал, чтобы получить 160 объявляется в сети, и после того, как другие на сеть подтвердить результат, сеть принимает мое решение, и новые сделки добавляются в старый журнал. Тот факт, что я в состоянии обеспечить это случайное число является «доказательством», что по крайней мере минимальное количество расчетов было выполнено. Сеть знает, что это потому, что для хэша, чтобы дать результат менее 200 будет принимать в среднем определенного числа вычислений. Конечно, цифры в горнодобывающей промышленности до смешного велики, но этот пример подчеркивает принцип. Иногда следующий результат будет найден очень быстро, иногда это занимает много времени, чтобы найти. Но в конечном счете, это все усредняет. В сети Bitcoin эти случайные величины найдены примерно каждые десять минут.
Здесь свойство «однонаправленная функция» хэша приходит в шахтерах знают, что они хотят, чтобы результат хэша быть. сеть сказала им - в приведенном выше примере результата должна быть меньше, чем 200 - но они не могут легко работать, что случайная часть данных должна быть от «реверсивного» хэша. Они просто должны угадать случайную часть снова и снова, пока они не найдут подходящую случайную часть, которая хэш меньше, чем значение требуемого сети.
Проблема теперь, если все больше людей начинают хэширования, успешные хэши будут найдены намного быстрее. (Почему это проблема в том, что я могу ответить позже, если вы хотите). Для учета этой сети регулирует минимальное значение, необходимое, так что решения будут найдены шахтерами примерно через каждые десять минут, независимо от того, это несколько ребят добычи на их ПК или если это правительство, используя свои безумные суперкомпьютеры. Другой пример:
Хэш, что сеть в данном примере используется приводит к результатам, между 0 до 9999. Минимальное значение, необходимое в сети, чтобы принять «доказательство» является 9000. Это довольно легко найти хэш, который меньше, чем 9000. На моей, Я мог бы найти случайную часть информации, чтобы дать мне право окрошки каждые десять минут. Но больше пятидесяти людей начинают начислять хэш по сети, а также новые решения могут быть найдены через каждые пятнадцать секунд. Сеть замечает эту скорость вверх и регулирует целевое значение будет меньше, чем 6000. Теперь он принимает меня много больше, как человек, чтобы найти значение, а потому, что есть еще люди, выполняющие вычисления, она по-прежнему занимает в среднем десяти минут до найти значение. Сеть Bitcoin делает это регулирование (известное как «нацелить») после того, как в 2016 году хэш было решена ( «решение хэша» известно как «найти блок»), которая примерно каждые две недели. Это один из механизмов, который позволяет любому принимать участие в обеспечении безопасности сети или прекратить принимать участие без ущерба для безопасности.
Таким образом, по-видимому, это хэш / доказательство работы вещи является способом обеспечения сделка добавляется только к сети с определенной скоростью. Но это гораздо больше, чем это. Поскольку результат изменений хэш в зависимости от того, какие входы, если кто-то использует измененную историю от того, что все остальные используют, их история + новые транзакции + случайное значение хеш-функции не будет таким же, как все остальные, и их случайное значение будет отклонено, даже если они думают, что это хорошее значение (т.е. нет цели их добыча). Поскольку журнал является кумулятивным, и определенный минимальный объем вычислений пошел в здание, войти вверх, чтобы изменить это потребуется больше вычислительной мощности, чем то, что шахтеры ставят в него, что много (гораздо больше, чем любой человек будет реально есть - это понятие было ужасно упрощено, но он получает представление в поперечнике).
Мы пришли к одной из целей добычи полезных ископаемых - журнал не может быть легко изменен.
2) Разрешить ненадежные компьютеры совместно использовать общий журнал
Дело выше показало, что вредоносные шахтеры не могут использовать измененную историю, потому что это влияет на их хэш. Это требует еще некоторые пояснения.
Пользователи Bitcoin будет только когда-либо стремиться к потенциально могут изменить свои собственные операции из журнала, например, сказать, что сделка они сделали пять дней назад не было. Mining предотвращает это (известный как «двойные» расходы).
Скажем, у меня есть транзакции в журнале, который один день от роду, где я послал кого-100 Bitcoins. Я хочу изменить эту транзакцию от послава 100 Биткойна к наличию отправлены 0,1 Bitcoin (или даже полностью удалить транзакцию). Если я могу сделать это, человек, которого я послал 100 BTC вчера в настоящее время будет иметь только 0,1, и я бы восстановил 99.9 Bitcoin. Чтобы понять, как это сделать и почему это трудно, касательный должны быть приняты, о том, как определяется «правильная» версия истории.
Сеть решает, какая история действует очень простое правило - он занимает самую длинную историю и использует. И дольше я имею в виду один с большинством операций (даже то, что упрощается, но, по существу достаточно хорошим). Так что для меня, чтобы изменить сделку от одного дня назад, я не могу просто вырезать последние дни операции, так как сеть будет отвергать свою историю слишком коротко. Я должен обеспечить сеть с модифицированной историей, по крайней мере до тех пор, как современная история. Чтобы сделать это, я бы имел достаточно вычислений пересчитывать любые сделки после того, как видоизмененный до настоящего момента, что делает мою историю больше, чем в настоящее время принимаются один, несмотря на содержащем мошенническую сделку от дня назад. Для достижения этой цели является вычислительно и экономически неосуществимым. Чем старше сделка, тем сложнее становится изменить. Надеюсь, вы можете начать видеть, что «передний край» бревна является довольно шумным местом, и что объяснение здесь действительно довольно просто.
Это свидетельствует о том, как добыча предотвращает злоумышленник изменений истории и позволяет ненадежным людям поддерживать и согласовать общую часть данных, которая постоянно меняются. Вы можете видеть, что если шахтеры прекратили проведение их вычисления, то становится проще злоумышленник, чтобы иметь возможность изменять журнал.
3) бонус цель добычи как способ распределить валюту. Когда шахтер обнаруживает, что случайная часть информации и вносит свой вклад в журнал, они дали совершенно новые монеты в сети. Это награда за обеспечение журнала. И он решает, что простой, но нужно проблема о том, кто, чтобы дать монеты и как изначально распространять его. Это заставило меня остановиться на мгновение, когда я узнал об этом и спрашивают, как сделать текущие принтеры денежного сделки с начальным распределением ... что-то я раньше не считал.
Теперь, для слов, которые вы хотели уточнить -
Узлы:
Узел представляет собой компьютер под управлением программного обеспечения Bitcoin. Некоторые (большинство) узлов просто хранить журнал и не делать каких-либо работ на нем. Они получают новые транзакции и передавать их на другие компьютеры в сети (известный как «Перекладка сделки»). Можно сказать, что это одна из самых важных частей p2p части сети, а также совместное использование p2p самого журнала. Некоторые узлы выполняют вычисления я говорил, известный как добыча. Любой узел может добывать для Bitcoin, то есть добавлять транзакции в журнал, человек просто должен сказать, программное обеспечение, чтобы начать добычу. Но большинство узлов не мои. Каждый раз, когда вы запускаете программное обеспечение Bitcoin, вы узел сети Bitcoin.
- гашиш
Разъяснения выше - по существу цифрового отпечатка пальца для части данных.
- нулевые биты
Не уверен, что ваш уровень понимания компьютеров, поэтому я объясню это в полной мере. Ряд на компьютере является двоичным значением, серия 0 и 1. Так, например, число 5 в двоичной системе 101. 5 представляет собой «три бита» двоичного числа. Другой пример, 128 представляет собой восемь бит двоичного числа - 10000000. Вы можете открыть калькулятор и изменить его в режим программирования и перейти из двоичной системы счисления в десятичную, если вы хотите, чтобы лучше понять это. Но я уверен, что вы знаете, двоичным! Дело в том, что «биты» длина числа в двоичном формате.
Нулевой бит любой бит, который имеет нуль в нем. Для Bitcoin, ведущих нулевых битов представляют интерес. Рассмотрим число 0001 в двоичной системе. Это просто номер 1, но с тремя ведущими нулевыми битами.
Помните, как хэш «фиксированной длины» номер? Это означает, что можно иметь хэш, который имеет первую часть, как ноль. В нормальной десятичной математике, ведущий ноль игнорируются, а потому, что хэш имеют фиксированную длину, ведущий нуль входят в числе.
Также помните, что сеть требует вывода хэша быть меньше, чем определенное значение для того, чтобы считаться действительным? Вы можете увидеть, как шахтеры были бы заинтересованы в том, как многие ведущие нулевые биты в результате их хэш, потому что определяет, насколько мала величина. например, хэш, что приводит к 1000 является довольно большим, но хэш, что приводит к 0001 весьма мал.
Другими словами, количество ведущих нулевых битов определяет как маленький номер.
- доказательство правильности работы
Изложенное выше, доказательство работы является системой, которая доказывает, статистически говоря, что определенное количество вычислений было выполнено.