CottonПотоковый AES-GCM
Потоковый AES-GCM

Шифрование по учебнику, которое остаётся включённым.

Крипта хранилища Cotton намеренно скучная в правильном смысле: стандартный AES-GCM, явный потоковый контейнер, обёрнутые ключи на файл, аутентификация на чанк и достаточный запас пропускной способности, чтобы операторов не тянуло к небезопасным срезкам углов.

AES-GCMТеги на чанкОбёрнутые ключи файловБуферы конвейера

Шифрование на уровне хранилища

Cotton шифрует хранимые данные файлов в серверном конвейере хранения. Этот слой всегда часть модели хранилища и отделён от браузерной E2E-политики папок, которая описана на отдельной странице.

Форма контейнера по учебнику

Зашифрованный поток использует модель в стиле контейнера с ключевым материалом на уровне файла и аутентификацией на уровне чанков. Каждый чанк аутентифицируется как часть потока, вместо того чтобы превращать огромный файл в один монолитный криптообъект.

  • Обёрнутые ключи на файл изолируют контент файла.
  • Теги аутентификации на чанк помогают ловить подмену блоков, дублирование, пропуски и порчу.
  • 12-байтный nonce собирается из 4-байтного префикса файла и 8-байтного счётчика чанков.
  • Аутентифицированные дополнительные данные связывают ключ и метаданные чанка с правилами контейнера.

Почему AES-GCM

AES-GCM — широко применяемый режим аутентифицированного шифрования: он защищает конфиденциальность и целостность, когда дисциплина ключей/nonce сделана нормально. Он аппаратно ускоряется на распространённых платформах и доступен через стандартную криптографию рантайма — практичный дефолт для кроссплатформенного self-hosted файлового облака.

Без театра самодельных шифров

Cotton не просит пользователей доверять новому алгоритму шифрования. Заявление скромнее и сильнее: стандартный AES-GCM внутри формата хранения, который понимает огромные файлы, разбиение на чанки, чтение по диапазонам, ограниченную память и необходимость аутентифицировать каждый кусок, прежде чем ему доверять.

Производительность конвейера

Путь шифрования построен на потоковых буферах и примитивах .NET с низкой нагрузкой на аллокацию. Локальные бенчмарк-базисы показывают, что у слоя крипты достаточно запаса, чтобы видимым лимитом обычно были диск, сеть или сжатие.

Позиция по тестированию

Криптомодуль покрыт тестами на золотые векторы, детерминированный формат, подмену, усечение, дубликаты чанков, пропуски чанков, строгую длину, pipe, отмену и производительность. Это всё ещё не независимый аудит, поэтому публичный маркетинг говорит, что есть, а не занимает доверие взаймы.

Как это связано с E2E

Клиентски зашифрованные папки — дополнительная фича. Браузер шифрует выбранные файлы до загрузки и хранит зашифрованные отображаемые метаданные, а сервер всё равно сохраняет получившуюся полезную нагрузку через обычный чанковый конвейер хранения.

Пруф пути шифрования

Публичное заявление: потоковый AES-GCM на слое хранилища с обёрнутыми ключами на файл, тегами аутентификации на чанк, дисциплиной nonce/AAD, ограниченными буферами и тестами вокруг формата контейнера. Это фича конвейера хранения, а не общее заявление про E2E.

Шифрование остаётся включённым

Cotton может держать шифрование включённым, потому что шифрование — в основном пути, а реализация намеренно консервативна. Продукту не нужна отдельная небезопасная скоростная полоса для обычной файловой работы.

Что шифрование хранилища оставляет видимым

Шифрование хранилища всё ещё оставляет серверную обработку и часть метаданных видимыми для сервера. Для выбранного контента, который должен быть непрозрачным до загрузки, используйте клиентски зашифрованные папки.

Вопросы

Прямые ответы

Потоковый AES-GCM — это то же самое, что только браузерное клиентское шифрование?

Нет. Потоковый AES-GCM — конвейер шифрования хранилища Cotton. Поверхность E2E — отдельная фича клиентски зашифрованных папок/файлов, где браузерное хранилище шифрует выбранные загрузки до сервера.

Cotton использует свой алгоритм шифрования?

Нет. Cotton использует AES-GCM через стандартные криптографические примитивы. Cotton-специфичная часть — контейнер хранения файлов: обёрнутые ключи на файл, теги аутентификации чанков, раскладка nonce, AAD, потоковые буферы и тесты.

Почему не сделать шифрование опциональным?

Цель продукта — шифрование как позиция хранилища по умолчанию. Работа над производительностью нужна, чтобы операторы не выключали безопасность ради скорости.

Шифрование требует загрузить весь файл в память?

Нет. Путь хранения построен на потоковых буферах и работе на чанк, поэтому шифрование остаётся в пути записи без превращения больших файлов в полнофайловые события в памяти.

Это значит, что у Cotton был аудит безопасности?

Нет. Точное заявление — инженерные свидетельства внутри проекта: стандартный AES-GCM, явные правила контейнера, золотые векторы, тесты на подмену и покрытие бенчмарками. Сторонний аудит надо заявлять только после того, как он случился.