Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/python3
- from os.path import isfile, getsize
- from os import remove
- from secrets import randbits
- from math import floor
- filename: str
- while True :
- filename = input('File: ')
- if filename.lower().strip() in ('', 'none', 'quit') :
- exit()
- elif isfile(filename.strip()) :
- filename = filename.strip()
- print()
- break
- else :
- print('\a')
- iterations: int
- while True :
- try :
- iterations = int(input('Number of iterations: ').strip())
- assert iterations > 0
- break
- except :
- print('\a')
- file_size: int
- try :
- file_size = getsize(filename)
- except :
- print('No access.')
- exit()
- for x in range(iterations) :
- y = floor(x / iterations * 100)
- print(f"{y:>02}%\r", end='')
- try :
- file = open(filename, 'wb+')
- file.write(bytes(randbits(8) for _ in range(file_size)))
- except :
- print('Access interrupted on {}%.'.format(y) if x else 'No access.')
- exit()
- finally :
- try :
- file.close()
- except NameError :
- pass
- try :
- file = open(filename, 'rb')
- read = file.readall()
- file.close()
- #
- file = open(filename, 'wb+')
- file.write(bytes(randbits(8) ^ read[x] for x in range(file_size)))
- file.close()
- #
- remove(filename)
- except :
- print('No access.')
- exit()
- finally :
- try :
- if not file.closed : file.close()
- except :
- pass
- print('Done.')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement