Pages:
Author

Topic: Цепочка блоков - page 2. (Read 2895 times)

legendary
Activity: 1260
Merit: 1019
October 27, 2016, 03:00:28 AM
#30
@amaclin мне вот интересно, имеет ли смысл пытаться майнить блок только с коинбэйс транзой без транзакций вообще)
Без транзакций вообще - нельзя. Coinbase-транзакция в блоке должна быть, даже если её выход будет нулевой.

А с одной транзакцией - почему бы и нет? Если вас по какой-то причине не волнуют чужие транзакции и комиссии за них,
которые могут стать вашими - майните без них. Сегодняшние майнинг-пулы так и делают.
Если пул получил блок (чужой или свой - неважно), то для его обработки и создания темплейта следующего
блока нужно определенное время. Чтобы найнеры подключившиеся в этот момент к пулу не проставивали зря
им пул раздает задание майнить блок-пустышку. Если майнер находит подходящий нонсе - в блокчейне
появляется блок из одной транзакции. Например:
https://blockchain.info/block/000000000000000002eb076392586c5b034ba3826ff6adb459bc57db4191943e

member
Activity: 172
Merit: 11
October 27, 2016, 02:40:40 AM
#29
Я тебе что повар что-ли, чтобы что-то готовить?
Приготовил тебе за шиворот, проверяй.
На дваче будешь так общаться, мамкин повар)


Так вот, как и откуда его получить, чтобы начать искать nonce в соло-режиме?


getblocktemplate на клиенте.
клиента можно запустить с опцией -detachbd тогда блоки качаться не будут

@amaclin мне вот интересно, имеет ли смысл пытаться майнить блок только с коинбэйс транзой без транзакций вообще)
newbie
Activity: 14
Merit: 0
October 26, 2016, 02:15:26 PM
#28
Но у вас их не будет, так что и проверить корректность вы не сможете.
А этот ещё и знает. =)
Ну, есть у меня к примеру на одном из переносных жестких блоки в виде файлов blk0000*.dat.
Только их там ещё докачивать надо и это ничего не даст, потому что - петахеши.
И ваще, по сути, не нужны эти блоки все и сразу, разве что для того - чтобы птичка "синхронизировано" стояла.

Может вы для на каком-нибудь говнофорке это собирались делать.
Или вы тайный владелец трех китайских пулов.
Это всё неправда. И всё то - в большинстве своём, тоже.
100% хешей в пулах генерят сами же майнеры. Владельцы пулов только комиссии гребут.
Просто интересен сам процесс. =) Сошёл бы и форк с небольшой сложностью.
Глянул так, в сторону doge с его килохешами сложности, но там 1,4 млн. блоков в блокчейне, их же качать придётся.
Поэтому, не надо это.

upd:
Я вот, гляжу на 436042-й блок
https://blockchain.info/block/0000000000000000028603f405c303c1711f22ffa1c31ffee89397b90099cb42
с его Nonce 1106733466, которую можно было бы перебрать в соло за 6.14851926 секунд на моей видеокарте, у которой 180Мh/s

Так вот, блок 436042 уже сгенерён и вошёл в блокчейн.
А блок 436043 ещё нет. Как только "соль" к нему найдут майнеры - он будет добавлен в цепочку блоков, как и все другие последующие блоки.
И этот блок, после генерации будет разослан по p2p-сети всем клиентам у которых bitcoin-Qt, и не только, верно?

Так вот, как и откуда его получить, чтобы начать искать nonce в соло-режиме?

P.S.: Блокчейн - как я понял, это сама цепочка блоков, а не сайт blockchain.info.
blockchain.info же - это отдельный сайт, парсер её, показывающий красивый интерфейс для просмотра этой цепочки.
legendary
Activity: 1260
Merit: 1019
October 26, 2016, 02:02:33 PM
#27
Я что блокчейн что-ли? Зачем мне все блоки всех транзакций на моём винте?
А если это SD-карта c портаблельным линуксом на распберри, например?
А зачем создавать себе такие трудности? Делайте дело на обычном компе,
а не трахайтесь стоя, в гамаке и в скафандрах

Почему нельзя? А по наличию хеша блока с конкретным в сети, не?
Некорректные блоки и их цепочки отсеиваются же.
Корректность проверяется исходя из имеющихся блоков.
Но у вас их не будет, так что и проверить корректность вы не сможете.

