Pages:
Author

Topic: Алгоритм SHA в форме полинома - page 3. (Read 5582 times)

tvv
legendary
Activity: 1302
Merit: 1005
Двойная функция хоть и не сильно, но снижает криптостойкость. 

К тому-же это еще от структуры полинома зависит - может и сильно снижать.
sr. member
Activity: 658
Merit: 250

во, сразу видно как думают не хакеры и не математики Wink)

Вот у меня например как тока узнал что там двойной SHA сразу-же первая мысль "а не дырка ли это?.." Wink

Очень жаль, что эта мысль (единственная, похоже), возникнув так и повисла в воздухе. Настоящий математик сам себе бы на этот вопрос смог бы ответить Smiley



К тому-же судя по всему вы еще и с аналитическими преобразованиями совсем не дружите(а я аналитик Smiley )


А я криптоаналитик. И че?
hero member
Activity: 616
Merit: 502
Если вы тут такие крутые матеметики, то скжите свое мнение на счет этого... https://bitcointalksearch.org/topic/z-92423 и ниже... Я тоже заметил странную закономерность когда таблицы делал для брутфорсера...  Undecided
tvv
legendary
Activity: 1302
Merit: 1005
legendary
Activity: 1386
Merit: 1000
У меня через 60-70ms уже ответ из устройства выходит...

сравнение котлет с устрицами. В вычисление блока Вами за 60-70ms как-то не верю, а одной шарой больше, одной меньше -
может лучше "пол дня тренироваться, а потом за полчаса долететь".

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

Это если компилятор неспециализированный. Кстати, что он там такое трудоемкое вычисляет?

Веселье вызывает

Если бы Вы написали популяризирующую статью как Советский Ученый - никаких бы претензий к Вам не было.
А так приходится разжигать ненависть к вашей социальной группе буржуазных морд (чё-то у меня перегибы пошли, из-за вас всё)

Кстати, btcsec.com предлагает по 3 BTC за статью.
sr. member
Activity: 658
Merit: 250
кстати, пункты 2 и 4 давно реализованы в fpga-майнерах. Пункт 4 - благодаря использованию "midstate", а пункт 2 выполняет сам компилятор автоматически - всю логику, которая не влияет на результат (а результатом считаются только лидирующие нули), компилятор выбрасывает из проекта. Разработчику об этом даже думать не нужно.

Дополнительное веселье вызывает
Quote
программирование FPGA на лету
(кстати, "на лету" и "налету" это разные слова):
Сколько там по-вашему? 92ms? У меня через 60-70ms уже ответ из устройства выходит...
А еще эту прошивку нужно с диска прочитать, а еще и в fpga передать, как правило по небыстрому каналу. А компилировать, если вдруг придется, то это на часы растянется...
legendary
Activity: 1386
Merit: 1000
Теоретически, какие-то крохи собрать на этом можно

кому-то крохи, кому-то хлеб.
sr. member
Activity: 658
Merit: 250
я так понимаю, тут уже два "потенциально великих математика"?

Написанное в пунктах 1-4 почти полностью бред.
Теоретически, какие-то крохи собрать на этом можно, но, в общем, не удастся поднять быстродействие даже на 10%.


PS. любой лидирующий ноль зависит от ВСЕХ входных бит второго SHA2. Таким образом, для выяснения этого (любого) бита нужно целиком и полностью выполнить первый SHA2. Здесь нет поля для оптимизации. Лучше уж бейтесь над обращением самой функции SHA2. На этом можно заработать значительно больше, чем количество всех нагенеренных биткоинов...
tvv
legendary
Activity: 1302
Merit: 1005
Во, уже теплее Wink

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

остальные дают куда более значительный рост скорости, не исключено что и 386 станет уже достаточно Wink
legendary
Activity: 1386
Merit: 1000
будет непригодна вообще ни для чего

Зачем ты наступаешь на горло нашему потенциальному великому математику, второму Перельману, можно сказать?

будет пригодна для формальных преобразований при помощи компьютера.

У меня была такая же идея
that article describes all possible use cases, but we have a special one.
За счет чего вычисления можно оптимизировать:
1) функция вычисляется не один раз, а два раза подряд;
     (возможна оптимизация места склейки)
