Jump to content

Вышел Bitcoin Core 0.12: последние доработки перед броском


Recommended Posts

Posted
240216_vishel-bitcoin-core-012_1_8f887a4
 

Команда разработчиков Bitcoin Core сделала подарок на 23 февраля российским биткойнерам. Впрочем, они вряд ли подозревают об этом. Несколько часов назад вышел новый большой релиз официального клиента Bitcoin Core 0.12.0. Конечно, он никоим образом не касается недавно принятого плана работ по внедрению Segregated Witness и хардфорка по размеру блока.

 

В новый релиз вошли плановые нововведения и устранение багов. С другой стороны, его можно считать и "подчищением хвостов" перед начинающимися большими работами: первую версию клиента с функциональностью Segragated Witness команда Core обещает выдать уже в апреле, то есть у них остается на это меньше двух месяцев.

 

Что нового в релизе 0.12

 

Здесь мы коротко пройдем по основным изменениям в производительности, безопасности и интерфейсе, которые ожидают пользователей Биткоина с новой версией "полного" кошелька. Всего можно отметить шесть наиболее важных изменений.

 

Ограничение mempool

 

Так называемый "mempool" представляет собой пул неподтвержденных транзакций, которые собирает через одноранговые подключения каждый полный узел Биткоина. Эффективно его используют только майнеры, которые "упаковывают" транзакции в блоки, все остальные узлы просто их пересылают, время от времени удаляя из пула старые записи. Неограниченный mempool может просто занять всю доступную память и "подвесить" компьютер с кошельком. В Bitcoin Core 0.12 размер "пула памяти" был жестко ограничен 300 мегабайтами.

 

Обрезка блокчейна

 

Одна из самых ожидаемых функций для домашних пользователей, ограниченных в ресурсах процессора и жесткого диска. На данный момент полный блокчейн, без учета служебных файлов, занимает 55 Гб, и в течение года его размер может удвоиться, даже без увеличения размера блока. В Bitcoin Core 0.12.0 у пользователя наконец появилась возможность выбрать максимальный объем, который блокчейн будет занимать на его жестком диске. Блоки могут быть удалено после того, как клиент их проверит.

 

Минимально допустимый объем для хранения установлен в 2 Гб. Такой кошелек, хотя и будет номинально считаться полным узлом, уже не будет хранить весь блокчейн. Однако, для многих пользователей такой вариант станет хорошим компромиссом.

 

Ограничение исходящего трафика

 

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

 

 

 

Читать полностью

Posted (edited)

Для тех, кто занимается разработкой: полный список изменений здесь - https://github.com/bitcoin/bitcoin/blob/v0.12.0/doc/release-notes.md - очень много различных изменений в RPC.

 

Также скопирую своё сообщение из соседней темы, потому что информацию важно знать тем, кто принимает платежи:

 

RBF и лимит mempool ведёт к тому, что если большинство майнеров перейдёт на 0.12, то двойные траты неподтверждённых транзакций станут очень простыми для обычных пользователей. Как я и говорил ранее, по факту Core усложняют жизнь тем, кто принимает моментальные платежи без подтверждений.

 

Поэтому, если кто-то принимает транзакции без подтверждений, очень внимательно смотрите на:

 

а) Поле sequence во входах - если оно меньше, чем uint4max (4294967295), то ждите, пока транзакция не попадёт в блок (это из-за RBF). Я проводил анализ - за последние два месяца в транзакциях в блоках, в отличие от того, что было раньше, очень много транзакций с меньшими значениями sequence. За этим очень важно следить, потому что увеличить sequence и поменять получателя транзакции теперь сможет каждый. Некоторые кошельки уже собираются в ближайших релизах выводить всё красеньким, если транзакция не финальна;

 

б) Комиссию транзакции. Понятно, что и раньше транзакции с околонулевой комиссией выпадали из-за minrelaytxfee, но теперь в пиковые моменты нагрузки на сеть из mempool могут вываливаться транзакции и с куда большими комиссиями. По умолчанию лимит на память установлен в 300 Мб и вышибаются транзакции с минимальными комиссиями при приближении к лимиту. У меня на одной из нод, где я начал тестировать 0.12 до релиза, и которая уже давно работает в режиме 24/7, сейчас из этих 300 Мб используется 246 (пишут, что часто всё-таки выходит за 300). Здесь конечно вектор уже посложнее чем с RBF, тут нужна высокая нагрузка на сеть и нужно очень тонко подбирать комиссию, но это не отменяет того, что этот вектор существует. Кому интересно подробнее, почитайте статью https://medium.com/@CoinCadence/the-creation-of-a-secondary-fee-market-maxmempool-2531be78a28a#.x5y81usoz (там очень хорошо объяснено и то, как экономически такие новые лимиты влияют на Биткоин).

 

