blackhacker (OP)
Newbie
Offline
Activity: 9
Merit: 0
|
|
December 15, 2015, 07:06:22 AM |
|
Всем привет. Имеется около 1500 кошельков, на каждом регулярно скапливается пыль. Есть ли способ переводить все на один адрес с наименьшей комиссией? Вчера пытался перевести все на один адрес, клиент Bitcoin Core ругался на большой размер транзакции. Пришлось пересылать по частям. В итоге за перевод 1 BTC заплатил комиссию 0.015 BTC, при размере минимальной комиссии 1000 сатошей за 1кб. На этом форуме нашел тему, где приведен код для склеивания выходов, но не нашел про него подробностей, как он работает, точнее, документации, а экспериментировать не очень хочется. Или может есть еще какой-нибудь способ, о котором я не знаю, поэтому прошу помощи тут.
|
|
|
|
amaclin
Legendary
Offline
Activity: 1260
Merit: 1019
|
|
December 15, 2015, 06:17:18 PM |
|
Всем привет. Имеется около 1500 кошельков, на каждом регулярно скапливается пыль. Есть ли способ переводить все на один адрес с наименьшей комиссией? Вчера пытался перевести все на один адрес, клиент Bitcoin Core ругался на большой размер транзакции. Пришлось пересылать по частям. В итоге за перевод 1 BTC заплатил комиссию 0.015 BTC, при размере минимальной комиссии 1000 сатошей за 1кб. На этом форуме нашел тему, где приведен код для склеивания выходов, но не нашел про него подробностей, как он работает, точнее, документации, а экспериментировать не очень хочется. Или может есть еще какой-нибудь способ, о котором я не знаю, поэтому прошу помощи тут. 1000 сатоши за 1 килобайт - это с тебя по-божески сняли. Не такая уж пыль, если на 1 BTC набралось. У меня решение этой задачи в принципе есть, но оно громоздкое и неудобное. Программа, которая сканирует блокчейн (локальные blk-файлы, которые клиентом создаются) Строим список всех неизрасходованных выходов. Ну и формируем транзакцию, которая мои выходы куда-нибудь пересылает. Иногда я склеиваю себе, иногда сразу на какую-то биржу пересылаю. Но проблемы я вижу тут такие: 1) Я не собираюсь публиковать эту программу бесплатно, а цена этой программы будет значительно больше, чем ты сэкономишь с помощью нее на комиссиях 2) Сейчас в сети много транзакций и майнеры не то что за 1000 сатоши/килобайт не проводят. Некоторые майнеры и 20к сатоши/килобайт закрутили лимиты
|
|
|
|
blackhacker (OP)
Newbie
Offline
Activity: 9
Merit: 0
|
|
December 16, 2015, 06:30:12 AM |
|
Да, радует комиссия в биткоине. За пересылку заплатил 450р с минимальной комиссией, и то была большая вероятность, что транзакция не пройдет. Пересылал ту же самую сумму с такого же количества кошельков в Dogecoin - комиссия составила чуть больше 200 догов, что эквивалентно 2 рублям. Разве в той теме, которую я нашел, нет решения? Там приведен код на php, но я не до конца понял, как он работает. Надо читать документацию.
|
|
|
|
amaclin
Legendary
Offline
Activity: 1260
Merit: 1019
|
|
December 16, 2015, 06:56:55 AM |
|
Да, радует комиссия в биткоине. За пересылку заплатил 450р с минимальной комиссией, и то была большая вероятность, что транзакция не пройдет. Пересылал ту же самую сумму с такого же количества кошельков в Dogecoin - комиссия составила чуть больше 200 догов, что эквивалентно 2 рублям. Разве в той теме, которую я нашел, нет решения? Там приведен код на php, но я не до конца понял, как он работает. Надо читать документацию. Да вроде решение. Я особо в php не силен, и через rpc с клиентом не работал. Так что ничего не могу сказать. Даже пробовать это погонять не буду. В двух словах: (повторю, я сам в этом не силен) Вам понадобится (1) сам php, (2) библиотека работы с биткойном jsonRPCClient, (3) установленный и синхронизированный Core Client Код подключается к клиенту, выдергивает неизрасходованные выходы, формирует, подписывает и при необходимости отправляет транзакцию склеивания. Где при этом задавать адрес и комиссию и как это запускать - я тоже не знаю, не силен в пхп.
|
|
|
|
blackhacker (OP)
Newbie
Offline
Activity: 9
Merit: 0
|
|
December 17, 2015, 07:04:05 AM |
|
Спасибо, попробую что-нибудь с этим сделать. Я наоборот, силен в php, но не силен в устройстве биткоин-сети. Даже не до конца понимаю, как и для чего склеиваются неизрасходованные выходы.
|
|
|
|
amaclin
Legendary
Offline
Activity: 1260
Merit: 1019
|
|
December 17, 2015, 06:46:58 PM |
|
Спасибо, попробую что-нибудь с этим сделать. Я наоборот, силен в php, но не силен в устройстве биткоин-сети. Даже не до конца понимаю, как и для чего склеиваются неизрасходованные выходы. неизрасходованные выходы - это все равно что мелочь в твоем кошельке. никто с мелочью связываться в реальном мире не хочет. в биткойне комиссия зависит не столько от суммы транзакции, сколько от её размера в байтах. поэтому склеивать мелочь - это проблема в некотором смысле.
|
|
|
|
Ivanech
|
|
December 19, 2015, 04:49:40 PM |
|
Всем привет. Имеется около 1500 кошельков, на каждом регулярно скапливается пыль. Есть ли способ переводить все на один адрес с наименьшей комиссией? Вчера пытался перевести все на один адрес, клиент Bitcoin Core ругался на большой размер транзакции. Пришлось пересылать по частям. В итоге за перевод 1 BTC заплатил комиссию 0.015 BTC, при размере минимальной комиссии 1000 сатошей за 1кб. На этом форуме нашел тему, где приведен код для склеивания выходов, но не нашел про него подробностей, как он работает, точнее, документации, а экспериментировать не очень хочется. Или может есть еще какой-нибудь способ, о котором я не знаю, поэтому прошу помощи тут. Приведённый по ссылке пример рабочий, но не оптимальный для склеивания мелочи по нескольким причинам. Как минимум потому, что он тупо склеивает 50 выходов в одну транзакцию, тогда как оптимальнее ориентироваться на размер выходной транзакции, а не количество выводов. Плюс в этом примере никак нельзя ограничить комиссию. Для автоматизации сбора мусора пример может и подойдёт, но для оптимизации расходов лучше составлять транзакции самому, минуя Bitcoin Core API.
|
|
|
|
blackhacker (OP)
Newbie
Offline
Activity: 9
Merit: 0
|
|
December 20, 2015, 07:34:58 AM |
|
А сможете привести пример алгоритма, по которому оптимальнее всего было бы создавать транзакции? Думаю, что смогу перенести его на php (если api Bitcoin Core для этого подойдет), и скрипт сам создаст все транзакции. Даже если пример того кода, который я нашел, не подходит, я смог бы написать новый. Если нужно будет создавать много транзакций, то вручную это трудно будет делать.
|
|
|
|
amaclin
Legendary
Offline
Activity: 1260
Merit: 1019
|
|
December 20, 2015, 08:12:08 AM |
|
А сможете привести пример алгоритма, по которому оптимальнее всего было бы создавать транзакции? Думаю, что смогу перенести его на php (если api Bitcoin Core для этого подойдет), и скрипт сам создаст все транзакции. Даже если пример того кода, который я нашел, не подходит, я смог бы написать новый. Если нужно будет создавать много транзакций, то вручную это трудно будет делать.
для того чтобы создать транзакцию - нужен список неизрасходованных выходов. потом подписать (это удобнее детать через rpc к core, чтобы самостоятельно не заниматься хранением приватных ключей) потом отправить (ну тоже через core)
|
|
|
|
blackhacker (OP)
Newbie
Offline
Activity: 9
Merit: 0
|
|
December 24, 2015, 03:02:14 PM |
|
А в чем получается разница, если я через Bitcoin Core перешлю со всех адресов на один, либо если через скрипт склею выходы и перешлю на один?
|
|
|
|
svetoch
|
|
December 24, 2015, 05:04:45 PM |
|
А в чем получается разница, если я через Bitcoin Core перешлю со всех адресов на один...
комиссия же. а тут рассматривают вариант её уменьшения (если не совсем отказ от комиссии)
|
|
|
|
Xtc
Legendary
Offline
Activity: 1973
Merit: 1028
;u
|
|
December 24, 2015, 05:14:53 PM |
|
Всё это через api bitcoin core делается, в простейшем случае - "sendmany". Комиссия там же устанавливается "settxfee". Но дешевле чем в первом посте ты точно не сделаешь.
|
|
|
|
amaclin
Legendary
Offline
Activity: 1260
Merit: 1019
|
|
December 24, 2015, 07:20:54 PM |
|
А в чем получается разница, если я через Bitcoin Core перешлю со всех адресов на один, либо если через скрипт склею выходы и перешлю на один? никакой существенной разницы. там можно сэкономить буквально несколько процентов, за счет некоторых трюков с подписыванием транзакции. кстати, сеть сейчас подтверждает транзакции (если вы готовы подождать сутки) на 2 сатоши за байт
|
|
|
|
blackhacker (OP)
Newbie
Offline
Activity: 9
Merit: 0
|
|
December 27, 2015, 11:07:34 AM |
|
Это получается, 2000 сатоши за килобайт? Сегодня пробовал перекинуть 50000 сатоши с установленной комиссией 1000 сатоши\килобайт, комиссия составила около 12000 сатошей. Если такая комиссия (20%) будет распространяться на весь баланс, то сумма получится довольно внушительная. Но все равно пока не понял, в чем заключается трюк со склеиванием выходов и уменьшением размера транзакции.
|
|
|
|
amaclin
Legendary
Offline
Activity: 1260
Merit: 1019
|
|
December 27, 2015, 03:15:03 PM |
|
Это получается, 2000 сатоши за килобайт? Сегодня пробовал перекинуть 50000 сатоши с установленной комиссией 1000 сатоши\килобайт, комиссия составила около 12000 сатошей. Если такая комиссия (20%) будет распространяться на весь баланс, то сумма получится довольно внушительная. Но все равно пока не понял, в чем заключается трюк со склеиванием выходов и уменьшением размера транзакции. Комиссия зависит не от баланса (запомните это крепко-крепко), а от размера транзакции. Я сегодня поэкспериментировал немного. Отправил сперва транзакцию которая платит ~2001 сатоши за килобайт https://tradeblock.com/bitcoin/tx/deefbfb64b7aa2c62bd87454823bc017953a56fef7945b9126e39b0bee78d246Её сеть подтвердила практически сразу (во-первых повезло, во-вторых сказывается спад активности в связи с рождеством) Потом отправил транзакцию которая платит ~1999 сатоши за килобайт https://tradeblock.com/bitcoin/tx/3b949fa0dfae63c324d343b8c2640f8469a0a21e61da757c723ef1f65f77b97eОна до сих пор не подтверждена Вывод: если не учитывать возраст выходов (хотя это нельзя не учитывать), то граница как раз на уровне 2000 сатоши за килобайт Трюк с уменьшением размера транзакции объяснять долго. И вы всё равно не поймете. Но в общем-то размер транзакции меняется в некотором диапазоне. И его можно сделать децл поменьше
|
|
|
|
in100
Legendary
Offline
Activity: 1200
Merit: 1021
|
|
December 27, 2015, 05:31:21 PM |
|
Отправил сперва транзакцию которая платит ~2001 сатоши за килобайт
К сожалению, Bitcoin-Qt не позволяет установить комиссию меньше 5000 сатоши за килобайт (кроме случаев, когда размер транзакции не превышает 1 кБ, тогда можно отправить с нулевой комассией). По крайней мере, сколько я не пытался, ничего не получилось. То есть установить можно любую комиссию меньше 5000, но рассчитывается она всё равно исходя из 5000 сатоши/кБ. P.S. Сборку raw-транзакций вручную не предлагаю, это не для обычных пользователей.
|
1BTCin1ooigFtHHD82qquqysdfxFZGdd8a | LTCin1oo9JhxcZu8ZK5HivqwvzAdQSaoua | 4NVCin1ooAd2XKoEfEhBn6tYNUHhojf4QS Блокчейн биткоина с его алгоритмом децентрализованного консенсуса на самом деле неэффективен, но неэффективность – это та цена, которую мы платим за свободу. © Andreas Antonopoulos
|
|
|
Xtc
Legendary
Offline
Activity: 1973
Merit: 1028
;u
|
|
December 27, 2015, 06:25:31 PM |
|
К сожалению, Bitcoin-Qt не позволяет установить комиссию меньше 5000 сатоши за килобайт Позволяет
|
|
|
|
amaclin
Legendary
Offline
Activity: 1260
Merit: 1019
|
|
December 27, 2015, 06:41:03 PM |
|
Ну я практически не пользуюсь Bitcoin-Qt. Разве что для вытягивания цепочки блоков. Ну и в консоли decoderawtransaction иногда делаю, чтобы не налажать. Так что в каких-то вещах я ламер. И не могу подсказать насчет комиссий как их менять в Bitcoin-Qt. Ну то есть ссылки я вам дал - специально дал на сайт tradeblock. tradeblock как раз тем и хорош, что для транзакции показывает сколько у неё комса в расчете на байт (как перевести байты в килобайты надеюсь объяснять не надо)
|
|
|
|
in100
Legendary
Offline
Activity: 1200
Merit: 1021
|
|
December 27, 2015, 07:03:35 PM |
|
К сожалению, Bitcoin-Qt не позволяет установить комиссию меньше 5000 сатоши за килобайт Позволяет А можно поподробнее, где и что нужно поставить, чтобы это получилось? Вот транзакция размером больше 1 кБ, комиссию ставим выборочно, за килобайт, 5000, получаем всего 6370 сатоши: Меняем комиссию за кБ на 2000, получаем всё ту же общую комиссию 6370 сатоши:
|
1BTCin1ooigFtHHD82qquqysdfxFZGdd8a | LTCin1oo9JhxcZu8ZK5HivqwvzAdQSaoua | 4NVCin1ooAd2XKoEfEhBn6tYNUHhojf4QS Блокчейн биткоина с его алгоритмом децентрализованного консенсуса на самом деле неэффективен, но неэффективность – это та цена, которую мы платим за свободу. © Andreas Antonopoulos
|
|
|
negeroy
Legendary
Offline
Activity: 1148
Merit: 1051
|
|
December 27, 2015, 09:12:18 PM |
|
Отправил сперва транзакцию которая платит ~2001 сатоши за килобайт
(кроме случаев, когда размер транзакции не превышает 1 кБ, тогда можно отправить с нулевой комассией). По крайней мере, сколько я не пытался, ничего не получилось. по протоколу когда размер транзакции не превышает 1 кБ + все выходы больше 100к сатошь + все входы имеют больше № кол-ва подтверждений расчитываемые по формуле, для не скомпресенных ключей № = (57,600,000 * (181 *(кол-во входов) + 34 *(кол-во выходов) + 10)) / кол-во входных сатошь
|
|
|
|
|