2) цель - не вычисление функции, а подбор значения дающего результат с нужным числом лидирующих нулей;
     (т.е. проводить вычисления только тех битов, которые должны стать нулевыми)
3) убедится надо в том, что нужные биты станут нулями (а не скажем единицами).
     (т.е. сократить функцию, зная её требуемое значение)
4) при переборе хешируемое значение меняется не целиком, а только его вариабельная часть
     (т.е. кешировать(вычислять единственный раз) часть промежуточных результатов вычислений)

Всё это ведет к уменьшению числа необходимых логических элементов,
следовательно, к увеличению количества вариантов, перебираемых на одном кристалле за единицу времени (при параллелизации перебора),
т.е. к росту скорости.

Может быть будет даже возможно программирование FPGA на лету для каждого нового блока по-своему
Перепрограммирование FPGA существенно быстрее, чем временнОй интервал между двумя блоками:
Quote
Example: A LatticeECP3-95 device in Slave-Parallel PCM mode, and the CCLK is 33 MHz, the maximum EBR preload is 22.5Mb, and an 8-bit parallel bus, then configuration time is 22.5 Mb/(8b*33 MHz) = 0.086 seconds (86 milliseconds). When the initialization time for the LatticeECP3 device in slave mode is 6mS, then the total programming time is 6mS+86mS=92mS.
sr. member
Activity: 658
Merit: 250
Hello.

  Кому-нить попадался сам полином в математической записи по которому считается SHA?

Ну примерно вот как CRC алгоритм описан, полиномом, а не алгоритмом
http://ru.wikipedia.org/wiki/Циклический_избыточный_код

А то SHA описан в форме алгоритма на псевдокоде(а выковыривать оттуда полином лень Wink )
http://ru.wikipedia.org/wiki/SHA-2

Vladimir


Э... можно вопрос?
Что значит фраза "полином по которому считается SHA" ?
Вы сами понимаете, чего спрашиваете? Похоже, что нет.
Каким еще полиномом CRC описан? Принято говорить, что CRC "порождается полиномом", но при этом всегда уточняют, что это значит.
Кстати, CRC это обратимая функция в отличие от SHA.
Если же, вдруг, речь идет о какой-нибудь дизъюнктивной нормальной форме записи любой логической функции,  то зачем она вам? Она (даже для одного блока) займет несколько страниц мелкого текста и будет непригодна вообще ни для чего кроме как показывать девочкам...
Lis
sr. member
Activity: 293
Merit: 251
Spice must flow!
Да, на основе чего-то. Не обязательно полинома.

там же вроде даже аппаратная последовательная схема приведена?..

Такие схемы 1:1 описываются полиномом.


Ладно, спросим по-другому Wink 

Последовательная реализация в виде схемы или логических функций где-нить описана?


на википедии
tvv
legendary
Activity: 1302
Merit: 1005
Да, на основе чего-то. Не обязательно полинома.

там же вроде даже аппаратная последовательная схема приведена?..

Такие схемы 1:1 описываются полиномом.


Ладно, спросим по-другому Wink 

Последовательная реализация в виде схемы или логических функций где-нить описана?

sr. member
Activity: 462
Merit: 250
они же из чего-то писали алгоритм!
Да, на основе чего-то. Не обязательно полинома.

Да и для доказательств стойкости нужно иметь математическую запись.
Вот здесь, например, есть математическая запись. А для доказательства стойкости к чему-либо, в первую очередь нужно знать, что это – что-либо. Smiley
tvv
legendary
Activity: 1302
Merit: 1005
Наверно, такой полином не существует.

должен быть - они же из чего-то писали алгоритм!

Да и для доказательств стойкости нужно иметь математическую запись.
sr. member
Activity: 462
Merit: 250
Наверно, такой полином не существует.
tvv
legendary
Activity: 1302
Merit: 1005
Hello.

  Кому-нить попадался сам полином в математической записи по которому считается SHA?

Ну примерно вот как CRC алгоритм описан, полиномом, а не алгоритмом
http://ru.wikipedia.org/wiki/Циклический_избыточный_код

А то SHA описан в форме алгоритма на псевдокоде(а выковыривать оттуда полином лень Wink )
http://ru.wikipedia.org/wiki/SHA-2

Vladimir
Pages:
Jump to: