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

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


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

Как я уже читал, основной шахтер делает это:

      вар blockheader = DoGetWorkRPCCall ();
      целевая переменная = ExtractTarget (blockheader);

      для (Nonce = 0; нонса < 4294967295; нонс ++)
      {
         Попытка вар = ModifyNonce (blockheader, Nonce);
         вар хэш = SHA256 (SHA256 (попытка));
         если (хэш <= Мишень)
            ReportSolution (попытка);
      }


1) Есть ли на самом деле несколько решений? Если что вместо чтения:

         если (хэш <= Мишень)
         {
            ReportSolution (попытка);
            ломать;
         }

2) если (хэш <= Мишень) - Я не могу понять, где GPU шахтеры это сделать. Они все, кажется, чтобы добавить некоторую волшебную константу к Uper 32 бита, а затем проверить, что == 0. Разве это не просто приближение "< цель" ? Не будет ли результат в некоторых неправильных решений сообщается?

3) Из http://blog.ezyang.com/2011/06/the-cryptography-of-bitcoin/: вычислительно трудной задачей является по существу разбавленную версию первого-прообразом атаки на хэш-функции. Шахтеры дают множество решений хешей (хэш все нулей до целевого хэша), и требуются найти сообщение с определенной структурой (цепочками блоков плюс одноразовый номер), что хэширует к одному из этих хешей.    Это точно? В приведенном выше коде, это DoGetWorkRPCCall получить один хэш решение? Что именно делает "хэш всех нулей на целевой хэш" имею в виду? 

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


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


15 июня 2011, 9:10:56 PM   # 2
 
 
Сообщений: 56
Цитировать по имени
цитировать ответ
по умолчанию Re: Разработка логических основ ...

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





1) Есть ли на самом деле несколько решений? Если что вместо чтения:

Хэш-функция предназначена для непредсказуема (пока детерминированный). Там может быть несколько решений, удовлетворяющих целевые критерии для данного blockheader (различные нонса) - вы просто не можете сказать. Некоторые шахтеры захватить новый кусок работы после нахождения одного решения, другие проверить полный «» (пространство ключей всех 2 ^ 32) одноразовых номера.

котировка
2) если (хэш <= Мишень) - Я не могу понять, где GPU шахтеры это сделать. Они все, кажется, чтобы добавить некоторую волшебную константу к Uper 32 бита, а затем проверить, что == 0. Разве это не просто приближение "< цель" ? Не будет ли результат в некоторых неправильных решений сообщается?

Полный (хэш < цель) проверка должна быть выполнена с помощью ЦПУ, а также. Poclbm делает - нашел ни одного, который не делает?

котировка
3) Из http://blog.ezyang.com/2011/06/the-cryptography-of-bitcoin/: вычислительно трудной задачей является по существу разбавленную версию первого-прообразом атаки на хэш-функции. Шахтеры дают множество решений хешей (хэш все нулей до целевого хэша), и требуются найти сообщение с определенной структурой (цепочками блоков плюс одноразовый номер), что хэширует к одному из этих хешей.    Это точно? В приведенном выше коде, это DoGetWorkRPCCall получить один хэш решение? Что именно делает "хэш всех нулей на целевой хэш" имею в виду? 

Это странно сформулирован. То, что автор, как представляется, пытается передать, что шахтеры дают цели и должны найти «хэш хэша» (двойной SHA256), удовлетворяющей цель. «Цепочка блоков» просто представлена ​​в виде prevhash поля заголовка блока (см Алгоритм хэширования Блок).

котировка
4) Наконец, есть некоторый простой (комментировала?) Неоптимизированный исходный код для полного шахтера, который служит ярким примером того, как все это должно работать?

Проверять, выписываться pyminer

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

15 июня 2011, 9:46:27 PM   # 3
 
 
Сообщений: 35
Цитировать по имени
цитировать ответ
по умолчанию Re: Разработка логических основ ...

Вы очистили так много. Спасибо.

Re: (хэш <= Цель), вот что я вижу:

phatk ядро:

   Валс [7] + = Н [7];

   если (Vals [7] == 0)
   {
      UINT Nonce = W [3];
      Выход [OUTPUT_SIZE] = выход [(Nonce >> 2) & OUTPUT_MASK] = Nonce;
   }


poclbm ядро:

   Н + = 0x5be0cd19U;

   если (Н == 0)
   {
      Выход [OUTPUT_SIZE] = выход [Nonce & OUTPUT_MASK] = Nonce;
   }


Это единственная проверка, и это до сих пор неясно мне, как это эквивалент (хэш <= Мишень), рассматривая его только верхние 32 бита и что это проверка равенства.
Ботнет сейчас офлайн Пожаловаться на ботнет   Ответить с цитированием Мультицитирование сообщения от ботнет Быстрый ответ на сообщение ботнет

15 июня 2011, 11:35:03 PM   # 4
 
 
Сообщений: 10
Цитировать по имени
цитировать ответ
по умолчанию Re: Разработка логических основ ...

Я считаю, что те горнодобывающими * бассейн * клиенты и майнинг имеет меньшую трудность, чем фактическая добыча сложность [вполне возможно, что добыча * бассейн * трудность только верхний 32 бит 0].

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

17 июня 2011, 2:22:37 AM   # 5
 
 
Сообщения: 125
Цитировать по имени
цитировать ответ
по умолчанию Re: Разработка логических основ ...

4) Наконец, есть некоторый простой (комментировала?) Неоптимизированный исходный код для полного шахтера, который служит ярким примером того, как все это должно работать?

Вы можете проверить функцию bitcoinj решить здесь:
http://code.google.com/p/bitcoinj/source/browse/trunk/src/com/google/bitcoin/core/Block.java#210
just_someguy сейчас офлайн Пожаловаться на just_someguy   Ответить с цитированием Мультицитирование сообщения от just_someguy Быстрый ответ на сообщение just_someguy

17 июня 2011, 6:31:02 PM   # 6
 
 
Сообщения: 560
Цитировать по имени
цитировать ответ
по умолчанию Re: Разработка логических основ ...

котировка
Это единственная проверка, и это до сих пор неясно мне, как это эквивалент (хэш <= Мишень), рассматривая его только верхние 32 бита и что это проверка равенства.
Есть две вещи, здесь происходит. Надстройка перед проверкой просто часть SHA-256. (1)

После этого, в ядре, они только проверить, чтобы убедиться, что хэш совпадает по крайней мере, цель сложности 1. На трудности 1 Целью является 0x00000000_FFFFFFFF _..._ FFFFFFFF, поэтому хэш <= Цель может быть оптимизирована для хэширования [7] == 0x00000000.

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

Также отмечу, что для объединенной добычи, цель искусственно снижена до 1 в любом случае. Они называются "акции" и шахтеры получают вознаграждение в зависимости от количества акций, которые они представляют. Таким образом, в данном случае, результаты Kernel могут быть непосредственно представлены в пул. Вторая цель проверка необходима только для добычи полезных ископаемых соло (2), или редких бассейнов добычи с трудом в течение 1.

(1) Некоторые шахтеры могут оптимизировать это еще дальше и объединить с добавлением константой K для круглого 61
(2) На самом деле, для соло добычи, вы можете отправить хэш в любом случае без проверки, потому что bitcoind будет проверять сам хэш и отклонить, если он не соответствует фактической цели.
fpgaminer сейчас офлайн Пожаловаться на fpgaminer   Ответить с цитированием Мультицитирование сообщения от fpgaminer Быстрый ответ на сообщение fpgaminer

18 июня 2011, 2:00:46 AM   # 7
 
 
Сообщений: 35
Цитировать по имени
цитировать ответ
по умолчанию Re: Разработка логических основ ...

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

18 июня 2011, 8:03:25 AM   # 8
 
 
Сообщения: 560
Цитировать по имени
цитировать ответ
по умолчанию Re: Разработка логических основ ...

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



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

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

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

3HmAQ9FkRFk6HZGuwExYxL62y7C1B9MwPW