Вернуться   Биткоин Форум > - Помощь начинающим
1 мая 2013, 3:50:32 AM   # 1
 
 
Сообщения: 419
Цитировать по имени
цитировать ответ
по умолчанию Re: sendmany против sendtoaddress. Нужен совет от Bitcoin разработчиков.

Взлом Биткоин адресов.
500 Биткоинов взломаны в "мозговом кошельке" с паролем "bitcoin is awesome"
Адрес кошелька: 14NWDXkQwcGN1Pd9fboL8npVynD5SfyJAE
Приватный ключ: 5J64pq77XjeacCezwmAr2V1s7snvvJkuAz8sENxw7xCkikceV6e
подробнее...


Всем кто хочет заработать Биткоины без вложений - рекомендую сайт http://bitcoin-zarabotat.ru
Привет, я хотел бы, чтобы лучше понять различие между использованием sendtoaddress и sendmany, как с точки зрения отправителя и получателя, а также, в частности, в отношении сборов и время подтверждения.

Задний план:

Я работаю на приложение, которое будет представляемого биткойны спорадически. Я уверен, что он будет начать с малым объемом - возможно, 1 отправить минуту или даже в час, но в конечном итоге может достичь большого объема. Я пытаюсь убедиться, что он может обрабатывать большой объем транзакций, скажем, 2 отправляет / сек, в среднем, или даже больше.

Важно, что средства присылают сразу. Ну, одна минута задержки может быть нормально для пакетной множественным посылает вместе, но 25 минут, как и многие майнинг делают не очень идеальным вообще с точки зрения моих клиентов. А также, что будет очень большая сделкой, если мы говорим 2+ посылает / сек, которые были порционными вместе в течение 25 минут. (Я думаю, что можно было бы рассмотреть, посылая после N посылает запрашивается вместо ожидания фиксированного периода времени, а затем, что оптимальное значение N?)

Моя первоначальная (наивная?) Реализация (непроверенная, до сих пор) была просто иметь очереди исходящих запросов посыла, которые я обрабатываю сначала старый, и отправить с помощью sendtoaddress (). В конце концов, обрабатывается, мой код спит 1/4 вторым и снова проверяет очередь. Это концептуально очень просто и красиво.

Читая документы для sendtoaddress () я наткнулся на sendmany () и гугл для него много, искал этот форум, и т.д. Я не нашел никакой конкретики о том, когда использовать его вместо sendtoaddress (). У меня есть смутное представление, что это должно помочь сократить некоторые сборы, если несколько выходов объединены вместе в одной транзакции, но без каких-либо особенностей. Например, я спрашиваю:

  * Существуют ли какие-либо руководящие принципы для того, когда sendmany дешевле или быстрее, чем sendtoaddress ()?
  * И это может быть вычислен?
  * Есть ли такая вещь, как слишком много выходов в одной sendmany сделки?
  * Есть ли оптимальное количество выходов?
  * Есть ли какой-то другой способ, чтобы определить, "оптимальный" время отправки, или который посылает группу вместе?
  * Как можно вычислить оптимальную плату за использование как с sendmany () и sendtoaddress ()?
 
Я признателен за любые и все советы по этим темам.


PS: Еще одна вещь, которую я заметил, что там, кажется, не быть любой API в bitcoind для запроса для отправленных платежей по адресу получателя, например: listtransactionsbyaddress (адрес, категория = отправить) Я хотел бы сделать это в качестве проверки вменяемости, чтобы убедиться, Я не посылать несколько раз же порядка, например, если откат происходит в моей БД после того, как я отправил платеж, но, прежде чем он был записан в БД. Я был в состоянии сделать хак призывающую listtransactions ( «*», 1000) за прошедший 1000, а перебором, но это очень запутано. Я думаю, что вместо этого я, вероятно, держать местный логфайл из посылает вне БДА, что я могу проверить.







btc4ever сейчас офлайн Пожаловаться на btc4ever   Ответить с цитированием Мультицитирование сообщения от btc4ever Быстрый ответ на сообщение btc4ever


Как заработать Биткоины?
Без вложений. Не майнинг.


