Приветствую интересующихся. В этой статье я расскажу, как создать собственную систему шифрования-дешифрования на питоне (своих не душим, по-возможности). Шаг 1: Установка Python и настройка среды Чтобы начать работу, вам потребуется Python, а также несколько библиотек для шифрования. Выполните следующие шаги: Установите Python (если его еще нет на вашем компьютере). Загрузите Python с официального сайта. При установке поставьте галочку рядом с опцией "Add Python to PATH", чтобы позже можно было запускать Python из командной строки. Проверьте установку. Откройте терминал или командную строку и введите: python --version Code python --version Должен появиться номер версии Python, например Python 3.10.5. Установите библиотеку для шифрования. Введите следующую команду, чтобы установить библиотеку cryptography: pip install cryptography Code pip install cryptography Убедитесь, что установка завершилась без ошибок. Шаг 2: Создаем скрипт шифрования Теперь, когда среда настроена, создадим скрипт для шифрования файлов в выбранной папке. Вот что нужно сделать: Откройте текстовый редактор (например, Visual Studio Code, Sublime Text или Notepad++). Вставьте следующий код и сохраните его с именем encryptor.py: from cryptography.fernet import Fernet import os # Генерируем ключ (или загружаем существующий) key = Fernet.generate_key() cipher = Fernet(key) # Путь к папке, которую вы хотите зашифровать directory_path = "path/to/folder" # Шифруем все файлы в папке def encrypt_folder(path): for root, dirs, files in os.walk(path): for file in files: file_path = os.path.join(root, file) with open(file_path, "rb") as f: encrypted_data = cipher.encrypt(f.read()) with open(file_path, "wb") as f: f.write(encrypted_data) # Сохраняем ключ для последующей дешифровки with open("encryption_key.key", "wb") as key_file: key_file.write(key) encrypt_folder(directory_path) print("Файлы зашифрованы!") Python from cryptography.fernet import Fernet import os # Генерируем ключ (или загружаем существующий) key = Fernet.generate_key() cipher = Fernet(key) # Путь к папке, которую вы хотите зашифровать directory_path = "path/to/folder" # Шифруем все файлы в папке def encrypt_folder(path): for root, dirs, files in os.walk(path): for file in files: file_path = os.path.join(root, file) with open(file_path, "rb") as f: encrypted_data = cipher.encrypt(f.read()) with open(file_path, "wb") as f: f.write(encrypted_data) # Сохраняем ключ для последующей дешифровки with open("encryption_key.key", "wb") as key_file: key_file.write(key) encrypt_folder(directory_path) print("Файлы зашифрованы!") Теперь, когда скрипт готов, запустим его из командной строки: Откройте терминал или командную строку и перейдите в папку, где сохранен скрипт encryptor.py: cd path/to/your/script Code cd path/to/your/script Запустите скрипт: python encryptor.py Code python encryptor.py После выполнения скрипта все файлы в указанной папке будут зашифрованы, и вы увидите сообщение "Файлы зашифрованы!". Шаг 4: Создание скрипта дешифрования Теперь давайте создадим скрипт дешифрования. Сохраните следующий код в новом файле под именем decryptor.py: from cryptography.fernet import Fernet import os # Загружаем ключ для дешифрования with open("encryption_key.key", "rb") as key_file: key = key_file.read() cipher = Fernet(key) directory_path = "path/to/folder" # Дешифруем все файлы в папке def decrypt_folder(path): for root, dirs, files in os.walk(path): for file in files: file_path = os.path.join(root, file) with open(file_path, "rb") as f: decrypted_data = cipher.decrypt(f.read()) with open(file_path, "wb") as f: f.write(decrypted_data) decrypt_folder(directory_path) print("Файлы дешифрованы!") Python from cryptography.fernet import Fernet import os # Загружаем ключ для дешифрования with open("encryption_key.key", "rb") as key_file: key = key_file.read() cipher = Fernet(key) directory_path = "path/to/folder" # Дешифруем все файлы в папке def decrypt_folder(path): for root, dirs, files in os.walk(path): for file in files: file_path = os.path.join(root, file) with open(file_path, "rb") as f: decrypted_data = cipher.decrypt(f.read()) with open(file_path, "wb") as f: f.write(decrypted_data) decrypt_folder(directory_path) print("Файлы дешифрованы!") Шаг 5: Запуск скрипта дешифрования Чтобы расшифровать файлы, запустите decryptor.py аналогично шагу 3: Перейдите в папку со скриптом: Запустите скрипт: python decryptor.py Code python decryptor.py Вы получите сообщение "Файлы дешифрованы!", и файлы вернутся в исходное состояние. На этом всё, поддерживайте статью и дальше, будет лучше. Удачи