Хоть и Replace-by-fee может быть полезной функцией для отправителей, у которых застревают транзакции, для получателей без подготовки она опасна.

Edited by Har01d
Posted

Хоть и Replace-by-fee может быть полезной функцией для отправителей, у которых застревают транзакции, для получателей без подготовки она опасна.

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

Posted

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

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

 

P.S. И вообще я очень сомневаюсь в глобальной полезности этой функции. По сути - это аукцион за место в блоке, который будет вышибать пользователей из Биткоина (кстати, я бы снизил вашу оценку в "миллионы" на порядок - у Биткоина нет такого количества активных пользователей). На мой взгляд, куда проще увеличить лимит на размер блоков, разрабатывать параллельно off-chain решения, в общем - заниматься масштабированием, а не созданием таких вот "кто больше заплатит - тот и попадёт" схем.

Posted

У кого нибудь получилось размер кошелька уменьшить? не нашел в строке отладки обещанный "prune". Или не там ищу?

Posted (edited)

У кого нибудь получилось размер кошелька уменьшить? не нашел в строке отладки обещанный "prune". Или не там ищу?

 

это не в консоли. Запустите кошелек с этим параметром, можно ярлык отредактировать. Всё работает. Пишут что минимальный размер 2Гб, я пока поставил 30Гб.

 

post-24705-0-87177500-1456319667_thumb.pngpost-24705-0-90348900-1456319755_thumb.png

Edited by hardsign
Posted

Только это нужно делать с уже синхронизированной базой, если нужно чтобы локальный кошелек остался работать. Так как изначально prune исключал возможность использования wallet.dat . Сейчас использование возможно, но импорт нового приватного уже не получится в prune mode, так как при импорте проверяется весь блокчейн и считаются входы и выходы.

 

Также prune (как и другие опции) можно прописать в bitcoin.conf файле.

 

prune=4096 работает как и должно еще в 0.11.2, но свежую версию с кошельком не проверял.

Posted (edited)
а не созданием таких вот "кто больше заплатит - тот и попадёт" схем.

ну так ведь майнерам тоже когда нибудь придется переходить на оплату с комиссий, хотя такая дудолина весьма и весьма опасна.. при наличии больших сумм на комиссии, сеть биткоин можно просто зафлудить на какое то время как это было недавно, это также поспособствует перераспределению монет (в китай =)))

 

слишком много косвенных последствий от ЛЮБОГО шага - не предугадаешь все =))

 

если можно так сказать - то это имхо (хотя внятной позиции по вопросу у меня просто нет, так - мысли вслух)

Edited by commodore64
Posted (edited)

Только это нужно делать с уже синхронизированной базой, если нужно чтобы локальный кошелек остался работать. Так как изначально prune исключал возможность использования wallet.dat . Сейчас использование возможно, но импорт нового приватного уже не получится в prune mode, так как при импорте проверяется весь блокчейн и считаются входы и выходы.

 

Также prune (как и другие опции) можно прописать в bitcoin.conf файле.

 

prune=4096 работает как и должно еще в 0.11.2, но свежую версию с кошельком не проверял.

Спасибо! На маке немного геморнее получилось, но сработало! ( 0.12 версия кошелька)

post-28142-0-83056100-1456387945_thumb.png

Edited by stikko
Posted

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

Нет никакого смысла ставить 30 Гб, так как база будет уже порезана.   4 Гб более чем достаточно с запасом.

 

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

Конечно, подразумевается что вы его сохранили :)

Posted

после не продолжительного времени кошелек свернулся на панель и больше не хотел открываться, никак вообще, удалял и переустанавливал - толку 0, как быть, что делать? 

Posted

Привет!

Знает ли кто нибудь способ обновить кошелек сохранением адресов?

 

У меня установлен кошелек версии BitcoinOfficial0.9

Полностью скачана вся база. Размер ее 65 гигов.

КАк теперь обновить кошелек, чтоб 1) База была 4 гига только. и 2) чтобо стались мои кошельки

Posted

ну так ведь майнерам тоже когда нибудь придется переходить на оплату с комиссий, хотя такая дудолина весьма и весьма опасна.. при наличии больших сумм на комиссии, сеть биткоин можно просто зафлудить на какое то время как это было недавно, это также поспособствует перераспределению монет (в китай =)))

 

слишком много косвенных последствий от ЛЮБОГО шага - не предугадаешь все =))

 

если можно так сказать - то это имхо (хотя внятной позиции по вопросу у меня просто нет, так - мысли вслух)

