Jump to content

почему в UTXO не указывают хеш блока ?


Recommended Posts

Posted

вот пришло мне допустим сообщение транзакции. я беру его двойной sha256 хеш, флипаю порядок байтов (зачем?) и ищу его ПО ВСЕМУ блокчейну. трачу на это кучу времени. затем, допустим я нашел эту транзакцию где-то в блоке номер 120 000. теперь я должен проверить еще пол ляма блоков, что-бы убедиться, не был ли потрачен этот UTXO.

 

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

Posted

@ASHPD ,  вопрос явно для раздела «Блокчейн и финтех», вы его намеренно во флейме создали? Или кто-то из модеров переместил?

Posted
7 минут назад, Helber сказал:

@ASHPD ,  вопрос явно для раздела «Блокчейн и финтех», вы его намеренно во флейме создали? Или кто-то из модеров переместил?

да я так, по-скромному сразу во флудилку. может кто отзовётся. на английском языке не нагуглил как это делается. такой молниеносный поиск: 300 гигабайт данных за долю секунды перелапачивает по 150 тыщ раз за долю секунды. чудеса какие-то. как такое возможно ???

Posted
35 минут назад, ASHPD сказал:

да я так, по-скромному сразу во флудилку. может кто отзовётся

Я сам такой бываю, но все-таки это не всегда правильно )

 

Сейчас перемещу. 

Posted
2 часа назад, ASHPD сказал:

вот пришло мне допустим сообщение транзакции

Это что? Сообщение о транзакции ? Просто транзакция?

2 часа назад, ASHPD сказал:

я беру его двойной sha256 хеш

Что берешь? Зачем берешь? Чем?

2 часа назад, ASHPD сказал:

флипаю порядок байтов (

Ты флипаешь до космопорта??? (с)

Никогда не флипаю до космопорта. Беру флаер - надежнее и проще. 

 

В общем два раза перечитал, в голове галиматья.

 

Posted
4 часа назад, ASHPD сказал:

каким образом фул ноды так быстро ищут транзакции и проверяют выходы на потраченность

 

Bitcoin Core ведёт свою внутреннюю базу UTXO. Каждый раз при поступлении нового блока эта база обновляется. Поэтому ноде не нужно перелопачивать весь блокчейн для определения баланса для конкретного адреса, достаточно сделать поиск по базе UTXO.

 

С недавних пор поис по базе UTXO доступен и простым смертным при помощи RPC scantxoutset, например так можно получить список UTXO и итоговый баланс для адреса 1KFHE7w8BhaENAswwryaoccDb6qcT6DbYY:

scantxoutset start "[\"addr(1KFHE7w8BhaENAswwryaoccDb6qcT6DbYY)\"]"

Работает не слишком быстро, но намного быстрее, чем сканирование всего блокчейна.

Posted

2rammendo:

транзакцией в сети биткоин называют сообщение, в котором указаны непотраченые выходы, которые будут использованы как входы текущей транзакции, адреса, на которые следует переместить определенное количество сатошей с этих непотраченых выходов, публичные ключи от используемых UTXO и ЭЦП этих данных. двойной и перевёрнутый sha256 хеш - это id транзакции, который указывает на непотраченый выход.

 

так вот, проблема в том, что для того что-бы проверить входящую транзакцию нужно выполнить 2 задачи:

1) проверить наличие id транзакции в блокчейне

2) проверить не был ли потрачен UTXO

 

тоесть в любом случае для провекри транзакции нужно прочитать ВЕСЬ блокчейн. скорость чтения среднестатисчических SSD накопителей 500МБ/с. делим 300ГБ (вес блокчейна) на эту скорость чтения и получаем, что для проверки одной транзакции нужно целых 10 минут непрерывно читать данные с диска. это я еще не считаю необходимость двойного хеширования ВСЕХ транзакций в блокчейне, чтоб сверить id транзакции. конечно вы скажите, а за чем по одной проверять, можно же взять весь мемпул и раз в 10 минтут проверять сразу по 5 тыщ транзакций массово. я тоже так изначально подумал, но узлы принимают или отвергают транзакции МГНОВЕННО, за долю секунды! еще я думал что может используют индекс, в котором в порядке возрастания расположены ВСЕ принятые ранее транзакции и после каждого нового найденного блока перестраивают весь индекс. и еще второй индекс, в котором так же в порядке возрастания расположены все потраченные UTXO. тогда конечно можно было бы ускорить процес проверки транзакций, хоть и заняло бы это дополнительно кучу места, даже если брать не по 32 байта от id транзакции, а хотя-бы 5. да и вычеслительной мощности на перегенерацию всего такого индекса каждые 10 минут нужно очень много. но таких индексов я не обнаружил в bitcoin core.