1 мая 2013, 6:15:13 PM   # 2
 
 
Сообщения: 419
Цитировать по имени
цитировать ответ
по умолчанию Re: sendmany против sendtoaddress. Нужен совет от Bitcoin разработчиков.

Получил 1806 Биткоинов
Реальная история.





кто угодно?

Может быть, кто-то, что не новичок может сжалиться и довести этот вопрос до сведения разработчика?
btc4ever сейчас офлайн Пожаловаться на btc4ever   Ответить с цитированием Мультицитирование сообщения от btc4ever Быстрый ответ на сообщение btc4ever

1 мая 2013, 6:26:25 PM   # 3
 
 
Сообщений: 15
Цитировать по имени
цитировать ответ
по умолчанию Re: sendmany против sendtoaddress. Нужен совет от Bitcoin разработчиков.

Я не уверен, что ваши основные вопросы, но в ответ на ваш PS: Каждый раз, когда вы используете getnewaddress immeadiately использовать setaccount создать учетную запись с тем же именем, что и адрес, который содержит только этот адрес. Затем вы можете использовать listtransactions и sendfrom и указать учетную запись / адрес.

надеюсь, это поможет
kungfoo сейчас офлайн Пожаловаться на kungfoo   Ответить с цитированием Мультицитирование сообщения от kungfoo Быстрый ответ на сообщение kungfoo

1 мая 2013, 6:34:08 PM   # 4
 
 
Сообщения: 2016
Цитировать по имени
цитировать ответ
по умолчанию Re: sendmany против sendtoaddress. Нужен совет от Bitcoin разработчиков.

  * Есть ли такая вещь, как слишком много выходов в одной sendmany сделки?
  * Есть ли оптимальное количество выходов?

Да, но довольно большое число. Это будет зависеть немного о том, сколько входов используются в вашей сделки, но есть максимальный размер сделки. Входы имеют тенденцию быть приблизительно 180 байт, выходы, как правило, пчелы примерно 40 байт. Есть некоторые дополнительные байты для накладных расходов по сделке (TransactionID, input_qty, output_qty и т.д.). Безопасное предположение было бы 50 байт накладных расходов. Если вы держите свой размер сделки ниже 10 килобайта, вы, вероятно, снизить операционные издержки. Любая сделка больше, чем понесет "за килобайт" плата.
DannyHamilton сейчас офлайн Пожаловаться на DannyHamilton   Ответить с цитированием Мультицитирование сообщения от DannyHamilton Быстрый ответ на сообщение DannyHamilton

1 мая 2013, 7:11:22 PM   # 5
 
 
Сообщения: 419
Цитировать по имени
цитировать ответ
по умолчанию Re: sendmany против sendtoaddress. Нужен совет от Bitcoin разработчиков.

Хорошая информация Danny, спасибо. Последующий на вопрос тогда будет: как я могу знать, сколько входов есть? Я знаю, количество выходов, но не bitcoind фигуры всех входов внутри?

  * Есть ли такая вещь, как слишком много выходов в одной sendmany сделки?
  * Есть ли оптимальное количество выходов?

Да, но довольно большое число. Это будет зависеть немного о том, сколько входов используются в вашей сделки, но есть максимальный размер сделки. Входы имеют тенденцию быть приблизительно 180 байт, выходы, как правило, пчелы примерно 40 байт. Есть некоторые дополнительные байты для накладных расходов по сделке (TransactionID, input_qty, output_qty и т.д.). Безопасное предположение было бы 50 байт накладных расходов. Если вы держите свой размер сделки ниже 10 килобайта, вы, вероятно, снизить операционные издержки. Любая сделка больше, чем понесет "за килобайт" плата.

btc4ever сейчас офлайн Пожаловаться на btc4ever   Ответить с цитированием Мультицитирование сообщения от btc4ever Быстрый ответ на сообщение btc4ever

1 мая 2013, 7:23:43 PM   # 6
 
 
Сообщения: 419
Цитировать по имени
цитировать ответ
по умолчанию Re: sendmany против sendtoaddress. Нужен совет от Bitcoin разработчиков.

хмм, не уверен, что я понимаю.

Я хотел бы использовать getnewaddress () при создании локального адреса для получения. То, что я хочу сделать, хотя это операции запросов, которые я послал на 3-й адрес партии, например:

