Bitcoin Forum
May 09, 2024, 06:40:47 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Пора разобраться с Merged Mining  (Read 5591 times)
pent (OP)
Hero Member
*****
Offline Offline

Activity: 490
Merit: 500



View Profile
March 05, 2012, 05:52:54 PM
 #1

Итак, теоретическая база

https://github.com/vinced/namecoin/blob/mergedmine/doc/README_merged-mining.md
https://en.bitcoin.it/wiki/Alternative_Chains#Sharing_work

На форуме похоже немногие вообще в курсе как это в действительности работает на низком уровне.

Как я понимаю реализацию.

1. Строится дополнительный Merkle Tree (AUX Tree) где то в воздухе, из root Merkle хешей блоков всех доступных AUX чейнов. В простейшем случае неймкоин, это тупо хеш одного AUX'а неймкоина
2. В CoinBase scriptSig биткоина суется рут-хеш этого дерева (там по протоколу может быть что угодно)

Таким образом, если мы майним блок биткоин с рут хешем дерева AUX'ов, то при успехе, у нас есть доказательство работы - намайненый блок биткоин и в нем есть рут этого древа AUX Tree.

Майнится с наименьшей сложностью из всех. Кому подошла - тому повезло. Подошло к наибольшей сложности - повело всем =)

В блок биткоин суется только рут хеш дерева AUX'ов в позволительное место (scriptSig нулевой транзакции).

При этом к AUX блоку цепляется куча левой инфы для верификации:
а) Меркль ветка AUX блока в AUX Tree
б) Индекс а) в AUX Tree (зачем, если ветка есть?)
в) Нулевая транзакция биткоин в найденом блоке, конкретно интересует ее scriptSig с рутом AUX Tree.
г) Меркль ветка предыдущего пункта в дереве Bitcoin блока
д) Хидер блока биткоин

Верификация AUX блока:
1. Из ветки а) вычисляется рут хеш AUX Tree
2. В сохраненном хидере проверяем что этот хеш есть в в)
3. в) должна быть корректно втиснута в г) с соответствующим рут хешем
4. Хеш д) меньше таргета AUX chain
5. а) стоит четко на индексе б) AUX Tree

Таким образом, даже если этот недо-биткоин блок не вошел в "официальную" цепь биткоин, он все равно служит доказательством Proof-Of-Work AUX блока, так как он к нему приаттачен.

Это позволяет майнить AUX'ы и PARENT'ы на разных сложностях, независимо друг от друга, с одной и той же мощностью.

А где хранится весь AUX Tree?
Какие тут могут быть сюрпризы? Один из участников утверждал что это чревато дабл-спендами в AUX'ах.
Even if you use Bitcoin through Tor, the way transactions are handled by the network makes anonymity difficult to achieve. Do not expect your transactions to be anonymous unless you really know what you're doing.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1715236847
Hero Member
*
Offline Offline

Posts: 1715236847

View Profile Personal Message (Offline)

Ignore
1715236847
Reply with quote  #2

1715236847
Report to moderator
ufasoft
Sr. Member
****
Offline Offline

Activity: 404
Merit: 251


View Profile WWW
March 07, 2012, 01:00:48 PM
 #2

А где хранится весь AUX Tree?

Формат блока при Merged Mining  расширен. То есть некоторые блоки NameCoin содержат в себе еще Header-ы Bitcoin-блоков



Bitcoin donations: 18X598V8rVdjy3Yg1cjZmnnv4SpPthuBeT
pent (OP)
Hero Member
*****
Offline Offline

Activity: 490
Merit: 500



View Profile
March 07, 2012, 03:03:22 PM
 #3

Формат блока при Merged Mining  расширен. То есть некоторые блоки NameCoin содержат в себе еще Header-ы Bitcoin-блоков

Ну так я ж написал
Quote
При этом к AUX блоку цепляется куча левой инфы для верификации:
а) Меркль ветка AUX блока в AUX Tree
б) Индекс а) в AUX Tree (зачем, если ветка есть?)
в) Нулевая транзакция биткоин в найденом блоке, конкретно интересует ее scriptSig с рутом AUX Tree.
г) Меркль ветка предыдущего пункта в дереве Bitcoin блока
д) Хидер блока биткоин

непонятно где здесь это дерево хранится.
ufasoft
Sr. Member
****
Offline Offline

Activity: 404
Merit: 251


View Profile WWW
March 07, 2012, 05:40:50 PM
 #4

Формат блока при Merged Mining  расширен. То есть некоторые блоки NameCoin содержат в себе еще Header-ы Bitcoin-блоков

Ну так я ж написал
Quote
При этом к AUX блоку цепляется куча левой инфы для верификации:
а) Меркль ветка AUX блока в AUX Tree
б) Индекс а) в AUX Tree (зачем, если ветка есть?)
в) Нулевая транзакция биткоин в найденом блоке, конкретно интересует ее scriptSig с рутом AUX Tree.
г) Меркль ветка предыдущего пункта в дереве Bitcoin блока
д) Хидер блока биткоин

непонятно где здесь это дерево хранится.
Merkle-дерево само не хранится, оно строится из TxHash-ей. Ну в Namecoin-блоке же присутствуют namecoin транзакции, так же как в bitcoin-блоке.  Суть в том, чтобы два параллельных блока разных сетей ссылались друг на друга.

Bitcoin donations: 18X598V8rVdjy3Yg1cjZmnnv4SpPthuBeT
Pages: [1]
  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!