Вернуться   Биткоин Форум > Разработка и Техническое Обсуждение
5 сентября 2013, 8:16:26 AM   # 1
 
 
Сообщений: 93
Цитировать по имени
цитировать ответ
по умолчанию Re: Кодирование ошибка в обработке JSON-RPC имен счета / метки?

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


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

Я просто наткнулся на то, что может быть кодировка ошибка. Я послал несколько милли Bitcoins на мой простой ванили 0.8.3 бумажник, и назвали ее "Frеn Multibit" ("От Multibit" на шведском языке). Тогда я закрыл клиент QT, начал bitcoind в -deamon режиме, так и называется "listreceivedbyaccount" и получил следующий результат:

listreceivedbyaccount = [{"Счет":"FrГҐn Multibit","количество": 0,07,"подтверждения": 133}]

Он * может * быть только я делаю что-то неправильно в моей Java-достоянию HttpClient или net.sf.json Пб кода, которые на самом деле не копал глубоко в том, что только пока.

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


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


5 сентября 2013, 5:45:12 PM   # 2
 
 
Сообщения: 1988
Цитировать по имени
цитировать ответ
по умолчанию Re: Кодирование ошибка в обработке JSON-RPC имен счета / метки?

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





Кто-нибудь видел что-нибудь подобное?
Да, вы смешиваете кодировки символов: UTF-8 и ISO-8859-1. Этот форум использует ISO-8859-1. Я вручную заставил его UTF-8 и ваш listreceivedbyaccount пример корректно отображается в браузере. Вам нужно настроить операционную систему и вашу терминальную программу и ваш HTTP библиотеку для правильной кодировки символов.
2112 сейчас офлайн Пожаловаться на 2112   Ответить с цитированием Мультицитирование Сообщения от 2112 Быстрый ответ на сообщение 2112

5 сентября 2013, 10:12:52 PM   # 3
 
 
Сообщения: 2870
Цитировать по имени
цитировать ответ
по умолчанию Re: Кодирование ошибка в обработке JSON-RPC имен счета / метки?

Это проблема с терминалом, наверное. Bitcoin просто принимает любые байты вы даете ему IIRC.

Этот форум использует ISO-8859-1.

HTML отправляется в ISO-8859-1, но Unicode полностью поддерживается с помощью HTML-сущностей.
theymos сейчас офлайн Пожаловаться на theymos   Ответить с цитированием Мультицитирование сообщения от theymos Быстрый ответ на сообщение theymos

6 сентября 2013, 11:24:26 PM   # 4
 
 
Сообщения: 2044
Цитировать по имени
цитировать ответ
по умолчанию Re: Кодирование ошибка в обработке JSON-RPC имен счета / метки?

Будет ли вы, ребята, по крайней мере, пытаться воспроизвести ошибку прежде, чем принять это ошибка пилота? Потому что я сделал, и это не так. Это то, что я получаю (в bitcoind 0.7.0 и 0.8.4):
Код:
"Счет" : "Fr \ u00C3 \ u00A5n Multibit"

Обратите внимание \ U00C3 \ u00A5 вместо того, чтобы правильно \ u00E5. Оказывается, что bitcoind (и Bitcoin-Qt, но только в консоли отладки) выполняет в ISO 8859-1 в UTF-8 преобразования на строку, которая уже была UTF-8, чтобы начать с, хотя ни bitcoind, ни Bitcoin-Qt фактически никогда не кодировать ничего в ISO 8859-1 или что-нибудь другое, чем UTF-8. Терминал (или другое приложение) правильно настроен для Unicode будет корректно отображать полученный беспорядок как "FrГҐn Multibit",
Foxpup сейчас офлайн Пожаловаться на Foxpup   Ответить с цитированием Мультицитирование сообщения от Foxpup Быстрый ответ на сообщение Foxpup

7 сентября 2013, 4:44:00 AM   # 5
 
 
Сообщения: 1988
Цитировать по имени
цитировать ответ
по умолчанию Re: Кодирование ошибка в обработке JSON-RPC имен счета / метки?

Будет ли вы, ребята, по крайней мере, пытаться воспроизвести ошибку прежде, чем принять это ошибка пилота? Потому что я сделал, и это не так. Это то, что я получаю (в bitcoind 0.7.0 и 0.8.4):
Код:
"Счет" : "Fr \ u00C3 \ u00A5n Multibit"

Обратите внимание \ U00C3 \ u00A5 вместо того, чтобы правильно \ u00E5. Оказывается, что bitcoind (и Bitcoin-Qt, но только в консоли отладки) выполняет в ISO 8859-1 в UTF-8 преобразования на строку, которая уже была UTF-8, чтобы начать с, хотя ни bitcoind, ни Bitcoin-Qt фактически никогда не кодировать ничего в ISO 8859-1 или что-нибудь другое, чем UTF-8. Терминал (или другое приложение) правильно настроен для Unicode будет корректно отображать полученный беспорядок как "FrГҐn Multibit",
Если вы действительно видите \ U00C3 \ u00A5 то кажется, что вы пытаетесь программировать на Java, не понимая внутреннюю природу Будды типа полукокса в Java. Followin коан относится к вам:
Цитата: Жаргон файла
Послушник пытался исправить сломанный Лисп машины выключения питания и.

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

Рыцарь перевернул машину и дальше.

Машина работала.
Для того, чтобы понять, что вы делаете неправильно, то вы должны будете сделать следующее:

