Proton authenticator — открытое приложение для двухфакторной аутентификации по Totp

Компания Proton AG, известная благодаря таким сервисам, как Proton Mail, Proton Drive и Proton VPN, анонсировала выпуск нового приложения под названием Proton Authenticator. Этот инструмент предназначен для двухфакторной аутентификации с использованием одноразовых паролей, создаваемых по алгоритму TOTP (Time-based One-Time Password). Программа полностью открыта и распространяется под лицензией GPLv3.

Proton Authenticator позиционируется как продвинутая альтернатива существующим решениям вроде Google Authenticator, Microsoft Authenticator, Authy и Duo. Также приложение может заменить свободные инструменты, такие как FreeOTP и oathtool. Приложение доступно на мобильных устройствах под управлением Android и iOS, а также на компьютерах с операционными системами Linux, macOS и Windows. В зависимости от платформы для разработки использовались языки Kotlin (Android), Swift (iOS) и Rust (настольная часть и ядро функционала).

В основе Proton Authenticator лежит алгоритм TOTP, который позволяет создавать одноразовые коды подтверждения прямо на устройстве пользователя без необходимости постоянного подключения к серверу. Для начала работы достаточно один раз инициализировать секретный ключ — с помощью сканирования QR-кода или ручного ввода. Срок действия каждого пароля составляет около 30 секунд, после чего автоматически генерируется новый.

Код формируется путём вычисления хэша (SHA-1, SHA-256 или SHA-512) на основе секретного ключа и текущего временного интервала. Из полученного хэша извлекаются только определённые биты, которые и используются для создания цифрового кода подтверждения.

Ядро приложения реализовано на языке Rust, что подчёркивается как одно из преимуществ — разработчики акцентируют внимание на безопасности и надёжности реализации. В репозитории proton-pass-common на GitHub можно найти исходный код ядра, включая тесты и документацию. Весь функционал построен без использования небезопасных конструкций, за исключением нескольких отмеченных мест, где применяется unsafe для реализации потокобезопасности (Send/Sync).

Среди особенностей Proton Authenticator — отсутствие синхронизации и скрытых механизмов отслеживания, а также полное отсутствие рекламы. Это выгодно отличает его от многих популярных аналогов, особенно среди пользователей, стремящихся к максимальной конфиденциальности.

Некоторые пользователи отмечают, что приложение может сталкиваться с трудностями при импорте нестандартных ключей, например, от Steam или Яндекса. Однако в целом Proton Authenticator воспринимается как качественная альтернатива проприетарным решениям, особенно для тех, кто предпочитает open-source и открытую архитектуру.

Также поддерживается возможность восстановления доступа при потере устройства — для этого предлагаются одноразовые коды восстановления, более подробно описанные на официальном сайте поддержки Proton.

Несмотря на положительные отзывы о прозрачности и открытости проекта, часть сообщества высказывает скепсис в отношении практической пользы подобных приложений, указывая, что опытные пользователи предпочитают хранить OTP-коды в менеджерах паролей вроде KeePassXC, которые автоматически подставляют коды в нужные поля, избавляя от необходимости вручную вводить цифры с экрана.

Тем не менее, Proton Authenticator нацелен на широкую аудиторию, включая тех, кто ищет простое и безопасное решение для защиты своих учётных записей без зависимости от крупных корпораций или закрытых платформ.

Прокрутить вверх