Перейти к содержанию

самая трудоемкая задача sha256


infoman

Рекомендуемые сообщения

Кто разбирается подскажите какая из элементарных операций самая затратная машиночасы/энергопотребление:

 

 Основной цикл:    для i от 0 до 63        Σ0 := (a rotr 2) xor (a rotr 13) xor (a rotr 22)        Ma := (a and b) xor (a and c) xor (b and c)        t2 := Σ0 + Ma        Σ1 := (e rotr 6) xor (e rotr 11) xor (e rotr 25)        Ch := (e and f) xor ((not e) and g)        t1 := h + Σ1 + Ch + k[i] + w[i]        h := g        g := f        f := e        e := d + t1        d := c        c := b        b := a        a := t1 + t2

чисто визуально тянусь к xor я прав?

Ссылка на комментарий
Поделиться на другие сайты

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

Ссылка на комментарий
Поделиться на другие сайты

@subw,уже читаю

меня интересует именно аппаратные затраты

счас на КМОП  пересчитаю

я так понимаю зависит от колва транзисторов в элементе

Ссылка на комментарий
Поделиться на другие сайты

я не понимаю что такое "аппаратные затраты".

 

вот почитай что пишут - http://en.wikipedia.org/wiki/Performance_per_watt

только вот не понятен смысл твоих изысканий, если ты только не разработчик для плисин...

Изменено пользователем subw
Ссылка на комментарий
Поделиться на другие сайты

Даже для очень старых процессоров логические операции выполняются за минимальное количество тактов, сложение дольше выполнялось, для современных процессоров может уже не актуально. В целом, все операции простые. КМОП немного другая тема.

Изменено пользователем mv7
Ссылка на комментарий
Поделиться на другие сайты

@subw,

именно при аппаратном майнинге (виртуальный не интересует)

все сводится к элементарщине  перечисленом  в сабже

@mv7,

вот именно это я и пытаюсь выяснить что из перечисленного занимает больше всего машиночасов

вот сейчас имеем операций:

  • and — 5
  • xor — 7
  • rotr  — 6
  • + — 7

это в основном цикл

Изменено пользователем infoman
Ссылка на комментарий
Поделиться на другие сайты

виртуальный майнинг это что еще такое? ))

я только про облачный слышал

Ссылка на комментарий
Поделиться на другие сайты

виртуальный майнинг это что еще такое? ))

я только про облачный слышал

виртуальный - программный(фпга)

аппаратный - на основе логических элементов  жестко зашитыми непрограммируемыми схемами вычисления блоков(asic)

Ссылка на комментарий
Поделиться на другие сайты

и ещё вот говрится что используется

но в алгоритме http://ru.wikipedia.org/wiki/SHA-2 не нашел "or"

 

я правильно рассуждаю что "+" это лигическое побитное or ?:

0xFB6FEEE7 := 0x6A09E667 + 0xBB67AE85

или побитно

 

11111011011011111110111011100111 := 1101010000010011110011001100111 or 10111011011001111010111010000101

Ссылка на комментарий
Поделиться на другие сайты

OR там в чистом виде нет, в некоторых реализациях есть для циклического сдвига из двух логических. Под + понимается именно сложение, т.е. две единички в одном разряде добавляют единичку в следующем. В процессорах все логические операции NOT, AND, XOR, OR выполняются быстрее всего. При аппаратной реализации, не знаю, не моя область.

Ссылка на комментарий
Поделиться на другие сайты

@mv7,вот знающий человек!!!!

1) тогда обьясните если сложение с добавлением единички то на выходе мы не получим слова по 32 бита

тоесть выходного хеша не получится.... я прав?

 

Добавить полученные значения к ранее вычисленному результату:    h0 := h0 + a    h1 := h1 + b     h2 := h2 + c    h3 := h3 + d    h4 := h4 + e    h5 := h5 + f    h6 := h6 + g     h7 := h7 + hПолучить итоговое значения хеша:digest = hash = h0 ǁ h1 ǁ h2 ǁ h3 ǁ h4 ǁ h5 ǁ h6 ǁ h7

в digest = hash = h0 это слово 32 бита  а если как вы предлагаете с добавлением единички то будет другое слово

 

2) меня не интересует скорость в процессорах или не процессорах меня интересует какой из логических аппаратных элементов сьедает больше всего времени машинного или аппаратного

я думаю зависит это от того сколько p-n переходов в аппаратном логическом элементе

ну и их скорости перехода из состояния 0 в 1 (но меня  эта скорость не интересует так как она величина постоянная для всех аппаратных логических элементов)

Изменено пользователем infoman
Ссылка на комментарий
Поделиться на другие сайты

 

2) меня не интересует скорость в процессорах или не процессорах меня интересует какой из логических аппаратных элементов сьедает больше всего времени машинного или аппаратного

тебе надо понять элементарную вещь, я ее уже озвучил: скорость зависит от КОНКРЕТНОЙ архитектуры, а ты какие то абстракции обсуждаешь, почитай книжки, не забивай форум мусором

Ссылка на комментарий
Поделиться на другие сайты

@temrus63,@subw,

это я то забиваю?

ваши последние 2 сообщения это мусор(если я не прав да убьет мой аккаунт администратор!)

мои конкретные

хорошо берем конкретную архитектуру где у нас имеются все вышеперечисленные элементы логики

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

 

ну и во вторых остается вопрос по сложению, это or или всетаки сложение с добавлением единички(побитно)

Изменено пользователем infoman
Ссылка на комментарий
Поделиться на другие сайты

@mv7,вот знающий человек!!!!

1) тогда обьясните если сложение с добавлением единички то на выходе мы не получим слова по 32 бита

тоесть выходного хеша не получится.... я прав?

Нет, FFFF+0001=0000, остается все те же 32 бита. Зачем Вам все это? Не стоит пытаться найти здесь золотую жилу без доступа к производству микросхем.

Ссылка на комментарий
Поделиться на другие сайты

@mv7,причем тут жила,

я просто пытаюсь понять,

попробовал на калькуляторе посчитать

если я ставлю 4 байта (разрядность) то да остаются теже 32 бита

если 8 байт то добавляется единичка

вы правы + и or разные вещи

тогда что же это "+" с точки зрения элементарной логики(читаю в нете пытаюсь понять 2 мне за забытые уроки информатики)

Ссылка на комментарий
Поделиться на другие сайты

Все правильно, все действия в 32-битном представлении, соответственно при сложении все лишнее отсекается. Тогда ответ на вопрос простой, нет там сложных частей, все команды простейшие, процессор легко прогоняет десятки миллионов раз в секунду этот код. Scrypt, например, в 1000 и более раз медленнее в зависимости от настроек сложности алгоритма. Здесь главное относительная скорость, чтобы заработать денег, надо быть быстрее всех.

Изменено пользователем mv7
Ссылка на комментарий
Поделиться на другие сайты

@mv7,помоему это оно http://digteh.ru/digital/sum.php проще говоря сумматоры построенные на xor + перенос

 

если мы отсекаем "все лишнее детям"

 

остаются чисто xor 232

 

итого получается что самое затратное в sha256   это именно xor  ибо элементарно в одном сумматоре для двух слов этих логических элементов будет 32 штуки

и таких операций с сумматорами в алгоритме туева хуча :huh: шифровальщики блин :ph34r:

роем дальше....

 

тогда получается что тут:

Основной цикл:    для i от 0 до 63        Σ0 := (a rotr 2) xor (a rotr 13) xor (a rotr 22)        Ma := (a and b) xor (a and c) xor (b and c)        t2 := Σ0 + Ma        Σ1 := (e rotr 6) xor (e rotr 11) xor (e rotr 25)        Ch := (e and f) xor ((not e) and g)        t1 := h + Σ1 + Ch + k[i] + w[i]

элемент xor тоже 232 ? ведь в цикле мы тоже оперируем 32 битными словами?

Изменено пользователем infoman
Ссылка на комментарий
Поделиться на другие сайты

  • 3 месяца спустя...

Реализовали бы алгоритм и посмотрели, чего гадать то?

Я реализовывал и смотрел. На x86 самая затратная - rotr, оптимизированный алгоритм на языке высокого уровня там проводит 90% времени.

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

Очень приблизительно, опираясь на цифры данные Интелем (http://www.intel.com/content/dam/www/public/us/en/documents/white-papers/sha-256-implementations-paper.pdf) до 500Мхэш на ядро (?). В итоге зибил, проще купить ЮСБ свисток, чем вспоминать асм.

Изменено пользователем Krey
Ссылка на комментарий
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
  • Similar Topics

    • Самая выгодная сделка!

      Ты ничего не получишь   TRC20 TGDUKQrQVZUSWPxEkFYCzGMggPN3kiGYim

      в Попрошайки

    • Математическая задача про ведро воды и, внезапно, бинанс.

      Предположим, у нас есть десятилитровое ведро, и в нём налит 1 литр воды. Эта вода обладает волшебным свойством, её объем плавно увеличивается (деление молекул, почему нет). Когда-нибудь этот литр увеличится в 100 раз (может быть, для удобства взять 128, тут хз), то есть в результате мы когда-нибудь получим (получили бы) 100 литров воды. Естественно, со временем она будет выливаться, и пусть вылившаяся вода сразу же теряет своё волшебное свойство.  Естественно, любая часть, уже увеличившаяся

      в Флейм

    • Эстер Пирс: «Главная задача криптовалют — решить проблему доверия между пользователями»

      Комиссар Комиссии по ценным бумагам и биржам США (SEC) выразила мнение об уроках, которые криптоиндустрии следует извлечь из событий прошлого года. В своем выступлении на конференции Digital Assets at Duke Эстер Пирс (Hester Peirce) заявила, что 2022 год был ужасным как для криптовалютного пространства, так и для самих регуляторов, поскольку состоялось слишком много негативных событий. Однако даже из возникших проблем можно сделать ценные выводы, считает комиссар. Чиновница полагает, что д

      в Новости криптовалют

    • Сэм Бэнкман-Фрид: «Заявление на банкротство FTX ― моя самая большая ошибка»

      Бывший генеральный директор биржи FTX, которая находится в процессе банкротства, заявил, что сильнее всего он жалеет именно о подаче заявления по статье 11 Кодекса США о банкротстве. Сэм Бэнкман-Фрид (Sam Bankman-Fried) поделился в Твиттере своими мыслями о регуляторах, этике и действиях Alameda. Основатель FTX признал, что сделал множество ошибок, но крупнейшей стало заявление на банкротство.   «Я облажался множество раз. Но знаете мою крупнейшую ошибку? Все мне говорили подавать п

      в Новости криптовалют

    • Чарльз Хоскинсон: Цифровая валюта ЦБ — самая опасная инновация финансовой системы

      Основатель Cardano заявил, что никогда не поддержит государственную цифровую валюту, которая нарушает неприкосновенность личной жизни своего владельца. Создатель ADA Чарльз Хоскинсон (Charles Hoskinson) считает, что государственная цифровая валюта (CBDC) — «самая опасная инновация, которую мы когда-либо видели в денежно-кредитной политике»:   «CBDC это не криптовалюта. Цифровые валюты ЦБ могут работать на крипторельсах и обладать тем же функционалом, но я их никогда в жизни не поддер

      в Новости криптовалют

×
×
  • Создать...