Bitcoin Forum
July 13, 2024, 05:16:28 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 [2]  All
  Print  
Author Topic: Замусоривание блокчейна  (Read 183 times)
igor72
Legendary
*
Offline Offline

Activity: 1904
Merit: 2039


Crypto Swap Exchange


View Profile
Today at 12:05:02 PM
 #21

Сатоши нам что завещал? Типа каждый может проверить клиента и правильность алгоритма. Сейчас проверить алгоритм самого блокчейна -- это задача со многими звездочками.
Вот здесь мне непонятно, что вы имеете в виду. Если раньше для проверки блокчейна нужно было посчитать хеш транзакций в блоке, затем дерево Меркла, и, наконец, хеш заголовка блока, то с появлением сегвита работы стало в два раза больше по объему (дополнительно надо посчитать хеш witness, их дерево и сравнить с значением в op_return коинбейз-транзакции), но не по сложности. То есть те, кто раньше мог такое сделать, те и сейчас могут.

█▀▀▀











█▄▄▄
▀▀▀▀▀▀▀▀▀▀▀
e
▄▄▄▄▄▄▄▄▄▄▄
█████████████
████████████▄███
██▐███████▄█████▀
█████████▄████▀
███▐████▄███▀
████▐██████▀
█████▀█████
███████████▄
████████████▄
██▄█████▀█████▄
▄█████████▀█████▀
███████████▀██▀
████▀█████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
c.h.
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀█











▄▄▄█
▄██████▄▄▄
█████████████▄▄
███████████████
███████████████
███████████████
███████████████
███░░█████████
███▌▐█████████
█████████████
███████████▀
██████████▀
████████▀
▀██▀▀
satscraper
Hero Member
*****
Offline Offline

Activity: 798
Merit: 1458



View Profile
Today at 12:34:53 PM
 #22



Всякие вопросы "сколько будут весить входы" беспокоят лишь создателей транзакций, если они трясутся над каждым сатоши комиссии. Всем остальным по#уй.

Вообщем-то да, если майнеру хорошо заплатить да ещё и мимо кассы, то он может любой муссор/транзакцию в блок засунуть с нарушением всех норм и правил. Вот пример такой транзакции https://mempool.space/tx/0301e0480b374b32851a9462db29dc19fe830a7f7d7a88b81612b9d42099c0ae


Просто подобные  ходы майнеров сильно не афишируются и мы мало о них знаем.

███████████████████████████
███████▄████████████▄██████
████████▄████████▄████████
███▀█████▀▄███▄▀█████▀███
█████▀█▀▄██▀▀▀██▄▀█▀█████
███████▄███████████▄███████
███████████████████████████
███████▀███████████▀███████
████▄██▄▀██▄▄▄██▀▄██▄████
████▄████▄▀███▀▄████▄████
██▄███▀▀█▀██████▀█▀███▄███
██▀█▀████████████████▀█▀███
███████████████████████████
.
.Duelbits.
..........UNLEASH..........
THE ULTIMATE
GAMING EXPERIENCE
DUELBITS
FANTASY
SPORTS
████▄▄█████▄▄
░▄████
███████████▄
▐███
███████████████▄
███
████████████████
███
████████████████▌
███
██████████████████
████████████████▀▀▀
███████████████▌
███████████████▌
████████████████
████████████████
████████████████
████▀▀███████▀▀
.
▬▬
VS
▬▬
████▄▄▄█████▄▄▄
░▄████████████████▄
▐██████████████████▄
████████████████████
████████████████████▌
█████████████████████
███████████████████
███████████████▌
███████████████▌
████████████████
████████████████
████████████████
████▀▀███████▀▀
/// PLAY FOR  FREE  ///
WIN FOR REAL
..PLAY NOW..
Smartprofit
Legendary
*
Offline Offline

Activity: 2408
Merit: 1856



View Profile WWW
Today at 12:39:50 PM
 #23