Для Double-spending нужны петахеши и петафлопсы. LOL.
Ну я просто предположил. Может вы для на каком-нибудь говнофорке это собирались делать.
Или вы тайный владелец трех китайских пулов.
newbie
Activity: 14
Merit: 0
October 26, 2016, 12:25:50 PM
#26
Стоимость хранения данных на диске - ну это такие копейки, что я и не думаю про это.
А вот качать блоки и ненужные выбрасывать - это расточительство. Потому что трафик
обходится дороже. Не столько в плане денег, сколько в плане времени.
Я что блокчейн что-ли? Зачем мне все блоки всех транзакций на моём винте?
А если это SD-карта c портаблельным линуксом на распберри, например?

Я все еще не могу понять - зачем нужна последовательность блоков не вся,
а отобранная по какому-то признаку, например по наличию в блоках транзакции с
определенным адресом. Толку от такой "свалки мусора" немного, так как неполный
блокчейн не даёт тебе гарантии надежности. Иными словами - ты не можешь проверить
дали тебе настоящую цепочку блоков или фальшивую.
Почему нельзя? А по наличию в сети хеша блока с конкретным порядковым номером, не?
Некорректные блоки и их цепочки отсеиваются же.

Майнить на фальшивой цепочке блоков - это слишком рискованно. Не надо тут экономить.
Ну это понятно.

Может быть ты решаешь задачу майнить не от последнего полученного из сети блока, а от
какого-то из истории? Мсье собирается провести атаку-51? Ну так это можно решить с помощью
прокси-сервера. То есть нужна программа-посредник между стандартным клиентом
и остальным интернетом. И эта программа отдает клиенту не весь трафик, а только заданный.
Например прокси-сервер "включается" если видит блок с транзакцией перевода с адреса
"1xxxx" на адрес "1yyyyy" и не отдает больше клиенту блоки и транзакции. Клиент не получив
этот блок, разумеется, майнит другую цепочку, куда ты вставляешь перевод с адреса
"1xxxx" на свой адрес "1zzzzz" и когда ты наращиваешь цепь длиннее чем вырастила остальная сеть
ты снова включаешь прокси и таким образом наёбываешь владельца адреса "1yyyyy"
Для Double-spending нужны петахеши и петафлопсы. LOL.
legendary
Activity: 1260
Merit: 1019
October 26, 2016, 12:09:11 PM
#25
значит кеи генерятся по порядку. А страницы лишь устанавливают range для генерации.
Спасибо, кэп.

Причём блоки не сохранять на диск, если в них не содержится этот адрес,
а качать и сохранять только current block, и при получении нового блока -
проверять что хеши этих блоков сцеплены правильно, и после этого удалять предыдущий
current-блок циклично, с выходом каждого нового блока.
Стоимость хранения данных на диске - ну это такие копейки, что я и не думаю про это.
А вот качать блоки и ненужные выбрасывать - это расточительство. Потому что трафик
обходится дороже. Не столько в плане денег, сколько в плане времени.

Я все еще не могу понять - зачем нужна последовательность блоков не вся,
а отобранная по какому-то признаку, например по наличию в блоках транзакции с
определенным адресом. Толку от такой "свалки мусора" немного, так как неполный
блокчейн не даёт тебе гарантии надежности. Иными словами - ты не можешь проверить
дали тебе настоящую цепочку блоков или фальшивую.

Майнить на фальшивой цепочке блоков - это слишком рискованно. Не надо тут экономить.

Может быть ты решаешь задачу майнить не от последнего полученного из сети блока, а от
какого-то из истории? Мсье собирается провести атаку-51? Ну так это можно решить с помощью
прокси-сервера. То есть нужна программа-посредник между стандартным клиентом
и остальным интернетом. И эта программа отдает клиенту не весь трафик, а только заданный.
Например прокси-сервер "включается" если видит блок с транзакцией перевода с адреса
"1xxxx" на адрес "1yyyyy" и не отдает больше клиенту блоки и транзакции. Клиент не получив
этот блок, разумеется, майнит другую цепочку, куда ты вставляешь перевод с адреса
"1xxxx" на свой адрес "1zzzzz" и когда ты наращиваешь цепь длиннее чем вырастила остальная сеть
ты снова включаешь прокси и таким образом наёбываешь владельца адреса "1yyyyy"