котировка
sendtoaddress ( 'ABCD', 100);

... позже ...

транс = listtransactionsbyaddress ( 'ABCD', 'отправить');

... проверить, если какие-либо возвращенные транзакции соответствуют текущей сумме отправки ...

Поэтому я не верю, что getnewaddress () решает эту проблему.

То, что я действительно хотел бы сделать, это записать payment_id используемой системы баз данных в поле комментария при вызове sendtoaddress (), а затем он может быть использован, чтобы соответствовать платежи, даже если такое же количество было отправлено несколько раз по тому же адресу. Я не знаю, если это возможно или нет.


Я не уверен, что ваши основные вопросы, но в ответ на ваш PS: Каждый раз, когда вы используете getnewaddress immeadiately использовать setaccount создать учетную запись с тем же именем, что и адрес, который содержит только этот адрес. Затем вы можете использовать listtransactions и sendfrom и указать учетную запись / адрес.

надеюсь, это поможет
btc4ever сейчас офлайн Пожаловаться на btc4ever   Ответить с цитированием Мультицитирование сообщения от btc4ever Быстрый ответ на сообщение btc4ever

1 мая 2013, 7:32:57 PM   # 7
 
 
Сообщения: 2016
Цитировать по имени
цитировать ответ
по умолчанию Re: sendmany против sendtoaddress. Нужен совет от Bitcoin разработчиков.

Хорошая информация Danny, спасибо. Последующий на вопрос тогда будет: как я могу знать, сколько входов есть? Я знаю, количество выходов, но не bitcoind фигуры всех входов внутри?

  * Есть ли такая вещь, как слишком много выходов в одной sendmany сделки?
  * Есть ли оптимальное количество выходов?

Да, но довольно большое число. Это будет зависеть немного о том, сколько входов используются в вашей сделки, но есть максимальный размер сделки. Входы имеют тенденцию быть приблизительно 180 байт, выходы, как правило, пчелы примерно 40 байт. Есть некоторые дополнительные байты для накладных расходов по сделке (TransactionID, input_qty, output_qty и т.д.). Безопасное предположение было бы 50 байт накладных расходов. Если вы держите свой размер сделки ниже 10 килобайта, вы, вероятно, снизить операционные издержки. Любая сделка больше, чем понесет "за килобайт" плата.


В зависимости от того, насколько сложны ваши потребности, то в конечном итоге найти, что вам нужно больше контроля над вещами, чем инструменты, которые вы используете предоставить. Вы можете использовать listunspent, чтобы получить список неизрасходованных выходов и построить свой собственный сырец транзакцию с использованием createrawtransaction, выбирая, какой из этих выходов, которые вы хотите использовать в качестве входных данных. Это даст вам полный контроль над платой и размером сделки, а также.

Сколько входов там будет будет зависеть многое о том, как финансируется бумажник, который вы проводите с. Если вы посылаете одну большую сделку значение для кошелька, и сохранить этот баланс проводить до тех пор, пока практически нет, то вы всегда будете иметь только один вход. Если у вас есть пользователи постоянно посылая меньшие транзакции в бумажник, который вы рециркуляция для создания исходящих транзакций, то это будет трудно предсказать размер сделки, если вы не создаете необработанные транзакции.
DannyHamilton сейчас офлайн Пожаловаться на DannyHamilton   Ответить с цитированием Мультицитирование сообщения от DannyHamilton Быстрый ответ на сообщение DannyHamilton

1 мая 2013, 8:05:42 PM   # 8
 
 
Сообщения: 419
Цитировать по имени
цитировать ответ
по умолчанию Re: sendmany против sendtoaddress. Нужен совет от Bitcoin разработчиков.

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

Мне нравится идея createrawtransaction (). Чем меньше черная магия, тем лучше, насколько я заинтересован.

Можете ли вы указать мне к любым примерам кода для использования createrawtransaction ()?



В зависимости от того, насколько сложны ваши потребности, то в конечном итоге найти, что вам нужно больше контроля над вещами, чем инструменты, которые вы используете предоставить. Вы можете использовать listunspent, чтобы получить список неизрасходованных выходов и построить свой собственный сырец транзакцию с использованием createrawtransaction, выбирая, какой из этих выходов, которые вы хотите использовать в качестве входных данных. Это даст вам полный контроль над платой и размером сделки, а также.

Сколько входов там будет будет зависеть многое о том, как финансируется бумажник, который вы проводите с. Если вы посылаете одну большую сделку значение для кошелька, и сохранить этот баланс проводить до тех пор, пока практически нет, то вы всегда будете иметь только один вход. Если у вас есть пользователи постоянно посылая меньшие транзакции в бумажник, который вы рециркуляция для создания исходящих транзакций, то это будет трудно предсказать размер сделки, если вы не создаете необработанные транзакции.
btc4ever сейчас офлайн Пожаловаться на btc4ever   Ответить с цитированием Мультицитирование сообщения от btc4ever Быстрый ответ на сообщение btc4ever

1 мая 2013, 8:16:54 PM   # 9
 
 
Сообщения: 2016
Цитировать по имени
цитировать ответ
по умолчанию Re: sendmany против sendtoaddress. Нужен совет от Bitcoin разработчиков.

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

Мне нравится идея createrawtransaction (). Чем меньше черная магия, тем лучше, насколько я заинтересован.

Можете ли вы указать мне к любым примерам кода для использования createrawtransaction ()?



В зависимости от того, насколько сложны ваши потребности, то в конечном итоге найти, что вам нужно больше контроля над вещами, чем инструменты, которые вы используете предоставить. Вы можете использовать listunspent, чтобы получить список неизрасходованных выходов и построить свой собственный сырец транзакцию с использованием createrawtransaction, выбирая, какой из этих выходов, которые вы хотите использовать в качестве входных данных. Это даст вам полный контроль над платой и размером сделки, а также.

Сколько входов там будет будет зависеть многое о том, как финансируется бумажник, который вы проводите с. Если вы посылаете одну большую сделку значение для кошелька, и сохранить этот баланс проводить до тех пор, пока практически нет, то вы всегда будете иметь только один вход. Если у вас есть пользователи постоянно посылая меньшие транзакции в бумажник, который вы рециркуляция для создания исходящих транзакций, то это будет трудно предсказать размер сделки, если вы не создаете необработанные транзакции.

У меня нет каких-либо примеров кода доступны в данный момент. Надеюсь, кто-то остановится с некоторыми.

Предупреждает, при использовании createrawtransaction, очень легко забыть отправить избыточное значение обратно в бумажник с "изменение" вывод. Несоблюдение этого правила может привести к ненамеренно платить очень счастливый шахтер (или бассейн) очень большую плату. Некоторые опытные и знающие разработчики здесь, которые знали, что именно они делали, сделали эту самую ошибку. Вы, вероятно, следует попробовать свой код на testnet, и, возможно, кто-то другой осведомленный обзор его для вас, чтобы убедиться, что вы не случайно сделали что-то непреднамеренной, прежде чем пытаться запустить его в сети Bitcoin.
DannyHamilton сейчас офлайн Пожаловаться на DannyHamilton   Ответить с цитированием Мультицитирование сообщения от DannyHamilton Быстрый ответ на сообщение DannyHamilton

1 мая 2013, 8:37:20 PM   # 10
 
 
Сообщения: 419
Цитировать по имени
цитировать ответ
по умолчанию Re: sendmany против sendtoaddress. Нужен совет от Bitcoin разработчиков.

хороший совет, спасибо. да, я тестирую все очень тщательно testnet и модульное тестирование рамок перед обработкой каких-либо реальные сделок.
btc4ever сейчас офлайн Пожаловаться на btc4ever   Ответить с цитированием Мультицитирование сообщения от btc4ever Быстрый ответ на сообщение btc4ever



Как заработать Биткоины?

Bitcoin Wallet * Portefeuille Bitcoin * Monedero Bitcoin * Carteira Bitcoin * Portafoglio Bitcoin * Bitcoin Cüzdan * 比特币钱包

bitcoin-zarabotat.ru
Почта для связи: bitcoin-zarabotat.ru@yandex.ru

3HmAQ9FkRFk6HZGuwExYxL62y7C1B9MwPW