Интересно было бы ознакомиться с популярным изложением (для не особо грамотных) работы подписей Шнорра.
Совсем уж на пальцах не могу пока внятно сам объяснить. Но в целом там разработчики избавились от каких-то конструкций, связанных с "стандартизацией". То есть там теперь нет завязок на "лишние" байтики. Приватный ключ - 32 байта (так и раньше было). Публичный ключ - 32 байта (было 33 или 65), подпись - 32+32 байта (раньше было переменной длины около 72 байтов). Крутим-вертим-хешируем -- если ответ сошелся -- значит подпись верная. А вот понять почему -- это пипец непонятно. Как там работают эллиптические кривые и почему вот такое умножение и сложение в группе -- это я пока не осилил. Должно улежаться в голове. Я, конечно, дискретную математику люблю. Первое знакомство еще в 9-ом классе было. Но эллиптические кривые -- это все-таки не школьная программа. Мы и в университетах это не проходили.
Quote
А сейчас уже нужна "третья сторона"? Алгоритм немного изменился, но в чем его ущербность?
Не совсем так, конечно. Сатоши нам что завещал? Типа каждый может проверить клиента и правильность алгоритма. Сейчас проверить алгоритм самого блокчейна -- это задача со многими звездочками. Думаю, считанное число людей в мире могут это. Остальным приходится полагаться просто на то, что клиент работает правильно. Мы все равно ушли от концепции "каждый сам себе банк"

Я помню Сатоши Накамото писал, что не все пользователи Биткоина будут использовать полные ноды, некоторым достаточно и лёгкого клиента (вроде сегодняшнего криптовалютного кошелька Electrum).
То есть он предполагал, что в будущем пользователи будут дифференцироваться (хотя бы по технической квалификации и по применяемому оборудованию / Electrum же можно и со смартфона использовать /).
Поэтому концепция "Каждый сам себе банк" - она же осталась. Просто частные банки (они же любители Биткоина) стали больше ориентироваться на работу с поставщиками и подрядчиками (а не все делать сами).
Возможно этого избежать невозможно - внешние вызовы приводят к усложнению системы.

.
.BLACKJACK ♠ FUN.
█████████
██████████████
████████████
█████████████████
████████████████▄▄
░█████████████▀░▀▀
██████████████████
░██████████████
████████████████
░██████████████
████████████
███████████████░██
██████████
CRYPTO CASINO &
SPORTS BETTING
▄▄███████▄▄
▄███████████████▄
███████████████████
█████████████████████
███████████████████████
█████████████████████████
█████████████████████████
█████████████████████████
███████████████████████
█████████████████████
███████████████████
▀███████████████▀
█████████
.
amaclin1 (OP)
Sr. Member
****
Offline Offline

Activity: 812
Merit: 305


View Profile
Today at 12:59:48 PM
 #24

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

Напомню: "выходы" и "входы" - это "загадка" и "разгадка"
Самые первые транзакции были P2PK, когда загадкой было "вот публичный ключ, дай подпись"  и разгадкой собственно "на тебе подпись этим ключом, проверяй!"
Потом появились P2PKH, загадка стала "вот хэш публичного ключа, предъяви его самого и подпиши им". Эти адреса мы знаем как 1ххххх
Потом появились P2SH, загадка стала "вот хеш загадки, предъяви загадку, и дай разгадку к ней, разумеется". Это 3ххххххх
Теперь в Segwit-V0 и Taproot загадка звучит "да пофиг, угадал", а всё остальная проверка вынесена в witness-часть. То есть scriptSig тоже пустой, ибо это самый простой ответ на такую загадку. А сама загадка, условно говоря, на китайском языке.

По факту, консенсус соблюден. Ничего не нарушено с 2009 года. Но это формально. По сути дела куча геморроя связанная с обратной совместимостью. И если в концепции Сатоши как-то подразумевалось "ну почти каждый может проверить используя популярные, общедоступные и стандартизированные средства", то сейчас уже это мало кому доступно. Идея потерялась. Осталась только вера в вечный туземун Smiley
igor72
Legendary
*
Offline Offline

Activity: 1904
Merit: 2039


Crypto Swap Exchange


View Profile
Today at 01:23:32 PM
 #25

Вообщем-то да, если майнеру хорошо заплатить да ещё и мимо кассы, то он может любой муссор/транзакцию в блок засунуть с нарушением всех норм и правил. Вот пример такой транзакции https://mempool.space/tx/0301e0480b374b32851a9462db29dc19fe830a7f7d7a88b81612b9d42099c0ae
У майнера, конечно, больше возможностей, чем у простого юзера, но всё-таки правила он нарушать не может, тут вы немного преувеличили ).

Я помню Сатоши Накамото писал, что не все пользователи Биткоина будут использовать полные ноды, некоторым достаточно и лёгкого клиента (вроде сегодняшнего криптовалютного кошелька Electrum).
Electrum не совсем SPV-кошелек, о котором писал Сатоши, лишь отчасти.

Теперь в Segwit-V0 и Taproot загадка звучит "да пофиг, угадал", а всё остальная проверка вынесена в witness-часть. То есть scriptSig тоже пустой, ибо это самый простой ответ на такую загадку. А сама загадка, условно говоря, на китайском языке.