newbie
Activity: 14
Merit: 0
October 26, 2016, 11:51:07 AM
#24
А я не предлагаю тебе брать случайные адреса с directory.io
Достаточно взять с первой страницы
Вероятность встретить в блокчейне адрес с первой страницы directory.io равна 1.
И адрес из брейнваллета "correct horse battery staple" встречается тоже.
У меня тут значит конвертер от браинваллета, в JS, локально запущен в браузере, (могу скинуть, если чо)
и взяв с 6-й страницы http://directory.io/6
приваткей 5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip4nEB3kEsrfQyNAxdB
получаю из base58Check - hex 0000000000000000000000000000000000000000000000000000000000000281
Следующий за ним приваткей в base58check - 5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip4nEB3kEsrfR95CsLZ
даёт hex 0000000000000000000000000000000000000000000000000000000000000282
ну, а потом, hex-ы:
0000000000000000000000000000000000000000000000000000000000000283
0000000000000000000000000000000000000000000000000000000000000284
0000000000000000000000000000000000000000000000000000000000000285
И т. д.
Значит кеи генерятся по порядку. А страницы лишь устанавливают range для генерации.

И адрес из брейнваллета "correct horse battery staple" встречается тоже.
Какая-то Кристина. =) В общем, суть понятна.

Ладно, значит я неправильно тебя понял. Ты пытаешься какую-то непонятную задачу решить
каким-то извратным (на мой взгляд) способом. Ну, чем мог - я помог. Дальше иди своими ногами.
Я хотел бы каким-то образом, задать первый блок в blkindex или в bootstrap.dat так,
чтобы этот блок являлся тем самым блоком, в который вошла транзакция на конкретный определённый адрес.
И сделать это для того, чтобы начать закачку блокчейна через тяжеловесный bitcoin-Qt именно с этого блока,
до всех актуальных.
Причём блоки не сохранять на диск, если в них не содержится этот адрес,
а качать и сохранять только current block, и при получении нового блока -
проверять что хеши этих блоков сцеплены правильно, и после этого удалять предыдущий
current-блок циклично, с выходом каждого нового блока.
Почему bitcoin-Qt? А потому что его можно включить в режим сервера.
Зачем это нужно? А чтобы поцепить на него майнер.
Сервер включается на localhost, и майнер подключается как-то вот так:
-o http://localhost:8332 -u RPCUSER -p RPCPASS
А база с блоками весит овер 42 гига. А за dogecoin - вообще молчу.
Ну и, вот...

Алсо, хотелось бы понять, как формируются блоки, как транзакции входят в блок,
из какого источника берутся блоки для майнинга, залетают ли новосформированные транзакции в bitcoin-Qt
и как этот процесс связан с current-блоком.
Инфы в сети не нашёл.
legendary
Activity: 1260
Merit: 1019
October 26, 2016, 11:41:08 AM
#23
Нет, нет, я клоню чисто всей цепочки блоков под конкретный адрес.
Что касается миллионов приваткеев, или directory.io, так длина приваткея 256 бит,
и количество их комбинаций 2^256.
А теперь, можешь сам посчитать вероятность того, что среди нагенерённых встретится адрес, юзанный в сети и уж тем более с неизрасходованными выходами.
А я не предлагаю тебе брать случайные адреса с directory.io
Достаточно взять с первой страницы
Вероятность встретить в блокчейне адрес с первой страницы directory.io равна 1.
И адрес из брейнваллета "correct horse battery staple" встречается тоже.

Ладно, значит я неправильно тебя понял. Ты пытаешься какую-то непонятную задачу решить
каким-то извратным (на мой взгляд) способом. Ну, чем мог - я помог. Дальше иди своими ногами.
newbie
Activity: 14
Merit: 0
October 26, 2016, 11:33:06 AM
#22
Я кажется представляю себе к чему ты клонишь.
Задача на самом деле другая.
Представь себе что у тебя четыре миллиона приваткеев. Неважно каких - с первых страниц сайта
directory.io надёрганных или из брейнваллет сгенерированных.
Ты начинаешь парсить блокчейн от начала времен и если видишь пополнение известного тебе адреса -
добавляешь неизрасходованный выход в список, а если видишь трату с этого адреса - вздыхаешь,
что кто-то тебя опередил и вычеркиваешь из своего списка.
Когда доходишь до конца цепочки блоков у тебя получается аккуратный список неизрасходованных
выходов - то есть доступная тебе сумма бабла.
Нет, нет, я клоню чисто к оптимизации всей цепочки блоков под конкретный адрес.
Что касается этих твоих миллионов приваткеев, сгенерённых или с directory.io, так длина приваткея 256 бит,
и количество их комбинаций 2^256.
А теперь, можешь сам посчитать вероятность того, что среди нагенерённых встретится адрес, юзанный в сети и уж тем более с неизрасходованными выходами.
Кстати, directory.io тоже генерит, по сути. Каждая страница - это range для генерации.
Потому что 904625697166532776746648320380374280100293470930272690489102837043110636675 страниц это YOBAбиты YOBIбайт.
newbie
Activity: 14
Merit: 0
October 26, 2016, 11:25:49 AM
#21
так вам для майнинга? ну так не то что соло майнинг вообще про майнинг битка мжно забыть )) нужна ферма)
Будет профит - будет ферма. Главное технологию, так-сказать, прочувствовать.
legendary
Activity: 1260
Merit: 1019
October 26, 2016, 11:21:09 AM
#20
Там бинарник вида хеш.bin, его можно как-то запхнуть в blk0000x.dat или bootstrap.dat?
можно в принципе.
структура файлов blk0000x.dat в принципе простая - + <ДЛИНАБЛОКА> + <БЛОК>
но самостоятельно скачивать блоки поштучно мне в голову не приходило - пусть клиент этим занимается

