Ключ во фрагменте
Фрагмент URL не отправляется браузером на сервер, поэтому сервер не получает ключ расшифровки.
Модель построена вокруг zero-knowledge передачи: браузер шифрует секрет до отправки, а ключ помещается только во фрагмент URL после #.
Фрагмент URL не отправляется браузером на сервер, поэтому сервер не получает ключ расшифровки.
Шифрование и расшифровка выполняются через WebCrypto без самописных криптографических примитивов.
Парольная фраза выводит ключ-обертку локально и не передается вместе с запросом.
В базе нет plaintext и нет клиентского ключа. Шифротекст дополнительно защищен серверным at-rest ключом.
События содержат id, время, тип действия и хеш IP. Содержимое секрета в события не пишется.
Для публичного платного запуска нужен внешний аудит криптографии и гонок burn-after-read.
`ciphertext`, `iv`, TTL, лимит просмотров, флаг парольной фразы, технические события. Сервер не получает открытый текст, парольную фразу или ключ из фрагмента ссылки.