Следствие Публия Теренция:

Когда двое делают одно и то же, получается не одно и то же.

Мужик зашел в поезд на Одессу, видит - совсем мест нет. Решил одну штуку выкинуть. Ходит и приговаривает: ...

Google продлил до 8 лет время поддержи устройств на базе ChromeOS
Thu, 23 Jan 2020 09:54:13 +0300

Открыт код клиентских приложений ProtonVPN
Wed, 22 Jan 2020 10:44:18 +0300

Технический комитет OASIS утвердил спецификацию OpenDocument 1.3
Wed, 22 Jan 2020 10:03:53 +0300

Дистрибутив Kubuntu начал распространение ноутбука Kubuntu Focus
Wed, 22 Jan 2020 08:38:45 +0300

Для Btrfs представлена асинхронная реализация DISCARD
Wed, 22 Jan 2020 04:48:18 +0300

Сanonical предложил Anbox Cloud, облачную платформу для запуска Android-приложений
Tue, 21 Jan 2020 14:37:47 +0300

Red Hat развивает JIT-компилятор MIR
Tue, 21 Jan 2020 08:48:56 +0300

Rust-фреймворк actix-web возрождён и будет передан сообществу
Mon, 20 Jan 2020 21:36:52 +0300

В Минэкономики РФ предложили создать архив кода, дублирующий GitHub
Mon, 20 Jan 2020 19:05:46 +0300

Копилефт лицензии постепенно вытесняются пермиссивными
Sat, 18 Jan 2020 22:55:51 +0300

Разработчик Rust-фреймворка actix-web удалил репозиторий из-за травли
Sat, 18 Jan 2020 20:17:10 +0300

Linux-смартфон PinePhone доступен для заказа
Fri, 17 Jan 2020 09:55:06 +0300

Google опубликовал план прекращения поддержки Chrome Apps, NaCl, PNaCl и PPAPI
Fri, 17 Jan 2020 09:15:19 +0300

IBM, Microsoft и Mozilla поддержали Google в судебном разбирательстве с Oracle
Thu, 16 Jan 2020 21:42:07 +0300

В Xfce осуществлён перевод диалогов на декорирование окон на стороне клиента
Thu, 16 Jan 2020 12:19:52 +0300

Новости OPENNET
Новости

Опубликована финальная реализация алгоритма BLAKE3, предлагающего криптографическую хеш-функцию, рассчитанную на такие применения, как проверка целостности файлов, аутентификация сообщений и формирование данных для криптографических цифровых подписей. BLAKE3 не предназначена для хеширования паролей (для паролей рекомендуется использовать медленные хеш-функции yescrypt, bcrypt, scrypt или Argon2), так как нацелена на максимально быстрое вычисление хешей. Рассматриваемая хеш-функция нечувствительна к размеру хешируемых данных и защищена от атак по подбору коллизий и нахождению прообраза. Эталонная реализация BLAKE3 опубликована под двойной лицензией - общественное достояние (CC0) и Apache 2.0.

Ключевым отличием новой хеш-функции является очень высокая производительность вычисления хеша при сохранении надёжности на уровне SHA-3. По умолчанию размер результирующего хеша в BLAKE3 составляет 32 байта (256 бит), но он может быть расширен до произвольных значений. В тесте на генерацию хеша для файла, размером 16 КБ, BLAKE3 опережает SHA3-256 в 15 раз, SHA-256 - в 12 раз, SHA-512 - в 8 раз, SHA-1 - в 6 раз, а BLAKE2b - в 4 раза. Значительный отрыв сохраняется и при обработке очень больших объёмов данных, например, BLAKE3 оказался быстрее SHA-256 в 8 раз при вычислении хеша для 1ГБ случайных данных.

Алгоритм разработан известными специалистами по криптографии (Jack O'Connor, Jean-Philippe Aumasson, Samuel Neves, Zooko Wilcox-O'Hearn) и продолжает развитие алгоритма BLAKE2 и применяет для кодирования дерева цепочек блоков механизм Bao. В отличие от BLAKE2 (BLAKE2b, BLAKE2s), в BLAKE3 для всех платформ предложен единый алгоритм, не привязанный к разрядности и размеру хеша.

Повышения производительности удалось добиться благодаря сокращению числа раундов с 10 до 7 и раздельному хешированию блоков кусочками по 1 Кб. По заявлению создателей, они нашли убедительное математическое доказательство, что можно обойтись 7 раундами вместо 10 при сохранении того же уровня надёжности (для наглядности можно привести пример с перемешиванием фруктов в миксере - через 7 секунд фрукты уже полностью перемешаны, и дополнительные 3 секунды не скажутся на консистенции смеси). При этом некоторые исследователи выражают сомнение, полагая, что даже если в настоящее время 7 раундов достаточно для противостояния всем известным атакам на хеши, то дополнительные 3 раунда могут оказаться полезны в случае выявления новых атак в будущем.

Что касается разделения на блоки, то в BLAKE3 поток разбивается на кусочки по 1 Кб и каждый кусочек хешируется независимо. На основе хешей кусочков на базе бинарного дерева Меркла формируется один большой хеш. Указанное разделение позволяет решить проблему с распараллеливанием обработки данных при вычислении хеша - например, можно использовать 4-поточные SIMD-инструкции для одновременного вычисления хешей 4 блоков. Традиционные хеш-функции SHA-* обрабатывают данные последовательно.

Особенности BLAKE3:

  • Высокая производительность;
  • Безопасность, в том числе стойкость к атаке удлинением сообщения, которой подвержен SHA-2;
  • Обеспечение распараллеливания вычислений на любое число потоков и SIMD-каналов;
  • Возможность инкрементального обновления и верифицированной обработки потоков;
  • Применение в режимах PRF, MAC, KDF, XOF и как обычный хеш;
  • Единый алгоритм для всех архитектур, быстрый как на системах x86-64, так и на 32-разрядных процессорах ARM.

Основные отличия BLAKE3 от BLAKE2:

  • Использование бинарной древовидной структуры, позволяющей добиться неограниченного параллелизма при вычислении хеша.
  • Сокращение числа раундов с 10 до 7.
  • Три режима работы: хеширование, хеширование с ключом (HMAC) и формирование ключа (KDF).
  • Отсутствие дополнительных накладных расходов при хешировании с ключом за счёт использования области, ранее занимаемой блоком параметров ключа.
  • Встроенный механизм работы в форме функции с удлиняемым результатом (XOF, Extendable Output Function), допускающей распараллеливание и позиционирование (seek).

8.9096 68.2924 0.5639 61.8031

НОВОСТИ: Новая версия встраиваемого JavaScript-движка от основателя QEMU ... Wed, 22 Jan 2020 18:10:27 +0300

Французский математик Фабрис Беллар (Fabrice Bellard), основавший в своё время проекты QEMU и FFmpeg, опубликовал обновление развиваемого им компактного встраиваемого JavaScript-движка QuickJS. Движок поддерживает спецификацию ES2019 и дополнительные математические расширения, такие как типы BigInt и BigFloat. По производительности QuickJS заметно превосходит имеющиеся аналоги (XS на 35%, DukTape более чем в два раза, JerryScript в три раза, а MuJS в семь раз). Проектом предлагается библиотека для встраивания движка, интерпретатор qjs для запуска JavaScript-кода из командной строки и компилятор qjsc для генерации самодостаточных исполняемых файлов. Код написан на Си и распространяется под лицензией MIT. Подробнее о проекте можно прочитать в тексте анонса первого выпуска.

???????@Mail.ru Opera Firefox INFOBOX - хостинг Google Chrome