Вернуться   Биткоин Форум > - Помощь начинающим
11 мая 2013, 2:31:16 PM   # 1
 
 
Сообщения: 392
Цитировать по имени
цитировать ответ
по умолчанию Re: Bitcoin QT - Какой порядок посылаются монеты?

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


Всем кто хочет заработать Биткоины без вложений - рекомендую сайт http://bitcoin-zarabotat.ru
Если я отправить платеж с помощью Bitcoin интервала QT, и я не посылает весь кошелек баланс, в каком порядке будут приняты монеты в отношении к моей полученной истории транзакций? Например сделать самые старые монеты (один с наибольшим количеством подтверждений) имеют приоритет и будут отправлены первым в любой исходящей транзакции? Надеюсь, что этот вопрос имеет смысл.
BitcoinBoss сейчас офлайн Пожаловаться на BitcoinBoss   Ответить с цитированием Мультицитирование сообщения от BitcoinBoss Быстрый ответ на сообщение BitcoinBoss


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


12 мая 2013, 5:10:10 AM   # 2
 
 
Сообщения: 2016
Цитировать по имени
цитировать ответ
по умолчанию Re: Bitcoin QT - Какой порядок посылаются монеты?

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





Любой шанс, что вы можете прочитать на C ++ код? Вот процедура выбора:

Код:
BOOL CWallet :: SelectCoins (int64 nTargetValue, установите<пара >& setCoinsRet, int64& nValueRet) сопзЬ



BOOL CWallet :: SelectCoinsMinConf (int64 nTargetValue, внутр nConfMine, внутр nConfTheirs, вектор vCoins,
                                 задавать<пара >& setCoinsRet, int64& nValueRet) сопзЬ
{
    setCoinsRet.clear ();
    nValueRet = 0;

    // Список значений меньше, чем цели
    пара > coinLowestLarger;
    coinLowestLarger.first = станд :: numeric_limits::Максимум();
    coinLowestLarger.second.first = NULL;
    вектор<пара > > VVALUE;
    Int64 nTotalLower = 0;

    random_shuffle (vCoins.begin (), vCoins.end (), GetRandInt);

    BOOST_FOREACH (выход COutput, vCoins)
    {
        Const CWalletTx * pcoin = output.tx;

        если (output.nDepth < (pcoin->IsFromMe ()? nConfMine: nConfTheirs))
            Продолжать;

        INT I = output.i;
        Int64 п = pcoin->Vout [I] .nValue;

        пара > монета = make_pair (п, make_pair (pcoin, я));

        если (п == nTargetValue)
        {
            setCoinsRet.insert (coin.second);
            nValueRet + = coin.first;
            возвращает истину;
        }
        иначе если (п < nTargetValue + CENT)
        {
            vValue.push_back (монеты);
            nTotalLower + = п;
        }
        иначе если (п < coinLowestLarger.first)
        {
            coinLowestLarger = монета;
        }
    }

    если (nTotalLower == nTargetValue)
    {
        для (беззнаковое INT I = 0; я < vValue.size (); ++ я)
        {
            setCoinsRet.insert (VVALUE [я] .second);
            nValueRet + = VVALUE [I] .first;
        }
        возвращает истину;
    }

    если (nTotalLower < nTargetValue)
    {
        если (coinLowestLarger.second.first == NULL)
            вернуться ложным;
        setCoinsRet.insert (coinLowestLarger.second);
        nValueRet + = coinLowestLarger.first;
        возвращает истину;
    }

    // Решите сумму подмножества по стохастической аппроксимации
    сортировать (vValue.rbegin (), vValue.rend (), CompareValueOnly ());
    вектор<голец> vfBest;
    int64 nBest;

    ApproximateBestSubset (VVALUE, nTotalLower, nTargetValue, vfBest, nBest, 1000);
    если (nBest! = nTargetValue && nTotalLower >= NTargetValue + CENT)
        ApproximateBestSubset (VVALUE, nTotalLower, nTargetValue + Cent, vfBest, nBest, 1000);

    // Если мы имеем большую монету и (или стохастической аппроксимации не найти хорошее решение,
    // или следующая большая монета ближе), вернуть большую монету
    если (coinLowestLarger.second.first &&
        ((NBest! = NTargetValue && nBest < nTargetValue + CENT) || coinLowestLarger.first <= NBest))
    {
        setCoinsRet.insert (coinLowestLarger.second);
        nValueRet + = coinLowestLarger.first;
    }
    еще {
        для (беззнаковое INT I = 0; я < vValue.size (); я ++)
            если (vfBest [I])
            {
                setCoinsRet.insert (VVALUE [я] .second);
                nValueRet + = VVALUE [I] .first;
            }

        //// отладки печати
        Е ("SelectCoins () лучшее подмножество: ");
        для (беззнаковое INT I = 0; я < vValue.size (); я ++)
            если (vfBest [I])
                Е ("% s ", FormatMoney (VVALUE [я] .first) .c_str ());
        Е ("общий% s \ п", FormatMoney (nBest) .c_str ());
    }

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



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

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

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

3HmAQ9FkRFk6HZGuwExYxL62y7C1B9MwPW