Вернуться   Биткоин Форум > - Объявления (Altcoins)
7 января 2014, 11:49:03 PM   # 1
 
 
Сообщения: 291
Цитировать по имени
цитировать ответ
по умолчанию Re: [ANN] Nxt Баунти для работы кода JavaScript, который подписывает и проверяет подписи

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


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

объявление Bounty

100'000 NXT будет оплачиваться за работу JavaScript код, который подписывает и проверяет подпись с помощью NRS Algo.

- Лицензия должна позволять использовать код в любом приложении
- Вход / проверить скорость должна быть не ниже, чем 100 подписей в секунду на 1 ГГц CPU с (1 ядро)
- Весь код должен находиться в одном не-запутанном хорошо отформатированный .js файл
- Значения ввода / вывода должны быть строками, как "8302504e4e57c6c65335289879c6915a273d3aae7bd086058e403fcd2bc18341"

Щедрость действует до 20 января 2014 12:00:00 UTC. Полный код должен быть опубликован в этой теме.
Jaguar0625 сейчас офлайн Пожаловаться на Jaguar0625   Ответить с цитированием Мультицитирование сообщения от Jaguar0625 Быстрый ответ на сообщение Jaguar0625


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


7 января 2014, 11:55:20 PM   # 2
 
 
Сообщения: 291
Цитировать по имени
цитировать ответ
по умолчанию Re: [ANN] Nxt Баунти для работы кода JavaScript, который подписывает и проверяет подписи

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





Я буду работать над превращением сегодня Curve25519.
Я также создал репозиторий, где я буду толкающими изменения, если кто-либо хочет, чтобы помочь: https://github.com/Jaguar0625/JavaScriptNrs.

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

8 января 2014, 12:43:07 AM   # 3
 
 
Сообщения: 186
Цитировать по имени
цитировать ответ
по умолчанию Re: [ANN] Nxt Баунти для работы кода JavaScript, который подписывает и проверяет подписи

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

8 января 2014, 2:09:04 AM   # 4
 
 
Сообщения: 291
Цитировать по имени
цитировать ответ
по умолчанию Re: [ANN] Nxt Баунти для работы кода JavaScript, который подписывает и проверяет подписи

Я также начал работать!

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

8 января 2014, 3:43:02 AM   # 5
 
 
Сообщения: 291
Цитировать по имени
цитировать ответ
по умолчанию Re: [ANN] Nxt Баунти для работы кода JavaScript, который подписывает и проверяет подписи

Просто чтобы дать обновление, я пошел через класс Curve25519 и превратил его в действительный JavaScript. Я попытался свести к минимуму изменения (так как Java и JavaScript оба на основе C, есть много общности между их синтаксисом). Таким образом, на данный момент, JavaScript не является оптимальным, но это должно быть довольно легко сравнить с источником. Я думаю, что это важно, чтобы сохранить код похожи, пока мы не избавимся от всех ошибок, и тогда мы сможем оптимизировать его, если это необходимо.

Я думаю, что следующий шаг должен был бы придумать небольшой тест бегун, чтобы мы могли получить некоторую уверенность в том, что порт работает. Моя идея была бы некоторые основные тестирования черного ящика, где мы фиксируем кучу входов и выходов из исправной (Java) реализации, а затем воспроизводить их против реализации JavaScript. Любые различия будут точно ошибки в порту.

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

8 января 2014, 7:05:49 AM   # 6
 
 
Сообщения: 681
Цитировать по имени
цитировать ответ
по умолчанию Re: [ANN] Nxt Баунти для работы кода JavaScript, который подписывает и проверяет подписи

Это было быстро Jaguar. Но скажите мне: с какой тип данных вы заменить длинный тип Java?
BloodyRookie сейчас офлайн Пожаловаться на BloodyRookie   Ответить с цитированием Мультицитирование сообщения от BloodyRookie Быстрый ответ на сообщение BloodyRookie

8 января 2014, 7:33:47 AM   # 7
 
 
Сообщения: 602
Цитировать по имени
цитировать ответ
по умолчанию Re: [ANN] Nxt Баунти для работы кода JavaScript, который подписывает и проверяет подписи

Удар

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

8 января 2014, 10:17:01 AM   # 8
 
 
Сообщений: 35
Цитировать по имени
цитировать ответ
по умолчанию Re: [ANN] Nxt Баунти для работы кода JavaScript, который подписывает и проверяет подписи

Jaguar0625
Я побежал js.core & java.core для одного и того же хэш-ключа - результат отличается.
Вы можете использовать Java ScriptEngine для смешивания Java & Javascript код для тестирования.

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

8 января 2014, 1:56:56 PM   # 9
 
 
Сообщения: 291
Цитировать по имени
цитировать ответ
по умолчанию Re: [ANN] Nxt Баунти для работы кода JavaScript, который подписывает и проверяет подписи

Это было быстро Jaguar. Но скажите мне: с какой тип данных вы заменить длинный тип Java?

Я все еще думаю, что через. Прямо сейчас, я нашел две возможности.
- http://jsfromhell.com/classes/bignumber - хорошо, потому что это позволит нам избавиться от long10 вещи.
- http://docs.closure-library.googlecode.com/git/class_goog_math_Long.html - позволит код остаться больше похож на оригинальный код

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

Jaguar0625
Я побежал js.core & java.core для одного и того же хэш-ключа - результат отличается.
Вы можете использовать Java ScriptEngine для смешивания Java & Javascript код для тестирования.



Благодарю. Я подозреваю, что есть еще несколько ошибок, которые должны быть исследованы.

Для того, чтобы быть немного более прозрачным с моим процессом, когда я делаю массовое преобразование кода с одного языка на другой, я хотел бы сделать это в нескольких этапах:
(1) Есть ли насыпной преобразование так, что код не имеет каких-либо ошибок компилятора в новом языке
(1a) Построить тестовую (она должна почти наверняка обречены на неудачу в этой точке)
(2) сделать более значительные изменения (например, преобразовать JavaScript, чтобы использовать корректно работать с 64-битными значениями) поэтапно (так, чтобы каждые из основных изменения представляет собой отдельный чек-ин)
(3) Исправлена ​​ошибка / источник различий и целевой код много
(4) В случае необходимости повышения производительности рефакторинга.

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

8 января 2014, 2:19:52 PM   # 10
 
 
Сообщения: 681
Цитировать по имени
цитировать ответ
по умолчанию Re: [ANN] Nxt Баунти для работы кода JavaScript, который подписывает и проверяет подписи

Это было быстро Jaguar. Но скажите мне: с какой тип данных вы заменить длинный тип Java?

Я все еще думаю, что через. Прямо сейчас, я нашел две возможности.
- http://jsfromhell.com/classes/bignumber - хорошо, потому что это позволит нам избавиться от long10 вещи.
- http://docs.closure-library.googlecode.com/git/class_goog_math_Long.html - позволит код остаться больше похож на оригинальный код

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

Ну я экспериментировал со второй возможностью, но Long10 строить из Лонг-очень медленно. Функция Recip принимает 10ms для вычисления.
Делали ли вы какие-то тесты синхронизации?
BloodyRookie сейчас офлайн Пожаловаться на BloodyRookie   Ответить с цитированием Мультицитирование сообщения от BloodyRookie Быстрый ответ на сообщение BloodyRookie

8 января 2014, 5:51:58 PM   # 11
 
 
Сообщений: 98
Цитировать по имени
цитировать ответ
по умолчанию Re: [ANN] Nxt Баунти для работы кода JavaScript, который подписывает и проверяет подписи

Можете ли вы дать несколько входные и ожидаемые результаты?

Проверка:
открытый ключ = "7c3ff12215636a7b246dea25d5e446a91fa59a9150c6ed50d8126ee86a648b68"
сообщение = "0000a9d63800a0057c3ff12215636a7b246dea25d5e446a91fa59a9150c6ed50d8126ee86a648b6 87e2fad81dbf18f2da0860100640000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000"
подпись = "4f0626ccd4edebb17e9d06e928b5b4e944aa7ef88a111081919794a3e265c206f9d9b0ce42a8d2e 7f6d902a172159bcd39dcaab8468373258fccea9e5d2ed319"
Выход = истина

(Данные из HTTP: // локальный: 7874 / NXT ТипЗапрос = getTransaction&транзакции = 14039483471941095190 а также HTTP: // локальный: 7874 / NXT ТипЗапрос = getTransactionBytes&транзакции = 14039483471941095190)

Подписание:

Аналогично, но принимать значение от сделки, подписанной Уры счета. Для этого требуется, чтобы показать секретную фразу.
<Класс IMG = "inlineimg отчет спрайт-ш" SRC = "/ сор-содержание / темы / стена / bit_styles / clear.gif" альт = "Пожаловаться на ^ [GS] ^" граница = "0" название = "Пожаловаться на ^ [GS] ^ ">   Ответить с цитированием <Класс IMG = "спрайт-ш quickreply" SRC = "/ сор-содержание / темы / стена / bit_styles / clear.gif" альт = "Быстрый ответ на сообщение ^ [GS] ^" граница = "0" название = "Быстрый ответ на сообщение ^ [GS] ^ ">

9 января 2014, 1:08:16 AM   # 12
 
 
Сообщения: 291
Цитировать по имени
цитировать ответ
по умолчанию Re: [ANN] Nxt Баунти для работы кода JavaScript, который подписывает и проверяет подписи

Делали ли вы какие-то тесты синхронизации?

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

9 января 2014, 2:15:35 AM   # 13
 
 
Сообщения: 291
Цитировать по имени
цитировать ответ
по умолчанию Re: [ANN] Nxt Баунти для работы кода JavaScript, который подписывает и проверяет подписи

Делали ли вы какие-то тесты синхронизации?

У меня пока нет, но, может быть, я должен сделать это первым. Хорошая идея.

Я совершил небольшой тест бегун сегодня, что делает 10000 добавляет, умножает, вычитает и делит с BigNumber, Лонга, и Int (в качестве основы). Эти результаты, которые я вижу на моем Dev машины:
(Вы можете запустить его с этой командной строкой: узел longperftest.js)
488.002ms BigNumber
5.058ms Длинные
0.330ms Int

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

Я также посмотрел на реализацию goog.math.Long и это кажется вполне оптимизировано. Это хранит высокий и низкий 32 бит в двух 32-битных чисел, а затем использует целочисленную математику непосредственно. Я не вижу большой потенциал для оптимизации. К сожалению, JavaScript естественным образом поддерживает только 64-битные числа с плавающей точкой, так что 64-разрядное целое число математика никогда не будет столь же быстро, как и языки, которые поддерживают 64-разрядные лонги изначально.

Что касается медлительности сабельные, я сомнительно, что мы сможем получить его гораздо быстрее. Если имеется в виду за то, что этот код, выполняемый в браузере, я думаю, что мы застряли. JavaScript-серверы (как Node.js), вероятно, реализовать эту логику в C / C ++.
Jaguar0625 сейчас офлайн Пожаловаться на Jaguar0625   Ответить с цитированием Мультицитирование сообщения от Jaguar0625 Быстрый ответ на сообщение Jaguar0625

10 января 2014, 7:42:12 AM   # 14
 
 
Сообщений: 36
Цитировать по имени
цитировать ответ
по умолчанию Re: [ANN] Nxt Баунти для работы кода JavaScript, который подписывает и проверяет подписи

Я не верю, что
котировка
Вход / проверить скорость должна быть не ниже, чем 100 подписей в секунду на 1 ГГц CPU с (1 ядро)
может быть достигнут.

Я работаю реализации НСП: https://github.com/moadib/nxt_crypto_js

На моем компьютере (Core i5 2.6GHz) алго принял около 200мс для одной подписи на Google V8 (хром, nodejs).

Я также попытался компиляции C ++ код для JS с emscripten и дают ок 2x быстрее нечитаемый файл. Это не тоже достаточно.

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

10 января 2014, 8:53:09 AM   # 15
 
 
Сообщения: 681
Цитировать по имени
цитировать ответ
по умолчанию Re: [ANN] Nxt Баунти для работы кода JavaScript, который подписывает и проверяет подписи

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

10 января 2014, 1:21:10 PM   # 16
 
 
Сообщения: 681
Цитировать по имени
цитировать ответ
по умолчанию Re: [ANN] Nxt Баунти для работы кода JavaScript, который подписывает и проверяет подписи

@hoax: Я попробовал ваш код. Оно работает. Но как-то светлячок имеет проблемы с синхронизацией. Запуск crypto_sign требуется около 630ms, который медленно, но не попали. Но crypto_verify нужно больше, чем за 11 секунд?!
Можете ли вы сказать мне, почему светлячок возникли проблемы?

Для сравнения с моей версией (i7 CPU 950 3.07GHz):
Код:
Контрольная работа
Сообщение: Это секретное сообщение, которое должно быть подписано
Секрет фраза: Это моя самая тайна фраза
открытый ключ: 698168d8669c9310d68101dfcc974ed4ef454692da6f028f68114db5fdcc4f6a
Подписание ...
Подпись: 94956bf3de7cfdedb2562a0eff698fed7f3e54bbf4476fbb23a192ddea04040f68efa5d03c3f9ebec4109401b50433f1df267299d8b1ad2c485046c45e6b38da
Проверка ...
проверить, вернулся: правда
тест скорости
Javascript необходим 174.5ms / знак
Javascript необходимо 145.5ms / проверить
Законченный

Edit: Обновление скорости результат теста из-за ошибки.
BloodyRookie сейчас офлайн Пожаловаться на BloodyRookie   Ответить с цитированием Мультицитирование сообщения от BloodyRookie Быстрый ответ на сообщение BloodyRookie

10 января 2014, 1:24:49 PM   # 17
 
 
Сообщения: 291
Цитировать по имени
цитировать ответ
по умолчанию Re: [ANN] Nxt Баунти для работы кода JavaScript, который подписывает и проверяет подписи

Я не верю, что
котировка
Вход / проверить скорость должна быть не ниже, чем 100 подписей в секунду на 1 ГГц CPU с (1 ядро)
может быть достигнут.

Я работаю реализации НСП: https://github.com/moadib/nxt_crypto_js

На моем компьютере (Core i5 2.6GHz) алго принял около 200мс для одной подписи на Google V8 (хром, nodejs).

Я также попытался компиляции C ++ код для JS с emscripten и дают ок 2x быстрее нечитаемый файл. Это не тоже достаточно.

Постскриптум Кроме того, я думаю, что и другие (которые не имеют Google V8) браузеры показывают худшие результаты

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

10 января 2014, 4:26:41 PM   # 18
 
 
Сообщений: 36
Цитировать по имени
цитировать ответ
по умолчанию Re: [ANN] Nxt Баунти для работы кода JavaScript, который подписывает и проверяет подписи

@hoax: Я попробовал ваш код. Оно работает. Но как-то светлячок имеет проблемы с синхронизацией. Запуск crypto_sign требуется около 630ms, который медленно, но не попали. Но crypto_verify нужно больше, чем за 11 секунд?!
Можете ли вы сказать мне, почему светлячок возникли проблемы?

Для сравнения с моей версией (i7 CPU 950 3.07GHz):
Код:
Контрольная работа
Сообщение: Это секретное сообщение, которое должно быть подписано
Секрет фраза: Это моя самая тайна фраза
открытый ключ: 698168d8669c9310d68101dfcc974ed4ef454692da6f028f68114db5fdcc4f6a
Подписание ...
Подпись: 94956bf3de7cfdedb2562a0eff698fed7f3e54bbf4476fbb23a192ddea04040f68efa5d03c3f9ebec4109401b50433f1df267299d8b1ad2c485046c45e6b38da
Проверка ...
проверить, вернулся: правда
тест скорости
Javascript необходим 174.5ms / знак
Javascript необходимо 145.5ms / проверить
Законченный

Edit: Обновление скорости результат теста из-за ошибки.

Интересно, не тестируют на Firefox раньше. Я считаю, что новая версия, которая не использовать int10&Длинный может достичь скорости. Я буду писать здесь, когда источники обновлений.
Мистификация сейчас офлайн Пожаловаться на обман   Ответить с цитированием Мультицитирование Сообщения от мистификации Быстрый ответ на сообщение мистификацией

10 января 2014, 6:50:21 PM   # 19
 
 
Сообщения: 681
Цитировать по имени
цитировать ответ
по умолчанию Re: [ANN] Nxt Баунти для работы кода JavaScript, который подписывает и проверяет подписи

Интересно, не тестируют на Firefox раньше. Я считаю, что новая версия, которая не использовать int10&Длинный может достичь скорости. Я буду писать здесь, когда источники обновлений.

На компьютерах, светлячок даже быстрее, чем хром. Тестирование на мой ноутбук (Core Duo 2,4 ГГц):

Chrome версии 31.0.1650.63 м
Код:
тест скорости
Javascript необходим 352.6ms / знак
Javascript необходимо 293.3ms / проверить
Законченный

Firefox версии 26.0
Код:
тест скорости
Javascript необходим 282.1ms / знак
Javascript необходимо 228.3ms / проверить
Законченный

Я думаю, что скорость может быть улучшена много, но это займет время.
Что вы заменить Int10 и долго с?
BloodyRookie сейчас офлайн Пожаловаться на BloodyRookie   Ответить с цитированием Мультицитирование сообщения от BloodyRookie Быстрый ответ на сообщение BloodyRookie

11 января 2014, 5:17:06 PM   # 20
 
 
Сообщения: 291
Цитировать по имени
цитировать ответ
по умолчанию Re: [ANN] Nxt Баунти для работы кода JavaScript, который подписывает и проверяет подписи

Я просто разместил рабочую версию кривых вещей здесь: https://github.com/Jaguar0625/JavaScriptNrs

Там также некоторые Java-код для генерации (псевдо) случайных тестовых данных для знака, серийник, и проверить.

Испытания и проверки правильности и рассчитать среднее время.

Цифры на моей локальной машине совершенно бессмысленно, но вот что я вижу с Node.js:

> узел test.js
Выполнение тестовых случаев из ./data/signtest.dat
Тестовые: 20 (линии: 81)
0 отказы / 20 прошли
TOT: 2.196ms
AVG: 0.110ms

Выполнение тестовых случаев из ./data/keygentest.dat
Тестовые: 100 (линии 401):
0 отказы / 100 прошли
TOT: 8685.554ms
AVG: 86.856ms

Выполнение тестовых случаев из ./data/verifytest.dat
Тестовые: 100 (линии 401):
0 отказы / 100 прошли
TOT: 14027.910ms
AVG: 140.279ms
Jaguar0625 сейчас офлайн Пожаловаться на Jaguar0625   Ответить с цитированием Мультицитирование сообщения от Jaguar0625 Быстрый ответ на сообщение Jaguar0625



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

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

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

3HmAQ9FkRFk6HZGuwExYxL62y7C1B9MwPW