Ну, представь себе, сгенерил ты приваткей. И получил адрес через brainwallet, например.
Туда - вошла транзакция. Она получила достаточное количество подтверждений и находится в блокчейне.
Тебе, известен номер блока, в который эта транзакция вошла.
И ты можешь задать этот блок первым и качать блокчейн с этого конкретного блока, а не от начала времён.
Если транзакция ушла - ты можешь прекратить качать блоки, или качать их, проверять на наличие адреса своего, и удалять, но не сохранять на диске.
Или вообще сделать всю эту проверку на каком-либо сервере, а на клиент только нужные блоки отправлять.

Я кажется представляю себе к чему ты клонишь.
Задача на самом деле другая.
Представь себе что у тебя четыре миллиона приваткеев. Неважно каких - с первых страниц сайта
directory.io надёрганных или из брейнваллет сгенерированных.
Ты начинаешь парсить блокчейн от начала времен и если видишь пополнение известного тебе адреса -
добавляешь неизрасходованный выход в список, а если видишь трату с этого адреса - вздыхаешь,
что кто-то тебя опередил и вычеркиваешь из своего списка.
Когда доходишь до конца цепочки блоков у тебя получается аккуратный список неизрасходованных
выходов - то есть доступная тебе сумма бабла.
legendary
Activity: 2436
Merit: 1187
October 26, 2016, 11:14:11 AM
#19
подойдет портабельный думаю
доги тоже не актуально майнить
newbie
Activity: 14
Merit: 0
October 26, 2016, 11:01:46 AM
#18
так вам для майнинга? ну так не то что соло майнинг вообще про майнинг битка мжно забыть )) нужна ферма)
если майнить то только форки
Ну вот взять догкоины, у них более 1,4 млн блоков.
https://dogechain.info/
Это ещё похлеще чем 436000 биткоиновых. LOL.
https://blockchain.info/

для пивалета конечно питон надо
У меня портабельный пистон, если чо.
newbie
Activity: 14
Merit: 0
October 26, 2016, 10:55:00 AM
#17
Было б неплохо, чтоб блоки с блокчейна вытягивались. Причём бесплатно и без смс.
Руками можете вытягивать
Заходите на страничку блока, типа
https://webbtc.com/block/0000000000000000020a6f047a52f32eb346d77e73b722f85549ed6ab442d0cc
жамкаете ссылку [binary] и сохраняете в файл.
бесплатно и без смс.
Там бинарник вида хеш.bin, его можно как-то запхнуть в blk0000x.dat или bootstrap.dat?

скачивание всех блоков начиная с какого-то определенного?
я про такие готовые тулзы не слышал - с трудом представляю зачем это может понадобиться
Ну, представь себе, сгенерил ты приваткей. И получил адрес через brainwallet, например.
Туда - вошла транзакция. Она получила достаточное количество подтверждений и находится в блокчейне.
Тебе, известен номер блока, в который эта транзакция вошла.
И ты можешь задать этот блок первым и качать блокчейн с этого конкретного блока, а не от начала времён.
Если транзакция ушла - ты можешь прекратить качать блоки, или качать их, проверять на наличие адреса своего, и удалять, но не сохранять на диске.
Или вообще сделать всю эту проверку на каком-либо сервере, а на клиент только нужные блоки отправлять.


legendary
Activity: 2436
Merit: 1187
October 26, 2016, 10:51:48 AM
#16



Приваткеи не блоки. Онлайн блокчейн - годно, сам юзал. Но можно ли майнить через него?
[
Питон надо?


так вам для майнинга? ну так не то что соло майнинг вообще про майнинг битка мжно забыть )) нужна ферма)