Posted
9 часов назад, Old Miner сказал:

 

Bitcoin Core ведёт свою внутреннюю базу UTXO. Каждый раз при поступлении нового блока эта база обновляется. Поэтому ноде не нужно перелопачивать весь блокчейн для определения баланса для конкретного адреса, достаточно сделать поиск по базе UTXO.

 

С недавних пор поис по базе UTXO доступен и простым смертным при помощи RPC scantxoutset, например так можно получить список UTXO и итоговый баланс для адреса 1KFHE7w8BhaENAswwryaoccDb6qcT6DbYY:


scantxoutset start "[\"addr(1KFHE7w8BhaENAswwryaoccDb6qcT6DbYY)\"]"

Работает не слишком быстро, но намного быстрее, чем сканирование всего блокчейна.

 

ага, я тоже так подумал, но перестроить индекс на пол миллиарда записей это не тривиальная задача. более того не каждый компьютер ВПРИНЦИПЕ сможет справится с такой задачай. не говоря уже о необходимости это делать каждые 10 минут. я для подобных операций арендую инстансы в gcp на сотни долларов и только под мощнейшими 100+ядерными системами удаётся совершать такие вычисления за несколько часов. а тут на офисном ноутбуке БАЦ и готово!

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Similar Topics

    • Дешевизна – не помеха: почему растет пользовательский спрос в Ondo

      Несмотря на снижение цены в последние месяцы, криптоактив Ondo остается на пороге топ-50 по рыночной капитализации. Это говорит о том, что текущее состояние проекта может быть устойчивее, чем следует из динамики котировок. Но так ли это на самом деле? 3 февраля One Finance — компания, которая стоит за криптоактивом Ondo — объявила о запуске сервиса Ondo Global Listing, который позволит другим проектам токенизировать свои ценные бумаги с первого дня допуска к публичным торгам. Касаться это б

      in Новости криптовалют

    • Почему упал биткоин? / Куда подевался эфир с бирж?

      Медведи давят крипторынок: биткоин и другие цифровые валюты идут вниз. Почему падает крипторынок и способен ли Трамп обрушить его еще больше? Куда подевался эфир с бирж? Сколько клиентов крупнейшей криптобиржи мира Binance пострадают из-за массовой утечки данных? Сколько миллионов вложит в криптовалюту Казахстан? Об этом и многом другом расскажем в новом выпуске Bits.media.  

      in Новости криптовалют

    • Почему мы не удаляем топики и аккаунты пользователей?

      Решил оформить мысли на эту тему в одном публичном топике, чтобы дальше просто на него ссылки давать. С завидной периодичностью приходят мне запросы на удаление топиков, при том хотят удаления сами авторы. Причина чаще всего одна – топик вредит репутации больше, чем помогает. Это не всегда так, но многие владельцы бизнесов настолько ревностны к своим детищам, что если не только хвалят – значит вредит и надо убрать. Какие наиболее частые причины в реальности?  Например, была спорная сит

      in Предложения и замечания по работе форума

    • Почему платёжная инфраструктура со временем перестаёт быть сервисом и становится финансовым активом

      На раннем этапе почти любой онлайн-бизнес воспринимает платежную инфраструктуру как вспомогательный сервис. Есть прием средств, есть комиссия, есть понятная схема работы - этого кажется достаточным. Пока обороты невысокие, а география и методы стабильны, такая модель действительно работает и редко вызывает вопросы. Платежная часть живет где-то на фоне, а основной фокус остается на продукте, маркетинге и росте.     Проблемы начинают проявляться позже, когда бизнес выходит за

      in Платежные решения

    • Джеффри Кендрик: Вот почему в этом году эфир может продемонстрировать ралли

      В этом году эфир может продемонстрировать ралли как в 2021 году, поскольку значительно опередит другие активы за счет растущего внедрения ончейн-решений для крипторынка. Об этом заявил глава отдела исследований цифровых активов Standard Chartered Джеффри Кендрик (Geoffrey Kendrick). По его словам, сеть второй по капитализации криптовалюты доминирует в секторе стейблкоинов, децентрализованных финансов (DeFi) и токенизированных активов реального мира (RWA). Свыше 50% всех стейблкоинов и RWA у

      in Новости криптовалют

×
×
  • Create New...