Понятно, что Биткоин был спроектирован так, что когда закончится награда за блок, останутся только комиссии.

 

В блок помещается около 2.500 P2PKH/P2SH транзакций, а если говорить про более сложные скрипты (например, те, что планируются для открытия/закрытия каналов в Lightning) - это, думаю, около 1.500. Тут не так важны точные цифры, как важен их порядок. Segregated Witness даёт некоторую скидку, но в пределах порядка.

 

Уровень обеспечения безопасности сети измеряется не в каких-то терахешах или попугаях, а только в стоимости этих попугаев. До того момента, как награда упадёт почти до нуля, остаётся не так много времени. Если через 10 лет мы считаем, что уровень безопасности должен быть хотя бы таким же, каким он является сейчас, нужно, чтобы выбывшие 22 биткоина награды заняли комиссии.

 

Исходя из простых математических расчётов получаем около (более) 0,01 биткоина за транзакцию, т.е., по текущим ценам, минимум $4,2. И это, ещё раз, если мы не хотим, чтобы за 10 лет не выросла ни цена на биткоин, ни уровень безопасности сети. Если он вырастет, например, в 5 условных раз, то цена будет $2.000, а стоимость транзакции - $20. Но тут возникает вопрос - а действительно ли кому-то будет нужна такая защищённая сеть с 20-баксовыми транзакциями?

 

Тут варианта два - либо оставлять блоки маленькими и получить мало транзакций с огромными комиссиями, либо увеличивать блоки и получить много транзакций с маленькими комиссиями. В первом варианте безопасность сети будет зависеть от стоимости комиссий, во втором - от размера блоков. Сейчас полным ходом идёт развитие первого варианта, и надо понимать, что делается это вовсе не для простых пользователей, а для корпоративных структур (никакой обычный пользователь не будет платить столько за транзакции, его полностью выдавят в off-chain). С другой стороны, последнее время я всё больше думаю, что при первом варианте дело просто закончится тем, что Биткоин проиграет, потому что он находится на крайне высококонкурентном поле.

Posted

prune можно прописать в bitcoin.conf

 

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

 

кроме того, уже второй раз (на новой версии кошелька с обрезанной базой) после отправки битков получаю таку красоту на blockchain.info - "Transaction rejected by our node. Reason: The transaction is not final". при том что на принимающей стороне транзакция уже видна

 

вот и чешу репу - не откатиться ли на 0.11 с полной базой

Posted

@Tenchi, у меня вчера точно такое же было, минут 30 в блокчейне не было видно транзакции, потом появилась с высоким приоритетом и подтверждалась 9 часов, в 11 версии это занимало не больше часа, база полная не обрезанная 

Posted

следующий раз попробую с 0.12 на необрезанной базе, благо сохранил полный блокчейн на серваке

 

похоже это какой-то плавающий косяк, который появляется при стечении некоторых обстоятельств, самая поганая разновидность программных ошибок

Posted
Еще одной интересной новинкой стала возможность замены транзакции на аналогичную, но с более высокой комиссией. На данный момент из-за высокой загрузки блоков, транзакции с низкой комиссией могут надолго зависать без подтверждения. Теперь пользователь может на локальном кошельке "отменить" ранее отправленную транзакцию и создать новую с тех же входов, но с более высокой комиссией. При этом, кошельки с версией 0.12 не будут воспринимать это как попытку даблспенда, а просто заменят в своих пулах транзакций старую запись на новую. Эта функция названа opt-in replace-by-fee. Правда, это делает операции с неподтвержденными транзакциями еще более рискованными. Процессорам, которые обрабатывали платежи в биткоинах без подтверждения, придется корректировать свою политику.

Вопрос к знатокам: как на практике воспользоваться данной функцией? Есть какая то консольная команда? 

Кстати, сейчас если отправлять перевод с версии 0.12 и транза еще не включена в блоки, в блокчейне ее нет и появляется сообщение типа "Транзакция была отвергнута нашим нодом, т.к. не является финальной". Запись появляется в блокчейне только когда транза имеет 1 подтверждение. Это исключительно на версии 0.12, в старых релизах Коре все по старинке. 

Posted

@Tarik, это появляется если комиссия мала, проходит через 30 минут и более, если комса как минимум 0,0005 то видно запись, вот тут можно посмотреть какую лучше комиссию добавлять https://www.blocktrail.com/BTC  -  Optimal Fee / Kb

Posted

@Tarik, это появляется если комиссия мала, проходит через 30 минут и более, если комса как минимум 0,0005 то видно запись, вот тут можно посмотреть какую лучше комиссию добавлять https://www.blocktrail.com/BTC  -  Optimal Fee / Kb

У меня комиссия большая, выше рекомендуемой в 2 раза

