🔒Как сделать шифратор на питоне: подробное руководство для начинающих!

Как сделать шифратор на питоне?

Разработка шифратора на Python может быть интересным и полезным заданием. Вот пример простого шифратора, который использует шифр Цезаря:


def шифр_Цезаря(текст, сдвиг):
   зашифрованный_текст = ""
   
   for символ in текст:
       если символ.isalpha():
           код_символа = ord(символ)
           новый_код = код_символа + сдвиг
           
           если символ.isupper():
               новый_код = (новый_код - 65) % 26 + 65
           else:
               новый_код = (новый_код - 97) % 26 + 97
           
           зашифрованный_символ = chr(новый_код)
           зашифрованный_текст += зашифрованный_символ
       else:
           зашифрованный_текст += символ
   
   return зашифрованный_текст

текст = input("Введите текст для зашифровки: ")
сдвиг = int(input("Введите сдвиг: "))

зашифрованный_текст = шифр_Цезаря(текст, сдвиг)
print("Зашифрованный текст:", зашифрованный_текст)

Приведенный код представляет функцию шифр_Цезаря, которая принимает текст и сдвиг как аргументы, и возвращает зашифрованный текст. Она работает путем сдвига каждой буквы в тексте на указанное число позиций в алфавите.

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

Чтобы использовать шифратор, введите текст для зашифровки и указанное число сдвига при запуске программы.

Успехов!

Детальный ответ

Как сделать шифратор на питоне

Шифраторы являются важным инструментом для защиты информации путем преобразования текста в непонятный вид. В этой статье мы рассмотрим, как создать простой шифратор на питоне.

Шаг 1: Импорт модуля string

import string

Модуль string предоставляет набор полезных строковых констант, которые мы можем использовать для работы с символами и их кодами.

Шаг 2: Создание словаря для шифрования

def create_cipher_dict(shift):
    alphabet = string.ascii_lowercase
    shifted_alphabet = alphabet[shift:] + alphabet[:shift]
    cipher_dict = {}
    
    for i in range(len(alphabet)):
        cipher_dict[alphabet[i]] = shifted_alphabet[i]
    
    return cipher_dict

shift = 3
cipher_dict = create_cipher_dict(shift)

Мы создаем словарь cipher_dict, где каждая буква алфавита сопоставляется с соответствующей буквой, сдвинутой на указанное количество позиций. Например, если сдвиг равен 3, то символ 'a' будет заменен на 'd', 'b' на 'e' и так далее.

Шаг 3: Функция для шифрования

def encrypt(message):
    encrypted_message = ''
    
    for char in message:
        if char.isalpha():
            char = char.lower()
            encrypted_char = cipher_dict.get(char, char)
            if char.isupper():
                encrypted_message += encrypted_char.upper()
            else:
                encrypted_message += encrypted_char
        else:
            encrypted_message += char
    
    return encrypted_message

Функция encrypt принимает сообщение в виде строки и возвращает шифрованное сообщение. Она проходит по каждому символу в сообщении и, если символ является буквой, заменяет его соответствующим шифрованным символом из словаря. Если символ не является буквой, он остается неизменным.

Пример использования

message = "Hello, World!"
encrypted_message = encrypt(message)
print(encrypted_message)

Вывод программы:

Khoor, Zruog!

В данном примере мы шифруем сообщение "Hello, World!" с использованием созданного шифратора и выводим зашифрованное сообщение.

Расшифровка сообщения

Чтобы расшифровать зашифрованное сообщение, можно создать функцию decrypt, которая будет выполнять обратные операции:

def decrypt(encrypted_message):
    decrypted_message = ''
    
    for char in encrypted_message:
        if char.isalpha():
            char = char.lower()
            decrypted_char = list(cipher_dict.keys())[list(cipher_dict.values()).index(char)]
            if char.isupper():
                decrypted_message += decrypted_char.upper()
            else:
                decrypted_message += decrypted_char
        else:
            decrypted_message += char
    
    return decrypted_message

Функция decrypt принимает зашифрованное сообщение и возвращает расшифрованное сообщение, заменяя каждый шифрованный символ его исходным значением.

Пример расшифровки

encrypted_message = "Khoor, Zruog!"
decrypted_message = decrypt(encrypted_message)
print(decrypted_message)

Вывод программы:

Hello, World!

В данном примере мы расшифровываем зашифрованное сообщение "Khoor, Zruog!" с использованием созданного шифратора и выводим исходное сообщение.

Заключение

Теперь вы знаете, как создать простой шифратор на питоне с помощью сдвига символов. Этот шифратор может быть полезным для защиты конфиденциальной информации при необходимости. Расшифровывать сообщение можно, зная сдвиг, используя обратные операции.

Видео по теме

Шифруем файлы с помощью Python

Шифр цезаря на python

ЭТИЧНЫЙ ХАКЕР: Шифр Цезаря на Python в 13 строк.

Похожие статьи:

Учебный гайд: что создать новичку на питоне? 🐍✨

🔎 Почему не прерывается цикл в Python?

📚 Как сохранить словарь в Питон? Узнайте про легкие способы сохранения словаря в языке программирования Питон!

🔒Как сделать шифратор на питоне: подробное руководство для начинающих!

🔎 Как пишется интеграл в Питоне? Полнота руководство для начинающих

Что такое перевод строки в Python? 🤔

🔧 Как установить idle python на windows 7? Шаг за шагом руководство! 💻