> Окей, мы знаем, что у пользователей U1 и U2 зашифрованные блоки B1
> и B2 имеют одинаковый sha512. Как теперь хранить только один из
> этих блоков?зачем?
Если ты каким-то чудом (например, нанятый вменяемый разработчик понимал, для чего на самом деле существуют криптографические хэши - чудо!) вовремя об этом узнал - просто сохраняешь второй блок отдельно от первого. Ровно так же, как в случае, если бы эти sha оказались разными (точнее "поиск хэша B2 ничего не нашел").
На момент, когда ты считал его хэш, он у тебя еще был, есть что сохранять.
внутри файла-то они не по хэшам ищутся, а банально по ссылке.
zfs dedup+verify примерно так и работает