Из наблюдений: большинство пользуется одним адресом, скидывая на него все, что есть, всякую мелочь. Т.е. многие не понимают концепцию выходов, они думают, что если все на одном адресе, то это как бы один выход (но они не думают такими понятиями). Поэтому когда они с такого адреса хотят отправить немного на биржу битка и все их выходы объединяют в один, то это грабеж. Возьмем для примера два случая: 1. На адресе десять выходов. Сеть разгружена (1 сат/байт). Неискушенный в этих деталях юзер отправляет маленькую часть на биржу, все выходы без ведома юзера автоматом консолидируются. Он тратит 10*148 + 2*34 + 10 = 1558 сатоши. Через неделю сеть загружена (100 сат/б), он тратит остальное 100*(1*148+1*34+10) = 19200 сатоши. Всего потрачено 20758. 2. На адресе десять выходов. Сеть загружена (100 сат/байт). Продвинутый юзер отправляет один выход (со сдачей) на биржу. Он тратит 100*(1*148+2*34+10) = 22600 сатоши. Через неделю сеть разгружена (1 сат/б), он тратит остальное 10*148+1*34+10 = 1524 сатоши. Всего потрачено 24124. Риторический вопрос - какая модель поведения лучше? Это я к тому, что в среднем оно примерно уравнивается, я бы "грабежом" это не обзывал. p.s. Кстати, в обоих случаях места в блокчейне будет занято одинаково.
|
|
|
С приватностью, по-моему, понятно - немного запутываются следы, после каждой транзакции новый адрес, то есть получается разветвляющаяся "цепочка" вместо "узла". Подожди, у тебя же по поведению все непотраченные выходы объединяются в один на том же адресе. Откуда новый адрес взялся? Да, в моем примере (и, похоже, в обсуждаемой транзакции) кошелек не из сида (не HD), поэтому там это не имеет смысла. Электрум - HD-кошелек, поэтому там все адаптировано для HD-кошелька. Я думаю, они просто не стали заморачиваться отдельными алгоритмами для импортированных кошельков, которые там нужны скорее как инструмент для восстановления бэкапов сторонних кошельков, а не для постоянного полноценного использования. То есть импортировал бумажный кошелек и сразу отправил всё на биржу (или на HD-кошелек) - этим использование "кошелька из приватника" должно и ограничиваться. Но у нас другое поведение: у нас тупо на тот же адрес консолидируется много выходов в один - это пустая трата комиссий и места в блокчейне. Разве что нодам в памяти легче держать один непотраченный выход, вместо пачки. Да сколько там того лишнего места/комиссии? 180 байт? Не о чем говорить. скрин Ну вот и здесь говорится про идею, где все выходы объединяются только для того, чтобы их убрать на другой адрес. И то, если ты такое поведение выберешь. В твоем же случае и в случае перевода 69к битков, все выходы отправились на тот же адрес. Это не решает вопрос приватности из описания (где никто не знает, сколько ты перевел, а сколько оставил). Это вопрос банального грабежа, чтобы нодам было полегче, о чем в конце описания вскользь и говорится. Выше ответил. Сейчас приветствуются HD-кошельки и однократное использование адреса в них. Если кто-то предпочитает другую модель, пусть сам разбирается со своими utxo ). Отсюда и понятно, почему половина форума ноет про транзакции за 50 долларов. У тебя самое реальное объяснение этого объединения.
Хотите сказать, что половина форума собирает много utxo на одном адресе, а потом не знает, как их грамотно тратить при загруженной сети? Сомневаюсь, что таких много. Нубы пользуются HD, а майнеры обычно что-то понимают (хотя хз).
|
|
|
но алгоритм тот же - при первой возможности консолидировать и потратить всё с адреса (для повышения приватности и теоретически взломоустойчивости) У тебя же hd кошелек не консолидирует все выходы со всех адресов и даже все выходы на одном адресе (по-моему) - почему такой же алгоритм тогда? Со всех адресов не консолидирует (в этом нет смысла), но если зацепил один utxo с адреса, то Электрум и в HD-кошельке вставит все остальные utxo этого адреса в транзакцию. Чем приватность или взломоустойчивость повышается при объединении с одного адреса всех выходов в один? С приватностью, по-моему, понятно - немного запутываются следы, после каждой транзакции новый адрес, то есть получается разветвляющаяся "цепочка" вместо "узла". А насчет теоретической взломоустойчивости - просто после отправки транзакции с адреса в блокчейне засвечивается публичный ключ, из которого этот адрес получен. А из публичного ключа "проще" получить приватный, чем из адреса, не нужно хеши считать. Конечно, пока нет квантовых компьютеров, или не найдена брешь в ECDSA, это не имеет значения, да и тогда первым делом будут ломаться "жирные" потерянные адреса и P2PK-адреса Накамото ). Электрум раньше все выходы даже с родных кошельку (и даже hd) собирал в один? Я правда такого не помню, звучит как лишняя трата денег.
|
|
|
Я создал в Электруме импортированный из приватника кошелек Это такая функция у электума есть или ты все-таки создал кошелек на электруме и в него импортировал посторонний приватник? При создании кошелька предлагается выбрать, какой тип кошелька (из четырех) создавать. Один из них - "импортированный" из закрытого ключа или адреса (из адреса будет watch-only кошелек). В результате, несмотря на то, что любого из utxo было вполне достаточно для этой транзакции, Электрум использовал их все. Сдача, естественно, вернулась на исходный адрес. Вот это интересный момент. Я сначала подумал, что сдачу перекидывает на адреса кошелька, который можно восстановить из сида. Если я тебя правильно понял, и ты в созданный кошелек докинул новый приватник Я создал из приватника, но можно и докинуть в существующий импортированный (но только в импортированный, не в "стандартный") кошелек. тогда совсем непонятно, зачем трогать другие выходы, ведь это пустая трата сотоши. Алгоритм работы HD-кошельков заточен на неиспользование адреса вторично. В данном случае кошелек получается неHD, но алгоритм тот же - при первой возможности консолидировать и потратить всё с адреса (для повышения приватности и теоретически взломоучтойчивости) Поэтому всегда стоит работать только с отдельными выходами. Нужно, когда это оправдано. Часто это лишняя возня. А я не уверен, что владелец этих десятков тысяч битков вполне грамотен, допускаю, что он не знает про такую вкладку ). Что-то я как-то сильно сомневаюсь в этом. Если это хакер, который может написать код для брутфорса самого wallet.dat, то он в состоянии своими руками создать транзу и запушить ее в сеть вообще без софта, а уж тем более знает, как с помощью кошельков работать с отдельными выходами. Если хакер, то да. Но мне кажется, что здесь был владелец, а гуляющий по сети wallet.dat - фейк. Если это владелец, то он скорее всего пользовался тем кошельком, где этот wallet.dat был создан и там потратилась бы только часть выходов. Не обязательно. Во-первых, оригинальный wallet.dat мог быть утерян/испорчен/труднодоступен. А в те времена (да и сейчас в меньшей степени) многие вдобавок к файлу кошелька сохраняли и отдельно приватники. Во всяком случае, я в упор не помню, чтобы кошельки раньше так работали и трогали каждый раз все выходы. Было такое в электруме и раньше, даже можно было менять это поведение в настройках. Вот как там было в коре - не помню, но может нарою свои древние транзакции и гляну. А во-вторых, может он сознательно пошел на эту консолидацию - какая разница, делать ее в первой транзакции или во второй? Не то, чтобы там кто-то считал сатоши, но (пишу это не как аргумент, разница тут небольшая): в его случае: много выходов на 2 адреса + 1 адрес на 1 адрес в моем случае 1 к 1 (проверяем на одном аутпуте) + много выходов на 1 адрес - это чуть меньше комсы Но дело не в этом. Это странное действие. Вдруг что-нибудь пойдет по пизде. Подписать один выход или сразу несколько сотен выбор очевиден, по-моему, нужно иметь железные нервы, при этом тест в 1 биткоин получается бессмысленным. Согласен, можно было сделать оптимальнее.
|
|
|
Так по твоему скрину не понятно, какую ты транзакцию создавал. Видно только, что три выхода объединены и сдача уходит обратно на тот же адрес. А как ты ее создавал, не ясно. Я думал, что там все видно, но хорошо, поясню. Я создал в Электруме импортированный из приватника кошелек. На соответствующем приватнику адресе было три utxo. Дальше я просто вбил адрес получателя, сумму платежа 0.00001 и нажал "оплатить". В результате, несмотря на то, что любого из utxo было вполне достаточно для этой транзакции, Электрум использовал их все. Сдача, естественно, вернулась на исходный адрес. Я писал про ту вкладку электрума, где ты отдельно выходами управляешь, а не просто отсылаешь нужную сумму на нужный адрес - кто в слепую так работает мне не очень понятно, но явно не тот, у кого десятки тысяч битков под рукой. А я не уверен, что владелец этих десятков тысяч битков вполне грамотен, допускаю, что он не знает про такую вкладку ). А во-вторых, может он сознательно пошел на эту консолидацию - какая разница, делать ее в первой транзакции или во второй? Про wallet.dat я не готов комментировать, но вы уверены, что там был HD-кошелек? А разница? Не понимаю, к чему ты клонишь? Интересно, как ведут себя новые версии софта со старыми кошельками, которые не hd. Просто я не помню, как вел себя кор в старых версиях (до HD), куда он сдачу по умолчанию отправлял? Я просто про взлом wallet.dat думал и "стандартную" работу электрума.
Не обязательно, что он электрумовский. Он и коровским легко может быть. Хотя я не знаю, одинаковые ли у них форматы, никогда в голову не приходило открывать их файлы друг друга кошельками. Разные там форматы, несовместимые.
|
|
|
И куда он отправляет сдачу? На адрес из своего hd кошелька? В этом случае логику понять можно.
Давай еще раз, на всякий случай: если у меня три непотраченных выхода на одном ключе, то даже если моя трата умещается в один выход, он все равно автоматом цепляет все три выхода, потому что я импортировал ключ?
Проще проиллюстрировать. Вот, создал транзакцию в тестнете. Тут все видно. Если нет, то буду пояснять. Мы просто о разных вещах говорим. Брутфорсили не приватник, а зашифрованный wallet.dat. Соответственно, когда его вскрыли, в кошельке не было сторонних приватных ключей, которые не восстановятся из сида, поэтому кошелек не стал бы цеплять все старые выходы. Про wallet.dat я не готов комментировать, но вы уверены, что там был HD-кошелек? Опять же, человек выставил на сдачу тот же адрес. Этого бы кошелек ни при каких обстоятельствах не сделал бы. Более того, в таком случае бессмысленно цеплять все непотраченные выходы, ведь цель такого поведения - перенести средства на ключи, которые восстановятся из сида - правда я тут не уверен, что разработчики о таком варианте подумали и кошелек не будет цеплять все выходы с импортируемого ключа, если сдача возращается на этот же ключ.
На моей картинке видно что куда идет...
|
|
|
В том же электруме давно используется только то кол-во входов, которое необходимо для транзакции. Т.е. если бы он хотел переслать всего 1 BTC для пробы, то и входов было бы использовано именно для перевода одного битка (скорее всего, был бы использован только один вход). А тут именно что объединение всех входов было сделано. И первая транза поэтому аж на 35кб получилась.
Если какие-то кошельки автоматом генерят транзы по 35кб при подобных случаях, то место таким кошелькам на свалке ) Можете в таком случае и Electrum на свалку выкидывать )). Если вы импортируете в электрум приватник от адреса с несколькими UTXO на нем, то при трате даже одного UTXO в транзакцию автоматом будут собраны все UTXO этого адреса, как и в обсуждаемом случае. Проверьте сами. Либо поверьте мне на слово, я не раз в этом убеждался ). Входы в большинстве современных кошельков в таких случаях объединяются автоматом, он не собирался этого делать скорее всего.
Нет, тогда бы кошелек тебя ставил на битки. Не нет, а да. Могу спорить на что угодно )).
|
|
|
Некто сначала делает объединение входов на этом крупном кошельке (236 не потраченных входов) с НЕзаоблачной комсой. При этом, в той же транзакции, ваще не скрываясь, уже посылает 1 BTC на этот новый кошелек bc1qa5wkgaew2dkv56kfvj49j0av5nml45x9ek9hz6. Просто на новый кошелек он сделал сначала пробную транзакцию (на всякий случай), а затем переслал остальное. Входы в большинстве современных кошельков в таких случаях объединяются автоматом, он не собирался этого делать скорее всего.
|
|
|
Можно, но все же вы должны понимать, что это весьма нестабильный заработок и вы вполне можете проработать год и ничего не получить, поэтому если и захотите заходить в баунти, то не испытывайте большие надежды, лучше параллельно развивайтесь в трейдинг, а баунти рассматривайте как неплохую подработку.
Из ваших слов напрашивается вывод, что трейдинг - это стабильный заработок, и с ним можно испытывать большие надежды, так?
|
|
|
конкретно сид - число из 12/24 знаков в 256-ричной системе исчисления (тк в словаре 256 вариантов слов)
2048 слов в BIP39, а в Electrum вообще нет привязки к какому-то словарю.
|
|
|
А вот перевод я сделать не могу, пишется ошибка при переводе на сегвит-адрес. Вот это для меня удивительно, видеть "Инвалид-адрес". Отсюда резонный вопрос - кто нибудь выводил биткоины на сегвит адрес?
Попробовал вывести tBTC на сегвит-адрес - тоже не дает. Видимо, до сегвита пока еще руки не дошли.
|
|
|
Если быть точным - не две, а три ) Транзакция с taker fee, транзакция на p2sh, транзакция с p2sh на адрес получателя. Верно, но третью ("dexfee") я не рассматривал, с ней все ясно, и речь о ней не шла. По-поводу размеров - нетрудно посчитать, сколько примерно будет весить legacy -> legacy, legacy -> p2sh, p2sh -> legacy. Я к тому, что приблизительно оценить все-таки можно. Можно, конечно. Даже точно можно посчитать, нужно только знать используемый p2sh-скрипт (для этого нужно либо копаться в исходниках, либо найти пример (txid) такого свопа. У меня просто нет достаточно BTC на AtomicDEX'е (при балансе меньше 0.00777 BTC GUI просто не отображает Transaction Fee и Trading Fee), а так бы сам посмотрел, насколько отличается fee на при постановке и ордера и fee при простой отправке средств. taikuri13 выше же говорил, что транзакция, проходящая с комиссией 3$ здесь обходилсь ему в 71. Ну ок, давайте уточним у него, сколько раз он пополнял битком свой dex-аккаунт и сколько раз с него отправлял или делал свопы? Таким образом мы получим представление, сколько там utxo.
update Провел своп - создал на виртуалке maker-ордер MORTI/tBTC, на основной машине выкупил эти морти. Интерфейс перед свопом показал такое: Транзакции tBTC: Списание dexfee https://blockstream.info/testnet/tx/3287ed978364fac64d2dbef59557f2298f3d9c3884c4b539970d0f7f7975a272Отправка на промежуточный p2sh-адрес https://blockstream.info/testnet/tx/f512e0e97100e16c6dde52d0851ec9019b64ee2a76c4bb805af0d2f2368d8918С промежуточного адреса на адрес получателя https://blockstream.info/testnet/tx/8bc9b97ebc3e7f3a0831db232b917fdffbbf15542fae51650e505ef5fa91287aВсе три транзакции заняли 781 байт. В итоге по пути потеряно 0,00010786 tBTC. Проходная комиссия в тестовой сети битка 1 сат/б. Что нарисовано на моей картинке в полях с комиссией пока не понял )).
|
|
|
erav3n, насколько я знаю, в процессе свопа битки сначала отправляются на промежуточный p2sh-адрес, а уже потом на адрес получателя. То есть там не одна прямая транзакция, а две (к тому же одна из них побольше 225 байт будет). И поэтому предложенные вами опыты будут малополезны.
|
|
|
https://github.com/KomodoPlatform/atomicDEX-API/issues/710Здесь есть кое-какие мысли, почему такая комиссия. Кстати, если я правильно понял, там показывает комиссию за килобайт, в реальности транзакция может меньше занимать. Мне не понятно, неужели нельзя сделать какие-нибудь настройки "для продвинутых", где можно выставлять комиссию вручную? И еще не понятно, почему используются легаси-адреса?
|
|
|
Почему нельзя? Кто это запрещает? Спокойно вводится во многие HD софтверные кошельки. Проверял лично. Не один только Electrum на свете, куда его не введешь. А аппартный кошелек тоже цифровое, а не аналоговое устройство, но это уже между прочим. Я знаю. Не в этом смысле нельзя (Electrum, кстати, тоже принимает BIP39-сиды), а нельзя по технике безопасности (вы же покупали аппаратник для безопасности хранения монет, не так ли?). Сид аппаратного кошелька, введенный в устройство, которое увидит сеть, с момента подключения этого устройства к сети принято считать потенциально скомпрометированным. То есть аппаратному кошельку с таким сидом уже нельзя вполне доверять И я не СИДУ не доверяю, а не доверяю одному единственному СИДУ для абсолютно всех моих кошельков.
Конечно, если сид светить в онлайн-девайсах, ему нельзя доверять, я понимаю ).
|
|
|
Пожалуйста, вот вам пример. Хотя я этого и не делаю, но допустим я использую СИД для своего Trezor, который имеет доступ ко всем моим биткойнам и тот же СИД для кошелька другой криповалюты, который установлен на моем лептопе. Предположим что в следствии того, что кошелек на лептопе слетел или в следствии его обновления, а я с этим сталкивался не один раз, мне необходимо его восстановить и ввести свой СИД. Если мой лептоп скомпроментирован, я потеряю не только криптовалюту для данного кошелька, но и биткоины, потому что доcтуп к ним обеспечиает тот же СИД. Это не аргумент? Нет. Во-первых, сид аппаратного кошелька нельзя вводить в цифровое устройство. Но ладно, речь здесь не об этом. Вы привели пример с программным "горячим" кошельком, но там слабость не в сиде, а в самой конфигурации. Да, чем слабее защита кошелька, тем меньше в нем стоит хранить (для минимизации возможного ущерба). У меня каждый софтверный кошелек имеет свой SEED, свое мнение никому не навязываю. Для всех моих аппаратных кошельков SEED один. Теперь ясно. Просто из той жирной фразы напрашивался вывод, что вы именно сиду не доверяете.
|
|
|
По моему мнению это все равно, что положить все яйца в одну корзину. Не боитесь что ненароком кто-нибудь сядет в нее? Вероятность этого настолько ничтожна, что этим можно пренебречь. Разве что для самоуспокоения капитал можно разбить на несколько частей и хранить на разных кошельках (сидах). Но это скорее будет страховка от какой-то собственной ошибки, не более того. СИД для каждой криптовалюты должен быть свой и уникальный. Period.
Не, жирного слова "Period" недостаточно, нужны более весомые аргументы )).
|
|
|
~ А можно полюбопытствовать, какая именно комиссия получается (в цифрах)?
71 доллар, на минималке. Я несколько тысяч Комодо хотел купить, но с такой комиссией - посижу лучше в биткоине. Даже с учетом того, что перевод на несколько тысяч долларов в BTC - если быстро, обойдется мне в 3 доллара, эта цифра слишком большая. ps: Возможно, я что-то делаю не так, но я не знаю как делать по другому. Спасибо. Правильно ли я понял, вы пополнили свой btc-аккаунт в dex, а затем при попытке создать ордер с KMD вам предложило комиссию 71$?
|
|
|
I have a question where will the created transaction be stored? Can I be 100% sure that it will not be removed from the mempool in 20 years?
You store it locally. It is impossible to place a transaction into mempool before the time specified in nLocktime.
|
|
|
|