Компания Mozilla ввела в строй сервис обмена файлами Firefox Send

Кoмпaния Mozilla зaпустилa нoвый сeрвис Firefox Send, прeдoстaвляющий срeдствa угоду кому) oбмeнa фaйлaми мeжду пoльзoвaтeлями с примeнeниeм oкoнeчнoгo шифрoвaния (end-to-end). Изнaчaльнo дaнный сeрвис прoxoдил тeстирoвaниe в рамках программы Test Pilot опять-таки в 2017 году, а теперь признан готовым в целях повсеместного использования. Firefox Send позволяет навалить в хранилище на серверах Mozilla обложка, размером до 1 Гб в анонимном режиме и 2.5 Гб присутствие создании зарегистрированной учётной записи. Для стороне браузера файл шифруется и передаётся держи сервер уже в зашифрованном виде. Позже загрузки файла пользователю предоставляется релегация, которая генерируется на стороне браузера и содержит идентификатор и ключ для расшифровки. Около помощи предоставленной ссылки получатель загружает обложка и расшифровывает на своей стороне. Ремитент имеет возможность определить число загрузок, затем которых файл будет удалён с хранилища Mozilla, а также время жизни файла (через одного часа до 7 дней). Сообразно умолчанию файл удаляется после первой загрузки река после истечения 24 часов. Равным образом можно задать отдельный пароль ради получения файла, позволяющий предотвратить приступ к конфиденциальной информации в случае попадания ссылки мало-: неграмотный в те руки (для усиления защиты фраза можно передать отдельно от ссылки, скажем так через SMS, также можно опубликовать ссылку при всем честном народе, а пароль отправить только избранным пользователям). Обслуживание Send не привязан к Firefox и подготовлен в виде универсального web-приложения, никак не требующего встраивания в браузер дополнений. Ради работы с сервисом также подготовлено специализированное Android-прибавление, бета-версия которого будет загружена в табель Google Play в течение недели. Серверная купон написана на JavaScript с использованием Node.js и СУБД Redis. Ради шифрования применяется API Web Crypto и алгоритм блочного шифрования AES-GCM (128 bit). С целью каждой загрузки вначале при помощи функции crypto.getRandomValues создаётся приватный ключ, на основе которого в рассуждении сего генерируется три ключа: ключ с целью шифрования файла при помощи AES-GCM, тумблер для шифрования метаданных при помощи AES-GCM и родничок цифровой подписи для аутентификации запроса (HMAC SHA-256). Зашифрованные цифры и ключ цифровой подписи загружаются возьми сервер, а секретный ключ для расшифровки отображается не хуже кого часть URL. При указании пароля родничок для цифровой подписи формируется равно как хэш PBKDF2 от введённого пароля и URL с фрагментом секретного ключа (организованный пользователем пароль используется для аутентификации запроса, т.е. сервер отдаст обложка только если пароль введён видать, но сам пароль не используется в целях шифрования).