Нужно создать программу, представляющую собой форму доступа к определённым информационным ресурсам на основе пароля 7- это длина пароля Цифры- это используемые символы Применение метода аутентификации на основе одноразовых паролей: к первой цифре каждого следующего пароля прибавляется 1.- дополнительные средства защиты В системе должна храниться следующая информация о пользователе: ID или имя пользователя, пароль, ФИО, дата рождения, место рождения (город) номер телефона. Пользователь должен иметь возможность поменять пароль (ограничения: см. вариант).
Для создания программы доступа к информационным ресурсам на основе пароля с одноразовыми паролями можно использовать следующий код на Python:
import random # Список пользователей с информацией users = [{ 'ID': 1, 'username': 'user1', 'password': '123456', 'full_name': 'Иванов Иван Иванович', 'birth_date': '01.01.2000', 'birth_place': 'Москва', 'phone_number': '1234567890' }] def generate_one_time_password(password): otp = '' for digit in password: otp += str((int(digit) + 1) % 10) # прибавляем 1 к каждой цифре пароля return otp def login(username, password): for user in users: if user['username'] == username and user['password'] == password: return user return None def change_password(user, new_password): user['password'] = new_password # Пример использования username = input("Введите имя пользователя: ") password = input("Введите пароль: ") user = login(username, password) if user: print("Вход выполнен успешно.") otp = generate_one_time_password(user['password']) print(f"Одноразовый пароль для доступа: {otp}") new_password = input("Введите новый пароль: ") change_password(user, new_password) print("Пароль успешно изменен.") else: print("Неверное имя пользователя или пароль.")
Этот код предоставляет возможность входа в систему пользователям, генерации одноразового пароля на основе основного пароля, а также изменения пароля. Пользовательская информация представлена в списке users, а для каждого пользователя можно выполнить вход, сгенерировать одноразовый пароль и изменить пароль.
Для создания программы доступа к информационным ресурсам на основе пароля с одноразовыми паролями можно использовать следующий код на Python:
import random# Список пользователей с информацией
users = [{
'ID': 1,
'username': 'user1',
'password': '123456',
'full_name': 'Иванов Иван Иванович',
'birth_date': '01.01.2000',
'birth_place': 'Москва',
'phone_number': '1234567890'
}]
def generate_one_time_password(password):
otp = ''
for digit in password:
otp += str((int(digit) + 1) % 10) # прибавляем 1 к каждой цифре пароля
return otp
def login(username, password):
for user in users:
if user['username'] == username and user['password'] == password:
return user
return None
def change_password(user, new_password):
user['password'] = new_password
# Пример использования
username = input("Введите имя пользователя: ")
password = input("Введите пароль: ")
user = login(username, password)
if user:
print("Вход выполнен успешно.")
otp = generate_one_time_password(user['password'])
print(f"Одноразовый пароль для доступа: {otp}")
new_password = input("Введите новый пароль: ")
change_password(user, new_password)
print("Пароль успешно изменен.")
else:
print("Неверное имя пользователя или пароль.")
Этот код предоставляет возможность входа в систему пользователям, генерации одноразового пароля на основе основного пароля, а также изменения пароля. Пользовательская информация представлена в списке users, а для каждого пользователя можно выполнить вход, сгенерировать одноразовый пароль и изменить пароль.