По факту, консенсус соблюден. Ничего не нарушено с 2009 года. Но это формально. По сути дела куча геморроя связанная с обратной совместимостью. И если в концепции Сатоши как-то подразумевалось "ну почти каждый может проверить используя популярные, общедоступные и стандартизированные средства", то сейчас уже это мало кому доступно. Идея потерялась. Осталась только вера в вечный туземун Smiley
На китайском потому, что сатошин клиент его не понимает? Ну а как иначе прогрессировать? Да и сколько их осталось, тех древних нод? В общем, не вижу проблемы в переносе скриптов/подписей в witness-часть, по большому счету это ничего не меняет в плане проверяемости транзакций. Наверное, недостаточно глубоко понимаю предмет.

█▀▀▀











█▄▄▄
▀▀▀▀▀▀▀▀▀▀▀
e
▄▄▄▄▄▄▄▄▄▄▄
█████████████
████████████▄███
██▐███████▄█████▀
█████████▄████▀
███▐████▄███▀
████▐██████▀
█████▀█████
███████████▄
████████████▄
██▄█████▀█████▄
▄█████████▀█████▀
███████████▀██▀
████▀█████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
c.h.
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀█











▄▄▄█
▄██████▄▄▄
█████████████▄▄
███████████████
███████████████
███████████████
███████████████
███░░█████████
███▌▐█████████
█████████████
███████████▀
██████████▀
████████▀
▀██▀▀
amaclin1 (OP)
Sr. Member
****
Offline Offline

Activity: 812
Merit: 305


View Profile
Today at 02:11:23 PM
 #26

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

Quote
На китайском потому, что сатошин клиент его не понимает? Ну а как иначе прогрессировать? Да и сколько их осталось, тех древних нод? В общем, не вижу проблемы в переносе скриптов/подписей в witness-часть, по большому счету это ничего не меняет в плане проверяемости транзакций. Наверное, недостаточно глубоко понимаю предмет.
Отлично понимаете. Старому клиенту (если такие остались) просто показывают без витнес-части. А там всё гладко. Все загадки "да?", все разгадки "ну да!"

А в чем смысл было городить огород с ограничением размера блока? Чтобы не было спама? Ну так нашли способ, как в столитровую бочку наливать 400 литров не меняя правила. А кто-то и цистерну на три тонны налил (спасибо за ссылку на хитрую транзакцию, потом гляну повнимательнее).

Теоретически, есть возможность расширения биткойн-блока до бесконечности, причем он по-прежнему останется "мегабайт в старом исчислении".
amaclin1 (OP)
Sr. Member
****
Offline Offline

Activity: 812
Merit: 305


View Profile
Today at 02:57:23 PM
 #27

Не, ну обидно немного.
Вот стараюсь я, посылаю хитрую транзакцию
А по дороге ее перехватывает какой-то Робин Гуд (на него я уже обращал внимание), увеличивает в ней комиссию на децл и отправляет себе
https://www.blockchain.com/explorer/transactions/btc/17ff2104878f430fd7e16d9bc77f109392b830f11ead924ff8bd458b44995da0
Просто подарил ему 700 баксов честно найденные в блокчейне! Грр! (тут нужен злобный смайлик)
Какие-то изменения в RBF последнее время были? Может я не учел этого? Раньше как-то транзакция успевала разойтись и даблспенднуть ее было не так просто.
Придется как-то извращаться.
igor72
Legendary
*
Offline Offline

Activity: 1904
Merit: 2039


Crypto Swap Exchange


View Profile
Today at 03:09:45 PM
 #28

А в чем смысл было городить огород с ограничением размера блока? Чтобы не было спама? Ну так нашли способ, как в столитровую бочку наливать 400 литров не меняя правила. А кто-то и цистерну на три тонны налил (спасибо за ссылку на хитрую транзакцию, потом гляну повнимательнее).
Эти inscriptions стали возможным благодаря тапруту, а не сегвиту. Недосмотрели что-то там разрабы, ну теперь уж поздно, джина выпустили из бутылки.

Какие-то изменения в RBF последнее время были? Может я не учел этого? Раньше как-то транзакция успевала разойтись и даблспенднуть ее было не так просто.
Да, были. Full-RBF появился (в 24 версии, кажется), теперь на нодах, где он включен, транзакции даблспендятся и без rbf-флага.

█▀▀▀











