Bitcoin Forum
May 09, 2024, 10:08:37 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: сколько нужно подтверждений транзакции, m  (Read 16066 times)
btcmasterZ (OP)
Full Member
***
Offline Offline

Activity: 210
Merit: 100



View Profile
April 19, 2016, 04:03:20 PM
 #1

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

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

просто видел умельцев, генерируют транзакции, а он не подтверждаются ни когда..
The forum was founded in 2009 by Satoshi and Sirius. It replaced a SourceForge forum.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
wonko86
Legendary
*
Offline Offline

Activity: 1624
Merit: 1024



View Profile
April 19, 2016, 10:10:01 PM
 #2

Quote
если одно подтверждение есть, то платеж ни куда не исчезнет?

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

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

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

З.Ы. почему тема в разделе "Кодеры"? Кодеры такие нубские вопросы не задают Grin
btcmasterZ (OP)
Full Member
***
Offline Offline

Activity: 210
Merit: 100



View Profile
April 20, 2016, 01:19:19 AM
 #3

Quote
если одно подтверждение есть, то платеж ни куда не исчезнет?

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

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

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

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

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

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

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

значит я так понял и 1 confirmation достаточно?
или что посоветуете
A-Bolt
Legendary
*
Offline Offline

Activity: 2315
Merit: 2316


View Profile
April 20, 2016, 09:37:58 PM
 #4

значит я так понял и 1 confirmation достаточно?
или что посоветуете

Классический Bitcoin-клиент будет отображать транзакцию как «неподтвержденную» пока не наберется 6 подтверждений (6 найденных блоков). Сайты или сервисы, которые принимают Bitcoin для оплаты своих товаров или услуг, могут ставить свои ограничения на количество блоков нужных для подтверждения транзакции. Цифра 6 была выбрана не случайно: она основывается на теории, что вероятность того, что злоумышленник сможет накопить более 10% от хешрейта сети для подделки транзакций, мала, и что незначительный риск (менее 0,1%) является приемлемым.
btcmasterZ (OP)
Full Member
***
Offline Offline

Activity: 210
Merit: 100



View Profile
April 21, 2016, 01:18:15 AM
 #5


Ясно, спасибо.

но вот как реализовать это..

ведь bitcoind вызывает walletnotify всего 2 раза..
т.е. можно узнать тоько одно подтверждение и все.
wonko86
Legendary
*
Offline Offline

Activity: 1624
Merit: 1024



View Profile
April 21, 2016, 06:25:10 PM
 #6

6 блоков подряд смог сгенерировать пул гильдия бтц с половиной вычислительной мощности сети.
1 подтверждения хватит.
amaclin
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
April 25, 2016, 06:04:04 AM
 #7

Quote
если одно подтверждение есть, то платеж ни куда не исчезнет?
Все правильно, никуда не исчезнет.
Неправильно. Зависит от степени децентрализованности сети.
При наличии в сети майнера (или сговора майнеров) с суммарным размером хэш-мощностей в 51% - может исчезнуть.
При определенных "деструктивных" действиях - тоже.
Поэтому большинство "серьезных" сайтов ждут от 3 до 6 подтверждений (напомню, от атаки-51 их никакое количество не спасет)
Какое количество подтверждений выбирать лично вам - это ваше дело.
Зависит от характера вашего бизнеса.
FutureBitcoin
Legendary
*
Offline Offline

Activity: 2674
Merit: 1138


View Profile
May 04, 2016, 09:33:23 AM
 #8

Quote
если одно подтверждение есть, то платеж ни куда не исчезнет?
Все правильно, никуда не исчезнет.
Неправильно. Зависит от степени децентрализованности сети.
При наличии в сети майнера (или сговора майнеров) с суммарным размером хэш-мощностей в 51% - может исчезнуть.
При определенных "деструктивных" действиях - тоже.
Поэтому большинство "серьезных" сайтов ждут от 3 до 6 подтверждений (напомню, от атаки-51 их никакое количество не спасет)
Какое количество подтверждений выбирать лично вам - это ваше дело.
Зависит от характера вашего бизнеса.
А некоторым и вообще не нужно ни одного подтверждения. Поставил комсу 20к сатох и играй сколько душе удобно. Другие позволяют манипулировать сатохами на их сайте, только вот вывод обратно при не менее 6 подтверждений на входящую от вас транзакцию. Вариантов поиграть масса.
informancer
Sr. Member
****
Offline Offline

Activity: 350
Merit: 252



View Profile
May 11, 2016, 11:34:17 AM
 #9

Неправильно. Зависит от степени децентрализованности сети.
При наличии в сети майнера (или сговора майнеров) с суммарным размером хэш-мощностей в 51% - может исчезнуть.
При определенных "деструктивных" действиях - тоже.
Поэтому большинство "серьезных" сайтов ждут от 3 до 6 подтверждений (напомню, от атаки-51 их никакое количество не спасет)

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

Целенаправленная атака неэффективна, но вот если отправитель вовремя заметил такую ситуацию, то может этим воспользоваться. Для умеренных сумм и частных платежей вполне достаточно одного подтверждения. А вот для сервисов: есть вероятность, что кто-нибудь умный может этим воспользоваться. 0 подтверждений же вообще ничего не гарантируют, и этого никогда не достаточно.
amaclin
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
May 11, 2016, 11:56:28 AM
 #10

И это неправильно.
А что неправильного-то? Я что-то не то сказал?

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

Activity: 2674
Merit: 1138


View Profile
May 11, 2016, 12:05:07 PM
 #11

И это неправильно.
А что неправильного-то? Я что-то не то сказал?

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

А как же в свое время идея по поводу сыграть с лакибит при его 20к комсы, когда сообществом решались вопросы за эраунд тэйбл и емкость мемпула доходила до 50 мегабайт?  Wink
bct2
Hero Member
*****
Offline Offline

Activity: 1050
Merit: 508


View Profile
May 11, 2016, 12:17:27 PM
 #12

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

Не исчезнет, если в сети не возникнет форк. Для крупных платежей считается надёжным 6 подтверждений. Для ОЧЕНЬ больших платежей рекомендуют 144 подтверждения, это примерно полсуток подождать придётся. Хотя в таких случаях, думаю, подождать будет не проблема.
amaclin
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
May 11, 2016, 12:18:02 PM
 #13

А как же в свое время идея по поводу сыграть с лакибит при его 20к комсы, когда
сообществом решались вопросы за эраунд тэйбл и емкость мемпула доходила до 50 мегабайт?  Wink
Там, по-моему, не 50, а 500 было, но это же были низкоприоритетные транзакции.
Да, когда сеть наводнена высокоприоритетными транзакциями, то можно попытаться и против лакибит играть.
Но это такой гемор... Я пробовал с помощью SIGOPS-атаки.
Получилось "тож-на-тож" - то есть условно говоря 0.5 btc я потратил на организацию атаки и 0.5 btc получился профит
от игры на рулетке.
amaclin
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
May 11, 2016, 12:22:59 PM
 #14

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

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

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

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

informancer
Sr. Member
****
Offline Offline

Activity: 350
Merit: 252



View Profile
May 11, 2016, 01:13:48 PM
Last edit: May 11, 2016, 01:25:25 PM by informancer
 #15

А что неправильного-то? Я что-то не то сказал?

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

Activity: 1260
Merit: 1019


View Profile
May 11, 2016, 01:51:47 PM
 #16

А что неправильного-то? Я что-то не то сказал?
Ты сказал что нужна атака 51%, но не только в этом случае такое возможно.
Я еще говорил про про "децентрализованность сети" и про "деструктивные действия"

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

Quote
А потом прочитал в новости про технический форк и про рекомендацию в 30 подтверждений.
30 подтверждений? А, ну это был сплит сети 4 июля прошлого года... Да, там бардак был знатный.
Терпите. И верьте, что на страже ваших капиталов стоит математика и криптография, а не китайцы Сунь Хуй Вчай и Ни Хуя Бля
informancer
Sr. Member
****
Offline Offline

Activity: 350
Merit: 252



View Profile
May 12, 2016, 12:55:31 PM
 #17

Quote
Допустим, если ты соединяешься только с узлами, которые сами
не связаны с остальной сетью.

Там сложно просто так подменить цепочку, даже если ограничить видимость. Потому-что нужно штамповать блоки с той же сложностью. И чтобы внезапно не возросло время между блоками нужно иметь мощность если не в 51% то близкую к нему. А если шли блоки со средним временем в 10 минут и потом пошли блоки раз в час, то тут уже должно быть подозрение что получаешь цепочку не ту. Но даже чтобы штамповать блоки раз в час, это нужно значительные мощности вывести из майнинга, и значит потерять на этом. А значит нужно предполагать что атака выгоднее, и имеет шансы на успех.
amaclin
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
May 12, 2016, 01:32:06 PM
 #18

Там сложно просто так подменить цепочку, даже если ограничить видимость.
Мы опять про разные вещи говорим.
Подменить - очень сложно. Но суть сибил-атаки несколько в другом.
Допустим, у вас сервер с казино крутится на "домашнем" компьютере.
Как известно, весь трафик идет через какого-то "аплинка", провайдера.
Так вот, этот провайдер-злоумышленник вполне может провести против вас сибил-атаку, тут даже DPI не понадобится - сервер
делает так, что ваш клиент "соединен" только с "его" нодами.
После чего вам злоумышленник посылает транзакцию-ставку и ждет от вас результат - выиграла ставка или нет.
Если ставка выиграла - то в сеть он посылает эту транзакцию-ставку (и транзакцию-выигрыш)
Если ставка проиграла - то в сеть можно ничего не посылать или послать дабл-спенд-транзакцию.

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

Давайте закругляться. Топик-стартер получил ответ на свой вопрос, а мы тут продолжаем махать кулаками.
btcmasterZ (OP)
Full Member
***
Offline Offline

Activity: 210
Merit: 100



View Profile
May 14, 2016, 07:06:15 AM
 #19

да я получил ответ..
всеравно было интересно почитать Smiley
Ukraine2020
Sr. Member
****
Offline Offline

Activity: 826
Merit: 284



View Profile
May 29, 2017, 03:13:31 PM
 #20

Quote
если одно подтверждение есть, то платеж ни куда не исчезнет?

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

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

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

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

Спасибо!
Мне в тему.
Никак до аэтернити ВТС не доходят...
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!