0.0002 за 260 байт, в кошеле стоит 80 тыс сатош за 1 Кб.

 

И подверждается мгновенно такая транза за пару минут и тут же на блокчейне появляется. Так что тут проблема в другом.

 

По замене транзакции в 0.12 кто подскажет?

Posted

Парни подскажите, что за ерунда в папке roaming нет вообще ни каких данных по биткоину ни wallet.dat ни базы блоков. Старый Wallet.dat не знаю куда пихнуть для синхронизации. Блоки загружались дня 4 не выключая комп. Попробывал переустановить клиент и снова такая же фигня ни чего нет, но при запуске клиента уже не загружает блоки. На жестких дисках занятости памяти хоть на ГБ не заметил. Куда они установились черт его знает. Подскажите пожалуйсто.

Posted

Парни подскажите, что за ерунда в папке roaming нет вообще ни каких данных по биткоину ни wallet.dat ни базы блоков.

Помощь -> Окно отладки -> кнопка "Открыть".

Откроется debug.log, в нём сделать поиск "Using data directory" (без кавычек!).

В найденной строке будет путь к папке с базой данных и рабочему wallet.dat.

Posted

Нубский вопрос.


Какой ключ нужно прописать для обновления клиента до версии 0.12.0?


Posted

Понятно, что Биткоин был спроектирован так, что когда закончится награда за блок, останутся только комиссии.

 

В блок помещается около 2.500 P2PKH/P2SH транзакций, а если говорить про более сложные скрипты (например, те, что планируются для открытия/закрытия каналов в Lightning) - это, думаю, около 1.500...

Где-нибудь на русском можно прочитать про разные типы (P2PKH/P2SH) транзакций?

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

    • Курс Bitcoin (только про Bitcoin)

      В данной ветке предлагаю вести обсуждение курса Bitcoin Общее обсуждение курсов криптовалют происходит в топике Курсы криптовалют  Также у нас есть ветка по обсуждению "справедливого курса" Bitcoin     Несколько полезных инструментов для отслеживания курса: bitcoin.clarkmoody отображает стакан Mt.Gox и строит в реалтайме японские свечи bitcoinchain сравнение курсов на разных биржах на одном графике bitcoincharts курсы на различных биржах в табличном представлении  

      in Биткоин

    • Оператор криптоматов Bitcoin Depot сообщил о росте выручки на 19%

      Один из крупнейших операторов криптоматов Bitcoin Depot сообщил о росте выручки на 19% в первом квартале 2025 года. Показатель достиг $164,2 млн, что привело к скачку стоимости акций компании на 20%. Компания Bitcoin Depot, управляющая более чем 8400 криптоматами в Северной Америке, в первом квартале зафиксировала прибыль в $12,2 млн, в отличие от убытка в $4,2 млн за аналогичный период предыдущего года.    В компании заявили, что причиной успеха стало увеличение спроса на услуги крип

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

    • Транзакции Bitcoin

      Explorer BTC https://bitaps.com/ + Other Explorers https://blockchair.com/ https://live.blockcypher.com/   Raw Transaction https://bitaps.com/raw/transaction/2da04ab314f98c82cf73366cf2c20f038ac0ce74a1235772ff10961dba71500a https://blockchain.info/rawtx/2da04ab314f98c82cf73366cf2c20f038ac0ce74a1235772ff10961dba71500a?format=hex   Decode Raw Transaction      -  https://www.blockchain.com/btc/decode-tx   Unspent Output https://li

      in Биткоин

    • Litecoin Core

      Официальный сайт   |   Github   |   Coinmarketcap   |    В теме действуют все Правила форума: перед тем как задать вопрос, посмотрите НОВИЧКИ Bits.Media, все сюда. Уважайте своё и чужое время; для обсуждения и поиска программ/драйверов пользуйтесь разделом Файлы; сообщения, не относящиеся к теме обсуждения (оффтоп), удаляются без предупреждения.    Litecoin [LTC] - одна из первых криптовалют, появившаяся  8 октября 2011 года на алгоритме Scry

      in Кошельки для криптовалют

    • Восстановление кошелька Bitcoin

      Многие задаются вопросом как сделать резервную копию кошелька. В этой статье мы и обсудим несколько вариантов сохранения кошельков, а также их ремонта в случае повреждения. Итак, приступим: Вся информация о кошельке, адрес, количество монет, транзакции находится в одном файле, который называется wallet.dat, который, по умолчанию, находится в папке по пути C:/users/appdata/roaming/НазваниеМонеты. (Для быстрого перехода в папку appdata в windows 7 можно нажать кнопку "Пуск" и набрать в строке по

      in Безопасность

×
×
  • Create New...