Yaremi (OP)
Legendary
Offline
Activity: 1974
Merit: 1159
|
|
August 09, 2016, 08:57:34 PM |
|
Пусть выводит куда хочет, на то он и классик эфир, чтобы каждый сам распоряжался своими монетами. А хардфорк еще один пусть клепают, мне понравилось Smiley В итоге вместо N-ной суммы одной моенты получил 2 монеты по N каждой Smiley Было бы прикольно штук 5 хард-форков Smiley Пусть выводит куда хочет, на то он и классик эфир, чтобы каждый кому достался классик смог поменять у лохов его на битки
|
|
|
|
paramedic
Member
Offline
Activity: 134
Merit: 10
|
|
August 09, 2016, 08:58:36 PM |
|
Поделитесь, кто где смотрит последние новости по Ethereum?
Тут бывают http://ethereumforum.ru
|
|
|
|
klbax381
|
|
August 09, 2016, 10:33:06 PM |
|
Спасибо, все почти ясно. Только не совсем понимаю, что за параметр nonce. Пишут, что позволяет перезаписать свои же ожидаемые транзакции. Это как?
На этом параметре базируется вся защита транзакций ethereum Тут нет UTXO, а есть аккаунты(балансы), а значит одну и ту же транзакцию можно повторить сколько угодно раз и так обчистить любого юзера Чтобы такого не было - есть nonce, оно должно быть строго на единицу больше, чем nonce предыдущей отправленной транзакции данным аккаунтом. Изначально nonce аккаунта =0. Получается nonce аккаунта равно количеству отправленных транзакций данным аккаунтом. Соответственно nonce транзакции, которую хотим отправить должно быть равно nonce аккаунта (или nonce последней транзакции +1) Если nonce поставить слишком большим - транзакция попадет в mempool и будет там сидеть вечно(ну почти), тк эта транзакция теоретически может быть валидная в будущем. Если слишком низкий - она сразу отбросится сетью, тк эта транзакция уже не валидная. Тут есть некоторая опасность. Допустим наш account nonce=1, и мы отправили 3 транзакции с nonce=2,3,4 на сумму 1ETH каждая. Они попадут в memory pool. И как только мы отправим четвертую транзакцию(а про первые 3 мы могли уже и забыть) с nonce=1 на сумму, скажем 0.5ETH, все 4 транзакции попадут в блок (или несколько блоков) и в итоге вместо списания 0.5ETH спишется 3.5ETH (если конечно на счету столько будет). Поэтому, если nonce в обеих сетях разошлись - лучше аккаунт вычистить и забыть про него, тк в сети могут висеть неподтвержденные транзакции и в один прекрасный момент они могут подтвердиться. Сколько транзакция висит в mempool - не знаю, зависит от реализации клиентов. Но это не так важно, потому что ее можно вручную вытащить из mempool и отправить повторно в сеть хоть через месяц, при чем это сделать может любой участник сети. Не в крусе есть ли у ETH-транзакций timestamp. Если есть, то теоретически и должно быть заложено ограничение на время подтверждения транзакции. Эта информация есть в спецификации протокола на сайте его разработчика(Gavin Wood) http://gavwood.com/paper.pdf , сейчас лень смотреть, можете сами глянуть.
|
|
|
|
amaclin
Legendary
Offline
Activity: 1260
Merit: 1019
|
|
August 09, 2016, 11:30:53 PM |
|
Чтобы такого не было - есть nonce, оно должно быть строго на единицу больше, чем nonce предыдущей отправленной транзакции данным аккаунтом. Я в эфирном протоколе "ни бэ, ни мэ". Почему это назвали nonce? Опять же, не знаю как это с аглийского переводится, но я всегда думал, что nonce - это рандом. А для автоинкрементального поля надо назвать sequence, seqnum, seqid
|
|
|
|
klbax381
|
|
August 09, 2016, 11:42:33 PM |
|
Я в эфирном протоколе "ни бэ, ни мэ". Почему это назвали nonce? Опять же, не знаю как это с аглийского переводится, но я всегда думал, что nonce - это рандом. А для автоинкрементального поля надо назвать sequence, seqnum, seqid Видимо Гэву так понравилось . Я бы тоже назвал это поле seqid
|
|
|
|
miko_style
|
|
August 10, 2016, 04:33:23 AM |
|
Чтобы такого не было - есть nonce, оно должно быть строго на единицу больше, чем nonce предыдущей отправленной транзакции данным аккаунтом. Я в эфирном протоколе "ни бэ, ни мэ". Почему это назвали nonce? Опять же, не знаю как это с аглийского переводится, но я всегда думал, что nonce - это рандом. А для автоинкрементального поля надо назвать sequence, seqnum, seqid Один из переводчиков предложил мне вариант "извращенец"😂 так что тут все ясно😂
|
|
|
|
miko_style
|
|
August 10, 2016, 04:40:23 AM |
|
Спасибо, все почти ясно. Только не совсем понимаю, что за параметр nonce. Пишут, что позволяет перезаписать свои же ожидаемые транзакции. Это как?
На этом параметре базируется вся защита транзакций ethereum Тут нет UTXO, а есть аккаунты(балансы), а значит одну и ту же транзакцию можно повторить сколько угодно раз и так обчистить любого юзера Чтобы такого не было - есть nonce, оно должно быть строго на единицу больше, чем nonce предыдущей отправленной транзакции данным аккаунтом. Изначально nonce аккаунта =0. Получается nonce аккаунта равно количеству отправленных транзакций данным аккаунтом.... Крайне, крайне интересно! То есть в моем случае, мне нужно погонять какие-то левые микротранзакции в сети классик, что бы параметр nonce у аккаунта в классике стал равен параметру аккаунта в форке и тогда следующая транзакция должна пройти в обеих сетях,как-то так.
|
|
|
|
|
markiz73
|
|
August 10, 2016, 08:24:07 AM |
|
качаю кошелек уже день. 1752ххх из 2041ххх. Комп х6, 8 гигов озу, скоростной инет. Как эти мудаки чтото хотят разработать, если такой идиотизм происходит?
З.Ы. Полгода назад было тоже самое, прогресс в действии
|
|
|
|
maxvall
|
|
August 10, 2016, 08:40:47 AM |
|
Мне вот интересно, кто эти 5-6 человек, которые на КАЖДОМ голосовании по цене эфира голосуют за $1? качаю кошелек уже день. 1752ххх из 2041ххх. Комп х6, 8 гигов озу, скоростной инет. Как эти мудаки чтото хотят разработать, если такой идиотизм происходит?
З.Ы. Полгода назад было тоже самое, прогресс в действии
Время синхронизировано на компе?
|
|
|
|
markiz73
|
|
August 10, 2016, 08:43:48 AM |
|
качаю кошелек уже день. 1752ххх из 2041ххх. Комп х6, 8 гигов озу, скоростной инет. Как эти мудаки чтото хотят разработать, если такой идиотизм происходит?
З.Ы. Полгода назад было тоже самое, прогресс в действии
Время синхронизировано на компе? да
|
|
|
|
klbax381
|
|
August 10, 2016, 09:16:37 AM |
|
Крайне, крайне интересно! То есть в моем случае, мне нужно погонять какие-то левые микротранзакции в сети классик, что бы параметр nonce у аккаунта в классике стал равен параметру аккаунта в форке и тогда следующая транзакция должна пройти в обеих сетях,как-то так. Да, если nonce в классик отстал от форка, тогда можно просто запулить нужное количество транзакций с нужными nonce, например самому себе либо на какой-то контракт, сумму(value) можно и 0 поставить. Аналогично можно сделать и наоборот - если nonce отстал от форка. Даже клиент менять не нужно, можно пулять одним и тем же клиентом. У меня основной клиент старый (классик), в нем все транзакции отправляю, их обе сети видят и уже принимают или отбрасывают (или помещают в mempool) в зависимости от ситуации. Только аккуратно надо - как только nonce сойдутся - могут сработать старые транзакции из параллельной сети и отправить бабки не туда, куда хотелось бы Any web-wallet can scam You at any time dont use them at all качаю кошелек уже день. 1752ххх из 2041ххх. Комп х6, 8 гигов озу, скоростной инет. Как эти мудаки чтото хотят разработать, если такой идиотизм происходит?
З.Ы. Полгода назад было тоже самое, прогресс в действии Ну блокчейн сам по себе такой. Хотя соглашусь, в eth синхронизация хуже работает, чем в битке и его клонах. зы. Если качаете классик-ветку - нельзя использовать ключ --fast, иначе скачается либо форкнутая либо какой-то нерабочий гибрид.
|
|
|
|
DoubleDot
|
|
August 10, 2016, 01:28:00 PM |
|
Спасибо, все почти ясно. Только не совсем понимаю, что за параметр nonce. Пишут, что позволяет перезаписать свои же ожидаемые транзакции. Это как?
Сколько транзакция висит в mempool - не знаю, зависит от реализации клиентов. Но это не так важно, потому что ее можно вручную вытащить из mempool и отправить повторно в сеть хоть через месяц, при чем это сделать может любой участник сети. Не в крусе есть ли у ETH-транзакций timestamp. Если есть, то теоретически и должно быть заложено ограничение на время подтверждения транзакции. Эта информация есть в спецификации протокола на сайте его разработчика(Gavin Wood) http://gavwood.com/paper.pdf , сейчас лень смотреть, можете сами глянуть. Как я понял, мемпул создаётся в ноде, и не выходит в сеть, пока нонс её не догонит, он обнуляется при закрытии/перезапуске ноды. Иначе заддосили бы сеть.
|
|
|
|
klbax381
|
|
August 10, 2016, 01:53:25 PM |
|
Как я понял, мемпул создаётся в ноде, и не выходит в сеть, пока нонс её не догонит, он обнуляется при закрытии/перезапуске ноды. Иначе заддосили бы сеть. Я сам пробовал задосить приват-тестнет - все geth ноды слетают, если наслатьь транзакций на 4 гига с высоким nonce одной нодой. Но это в тестнете. mainnet еще досить не пробовал, пока нет достаточного канала, чтобы куча транзакций аплоадить.
|
|
|
|
amaclin
Legendary
Offline
Activity: 1260
Merit: 1019
|
|
August 10, 2016, 02:13:58 PM |
|
Any web-wallet can scam You at any time dont use them at all Мы уже много раз перетирали, что standalone-валлеты и web-валлеты примерно на одинаковом уровне по надежности/безопасности. Ну если вы качаете экзешник от Васи Пупкина - то где гарантии, что Вася не встроил туда отправлялку ваших паролей/ключей? Вся разница в том, что в одном случае код написан на си или на каком-нибудь питоне, а в другом случае - на жабьем скрипте. А каждый раз проверять тонны говнокода на гитхабе и самому потом собирать - это не комильфо.
|
|
|
|
zork
Legendary
Offline
Activity: 1487
Merit: 1008
|
|
August 10, 2016, 02:35:29 PM |
|
Поэтому, если nonce в обеих сетях разошлись - лучше аккаунт вычистить и забыть про него, тк в сети могут висеть неподтвержденные транзакции и в один прекрасный момент они могут подтвердиться. Сколько транзакция висит в mempool - не знаю, зависит от реализации клиентов. Но это не так важно, потому что ее можно вручную вытащить из mempool и отправить повторно в сеть хоть через месяц, при чем это сделать может любой участник сети. Не в крусе есть ли у ETH-транзакций timestamp. Если есть, то теоретически и должно быть заложено ограничение на время подтверждения транзакции. Эта информация есть в спецификации протокола на сайте его разработчика(Gavin Wood) http://gavwood.com/paper.pdf , сейчас лень смотреть, можете сами глянуть. у меня одна такая зависшая транзакция исполнилась через 9 дней, при чем она исполнилась при пополнении баланса до величины момента отправки. Похоже время подтверждения ограничено только временем до перезагрузки ноды, в спецификации время существования транзакции не нашел.
|
|
|
|
miko_style
|
|
August 10, 2016, 02:44:14 PM |
|
Да, если nonce в классик отстал от форка, тогда можно просто запулить нужное количество транзакций с нужными nonce, например самому себе либо на какой-то контракт, сумму(value) можно и 0 поставить. Аналогично можно сделать и наоборот - если nonce отстал от форка.
А есть какая-то возможность посмотреть текущие nonce кошелька? Или просто тупо посчитать на etherscan.io ? Но транзакций в мемпуле так не увидеть.
|
|
|
|
DoubleDot
|
|
August 10, 2016, 02:54:27 PM |
|
Как я понял, мемпул создаётся в ноде, и не выходит в сеть, пока нонс её не догонит, он обнуляется при закрытии/перезапуске ноды. Иначе заддосили бы сеть. Я сам пробовал задосить приват-тестнет - все geth ноды слетают, если наслатьь транзакций на 4 гига с высоким nonce одной нодой. Но это в тестнете. mainnet еще досить не пробовал, пока нет достаточного канала, чтобы куча транзакций аплоадить. Ты же, вроде постил ссылку на гитхаб с обсуждением темы too high nonce, инфа оттуда, но сейчас поиском не нашёл.
|
|
|
|
DoubleDot
|
|
August 10, 2016, 03:34:29 PM |
|
Yaremi, щас курс ткнулся в 02 сверху, кто наказан теперь?? ПС, если отскочит, сотру.
|
|
|
|
klbax381
|
|
August 10, 2016, 04:55:24 PM |
|
Any web-wallet can scam You at any time dont use them at all Мы уже много раз перетирали, что standalone-валлеты и web-валлеты примерно на одинаковом уровне по надежности/безопасности. Ну если вы качаете экзешник от Васи Пупкина - то где гарантии, что Вася не встроил туда отправлялку ваших паролей/ключей? Вся разница в том, что в одном случае код написан на си или на каком-нибудь питоне, а в другом случае - на жабьем скрипте. А каждый раз проверять тонны говнокода на гитхабе и самому потом собирать - это не комильфо. Разница в том, что софт качаешь 1 раз в месяц(или типа того), а webwallet каждый раз новый скрипт, чуть ли не при каждом клике Потом транзакции можно подписывать локально проверенным исходником(возможно даже своим, у меня например для битка своя прога для подписи транзакций) и потом отправлять в сеть хоть через онлайн-сервис. А есть какая-то возможность посмотреть текущие nonce кошелька? Или просто тупо посчитать на etherscan.io ? Но транзакций в мемпуле так не увидеть. на etherscam nonce последней отправлeнной транзакции +1 или в geth getTransactionCount("addr")
|
|
|
|
|