This commit is contained in:
Dmitry Zuikov 2023-11-28 07:00:17 +03:00
parent cd1b6ddf77
commit be55aa55e7
2 changed files with 23 additions and 0 deletions

View File

@ -0,0 +1,4 @@
FIXME: zero-block-reading
похоже, что при чтении ИЛИ попытки расшифровки
блока размера 0 возникает ошибка.
Написать тест на чтение / шифрование такого блока.

View File

@ -219,6 +219,25 @@ instance ( MonadIO m
let key0 = HKDF.expand prk nonceS typicalKeyLength & Saltine.decode & fromJust
-- NOTE: new-format-and-compatibility
-- мы можем:
-- 1. поменять схему и схему вычисления нонсов
-- сделать зависимой от схемы. Вот мы пишем
-- её внизу, это ок.
-- Минусы: сложнее код, менее локальный
-- Плюсы: надёжнее
-- Совместимость: обратная? старая версия
-- не будет читать новые блоки.
--
-- 2. сериализовать блок с параметрами
-- при чтении: пытаемся десереализовать,
-- как блок (читать голову). если не удаётся
-- --- читаем, как байтстроку.
-- минусы: будет медленнее --- лишняя проверка/попытка
-- десереализации на каждый блок.
-- плюсы: более локальные изменения
--
hashes' <- liftIO $ toEncryptData source
& S.zip (S.enumFrom (1 :: Word64) )
& S.mapM ( \(i,bs) -> do