WebCrypto.

Причина, по которой получателю не нужно приложение: браузер уже содержит криптографию.

// definition

WebCrypto (Web Cryptography API) — это стандартный интерфейс JavaScript к нативному криптодвижку браузера. Просмотрщик BurnPony использует его для всего — HKDF, PBKDF2 и AES-256-GCM — с нулём встроенных библиотек.

Что это

Использование криптографии платформы держит просмотрщик честным двумя способами. Он остаётся достаточно маленьким, чтобы его можно было проверить через «Просмотр исходного кода», потому что нет 500-килобайтной библиотеки, через которую пришлось бы продираться. И сам шифр исполняется в собственной проверенной, аппаратно ускоренной реализации браузера, а не в JavaScript, который кто-то поставил.

Почему это важно

Это к тому же гарантирует охват: любой современный браузер на любом устройстве может открыть записку. «Получателям не нужно приложение» верно лишь потому, что нужная им криптография уже установлена.

// in BurnPony Путь WebCrypto просмотрщика и путь Swift приложения перекрёстно проверяются на независимо сгенерированных тестовых векторах — записка, запечатанная CryptoKit, должна открываться в WebCrypto байт в байт, и открывается.

Связанные термины

Частые вопросы.

Какие браузеры работают?

Любой современный браузер — операции WebCrypto, которые использует BurnPony, годами стандартны в Safari, Chrome, Firefox и Edge. Очень старые браузеры без WebCrypto не могут расшифровать, и это правильный отказ.

Означает ли использование браузерной криптографии, что код выполняет сервер?

Сервер доставляет страницу просмотрщика один раз; всё криптографическое затем выполняется локально в вашем браузере. Content-Security-Policy страницы запрещает ей загружать код откуда бы то ни было.

Установите BurnPony

Бесплатные самоуничтожающиеся зашифрованные записки для iPhone и Android. Получателям нужен только браузер. Без аккаунтов, без слежки.