Passkeys for MODX Revolution 3
==================================================
Version/Версия: 1.0.0-pl
License/Лицензия: MIT License
Author/Автор: Almanex
GitHub: https://github.com/Almanex/Modx3-passkeys.git

==================================================
[RU] РУССКОЕ ОПИСАНИЕ
==================================================

ОПИСАНИЕ КОМПОНЕНТА
--------------------------------------------------
Passkeys (WebAuthn / FIDO2) — современное расширение безопасности для CMS MODX Revolution 3.
Компонент позволяет администраторам сайта входить в панель управления (/manager/) с помощью сканеров биометрии 
(Touch ID, Face ID, Windows Hello) и физических аппаратных USB/NFC ключей безопасности (YubiKey, Google Titan, Token2).

ОСНОВНЫЕ ВОЗМОЖНОСТИ
--------------------------------------------------
- Беспарольный вход на форму авторизации менеджера по стандарту W3C WebAuthn / FIDO2.
- Защита от фишинга и атак повторного воспроизведения (Replay Attacks / Challenge Verification).
- Поддержка биометрии (Touch ID, Face ID, Windows Hello) и аппаратных USB/NFC ключей.
- Панель управления привязанными устройствами в админке (Меню профиля — Мои Passkeys).
- Визуальные иконки типов устройств и возможность переименования ключей.
- Полная мультиязычность (Русский / Английский лексиконы).
- Беспарольный беслогиновый вход (Resident Keys / Discoverable Credentials).

СИСТЕМНЫЕ ТРЕБОВАНИЯ
--------------------------------------------------
- MODX Revolution 3.0.0-pl и выше
- PHP 8.1 и выше (с включенными расширениями OpenSSL, JSON, MBString)
- Наличие защищенного соединения HTTPS (или работа на localhost/127.0.0.1)

БЫСТРЫЙ СТАРТ И ИНСТРУКЦИЯ ПО ПРИВЯЗКЕ КЛЮЧЕЙ
--------------------------------------------------
1. Установите пакет passkeys-1.0.0-pl через Управление пакетами MODX.
2. Перейдите в верхнее меню: Профиль пользователя — «Мои Passkeys».
3. Нажмите кнопку «Привязать новое устройство Passkey».
4. Введите понятное название устройства (например, «Мой YubiKey 5C» или «Touch ID») и нажмите «Продолжить».
5. Браузер выведет системный диалог — коснитесь датчика отпечатка пальца или USB-ключа.
6. Устройство успешно привязано! Выйдите из админки для проверки.
7. На странице входа введите имя пользователя и нажмите кнопку «Войти по Passkey» (или просто нажмите «Войти по Passkey» без ввода логина).

ВАЖНОЕ ПРИМЕЧАНИЕ ПО БЕЗОПАСНОСТИ (HTTPS vs HTTP)
--------------------------------------------------
Стандарт WebAuthn строго блокируется браузерами на незащищенном протоколе HTTP.
- В интернете компонент работает ИСКЛЮЧИТЕЛЬНО по HTTPS.
- На локальном сервере (localhost) разработка поддерживается по HTTP/HTTPS.
- Физические USB-ключи (Google Titan, Token2) требуют работы по HTTPS или настройки chrome://flags/#unsafely-treat-insecure-origin-as-secure для локального HTTP.


==================================================
[EN] ENGLISH DESCRIPTION
==================================================

COMPONENT DESCRIPTION
--------------------------------------------------
Passkeys (WebAuthn / FIDO2) is a modern security extension for CMS MODX Revolution 3.
It allows site administrators to log in to the MODX manager (/manager/) using biometric scanners 
(Touch ID, Face ID, Windows Hello) and physical USB/NFC security keys (YubiKey, Google Titan, Token2).

KEY FEATURES
--------------------------------------------------
- Passwordless login to the manager panel using W3C WebAuthn / FIDO2 standards.
- Protection against phishing and replay attacks (Replay Attacks / Challenge Verification).
- Support for biometrics (Touch ID, Face ID, Windows Hello) and hardware USB/NFC keys.
- Registered devices dashboard in the manager (User Profile menu — My Passkeys).
- Visual device type icons and key renaming functionality.
- Fully multilingual (Russian and English lexicons).
- Passwordless and username-less login flow (Resident Keys / Discoverable Credentials).

SYSTEM REQUIREMENTS
--------------------------------------------------
- MODX Revolution 3.0.0-pl or higher
- PHP 8.1 or higher (with OpenSSL, JSON, and MBString extensions enabled)
- Active HTTPS connection (or working on localhost/127.0.0.1)

QUICK START & DEVICE REGISTRATION GUIDE
--------------------------------------------------
1. Install the passkeys-1.0.0-pl package via MODX Package Management.
2. Go to the top menu: User Profile — "My Passkeys".
3. Click the "Add New Passkey Device" button.
4. Enter a recognizable device name (e.g. "My YubiKey 5C" or "Touch ID") and click "Proceed".
5. The browser will prompt a system dialog — tap your fingerprint scanner or security key.
6. The device is successfully linked! Log out of the manager to test.
7. On the login page, enter your username and click "Sign in with Passkey" (or simply click "Sign in with Passkey" without entering your username).

IMPORTANT SECURITY NOTE (HTTPS vs HTTP)
--------------------------------------------------
WebAuthn is strictly blocked by browsers on non-secure HTTP.
- On live environments, the component works EXCLUSIVELY over HTTPS.
- Local development (localhost) is supported over HTTP/HTTPS.
- Note: physical USB keys (Google Titan, Token2) require HTTPS or setting chrome://flags/#unsafely-treat-insecure-origin-as-secure for local HTTP.
