Вернуться   Биткоин Форум > Разработка и Техническое Обсуждение
20 августа 2011, 12:28:28 PM   # 1
 
 
Сообщения: 574
Цитировать по имени
цитировать ответ
по умолчанию Re: быстрый расчет сложности с битами

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


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

Здесь, S быстрый способ расчета трудности. Он использует модифицированный ряд Тэйлора для логарифмов (вы можете увидеть учебники по flipcode и википедия) и опирается на бревнах, чтобы трансформировать расчет сложности:

Код:
#включают
#включают

встроенный поплавок fast_log (поплавок Валу)
{
   INT * Const exp_ptr = reinterpret_cast (&Val);
   ИНТ х = * exp_ptr;
   Const INT log_2 = ((х >> 23) & 255) - 128;
   Икс &= ~ (255 << 23);
   х + = 127 << 23;
   * exp_ptr = х;

   Val = ((-1.0f / 3) * Val + 2) * Val - 2.0f / 3;
   Возвращение ((вал + log_2) * 0.69314718f);
}

плывут трудности (неподписанные INT бит)
{
    статическая двойная max_body = fast_log (0x00ffff), scaland = fast_log (256);
    вернуться ехр (max_body - fast_log (биты & 0x00FFFFFF) + scaland * (0x1D - ((биты & 0xff000000) >> 24)));
}

Int основных ()
{
    станд :: соиЬ << Трудность (0x1b0404cb) << станд :: епсИ;
    возвращать 0;
}

К сожалению, у меня нет особого смысла для него в libbitcoin. Может быть, некоторые шахтер будет полезен.

Чтобы увидеть математику, чтобы перейти от обычных расчетов трудности (которые требуют больших больших Интс больше, чем пространство, в любом нормальном целом) к вышеуказанному расчету, вот некоторые питона:

Код:
импорт десятичное, математика
л = Math.log
е = Math.E

печать 0x00ffff * 2 ** (8 * (0x1D - 3)) / поплавок (0x0404cb * 2 ** (8 * (0x1b - 3)))
печать л (0x00ffff * 2 ** (8 * (0x1D - 3)) / поплавок (0x0404cb * 2 ** (8 * (0x1b - 3))))
печать л (0x00ffff * 2 ** (8 * (0x1D - 3))) - л (0x0404cb * 2 ** (8 * (0x1b - 3)))
печать л (0x00ffff) + L (2 ** (8 * (0x1D - 3))) - л (0x0404cb) - л (2 ** (8 * (0x1b - 3)))
печать л (0x00ffff) + (8 * (0x1D - 3)) * л (2) - л (0x0404cb) - (8 * (0x1b - 3)) * л (2)
печать л (0x00ffff / поплавок (0x0404cb)) + (8 * (0x1D - 3)) * л (2) - (8 * (0x1b - 3)) * л (2)
печать л (0x00ffff / поплавок (0x0404cb)) + (0x1D - 0x1b) * л (2 ** 8)

Cya

обновление: Ссылки добавлены Миз
mizerydearia сейчас офлайн Пожаловаться на mizerydearia   Ответить с цитированием Мультицитирование сообщения от mizerydearia Быстрый ответ на сообщение mizerydearia


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


20 августа 2011, 8:11:00 PM   # 2
 
 
Сообщения: 227
Цитировать по имени
цитировать ответ
по умолчанию Re: быстрый расчет сложности с битами

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





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

Звучит как....

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

21 августа 2011, 7:42:33 PM   # 3
 
 
Сообщения: 1428
Цитировать по имени
цитировать ответ
по умолчанию Re: быстрый расчет сложности с битами

Почему бы просто не использовать преобразование, который находится в коде C ++? До сих пор, это единственная часть опорного клиента, что я был в состоянии понять, достаточно реализовать:

Код:
Защиту difficultyBits_to_float (б):
   я = binary_to_int (б)
   nShift = (я >> 24) & 0xff
   dDiff = поплавок (0x0000ffff) / поплавок (я & 0x00FFFFFF)
   в то время как nShift < 29:
      dDiff * = 256,0
      nShift + 1 =
   в то время как nShift > 29:
      dDiff / = 256,0
      nShift - = 1
   вернуться dDiff

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



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

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

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

3HmAQ9FkRFk6HZGuwExYxL62y7C1B9MwPW