6.99M
Category: informaticsinformatics

Новая презентация (1)

1.

Программа двухфакторной аутентификации в Python
Выполнил: Терехов Григорий Олегович
Челябинск, 2024

2.

Цели и задачи курсовой работы
Цели:
1. Разобрать специфику работы двухфактроной аутентификации.
2. Изучить принцип работы двухфактроной аутентификации.
3. Реализовать систему двухфактроной аутентификации на языке Python.
Задачи:
1. Провести анализ существующих методов двухфактроной аутентификации.
2. Реализовать функционал генерации одноразовых паролей с использованием библиотек Python.
2

3.

Актуальность темы
Двухфакторная аутентификация (2FA) становится все более актуальной в современном цифровом мире, где
киберугрозы и утечки данных становятся обычным явлением.
Ключевые аспекты важности этой темы:
1.
2.
3.
4.
5.
Увеличение киберугроз
Разнообразие методов аутентификации
Адаптация к новым технологиям
Поддержка различных платформ
Необходимость повышения осведомленности
3

4.

Определение двухфакторной аутентификации
Двухфакторная аутентификация (2FA) — это метод обеспечения безопасности, который требует от
пользователя предоставления двух различных форм идентификации для доступа к системам,
приложениям или ресурсам. Этот подход значительно повышает уровень защиты по сравнению с
традиционными методами аутентификации, основанными только на паролях.
4

5.

Методы двухфакторной аутентификации
1.
2.
3.
4.
5.
Одноразовые коды из SMS
Аппаратные ключи FIDO U2F (Universal 2nd Factor)
Одноразовый код из заранее сгенерированного списка
Одноразовые коды из приложения-аутентификатора
Биометрия
5

6.

Принцип работы программы
Для приложения используем библиотеку одноразовых паролей (OTP), действительных 30 секунд. Пароль
генерируется с помощью секретного ключа и текущего времени, что усложняет подделку.
6

7.

Обзор библиотек
pyotp — это библиотека Python для генерации и проверки одноразовых паролей (OTP) с использованием
алгоритмов TOTP (Time-based One-Time Password) и HOTP (HMAC-based One-Time Password).
Qrcode – этоn пакет позволяет генерировать QR-коды на Python. Часть [pil] указывает на то, что он использует
библиотеку Pillow для обработки изображений, что позволяет создавать QR-коды в виде изображений.
Pillow — это обновленный форк оригинальной библиотеки Python Imaging Library (PIL). Она предоставляет
простые методы для открытия, манипуляции и сохранения различных форматов изображений.

8.

Установка библиотек
Установка библиотек
8

9.

Код открытия картинки QR-код
Написание кода для гененирования QR-кода
9

10.

Создание QR-код
Написание кода для генерирования картинки
10

11.

Скрипт для проверки сгенерированных устройством кодов
Написание кода для проверки сгенерированных ключей в google
11

12.

Интерфейс программы
Визуализированное отображение интерфейса ввода секретного ключа
Визуализированное отображение интерфейса ввода кода аутентификатора
12

13.

Результат успешной работы программы
Успешная аутентификация программы
Успешное создание QR-кода
13

14.

Результат неправильного ввода кода доступа и
секретного ключа
Интерфейс неправильного ввода ключа для QR-кода
Интерфейс неправильного ввода кода
14

15.

16.

Заключение
В ходе работы была реализована система двухфакторной аутентификации (2FA) для защиты информации от
киберугроз. Исследованы теоретические основы двухфакторной аутентификации, включая SMS-коды и
биометрию, а также разработана программа на Python с библиотеками pyotp и qrcode для генерации
одноразовых паролей и QR-кодов.
Работа подчеркивает важность баланса между безопасностью и удобством использования, а также перспективы
двухфакторной аутентификации. Внедрение двухфакторной аутентификации является важным шагом к
созданию более безопасного пространства пользователя.
16
English     Русский Rules