1) У вас блокчейн предполагается, что не будет расти бесконечно, а у большинства существующих криптовалют он растет с каждым новым блоком. И соответственно расти может бесконечно. Вот и встает вопрос хранения блокчейна. Уже сейчас по биткойну мы имеем высокие аппаратные требования.
Может я чего упустил, но по-моему проблема бесконечного роста блокчейна это проблема абсолютно всех существующих на сегодняшний день блокчейн-криптовалют, за исключением конечно же этой (TTC то бишь TDC), но даже в ней этот механизм полностью на все сто процентов не реализован в основном пока из-за крайне малой актуальности. Я этот коин изначально позиционировал как возможный апгрейд криптовалют на базе биткоина, т.е самого биткоина. Поэтому в данной теме могу предложить создателям и держателям этого [большинства существующих криптовалют]: - либо модернизировать свои криптовалюты идеями этого коина, одновременно досконально проработав все детали и нюансы защищённости и стабильности, - либо конвертировать свои ??коины в TDC по некоему курсу, - либо ничего не делать, оставить всё как есть и будь что будет. 2) Разделение на вычислителей и хранителей. это опять же один из вариантов решения проблемы хранения слишком большого блокчейна. Условно есть блокчейн годовой, который хранится на нодах вычислителях и есть блокчейн с данными старше года. Т.е. размер оперативного блокчейна жестко прописан, а хвост выходящий за пределы данного размера отсекается и хранится отдельно. в том числе например, используя распределенное хранение.
Как вариант - неплохой вариант. Вариант некой исторической базы данных, но без окончания коин по сути и в названии. Где ценность и актуальность данных, находящихся в ней, не сильно зависит или вообще не зависит от момента текущего времени.
|
|
|
1) Как вы считаете можно ли базу-блокчейн хранить в виде распределенного хранения данных на имеющихся нодах? Конечно с дублированием кусков блокчейна на различных нодах, на случай если какая-нибудь нода перестанет работать в сети. 2) Как вы считаете. если в алгоритме работы крипты и блокчейна, операции поиска блока отделить от операций хранения блокчейна. Условно есть ноды вычислители и ноды хранители. Одни отвечают за поиск блока и проведение транзакций. а другие за хранение блокчейна. Вознаграждение идет и тем и другим.
Тут сразу встаёт вопрос: нафига? Для чего, зачем и кому это нужно? Если блокчейн делить на части это уже будет не блокчейн. Нечто подобное надо будет называть как то иначе. Я считаю, что не стоит плодить сущности без необходимости. А решение какой бы то ни было проблемы это не есть создание других проблем в ещё большем количестве.
|
|
|
Всё. Хватит. Никаких замен на пустом месте и по всяким пустякам больше не будет. А название темы на этом форуме вроде бы не меняется,.. может плохо искал.
|
|
|
1) А как будет работать монета при масштабировании? Также как и будущий биткоин, если коротко. Но что для вас означает масштабирование? 2) Что будет когда выходов будет в старых блоках столько что что ими будет забивать все новые блоки? Получается блокчейн будет тупо копировать сам себя и дальше переводы будут невозможны? -3) Если система таки не успевает сделать перевести выход из старого блока(по причине забитости блоков) в новый что будет с выходом? Он не попадет в UTXO?
Такого не может случиться, так как размер суммы транзакций(двух или более) с непотраченными выходами (UTXO) практически в любом случае всегда больше одной коинтрансфер транзакции с теми же самыми UTXO. Хотя такое возможно, но только в теории. На практике - "в лабораторных условиях". В реальности текущего момента - исключено. А к тому времени когда этот коин, или его идеи, будут применяться на практике столько всяких изменений и улучшений ещё может произойти... 4) Есть какое то разделение в блоке под транзакции переносов и на новые транзакции?
Нет.
|
|
|
Я надеюсь что эпоха форков осталась в прошлом. Это пожалуй один из самых бессмысленных и не любимых криптоактивов не только мной, но и большинством инвесторов.
Сейчас с левыми делами расправлюсь и продолжу дом труба качать в этом направлении... Биткоин, кстати, тоже форк.
|
|
|
Комиссия в 10 раз меньше.
Это комиссия: Recipients (fee: 5960.71734516) которая стала вознаграждением за блок: 5960.71734516 = 5960.67307731 + 0.04426785 Срабатывает лимитирование и со старых монет списывается ежегодная комиссия в 1 или 10 %. Такое будет случаться довольно редко, так как мало кто будет забывать или терять десятки тысяч, и более, монет.
|
|
|
Ох уж эти спойлеры. Да там и TTC оказывается уже две штуки. Ладно. Мелочи жизни. От которых, увы, никуда не денешься... Пока сделаю перерыв в работе на пару недель, по хозяйству кое-чего сделать надо. Надеюсь за это время количество одноимённой токеншняги не увеличится.
|
|
|
А значит информацию по каждому блоку в виде getblock они по любому должны получать и переваривать. На хуя? Зачем это надо? Что они будут переваривать, если им нужны только транзакции с их адресами и доказательство того, что эти транзакции зафиксированы в блокчейне? Вообще то лайт-клиенты должны переваривать не только это, но и все текущие транзакции, что бы в этом потоке найти свои.
|
|
|
В биткоине отдельного merkleroot без списка всех txid транзакций дерева быть не может. Вы написали набор слов не имеющий смысла. Изначальный вопрос был примерно из этой же оперы. Разумеется, блок - это заголовок, где есть меркль-хэш и набор транзакций. И можно посчитать и проверить - валидный этот блок или нет. Мы заговорили про лайт-клиенты. У них нет полного списка транзакций в блоке.
До лайт-клиентов я ещё не добралcя и не знаю как они работают, но по любому лайт-клиенты должны проверять достоверность тех данных, которые они получают. А значит информацию по каждому блоку в виде getblock они по любому должны получать и переваривать. А сами транзакции им без надобности, кроме своих конечно.
|
|
|
Для доказательства того что я сказал - эта информация избыточная. Зачем вам нужен список всех транзакций в блоке, если вас интересуют только те, которые относятся к вашему кошельку? По API можно и весь блок получить. Но на хуя козе баян? Добавлю - дерево меркла используется не только в биткойне. Сама по себе эта технология давно снискала почитателей. Ну, из разряда того, что программисты должны изучать в институтах (я не изучал) В биткоине отдельного merkleroot без списка всех txid транзакций дерева быть не может.
|
|
|
Раз мы пошли на умные темы говорить, то спрошу, знаете ли вы такие два факта: 1. Использование криптографии позволяет решить проблему византийских генералов в общем случае даже если честный генерал всего один. 2. Консенсус в децентрализованной сети достижим только если сеть синхронная.
До этого момента не знал. К чему всё это? Верны они или нет это уже другой вопрос. Мат. часть (гуглится): Распределенные алгоритмы - Tel_Distributed_Algorithms.pdf
https://bitcointalk.org/index.php?topic=2666995.msg31615090#msg31615090
|
|
|
Пусть в новом форке коинбейс транзакция не включается в хэш нового блока. А чтобы коинбес не меняли в блокчейне, можно в блоке хэшировать коинбейс предыдущего блока. Тогда существование пулов станет бессмысленным. Все будут майнить соло.
Тут вполне можно ответить цитатой fxpc: Кража решения тривиальна, оно содержится в блоке. Это позволяет практически даром плодить орфанов в неограниченном количестве. Чтобы тебе было понятнее, представь, ты выиграл в лотерею, но получение тобой выигрыша зависит от того признает тебя победителем следующий победитель или нет, а победителями себя вместе с тобой объявили голодранцы усiх краiн. Технически это полный треш и судя по всему желающих быть обворованными практически нет...
|
|
|
Так или иначе, но ищется хэш заголовка. Пул формирует заголовок и отправляет майнерам. Если взять за правило искать хэш не заголовка, а всего блока, то пул должен будет посылать майнерам весь блок... А если майнер такого форка найдет хэш, то какой смысл ему будет посылать решение пулу?
Если пул будет посылать майнерам весь блок, зачем тогда майнерам будет нужен этот пул когда они могут самостоятельно строить и формировать какой угодно блок по своему усмотрению, используя одну на всех сеть. Майнеру, что бы забрать себе вознаграждение, нужно поменять в коинбазовой транзакции чужой адрес получения вознаграждения(пула) на свой, т.е. заменить одну транзакцию другой. От этой замены меняется хеш дерева и майнер автоматически становится соломайнером. Классический соло майнинг.
|
|
|
...Идея такая: а что если форк будет искать хэш не от заголовка, а от всего блока целиком?..
Так в биткоине, по сути, хэш ищут от всего блока целиком. И не стоит забывать про коинбазовую транзакцию. Именно она определяет получателя вознаграждения. Эта транзакция такая же как и все остальные, и её хеш тоже "весит на дереве меркля". А хеш этого дерева неотъемлемая часть заголовка блока. Соответственно поиск хеша заголовка блока равнозначен поиску хеша блока целиком. Извиняюсь, если что, но по-моему вы тут какую то пургу обсуждаете.
|
|
|
Что-то с синхронизацией все печально - постоянно отваливается соединение.
Проблему с синхронизацией нашёл. uint256 CBlockHeader::GetHashFork(int tHeight) const { uint256 thash; if (tHeight > HEIGHT_OTHER_ALGO) lyra2TDC(BEGIN(nVersion), BEGIN(thash), 80); else lyra2re2_hashTX(BEGIN(nVersion), BEGIN(thash), 80); return thash; }
uint256 CBlockHeader::GetHash() const { uint256 thash; if (mapBlockIndex.count(hashPrevBlock)) { CBlockIndex* pindexPrev = mapBlockIndex[hashPrevBlock]; if (pindexPrev->nHeight + 1 > HEIGHT_OTHER_ALGO) lyra2TDC(BEGIN(nVersion), BEGIN(thash), 80); else lyra2re2_hashTX(BEGIN(nVersion), BEGIN(thash), 80); } // else if (mapBlockIndex.size() <= (unsigned int)HEIGHT_OTHER_ALGO) else if (mapBlockIndex.size() <= (unsigned int)HEIGHT_OTHER_ALGO && nTime < 1534063443) lyra2re2_hashTX(BEGIN(nVersion), BEGIN(thash), 80); else lyra2TDC(BEGIN(nVersion), BEGIN(thash), 80);
return thash; } То, что я раньше нагородил и что, как оказалось, всё же не совсем корректно работает, сейчас можно заменить всего лишь одним условием: nTime < таймштампа первого блока с другим алгоритмом. Своего рода почти чекпоинт будет, но не такой жесткий. Решение проблемы синхронизации - https://github.com/neiros/TDC/releases/tag/v0.10.17.8
|
|
|
|