CCAM превращает обычную камеру в крипто-камеру: каждый снимок получает проверяемую подпись, защищённую доставку и серверную квитанцию, чтобы позже можно было доказуемо отличить оригинал от подделки. Встроенный защищённый чат и передача файлов работают поверх WebSocket с E2EE, обеспечивая приватность и контроль целостности данных без доверия к транспортному каналу.
- Ключи и криптооперации: Android Keystore, RSA-2048 (SHA256withRSA), SHA-256, AES-256-GCM.
- Синхронизация времени: NTP (пул серверов), единый менеджер времени (singleton).
- Съёмка: Camera2 API (низкоуровневая камера).
- Хэш фото: SHA-256 считается по байтам изображения (stream → ByteArray) при чтении в память.
- Защита данных фото/метаданных: шифрование AES-256-GCM + подпись RSA/SHA перед отправкой.
- Фоновые сервисы: foreground WsService (уведомления/каналы).
- Внутренний защищённый чат: WebSocket (OkHttp), (handshake/ack/receipts), E2EE (AES-GCM + RSA).
- Файлы в чате: chunked upload, SHA256withRSA подпись + RSA-шифрование ключа файла получателю.
- Backend stack: Python, FastAPI + Uvicorn.
- База данных: PostgreSQL + SQLAlchemy, append-only триггеры.
- Криптография: AES-256-GCM, RSA-2048, SHA-256 на подписи.
- WebSocket: (relay, offline buffer TTL, handshake state, server/client receipts).
- Anti-replay: clientTsMs (NTP), clientNonce, requestUuid + registration rate-limit.
- Хранение ключей: per-device RSA keypair → AES-256-GCM , Авторский MasterKey Management.
- Регистрация устройства и обмен ключами: собственный протокол поверх HTTP (RSA/SHA/AES).
В ближайших планах: разработка децентрализованного механизма проверки целостности приложения перед регистрацией устройства и построение распределённого алгоритма верификации, аутентификации и записи данных с подтверждением большинством узлов.
Цель: перейти от одиночного сервера к распределённой, децентрализованной системе хостов и баз данных. Чтобы уязвимость любых узлов к zer0_day атакам от разработчиков инфраструктуры не несли опасности для достоверности информации.
Если хотите поучаствовать в проекте — свяжитесь с разработчиками или помогите тестировать приложение.
Задайте вопросы, предложите идеи или расскажите о результатах тестирования.
✉️ Обратная связьСкачайте тестовую версию CCam для Android и помогите проверить реальные сценарии работы.
📱 Скачать CCam