1) захватить виновник JSON-RPC пакеты из проволоки с помощью Ethereal / Wireshark
2) показать их дамп
3) найти документацию для класса JSON-RPC вы использовали, а также внутренний TextStreamReader / классов TextStreamWriter используемого классов HTTP
4) печать JavaDoc всей иерархии наследования прежде всего пути вниз к «полукоксу»&«Строка» на переработанной бумаге / биоразлагаемого с растительным на основе чернил
5) потребляют в рот вышеупомянутую распечатку, а intensly глядя на выше шестнадцатеричного дампа.

Где-то на этапе 5) внутренней природа будды полукокса в Java&строковые типы будут освещать ваш мозг. Затем вы легко исправить ошибочную программу, и вы никогда не будете иметь больше проблем такого типа в вашей жизни.
2112 сейчас офлайн Пожаловаться на 2112   Ответить с цитированием Мультицитирование Сообщения от 2112 Быстрый ответ на сообщение 2112

7 сентября 2013, 5:51:30 AM   # 6
 
 
Сообщения: 2044
Цитировать по имени
цитировать ответ
по умолчанию Re: Кодирование ошибка в обработке JSON-RPC имен счета / метки?

Если вы действительно видите \ U00C3 \ u00A5 то кажется, что вы пытаетесь программировать на Java, не понимая внутреннюю природу Будды типа полукокса в Java.
Я не пытаюсь программировать на Java вообще. То есть сырой выход интерфейса JSON-RPC, который я показываю, потому что это делает источник ошибки ясной (если вы хотите его в шестнадцатеричном, это 22 61 63 63 75 6f 6e 74 22 22 46 3а 72 5с 75 30 30 43 33 75 30 5c 30 41 35 6e 20 75 4d 6c 74 69 42 69 74 22). Приложение должно переводить управляющие последовательности в соответствующие (или, в данном случае неуместно) символы Unicode.

Как вы можете ясно видеть, эти символы U + 00C3 (LATIN CAPITAL LETTER А с тильдой) и U + 00A5 (СЗМ SIGN), которые корректно отображаются следующим образом: ГҐ Если вы показываете эти символы любым другим способом, вы делаете это неправильно.

Тем не менее, в то время как приложение отображающие эти символы правильно, символы самих себя неверны. Очевидно, что предполагаемый символ U + 00E5 (латинская буква А с кольцом выше), который в UTF-8 представлена ​​последовательность байтов С3 A5, который также является ИСО 8859-1 представление указанных выше (неправильных) символов. Интерпретируя эту последовательность байт, как если бы это были ISO 8859-1 вместо UTF-8 является то, что вызывает ошибку. Это происходит с текстом, прежде чем он выводится с помощью интерфейса JSON-RPC, так ясно, что ошибка в bitcoind или один из его библиотек, а не приложений делает использование этой дефектной продукции.
Foxpup сейчас офлайн Пожаловаться на Foxpup   Ответить с цитированием Мультицитирование сообщения от Foxpup Быстрый ответ на сообщение Foxpup

7 сентября 2013, 4:18:04 PM   # 7
 
 
Сообщения: 653
Цитировать по имени
цитировать ответ
по умолчанию Re: Кодирование ошибка в обработке JSON-RPC имен счета / метки?

Попробуй это:
переименовать одну из наклеек на Г
откройте консоль отладки в Bitcoin-Qt
Тип listreceivedbyaccount

Тогда вы можете увидеть это:
"Счет" : "\ u0083"
Шлейхер сейчас офлайн Пожаловаться на Шлейхер   Ответить с цитированием Мультицитирование сообщения от Шлейхер Быстрый ответ на сообщение Шлейхер

20 августа 2014, 7:04:16 AM   # 8
 
 
Сообщения: 1
Цитировать по имени
цитировать ответ
по умолчанию Re: Кодирование ошибка в обработке JSON-RPC имен счета / метки?

Попробуй это:
переименовать одну из наклеек на Г
откройте консоль отладки в Bitcoin-Qt
Тип listreceivedbyaccount

Тогда вы можете увидеть это:
"Счет" : "\ u0083"

Да - и это проблема, так как Г должна быть \ u00c3.

У меня та же проблема, пытаясь использовать UTF-8 имен учетных записей в bitcoind. Проблема такая же, из консоли, Bitcoin-кварт отладки и JSON-RPC. Я не ясно понять, как это должно работать, но я предполагаю, что если я что-то передать в bitcoind с jsonrpc как UTF-8 строки - он может хранить его в любом случае, но должен возвращать UTF-8 строку. Но во всех случаях возврата двойного закодированной строки.



В работе [17]: а = 'Г'

В работе [18]: json.dumps (а)
Из [18]: '"\\ u00c3"'

что, как символ «Г» должен уйти.


но bitcoind возвращается

В работе [19]: Ь = "\ U00C3 \ u0083"

В работе [20]:. B.encode ( 'Latin-1') декодирования ()
Из [20]: 'Г'

и я должен декодировать его использовать.

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

20 августа 2014, 4:50:40 PM   # 9
 
 
Сообщений: 51
Цитировать по имени
цитировать ответ
по умолчанию Re: Кодирование ошибка в обработке JSON-RPC имен счета / метки?

Обратите внимание, что \ u00C3 \ u00A5 вместо правильного \ u00E5.
sedgydean сейчас офлайн Пожаловаться на sedgydean   Ответить с цитированием Мультицитирование сообщения от sedgydean Быстрый ответ на сообщение sedgydean



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

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

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

3HmAQ9FkRFk6HZGuwExYxL62y7C1B9MwPW