btrfs. Контрольные суммы

Контрольные суммы btrfs.

Содержание

1 Общая информация

  • Контрольная сумма вычисляется для данных и метаданных (по умолчанию).
  • Контрольная сумма вычисляется перед записью и проверяется после чтения блоков с устройств.
  • Контрольная сумма всего блока метаданных хранится в заголовке узла b-дерева.
  • У каждого блока данных есть отдельная контрольная сумма, хранящаяся в дереве контрольных сумм.

2 Виды контрольных сумм

  • CRC32C

    • 32-битный дайджест;
    • используется по умолчанию;
    • лучшая обратная совместимость;
    • очень быстро вычисляется;
    • современные процессоры имеют поддержку на уровне инструкций;
    • не устойчивы к коллизиям;
    • достаточно хорошие возможности обнаружения ошибок.
  • XXHASH

    • 64-битный дайджест;
    • может использоваться в качестве преемника CRC32C;
    • очень быстро вычисляется;
    • оптимизирована для современных процессоров, использующих конвейерную обработку инструкций;
    • хорошая устойчивость к коллизиям;
    • хорошее обнаружение ошибок.
  • SHA256

    • 256-битный дайджест;
    • хэш криптографической стойкости;
    • относительно медленный, но с возможным ускорением инструкций ЦП или специализированными аппаратными картами;
    • сертифицированный FIPS;
    • широко используется.
  • BLAKE2b

    • 256-битный дайджест;
    • хеш криптографической стойкости;
    • быстрее SHA256;
    • возможно ускорение с использованием расширений SIMD;
    • не стандартизировано;
    • широко используется;
    • алгоритм BLAKE2b-256 оптимизирован для 64-битных платформ.

Дмитрий Сергеевич Кулябов
Дмитрий Сергеевич Кулябов
Профессор кафедры прикладной информатики и теории вероятностей

Мои научные интересы включают физику, администрирование Unix и сетей.

Похожие