Author

Topic: сколько нужно подтверждений транзакции, &#109 (Read 16092 times)

sr. member
Activity: 826
Merit: 284
Quote
если одно подтверждение есть, то платеж ни куда не исчезнет?

Все правильно, никуда не исчезнет.

Quote
сколько нужно подтверждений транзакции, что бы платеж считался полученным?

У каждого сервиса свои правила, но почти всегда 3-ох подтверждений хватит.

З.Ы. почему тема в разделе "Кодеры"? Кодеры такие нубские вопросы не задают Grin

Спасибо!
Мне в тему.
Никак до аэтернити ВТС не доходят...
full member
Activity: 210
Merit: 100
да я получил ответ..
всеравно было интересно почитать Smiley
legendary
Activity: 1260
Merit: 1019
Там сложно просто так подменить цепочку, даже если ограничить видимость.
Мы опять про разные вещи говорим.
Подменить - очень сложно. Но суть сибил-атаки несколько в другом.
Допустим, у вас сервер с казино крутится на "домашнем" компьютере.
Как известно, весь трафик идет через какого-то "аплинка", провайдера.
Так вот, этот провайдер-злоумышленник вполне может провести против вас сибил-атаку, тут даже DPI не понадобится - сервер
делает так, что ваш клиент "соединен" только с "его" нодами.
После чего вам злоумышленник посылает транзакцию-ставку и ждет от вас результат - выиграла ставка или нет.
Если ставка выиграла - то в сеть он посылает эту транзакцию-ставку (и транзакцию-выигрыш)
Если ставка проиграла - то в сеть можно ничего не посылать или послать дабл-спенд-транзакцию.

В целом - не так уж сложно. Тут спасут вас резервные каналы доступа в интернет, то есть иметь доступ через несколько аплинков.

Давайте закругляться. Топик-стартер получил ответ на свой вопрос, а мы тут продолжаем махать кулаками.
sr. member
Activity: 350
Merit: 252
Quote
Допустим, если ты соединяешься только с узлами, которые сами
не связаны с остальной сетью.

Там сложно просто так подменить цепочку, даже если ограничить видимость. Потому-что нужно штамповать блоки с той же сложностью. И чтобы внезапно не возросло время между блоками нужно иметь мощность если не в 51% то близкую к нему. А если шли блоки со средним временем в 10 минут и потом пошли блоки раз в час, то тут уже должно быть подозрение что получаешь цепочку не ту. Но даже чтобы штамповать блоки раз в час, это нужно значительные мощности вывести из майнинга, и значит потерять на этом. А значит нужно предполагать что атака выгоднее, и имеет шансы на успех.
legendary
Activity: 1260
Merit: 1019
А что неправильного-то? Я что-то не то сказал?
Ты сказал что нужна атака 51%, но не только в этом случае такое возможно.
Я еще говорил про про "децентрализованность сети" и про "деструктивные действия"

Quote
А ещё сейчас следует добавить, что редко бывают и технические форки сети и у меня даже получилось один раз напороться.
Когда кошелек не видел подтверждений, а blockchain.info видел, в итоге я повторно отправил транзакцию и на этот раз увидел
подтверждения (хотя я дурак, что им доверился не разобравшись в ситуации).
Это частный случай сибил-атаки (так, кажется называется). Допустим, если ты соединяешься только с узлами, которые сами
не связаны с остальной сетью. Случайно или специально. Между прочим, я сам так иногда делаю - вместо того чтобы запускать
клиента со стандартными параметрами, я указываю коннектиться только к одной ноде. Если та нода сама не синхронизирована или
не получает блоки или по каким-то причинам не пересылает мне блоки - то и у меня синхронизация не пройдет.

Quote
А потом прочитал в новости про технический форк и про рекомендацию в 30 подтверждений.
30 подтверждений? А, ну это был сплит сети 4 июля прошлого года... Да, там бардак был знатный.
Терпите. И верьте, что на страже ваших капиталов стоит математика и криптография, а не китайцы Сунь Хуй Вчай и Ни Хуя Бля
sr. member
Activity: 350
Merit: 252
А что неправильного-то? Я что-то не то сказал?

Ты сказал что нужна атака 51%, но не только в этом случае такое возможно. А ещё сейчас следует добавить, что редко бывают и технические форки сети и у меня даже получилось один раз напороться. Когда кошелек не видел подтверждений, а blockchain.info видел, в итоге я повторно отправил транзакцию и на этот раз увидел подтверждения (хотя я дурак, что им доверился не разобравшись в ситуации). А потом прочитал в новости про технический форк и про рекомендацию в 30 подтверждений.
legendary
Activity: 1260
Merit: 1019
если одно подтверждение есть, то платеж ни куда не исчезнет?

Не исчезнет, если в сети не возникнет форк.
Бред. Выше уже описали сценарий. Или вы орфан-блок форком называете? Мммм... Ну да, это форк цепи...
Но все-таки обычно словом "форк" называют вилку, у которой зубцы хоть как-то растут.
Если у вилки один зубец сразу заканчивается - это не зубец, а заусеница какая-то.  Grin

Quote
Для крупных платежей считается надёжным 6 подтверждений.

Quote
Для ОЧЕНЬ больших платежей рекомендуют 144 подтверждения, это примерно полсуток подождать придётся.
Хотя в таких случаях, думаю, подождать будет не проблема.
Кто это такое рекомендует? Ссылку в студию!
Во-первых, 144 подтвежрдения - это сутки, а не полсуток
Во-вторых, я хочу посмотреть на человека, который при продаже своего дома скажет покупателю
"ну а теперь подождём денёк, а то мало ли..."

legendary
Activity: 1260
Merit: 1019
А как же в свое время идея по поводу сыграть с лакибит при его 20к комсы, когда
сообществом решались вопросы за эраунд тэйбл и емкость мемпула доходила до 50 мегабайт?  Wink
Там, по-моему, не 50, а 500 было, но это же были низкоприоритетные транзакции.
Да, когда сеть наводнена высокоприоритетными транзакциями, то можно попытаться и против лакибит играть.
Но это такой гемор... Я пробовал с помощью SIGOPS-атаки.
Получилось "тож-на-тож" - то есть условно говоря 0.5 btc я потратил на организацию атаки и 0.5 btc получился профит
от игры на рулетке.
hero member
Activity: 1050
Merit: 508
если одно подтверждение есть, то платеж ни куда не исчезнет?

Не исчезнет, если в сети не возникнет форк. Для крупных платежей считается надёжным 6 подтверждений. Для ОЧЕНЬ больших платежей рекомендуют 144 подтверждения, это примерно полсуток подождать придётся. Хотя в таких случаях, думаю, подождать будет не проблема.
legendary
Activity: 2674
Merit: 1138
И это неправильно.
А что неправильного-то? Я что-то не то сказал?

Quote
Одно подтверждение может исчезнуть, если транзакция попала в orphaned блок,
а другие майнеры проигнорировали. Например, такой сценарий – транзакция отправляется с
маленькой комиссией и попадает в orphaned блок.
Клиент увидел именно оrphaned блок и засчитал подтверждение.
Да, это реальный сценарий,
хотя и достаточно редкий. Теоретически, это можно при некотором усердии даже попытаться
промоделировать. Известно, допустим, что пул BitFury принимает в блок транзакции с комиссией
2 сатоши за байт, а остальные пулы - от 5 сатоши и выше.
Посылаем транзакцию с комиссией 3 сатоши. Её в блок включит только BitFury и только тогда когда
более приоритетных транзакций не будет. Если вероятность орфанов в сети порядка 1% - то именно
с такой вероятностью блок заорфанится. Но ведь надо чтобы и получатель средств получил бы
именно орфан-блок, а не его конкурента из основной цепи, и мы тоже получили бы именно блок
от BitFury и знали бы момент, когда надо посылать дабл-спенд-транзакция.
В общем, при некотором усердии за месяц или за год при нужном программном обеспечении можно
такое проделать. Но смысл?
Я же так и сказал - уважающие себя сервисы ждут 3-6 подтверждений.

А как же в свое время идея по поводу сыграть с лакибит при его 20к комсы, когда сообществом решались вопросы за эраунд тэйбл и емкость мемпула доходила до 50 мегабайт?  Wink
legendary
Activity: 1260
Merit: 1019
И это неправильно.
А что неправильного-то? Я что-то не то сказал?

Quote
Одно подтверждение может исчезнуть, если транзакция попала в orphaned блок,
а другие майнеры проигнорировали. Например, такой сценарий – транзакция отправляется с
маленькой комиссией и попадает в orphaned блок.
Клиент увидел именно оrphaned блок и засчитал подтверждение.
Да, это реальный сценарий,
хотя и достаточно редкий. Теоретически, это можно при некотором усердии даже попытаться
промоделировать. Известно, допустим, что пул BitFury принимает в блок транзакции с комиссией
2 сатоши за байт, а остальные пулы - от 5 сатоши и выше.
Посылаем транзакцию с комиссией 3 сатоши. Её в блок включит только BitFury и только тогда когда
более приоритетных транзакций не будет. Если вероятность орфанов в сети порядка 1% - то именно
с такой вероятностью блок заорфанится. Но ведь надо чтобы и получатель средств получил бы
именно орфан-блок, а не его конкурента из основной цепи, и мы тоже получили бы именно блок
от BitFury и знали бы момент, когда надо посылать дабл-спенд-транзакция.
В общем, при некотором усердии за месяц или за год при нужном программном обеспечении можно
такое проделать. Но смысл?
Я же так и сказал - уважающие себя сервисы ждут 3-6 подтверждений.
sr. member
Activity: 350
Merit: 252
Неправильно. Зависит от степени децентрализованности сети.
При наличии в сети майнера (или сговора майнеров) с суммарным размером хэш-мощностей в 51% - может исчезнуть.
При определенных "деструктивных" действиях - тоже.
Поэтому большинство "серьезных" сайтов ждут от 3 до 6 подтверждений (напомню, от атаки-51 их никакое количество не спасет)

И это неправильно. Одно подтверждение может исчезнуть, если транзакция попала в orphaned блок, а другие майнеры проигнорировали. Например, такой сценарий – транзакция отправляется с маленькой комиссией и попадает в orphaned блок. Клиент увидел именно оrphaned блок и засчитал подтверждение. В основную цепочку она не вошла, другие майнеры не спешат принимать комиссию с маленькой транзакцией. Отправитель отправляет транзакцию повторно, на другой адрес с высокой коммиссией. Теперь майнеры засчитывают эту транзакцию, а первая теперь является невалидной и принята теперь вообще никогда не будет.

Целенаправленная атака неэффективна, но вот если отправитель вовремя заметил такую ситуацию, то может этим воспользоваться. Для умеренных сумм и частных платежей вполне достаточно одного подтверждения. А вот для сервисов: есть вероятность, что кто-нибудь умный может этим воспользоваться. 0 подтверждений же вообще ничего не гарантируют, и этого никогда не достаточно.
legendary
Activity: 2674
Merit: 1138
Quote
если одно подтверждение есть, то платеж ни куда не исчезнет?
Все правильно, никуда не исчезнет.
Неправильно. Зависит от степени децентрализованности сети.
При наличии в сети майнера (или сговора майнеров) с суммарным размером хэш-мощностей в 51% - может исчезнуть.
При определенных "деструктивных" действиях - тоже.
Поэтому большинство "серьезных" сайтов ждут от 3 до 6 подтверждений (напомню, от атаки-51 их никакое количество не спасет)
Какое количество подтверждений выбирать лично вам - это ваше дело.
Зависит от характера вашего бизнеса.
А некоторым и вообще не нужно ни одного подтверждения. Поставил комсу 20к сатох и играй сколько душе удобно. Другие позволяют манипулировать сатохами на их сайте, только вот вывод обратно при не менее 6 подтверждений на входящую от вас транзакцию. Вариантов поиграть масса.
legendary
Activity: 1260
Merit: 1019
Quote
если одно подтверждение есть, то платеж ни куда не исчезнет?
Все правильно, никуда не исчезнет.
Неправильно. Зависит от степени децентрализованности сети.
При наличии в сети майнера (или сговора майнеров) с суммарным размером хэш-мощностей в 51% - может исчезнуть.
При определенных "деструктивных" действиях - тоже.
Поэтому большинство "серьезных" сайтов ждут от 3 до 6 подтверждений (напомню, от атаки-51 их никакое количество не спасет)
Какое количество подтверждений выбирать лично вам - это ваше дело.
Зависит от характера вашего бизнеса.
legendary
Activity: 1624
Merit: 1024
full member
Activity: 210
Merit: 100
full member
Activity: 210
Merit: 100
Quote
если одно подтверждение есть, то платеж ни куда не исчезнет?

Все правильно, никуда не исчезнет.

Quote
сколько нужно подтверждений транзакции, что бы платеж считался полученным?

У каждого сервиса свои правила, но почти всегда 3-ох подтверждений хватит.

З.Ы. почему тема в разделе "Кодеры"? Кодеры такие нубские вопросы не задают Grin

потому что использую json-prc bitcoin core.

и как подтверждение приема платежа можно использовать wallet notify.
но этот тригер вызывается при 1 confirmation.

а мне надо допустим 3 подтверждения и как сделать не знаю.

значит я так понял и 1 confirmation достаточно?
или что посоветуете
legendary
Activity: 1624
Merit: 1024
Quote
если одно подтверждение есть, то платеж ни куда не исчезнет?

Все правильно, никуда не исчезнет.

Quote
сколько нужно подтверждений транзакции, что бы платеж считался полученным?

У каждого сервиса свои правила, но почти всегда 3-ох подтверждений хватит.

З.Ы. почему тема в разделе "Кодеры"? Кодеры такие нубские вопросы не задают Grin
full member
Activity: 210
Merit: 100
если одно подтверждение есть, то платеж ни куда не исчезнет?

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

просто видел умельцев, генерируют транзакции, а он не подтверждаются ни когда..
Jump to: