shifr/app-stream-encryption

PSR-7 stream decorators

Maintainers

Package info

gitlab.com/igor3737/shifr

Issues

pkg:composer/shifr/app-stream-encryption

Statistics

Installs: 8

Dependents: 0

Suggesters: 0

Stars: 0

v1.0.5 2026-03-26 10:00 UTC

This package is not auto-updated.

Last update: 2026-05-07 13:59:47 UTC


README

В данной библиотеке представлено сквозное шифрование (End-to-End Encryption) как в мессенджерах вроде WhatsApp или Signal. Вот конкретные причины, зачем нужны такие сложности:

  1. Защита серверов (Zero Knowledge) Когда ты отправляешь фото в WhatsApp, оно летит через их сервера. Благодаря этой схеме: Сервер видит только «мусор»: Поскольку ключ (mediaKey) генерируется на твоем устройстве и передается получателю напрямую (в зашифрованном сообщении), сервер WhatsApp не может подсмотреть твое фото. Хранение: Даже если базу данных сервера взломают, хакеры получат миллионы зашифрованных файлов без ключей.
  2. Целостность данных (HMAC) Это «цифровая печать». Если злоумышленник изменит хотя бы один бит в зашифрованном файле, HMAC не совпадет. Приложение поймет это до того, как начнет расшифровку, и выдаст ошибку «Файл поврежден», вместо того чтобы пытаться скормить процессору битый код.
  3. Экономия памяти (Streaming) Декораторы потоков (Streams) позволяют расшифровывать видео «на лету» (кусочками по 8 КБ). Ты смотришь начало видео, пока середина еще качается и расшифровывается.
  4. Sidecar (Мгновенная перемотка) В обычном режиме AES-CBC, чтобы расшифровать данные на 10-й минуте видео, тебе теоретически нужно расшифровать всё, что было до этого. Sidecar (те самые подписи каждые 64 КБ) позволяет плееру прыгнуть в любую точку файла, проверить подлинность этого конкретного куска и сразу начать показ.