если майнить то только форки

для пивалета конечно питон надо
legendary
Activity: 1260
Merit: 1019
October 26, 2016, 10:44:45 AM
#15
Было б неплохо, чтоб блоки с блокчейна вытягивались. Причём бесплатно и без смс.
Руками можете вытягивать
Заходите на страничку блока, типа
https://webbtc.com/block/0000000000000000020a6f047a52f32eb346d77e73b722f85549ed6ab442d0cc
жамкаете ссылку [binary] и сохраняете в файл.
бесплатно и без смс.

скачивание всех блоков начиная с какого-то определенного?
я про такие готовые тулзы не слышал - с трудом представляю зачем это может понадобиться
newbie
Activity: 14
Merit: 0
October 26, 2016, 10:43:42 AM
#14
Какая проблема скачать всё?
Время, объем, пропускная способность канала связи, и бесполезность наличия большинства блоков с чужими транзакциями.
2. Скачайте всю базу блоков, а потом напишите программу, которая проанализирует базу и каким-то образом
выдаст вам для каждого введенного адреса номера блоков, в которых этот адрес встречается как отправитель
или получатель. Могу вам я написать. За деньги.
Было б неплохо, чтоб блоки с блокчейна вытягивались. Причём бесплатно и без смс.

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


а зачем все так усложнять? можно вообще ничего не скачивать онлайн кошель блокчейн инфо поддерживает импорт\экспорт приваткеев
Приваткеи не блоки. Онлайн блокчейн - годно, сам юзал. Но можно ли майнить через него?
для компа чуть по сложнее  копаем в стороно pywallet
Питон надо?

Знаете, я тут "случайно" так, нашёл 1Hash.com с его 10-ю петахешами в секунду,
и antpool с его 295.29 PH/s, и как-бы соло майнинг не актуален теперь.
Тред можно закрывать.
newbie
Activity: 14
Merit: 0
October 26, 2016, 10:35:44 AM
#13
Какая проблема скачать всё?
Время, объем, пропускная способность канала связи, и бесполезность наличия большинства блоков с чужими транзакциями.
2. Скачайте всю базу блоков, а потом напишите программу, которая проанализирует базу и каким-то образом
выдаст вам для каждого введенного адреса номера блоков, в которых этот адрес встречается как отправитель
или получатель. Могу вам я написать. За деньги.
Было б неплохо, чтоб блоки с блокчейна вытягивались. Причём бесплатно и без смс.

Могу посоветовать приготовить деньги для решения всех поставленных задач.
Бесплатно могу только посоветовать поискать всю инфу в интернете.
Если есть деньги для решения задач и меня устроит сумма, могу начать обсуждать.
Я тебе что повар что-ли, чтобы что-то готовить?
Приготовил тебе за шиворот, проверяй.
legendary
Activity: 2436
Merit: 1187
October 26, 2016, 10:09:53 AM
#12
а зачем все так усложнять? можно вообще ничего не скачивать онлайн кошель блокчейн инфо поддерживает импорт\экспорт приваткеев

но я бы сделал так

если есть смартфон

ставим mycelium вся прелесть этой проги в том что даже импортировать не надо просто с приваткея указывается нужная сумма и отправляется в нужный адрес

для компа чуть по сложнее  копаем в стороно pywallet
member
Activity: 172
Merit: 11
October 26, 2016, 08:28:12 AM
#11
Привет, ребята.

Есть privkey и address.
Есть транзакция, входящая в address.
Есть номер блока, в котором эта транзакция имеется.
Есть Bitcoin-Qt (win32), и есть процесс синхронизации с сетью
(с возможностью ускорения этого процесса с помощью скаченного с torrent bootstrap.dat).

Задач может быть несколько:
1. Задать первый блок для закачки и пропустить все предыдущие блоки.
2. Скачать только те блоки в которых содержится address, в качестве отправителя или получателя, но пропустить все остальные блоки.
3. Обновить баланс подключившись к blockchain.info или ему подобных - без необходимости закачивать блоки вовсе.
4. Включить solo mining на Bitcoin-Qt server по адресу http://localhost:8332 без пулов и закачки блоков.

Кто, что, сможет посоветовать?

Могу посоветовать приготовить деньги для решения всех поставленных задач. Бесплатно могу только посоветовать поискать всю инфу в интернете.
Если есть деньги для решения задач и меня устроит сумма, могу начать обсуждать.
Pages:
Jump to: