3 августа 2010, 3:49:49 PM   # 1
 
 
Сообщения: 141
Цитировать по имени
цитировать ответ
по умолчанию Re: Проверка подлинности, JSON RPC и Python

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


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

Кто-нибудь есть jsonrpc или нечто подобное, работающих с проверкой подлинности HTTP? Я пытался ударить мой Bitcoin сервер с питоном над JSON-RPC, и, конечно же, получать ошибки авторизации с нового сервера.

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


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


3 августа 2010, 5:20:44 PM   # 2
 
 
Сообщения: 141
Цитировать по имени
цитировать ответ
по умолчанию Re: Проверка подлинности, JSON RPC и Python

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





Обновление: Вот текущее состояние моего хака кода:

PostData = jsonrpc.dumps ({"метод": 'Getbalance', "Титулы": '', 'Идентификатор': 'jsonrpc'})

REQ = urllib2.Request (»http://127.0.0.1:8332», PostData)
      

base64string = base64.encodestring ( '% s:% s' % ( 'имя пользователя', 'rpcpassword')) [: - 1]
authheader =  "Основной% s." % base64string
req.add_header ("авторизация", Authheader)
      
обрабатывать = urllib2.urlopen (REQ)
      
печать handle.read ()


Если имя пользователя или пароль неправильно, то я получаю ошибку авторизации на сервере, как и ожидалось.

В противном случае, я ничего не получаю, просто закрытое соединение.

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

3 августа 2010, 5:42:51 PM   # 3
 
 
Сообщения: 1554
Цитировать по имени
цитировать ответ
по умолчанию Re: Проверка подлинности, JSON RPC и Python

Ты видел http://bitcointalk.org/index.php?topic=528.msg4923#msg4923 ? Это может быть проблемой ... Я где-то читал про питон URLLIB и bitcoing не подыгрывать, но завиток не было никаких проблем. Не удается найти эту нить, хотя.
nelisky сейчас офлайн Пожаловаться на nelisky   Ответить с цитированием Мультицитирование сообщения от nelisky Быстрый ответ на сообщение nelisky

3 августа 2010, 6:02:00 PM   # 4
 
 
Сообщения: 141
Цитировать по имени
цитировать ответ
по умолчанию Re: Проверка подлинности, JSON RPC и Python

Спасибо за указателем, интересно, но не то, что, кажется, влияет на меня.

Вот мой текущий код (работает на Google App Engine)

PostData = jsonrpc.dumps ({"метод": 'Getbalance', "Титулы": '', 'Идентификатор': 'jsonrpc'})
REQ = urllib2.Request (»http://127.0.0.1:8332», PostData)
UserPass = 'Пользователь: a'.encode (' base64' ) [: - 1]
authheader =  "Основные% s" % UserPass
req.add_header ("авторизация", Authheader)
обрабатывать = urllib2.urlopen (REQ)
json_response = handle.read ()
self.response.out.write (json_response)

Это дает HTTPError: Ошибка HTTP 500: Внутренняя ошибка сервера

от локального питона сценария GAE.


с помощью
   PostData = jsonrpc.dumps ([{"jsonrpc": "2,0","метод": 'Getbalance', "Титулы": '', '' ID: '1'}])

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

3 августа 2010, 6:09:08 PM   # 5
 
 
Сообщения: 1484
Цитировать по имени
цитировать ответ
по умолчанию Re: Проверка подлинности, JSON RPC и Python

Спасибо за указателем, интересно, но не то, что, кажется, влияет на меня.

Вот мой текущий код (работает на Google App Engine)

PostData = jsonrpc.dumps ({"метод": 'Getbalance', "Титулы": '', 'Идентификатор': 'jsonrpc'})
REQ = urllib2.Request (»http://127.0.0.1:8332», PostData)
UserPass = 'Пользователь: a'.encode (' base64' ) [: - 1]
authheader =  "Основные% s" % UserPass
req.add_header ("авторизация", Authheader)
обрабатывать = urllib2.urlopen (REQ)
json_response = handle.read ()
self.response.out.write (json_response)

Это дает HTTPError: Ошибка HTTP 500: Внутренняя ошибка сервера

Это проверенная ошибка в Bitcoin.

Bitcoin требует заголовка Content-Length, но несколько библиотек JSON-RPC не обеспечивают его. Когда заголовок Content-Length отсутствует, Bitcoin возвращает 500 Внутренняя ошибка сервера.
jgarzik сейчас офлайн Пожаловаться на jgarzik   Ответить с цитированием Мультицитирование сообщения от jgarzik Быстрый ответ на сообщение jgarzik

3 августа 2010, 6:43:29 PM   # 6
 
 
Сообщения: 141
Цитировать по имени
цитировать ответ
по умолчанию Re: Проверка подлинности, JSON RPC и Python

То, что вы говорите, правда, но urllib2 делает отправить Content Length.

В моем случае, у нас была проблема, которая Datatypes Гэвин помогла мне найти: Титулы нужно, чтобы получить список в Python, так

"Титулы" : []

будет работать.
"Титулы" : ""

не.

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

3 августа 2010, 6:56:44 PM   # 7
 
 
Сообщения: 1652
Цитировать по имени
цитировать ответ
по умолчанию Re: Проверка подлинности, JSON RPC и Python

Bitcoin требует заголовка Content-Length, но несколько библиотек JSON-RPC не обеспечивают его. Когда заголовок Content-Length отсутствует, Bitcoin возвращает 500 Внутренняя ошибка сервера.
Можете ли вы быть более конкретными, о которых библиотека JSON не обеспечивает Content-Length? Было бы хорошо, чтобы задокументировать.

Гэвин Андресен сейчас офлайн Пожаловаться на Гэвин Андресен   Ответить с цитированием Мультицитирование сообщения от Gavin Andresen Быстрый ответ на сообщение Гэвин Андресен

3 августа 2010, 6:58:58 PM   # 8
 
 
Сообщения: 1484
Цитировать по имени
цитировать ответ
по умолчанию Re: Проверка подлинности, JSON RPC и Python

Bitcoin требует заголовка Content-Length, но несколько библиотек JSON-RPC не обеспечивают его. Когда заголовок Content-Length отсутствует, Bitcoin возвращает 500 Внутренняя ошибка сервера.
Можете ли вы быть более конкретными, о которых библиотека JSON не обеспечивает Content-Length? Было бы хорошо, чтобы задокументировать.

Два ЛИЭСА JSON RPC, доступный на CPAN (Perl) и совместимый C Lib, что я написал локально, чтобы проверить поведение.
jgarzik сейчас офлайн Пожаловаться на jgarzik   Ответить с цитированием Мультицитирование сообщения от jgarzik Быстрый ответ на сообщение jgarzik

3 августа 2010, 7:56:32 PM   # 9
 
 
Сообщения: 132
Цитировать по имени
цитировать ответ
по умолчанию Re: Проверка подлинности, JSON RPC и Python

Другой вопрос, который я заметил с bitcoind в JSON-RPC, что по умолчанию нет пользователя, а функция РНР Еорепа () не пытается отправить информацию об аутентификации, если не был задан пользователь.

Например, этот URL не работает:
котировка
Но это делает:
котировка

Я должен был установить "rpcuser" в файле bitcoin.conf моего узла для того, чтобы получить PHP, чтобы играть хорошо.
aceat64 сейчас офлайн Пожаловаться на aceat64   Ответить с цитированием Мультицитирование сообщения от aceat64 Быстрый ответ на сообщение aceat64

3 августа 2010, 8:31:15 PM   # 10
 
 
Сообщения: 141
Цитировать по имени
цитировать ответ
по умолчанию Re: Проверка подлинности, JSON RPC и Python

Я столкнулся с этим, а также: нет никакой документации относительно того, что строка аутентификации должна быть принята в случае отсутствия пользователя.

Это, вероятно, лучше требовать rpcuser и rpcpassword в будущих версиях это мои два цента. Как правило, это то, что ожидается от HTTP Auth в любом случае.
Vess сейчас офлайн Пожаловаться на Vess   Ответить с цитированием Мультицитирование сообщения от Vess Быстрый ответ на сообщение Vess

3 августа 2010, 9:26:26 PM   # 11
 
 
Сообщения: 364
Цитировать по имени
цитировать ответ
по умолчанию Re: Проверка подлинности, JSON RPC и Python

Bitcoin требует заголовка Content-Length, но несколько библиотек JSON-RPC не обеспечивают его. Когда заголовок Content-Length отсутствует, Bitcoin возвращает 500 Внутренняя ошибка сервера.
Можете ли вы быть более конкретными, о которых библиотека JSON не обеспечивает Content-Length? Было бы хорошо, чтобы задокументировать.
Я думаю, мы должны стараться поддерживать тот случай, когда нет никакого параметра Content-Length. Я не хочу, чтобы сорвать и хотя заменить потоки, даже если он должен читать по одному символу за раз.

Edit: То есть, предполагая, что на самом деле какие-либо библиотеки, которые не поддерживают Content-Length.
Satoshi сейчас офлайн Пожаловаться на Satoshi   Ответить с цитированием Мультицитирование сообщения от Satoshi Быстрый ответ на сообщение Satoshi

3 августа 2010, 10:52:10 PM   # 12
 
 
Сообщения: 1652
Цитировать по имени
цитировать ответ
по умолчанию Re: Проверка подлинности, JSON RPC и Python

Два ЛИЭСА JSON RPC, доступный на CPAN (Perl) и совместимый C Lib, что я написал локально, чтобы проверить поведение.
модуль LWP в Perl определенно устанавливает заголовок Content-Length. Я бы удивился, если бы это не произошло, так как это требуется HTTP 1.0 и спецификации HTTP 1.1 говорит клиент «должен» установить его.

После некоторой борьбы я получил первый JSON :: библиотека RPC на CPAN для работы:
Код:
использовать JSON RPC :: :: Client;
Использование Data :: Dumper;
 
мой $ клиент = новый JSON :: RPC :: Client;

$ client->ua->учетные данные (
   'Локальный: 8332', 'jsonrpc', 'мой rpcusername' => «Мой rpcpassword» # Заменить реальный пользователь / проход
    );
мой @foo = $ client->ua->Учетные данные ( 'локальный: 8332', 'jsonrpc');
Распечатать "@foo \ п";

мой $ URI = 'HTTP: // локальный: 8332 /';
мой $ OBJ = {
    метод => 'получить данные',
    Титулы => [],
 };
 
мой $ Рез = $ client->звоните ($ Ури $ OBJ);
 
если ($ Рез) {
    если ($ res->is_error) {
        Распечатать "Ошибка : ", $ Res->сообщение об ошибке;
    }
    еще {
        печать Dumper ($ res->результат);
    }
}
еще {
    печать $ client->status_line;
}
Борьба садилась царство к «jsonrpc» (это суетливое об этом). Я документально подтвердить, что на вики.

Гэвин Андресен сейчас офлайн Пожаловаться на Гэвин Андресен   Ответить с цитированием Мультицитирование сообщения от Gavin Andresen Быстрый ответ на сообщение Гэвин Андресен

4 августа 2010, 4:24:16 AM   # 13
 
 
Сообщения: 1484
Цитировать по имени
цитировать ответ
по умолчанию Re: Проверка подлинности, JSON RPC и Python

Content-Length, безусловно, не отправляется на Fedora 12 и Fedora 13 будет расследовать дальше. Проверят RHEL / CentOS тоже.
jgarzik сейчас офлайн Пожаловаться на jgarzik   Ответить с цитированием Мультицитирование сообщения от jgarzik Быстрый ответ на сообщение jgarzik



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

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

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

3HmAQ9FkRFk6HZGuwExYxL62y7C1B9MwPW