█▄▄▄
▀▀▀▀▀▀▀▀▀▀▀
e
▄▄▄▄▄▄▄▄▄▄▄
█████████████
████████████▄███
██▐███████▄█████▀
█████████▄████▀
███▐████▄███▀
████▐██████▀
█████▀█████
███████████▄
████████████▄
██▄█████▀█████▄
▄█████████▀█████▀
███████████▀██▀
████▀█████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
c.h.
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀█











▄▄▄█
▄██████▄▄▄
█████████████▄▄
███████████████
███████████████
███████████████
███████████████
███░░█████████
███▌▐█████████
█████████████
███████████▀
██████████▀
████████▀
▀██▀▀
amaclin1 (OP)
Sr. Member
****
Offline Offline

Activity: 812
Merit: 305


View Profile
Today at 03:38:29 PM
 #29

Да, были. Full-RBF появился (в 24 версии, кажется), теперь на нодах, где он включен, транзакции даблспендятся и без rbf-флага.
Премного благодарен за подсказку что и где искать. Теперь буду смотреть как это реализовано и как помешать даблспенду. Единственная идея - подмешивать в транзакцию инпут, который нельзя просто так взять и заменить. Но не факт, что даблспенд не возможен от части транзакции. Надо пробовать.
Еще обратил внимание что мой клиент (Core, разумеется у меня версия базы полная, без пруне) в списке узлов теперь некоторые пиры показывает тип: "полный ретранслятор" или "ретранслятор блоков"
У меня вопрос если знаете ответ. Вопрос из двух частей
1) если узел "ретранслятор блоков" то есть смысл к нему коннектиться для отправки транзакций? Или он только блоки ретранслирует? И смысла нет
2) я для максимального распространения моей транзакции запустил клиента с опцией -maxconnections=50 . И что? И них#я! он показывает коннект к 10 пирам через час работы. Баг? Или я что-то неправильно понимаю?
igor72
Legendary
*
Offline Offline

Activity: 1904
Merit: 2039


Crypto Swap Exchange


View Profile
Today at 03:50:50 PM
 #30

Теперь буду смотреть как это реализовано и как помешать даблспенду. Единственная идея - подмешивать в транзакцию инпут, который нельзя просто так взять и заменить. Но не факт, что даблспенд не возможен от части транзакции. Надо пробовать.
Насколько я понимаю, никаких препятствий нет дабдспенднуть и один utxo, лишь бы абсолютное значение комиссии было больше, чем в  заменяемой транзакции (и более, чем на 1 сат/вб).
Quote
Еще обратил внимание что мой клиент (Core, разумеется у меня версия базы полная, без пруне) в списке узлов теперь некоторые пиры показывает тип: "полный ретранслятор" или "ретранслятор блоков"
У меня вопрос если знаете ответ. Вопрос из двух частей
1) если узел "ретранслятор блоков" то есть смысл к нему коннектиться для отправки транзакций? Или он только блоки ретранслирует? И смысла нет
Не знаю.
Quote
2) я для максимального распространения моей транзакции запустил клиента с опцией -maxconnections=50 . И что? И них#я! он показывает коннект к 10 пирам через час работы. Баг? Или я что-то неправильно понимаю?
У меня только мысль, что нода из сети не видна (обычно за провайдерским натом без тора), но, полагаю, вы должны знать об этом. Других идей пока нет.

█▀▀▀











█▄▄▄
▀▀▀▀▀▀▀▀▀▀▀
e
▄▄▄▄▄▄▄▄▄▄▄
█████████████
████████████▄███
██▐███████▄█████▀
█████████▄████▀
███▐████▄███▀
████▐██████▀
█████▀█████
███████████▄
████████████▄
██▄█████▀█████▄
▄█████████▀█████▀
███████████▀██▀
████▀█████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
c.h.
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀█











▄▄▄█
▄██████▄▄▄
█████████████▄▄
███████████████
███████████████
███████████████
███████████████
███░░█████████
███▌▐█████████
█████████████
███████████▀
██████████▀
████████▀
▀██▀▀
amaclin1 (OP)
Sr. Member
****
Offline Offline

Activity: 812
Merit: 305


View Profile
Today at 03:57:16 PM
 #31

У меня только мысль, что нода из сети не видна (обычно за провайдерским натом без тора), но, полагаю, вы должны знать об этом. Других идей пока нет.
Опять же премного благодарен за подсказку. Я не знаю насчет топологии провайдера, думал, что он и исходящих соединений сделает писят. А так я всегда в батничек вставляю -listen=0 . Но вощем, надо против Робин Гуда бороться его же методами!
Pages: « 1 [2]  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!