Структура DAG и майнинг HYCON

in #ico8 years ago

 Общий вопрос, который задают при обсуждении HYCON, касается самой структуры DAG. Структура DAG, используемая в HYCON, является следствием фиксации до интервала блока 1000 мс. Рассматривая  способы увеличения пропускной способности цепочки блоков, стало  очевидным, что системная латентность в распределенной сети будет  ограничивающим фактором, приводящим к непреднамеренному разветвлению  блочной цепи.

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

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

 Процедура  голосования  является довольно истощающей нагрузкой на ресурсы,  поэтому ее осуществление необходимо тщательно контролировать. Наш  первоначальный прототип был написан на Python для упрощения разработки,  однако окончательная версия реализации INFINITY SPECTER должна быть  написана в Rust, так что поддерживается полный контроль над структурами  данных и управлением памятью, что позволяет повысить производительность. 

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

 Публикация блока потребует подтверждения работы, аналогичной большинству существующих криптотермин. Шахтеры  будут вычислять хэш следующего блока на основе хэшей кончиков DAG,  корня merkle из транзакций, которые должны быть включены в блок, и  nonce, которые будут изменены до тех пор, пока не будет вычислен хеш,  который превышает текущую сложность , Хотя  создатели SPECTER заявляют, что 10 блоков в секунду выполнимы с  использованием протокола, HYCON первоначально будет иметь цель 1 блок в  секунду. Хотя  текущий прототип использует доказательство работы, мы очень хорошо  знаем о большом количестве электроэнергии, которое используется для  защиты сетей биткойн и эфиры, и рассматривают альтернативы. Одним  из менее известных методов, которые мы рассматриваем, является  «Доказательство пространства» , которое требует от майнеров  предварительно вычислить и хранить большие объемы данных, а затем искать  файлы для решения, которое удовлетворяет текущим трудностям. Это использует очень мало электричества и было продемонстрировано, что оно эффективно с помощью монеты.

 Начальным этапом  процесса разработки является кодирование и хеширование содержимого  заголовка блока, которое не будет изменяться в результате процесса  добычи. Эти содержания являются ссылками на  предыдущие блоки, корень Merkle из транзакций, которые должны  содержаться в блоке, сложность целевого блока, временная метка блока и  корень Merkle-Patricia Trie, представляющие текущее мировое состояние  после транзакций в этот блок.

 Эти данные хэшируются с  использованием 64-байтовой версии Blake 2b, чтобы обеспечить неизменный  пре-хэш, который будет предоставлен графическому процессору или  процессору. Этот шаг необходим, особенно для разработки  графического процессора, поскольку заголовки блоков HYCON имеют  переменную длину из-за множества возможных родительских блоков. Программное  обеспечение для работы с GPU лучше всего работает, когда оно снабжается  структурой данных с фиксированной длиной, поэтому необходимо  предварительное хеширование. Предвариантный заголовок  заголовка 64 байта затем объединяется с 8 байтовым nonce, который  увеличивается на 1 для каждой попытки хэша с использованием алгоритма  хеширования Cryptonight. Комбинированный заголовок заголовка и nonce хэшируются вместе, чтобы вернуть 32-байтовый хеш-элемент блока. Этот  хэш затем сравнивается с трудностью, заданной в заголовке блока, и если  достигается правильный порог трудности, то nonce возвращается для  включения в заголовок готового блока и публикуется 

 При успешном завершении Подтверждения Работы для нового блока, шахтер награжден HYCON. Процесс добычи для HYCON планируется на 50 лет. Первоначальная награда за добычу блока будет установлена на 8 HYCON. Вознаграждение  останется на уровне 8 HYCON за блок в течение 6 лет и 2 месяцев, и на  этом этапе он уменьшится на 1 HYCON до 7 HYCON на блок. Эта  награда будет продолжать уменьшаться периодически таким образом, пока  рыночная капитализация в 10 миллиардов HYCON не будет достигнута только  через 50 лет. Было решено уменьшить выигрыш в  горнодобывающей промышленности линейно, в отличие от геометрического  распределения Биткойна с периодическим сокращением наполовину, чтобы  обеспечить более сбалансированное распределение монет за период добычи и  избежать значительного снижения экономических стимулов для шахтеров,  как это видно из модели сокращения вдвое биткойнов. 

 Применяя приведенную выше линейную модель, кривая распределения HYCON выглядит следующим образом: 

 Полный узел, на  котором запущено программное обеспечение HYCON, имеет доступ к локально  размещенному веб-графическому интерфейсу, позволяющему выполнять  операции с бумажкой, транзакции и развязывание цепочек. GUI был написан с использованием React, чтобы обеспечить легкий высокопроизводительный интерфейс. 


Coin Marketplace

STEEM 0.04
TRX 0.32
JST 0.090
BTC 62666.97
ETH 1762.17
USDT 1.00
SBD 0.39