Аутентификация
Аутентификация — это процесс проверки подлинности субъекта (пользователя, устройства, программы) или объекта (документа, сообщения) путём сравнения предъявленного идентификатора с хранящимся эталоном. Цель аутентификации — подтвердить, что субъект или объект является именно тем, за кого себя выдаёт. Аутентификация является одной из ключевых процедур обеспечения информационной безопасности, наряду с идентификацией (распознаванием субъекта по уникальному признаку) и авторизацией (предоставлением прав доступа после успешной аутентификации).
История
Первые методы аутентификации возникли задолго до появления компьютеров. В древности для подтверждения личности использовались печати, подписи, пароли (например, в римских легионах) и устные кодовые фразы. С развитием письменности и бюрократии распространились рукописные подписи и личные печати.
В середине XX века, с появлением компьютерных систем, возникла необходимость в цифровой аутентификации. Первые системы использовали простые пароли, хранящиеся в незашифрованном виде. В 1960-х годах в Массачусетском технологическом институте (MIT) была разработана система Compatible Time-Sharing System (CTSS), где пароли хранились в открытом виде, что приводило к частым утечкам. В 1970-х годах появились первые криптографические хеш-функции, позволяющие хранить пароли в виде хеша.
В 1980-х годах, с ростом числа пользователей и сетей, стали применяться аппаратные токены (например, RSA SecurID), генерирующие одноразовые пароли. В 1990-х годах, с развитием интернета, появились цифровые сертификаты и инфраструктура открытых ключей (PKI). В начале 2000-х годов биометрические методы (отпечатки пальцев, распознавание лица) начали внедряться в массовые устройства, такие как ноутбуки и смартфоны. В 2010-х годах, в ответ на рост количества утечек паролей, получила распространение многофакторная аутентификация (MFA), а также стандарты WebAuthn и FIDO2.
Виды аутентификации
Аутентификация классифицируется по количеству используемых факторов и по типу проверяемых признаков.
По количеству факторов
- Однофакторная аутентификация — использует только один фактор (например, только пароль или только отпечаток пальца). Считается наименее надёжной.
- Двухфакторная аутентификация (2FA) — использует два фактора из разных категорий (например, пароль и одноразовый код из SMS). Значительно повышает безопасность.
- Многофакторная аутентификация (MFA) — использует два или более факторов. Является стандартом безопасности для критически важных систем.
По типу факторов
Факторы аутентификации делятся на три основные категории:
- Фактор знания (что-то, что знает субъект):
- Пароль (статический, одноразовый).
- Пин-код.
- Ответ на секретный вопрос.
- Ключевая фраза.
- Фактор владения (что-то, что имеет субъект):
- Аппаратный токен (USB-ключ, смарт-карта).
- Программный токен (мобильное приложение-аутентификатор, например, Google Authenticator).
- SIM-карта.
- Смартфон с установленным приложением.
- Одноразовый код, полученный по SMS или электронной почте.
- Фактор наследия (что-то, чем является субъект):
- Биометрические статические признаки: отпечатки пальцев, рисунок радужной оболочки глаза, геометрия лица, рисунок вен ладони.
- Биометрические динамические признаки: голос, подпись, походка, ритм набора текста на клавиатуре.
По способу реализации
- Локальная аутентификация — проверка выполняется на том же устройстве, где работает субъект (например, разблокировка смартфона по лицу).
- Удалённая аутентификация — проверка выполняется на удалённом сервере через сеть (например, вход в веб-почту).
- Безпарольная аутентификация — аутентификация без использования пароля, основанная на криптографических ключах (например, стандарты FIDO2/WebAuthn). Пользователь подтверждает личность с помощью биометрии или PIN-кода на своём устройстве, а сервер проверяет цифровую подпись.
Методы и протоколы
Для реализации аутентификации в компьютерных системах используются различные протоколы и методы:
- HTTP Basic Authentication — простейший метод, при котором имя пользователя и пароль передаются в заголовке HTTP-запроса в кодировке Base64. Не обеспечивает шифрования, уязвим для перехвата.
- HTTP Digest Authentication — более безопасный метод, при котором пароль не передаётся в открытом виде, а используется хеш-сумма.
- Kerberos — протокол аутентификации, основанный на билетах и симметричной криптографии. Широко используется в корпоративных сетях (Active Directory).
- LDAP (Lightweight Directory Access Protocol) — протокол для доступа к службе каталогов, часто используется для централизованной аутентификации пользователей.
- RADIUS (Remote Authentication Dial-In User Service) — протокол для аутентификации, авторизации и учёта (AAA) пользователей сетевых служб (VPN, Wi-Fi).
- OAuth 2.0 — протокол делегированного доступа, позволяющий предоставить стороннему приложению ограниченный доступ к ресурсам пользователя без передачи ему пароля. Часто используется для входа через социальные сети.
- OpenID Connect (OIDC) — надстройка над OAuth 2.0, добавляющая аутентификацию пользователя. Позволяет получить удостоверение личности (ID Token) в формате JWT.
- SAML (Security Assertion Markup Language) — протокол на основе XML для обмена данными аутентификации и авторизации между сторонами (поставщиком удостоверений и поставщиком услуг).
- FIDO2 / WebAuthn — современный открытый стандарт безпарольной аутентификации, использующий криптографию с открытым ключом. Позволяет аутентифицироваться с помощью биометрии, PIN-кода или внешнего ключа безопасности.
Применение
Аутентификация применяется повсеместно в различных сферах:
- Информационные системы: вход в операционные системы, приложения, базы данных, веб-сайты.
- Финансовый сектор: доступ к интернет-банкингу, проведение платежей, использование банкоматов (PIN-код, биометрия).
- Корпоративные сети: доступ к VPN, удалённым рабочим столам, внутренним ресурсам компании.
- Государственные услуги: портал «Госуслуги» (Россия), электронные подписи, доступ к базам данных.
- Мобильные устройства: разблокировка смартфона, планшета (PIN, графический ключ, отпечаток, лицо).
- Физический доступ: пропускные системы на предприятиях (смарт-карты, биометрия), замки с кодовым доступом.
- Криптовалюты: доступ к кошелькам (приватные ключи, seed-фразы).
Безопасность и уязвимости
Аутентификация не является абсолютно надёжной и подвержена различным атакам:
- Перехват пароля (sniffing): злоумышленник перехватывает пароль при передаче по сети. Защита — использование шифрования (TLS/SSL).
- Подбор пароля (brute-force): автоматический перебор всех возможных комбинаций. Защита — установка ограничений на количество попыток, CAPTCHA, использование сложных паролей.
- Фишинг (phishing): создание поддельных сайтов или писем, имитирующих легитимные сервисы, для кражи учётных данных. Защита — обучение пользователей, использование MFA.
- Атака «человек посередине» (Man-in-the-Middle, MitM): злоумышленник перехватывает и подменяет трафик между пользователем и сервером. Защита — использование HTTPS, проверка сертификатов.
- Кража базы данных паролей: злоумышленник получает доступ к серверу и извлекает хеши паролей. Защита — использование криптостойких хеш-функций (bcrypt, scrypt, Argon2) и соли.
- Социальная инженерия: манипулирование людьми для получения конфиденциальной информации (например, звонок от «службы поддержки»).
- Уязвимости биометрии: возможность подделки отпечатков пальцев (желатиновые муляжи), обхода распознавания лица (фотография, видео). Защита — использование liveness detection (проверка на «живость»).
Тенденции развития
Современные тенденции в области аутентификации включают:
- Безпарольная аутентификация: отказ от паролей в пользу криптографических ключей и биометрии (FIDO2/WebAuthn).
- Непрерывная аутентификация: мониторинг поведения пользователя (динамика набора текста, движения мыши, геолокация) для постоянного подтверждения его личности в течение сессии.
- Адаптивная (контекстная) аутентификация: изменение требований к аутентификации в зависимости от контекста (IP-адрес, устройство, время суток, местоположение). Например, при входе с неизвестного устройства может потребоваться MFA.
- Децентрализованная аутентификация (Self-Sovereign Identity, SSI): пользователь самостоятельно управляет своими учётными данными, храня их на своём устройстве, а не на сервере провайдера.
- Квантово-устойчивая криптография: разработка алгоритмов аутентификации, устойчивых к атакам с использованием квантовых компьютеров.
Источники
- Фергюсон Н., Шнайер Б. «Практическая криптография».
- Столлингс В. «Криптография и защита сетей: принципы и практика».
- RFC 7617 — «The 'Basic' HTTP Authentication Scheme».
- RFC 7616 — «HTTP Digest Access Authentication».
- RFC 4120 — «The Kerberos Network Authentication Service (V5)».
- FIDO Alliance — «FIDO2: WebAuthn & CTAP Specifications».
- Национальный стандарт РФ ГОСТ Р 58833-2020 «Защита информации. Аутентификация. Термины и определения».
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →