Cryptocam запись зашифрованного видео

Обеспокоены тем, что ваше устройство или карта памяти могут попасть в чужие руки, а на них будут записаны конфиденциальные кадры? Используйте Cryptocam

2 мин
Автор PINTA IT
Cryptocam запись зашифрованного видео

Cryptocam позволяет записывать, одновременно шифруя видео и аудио на лету, используя AES-128 и OpenPGP. Cryptocam использует OpenKeychain для шифрования записанного видео без сохранения незашифрованных данных в хранилище устройства.

Использование OpenPGP только с открытым ключом (ключами), хранящимся на устройстве, означает, что записи не могут быть расшифрованы на телефоне ни вами, ни злоумышленником ни при каких обстоятельствах, что полезно в случаях когда злодеи завладеют вашим устройством

Files · HEAD · Thomas / cryptocam
GitLab.com

Как это устроено

Cryptocam использует функциональность MP4-CENC ffmpeg / libav для шифрования видео и аудио на уровне выборки с использованием AES-128. Ключ AES создается для каждой записи и зашифровывается через OpenPGP вместе с другими метаданными перед записью на диск. Cryptocam использует OpenKeychain для шифрования с использованием OpenPGP для гибкого управления ключами и проверенной реализации OpenPGP.

Использование OpenPGP только с открытым ключом (ключами), хранящимся на устройстве, означает, что записи не могут быть расшифрованы на телефоне ни вами, ни злоумышленником ни при каких обстоятельствах.

Как это использовать

Настроить:

  • Установите OpenKeychain на свое устройство
  • Импортируйте один или несколько открытых ключей в OpenKeychain
  • Следуйте настройкам в Cryptocam, чтобы установить ключ (и), который вы хотите использовать для шифрования.
  • Создайте папку и установите ее в качестве места вывода, где будут храниться записи

Перед использованием Cryptocam выберите желаемые настройки камеры (разрешение и частоту кадров) и проверьте, действительно ли они работают.

Не все конфигурации поддерживаются всеми устройствами, поэтому, если вы выберете ту, которую ваше устройство не поддерживает, Cryptocam вернется к предпочтительным конфигурациям ваших устройств. Так что, если вы не хотите удивляться видео 1200 x 1200 при 15 кадрах в секунду, проверьте его перед использованием!

Пока что эти устройства были протестированы:

  • Samsung Galaxy S9: до 1920x1080 при 60 кадрах в секунду. Нет 4K
  • Google Pixel 2XL: до 1920x1080 при 60 кадрах в секунду. Нет 4K
  • LG G6: до 1920x1080 при 60 кадрах в секунду. Нет 4K

Пожалуйста, поделитесь своими результатами на своем устройстве!

Расшифровка видео

Расшифровка проверена только в Linux. Хотя, вероятно, он работает и на MacOS.

Клон скрипт компаньона и следуйте инструкциям в README.md.

Перенесите каталог, в котором хранятся видео, на ваш компьютер и cdтуда, где вы клонировали сопутствующий скрипт. Затем запустите:

 ./decrypt.sh /path/to/my/cryptocam/videos/* --destination /desired/destination

Здание

Перед сборкой приложения его ffmpegнеобходимо загрузить и скомпилировать. Полную сборку можно запустить с помощью ./complete_build.sh. Последующие сборки можно запускать через Android Studio или Gradle.

Содействие

Пожалуйста, протестируйте его на своих доступных устройствах и поделитесь результатами. Создайте проблему или отправьте мне электронное письмо по адресу [email protected], чтобы объяснить, что работает, а что не работает.

Если вы разбираетесь в видео и ffmpeg, пожалуйста, ознакомьтесь с реализацией мультиплексирования видео / аудио в Cryptocam и улучшите ее. Это работает, но видео и аудио иногда не синхронизируются, и мне не хватает опыта, чтобы это исправить.