Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support BLAKE2b & BLAKE2s #52

Closed
Skif-off opened this issue Jan 8, 2018 · 17 comments
Closed

Support BLAKE2b & BLAKE2s #52

Skif-off opened this issue Jan 8, 2018 · 17 comments
Labels
done The issue is fixed/applied/implemented FR hash algorithm FR for a hash function

Comments

@Skif-off
Copy link

Skif-off commented Jan 8, 2018

Возможно или, может быть, уже есть в планах?

@rhash rhash added the hash algorithm FR for a hash function label Jan 9, 2018
@rhash
Copy link
Owner

rhash commented Jan 9, 2018

See Issue #12

@Skif-off Skif-off changed the title Support BLAKE2b & BLAKE2b Support BLAKE2b & BLAKE2s Jan 10, 2018
@Skif-off
Copy link
Author

Skif-off commented Jan 10, 2018

@rhash, прошу прощения, в фильтре вбил "blake" - результат был 0 (сейчас проверил, с "blake2 " находит, не ожидал) :(

@data-man
Copy link

@Skif-off

Могу добавить поддержку BLAKE2 (и некоторых других), но, как я понимаю, автор не примет PR со сторонними библиотеками. :-)

@Skif-off
Copy link
Author

@data-man
Думаю, автора, можно понять - кроссплатформенно (Win, Linux, *BSD, MacOS) плюс лицензия. Сейчас глянул ради любопытства: исходники BLAKE2 доступны в т.ч. и под CC0 aka CC Zero, крайне лояльно, как и RHash, смущает только наличие ref/ и sse/ - определение автоматом как-то поинтереснее.

Библиотека сторонняя? У авторов не вижу библиотек, только исполняемые файлы вроде.

@data-man
Copy link

@Skif-off

Библиотека сторонняя?

От самих авторов :-) https://github.com/BLAKE2/libb2

смущает только наличие ref/ и sse/ - определение автоматом как-то поинтереснее.

https://github.com/BLAKE2/libb2/blob/master/src/blake2-dispatch.c#L52

@rhash
Copy link
Owner

rhash commented Jan 15, 2018

CC0 подходит.

Blake2 довольно большое семество функций. Похоже, имеет смысл взять blake2b-512, т.к. большинство современых CPU 64-битные.

@Skif-off
Copy link
Author

Похоже, имеет смысл взять blake2b-512, т.к. большинство современых CPU 64-битные.

Но в случае чего, при необходимости, можно будет запустить и на 32-битной ОС?

Т.к. RHash - утилита универсальная, касательно инструкций SSE2 и далее: при всех плюсах хотелось бы сохранить возможность работать с RHash и на старых процессорах (по большей части AMD до Athlon 64, полагаю), если это будет возможно.

@data-man
Copy link

@Skif-off
libb2 определяет поддержку необходимых инструкций процессором и динамически присваивает функции, наиболее эффективно реализующие алгоритм на этом процессоре.

@rhash
Copy link
Owner

rhash commented Jan 15, 2018

@Skif-off, естественно)

@mrbluecoat
Copy link

mrbluecoat commented Oct 19, 2019

I'm looking forward to this as well. Impressive performance stats.

Update: whoa! edonr512 is wicked fast! Looks like --edonr512 is my new default.. Thanks again for this great software.

@Skif-off
Copy link
Author

Skif-off commented Feb 5, 2020

@rhash

Похоже, имеет смысл взять blake2b-512, т.к. большинство современых CPU 64-битные.

Если будет время и возможность, не могли бы вы рассмотреть и добавление BLAKE2s-256 заодно, если это не будет слишком уж геморрно?
Утилит толком и нет, из кросплатформенного вроде лишь b2sum и Double Commander...

@tankf33der
Copy link

monocypher имеет blake2b. Лицензия CC0.

@data-man
Copy link

BLAKE3 уже давно на дворе. :)
Есть C-реализация.

This work is released into the public domain with CC0 1.0. Alternatively, it is
licensed under the Apache License 2.0.

@Skif-off
Copy link
Author

Skif-off commented Jul 21, 2020

@data-man

BLAKE3 уже давно на дворе. :)

Давно - в смысле "полгода"? :) И все-все-все, поголовно, ну просто куда ни ткни, умеют BLAKE3 считать...

@tankf33der

monocypher имеет blake2b.

Не понял, как у неё с кроссплатформенностью, но главное - это библиотека, её не повесить на кнопку и в скрипте не запустить.
Правда, на странице загрузки выложены линки на биндинги для нескольких языков, но это ещё уметь надо...

@tankf33der
Copy link

@data-man

BLAKE3 уже давно на дворе. :)

Давно - в смысле "полгода"? :) И все-все-все, поголовно, ну просто куда ни ткни, умеют BLAKE3 считать...

blake3 ничего не привнес, только параллельность.

@tankf33der

monocypher имеет blake2b.

Не понял, как у неё с кроссплатформенностью, но главное - это библиотека, её не повесить на кнопку и в скрипте не запустить.
Правда, на странице загрузки выложены линки на биндинги для нескольких языков, но это ещё уметь надо...

Monocypher работает на диапазоне 16бит (RL78) и выше, любая архитектура и ОС, например, IRIX.
Она проходит TIS (interp, CI) и CompCert (interp) и у нее был аудит (cure53) в этом году.

@rhash rhash added the FR label Jul 30, 2020
@rhash
Copy link
Owner

rhash commented Jan 7, 2021

BLAKE2s and BLAKE2b hash functions were added by f693b9e, a479d7a and released in v1.4.1.

No SSE/AVX optimization were applied due to my lack of time (consider donations, it will help).

For the BLAKE3 hash function please file another issue. Note, that Implementing another one hash function will also require significant change of librhash interfaces due to architecture limitation.

@rhash rhash added the done The issue is fixed/applied/implemented label Jan 7, 2021
@rhash rhash closed this as completed Jan 7, 2021
@sergeevabc
Copy link

Comrades! I created an issue about BLAKE3. Please, pay a visit and vote for it. God bless @rhash!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
done The issue is fixed/applied/implemented FR hash algorithm FR for a hash function
Projects
None yet
Development

No branches or pull requests

6 participants