-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathcreate_password.py
More file actions
47 lines (35 loc) · 1.25 KB
/
Copy pathcreate_password.py
File metadata and controls
47 lines (35 loc) · 1.25 KB
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
# coding: utf-8
import stdiomask
import sys
from Crypto.Protocol.KDF import PBKDF2 as KDF2
from time import sleep
from encrypt_data import encrypt_data
from pyfiglet import Figlet
def create_password(salt):
"""Cria uma nova senha de acesso para o ET256."""
__PASSWORD_FILE = "DATA_GHOST.txt"
print("\n#### ET256 by @aguiar0x01 on GitHub ####")
figlet = Figlet(font="Slant")
title = figlet.renderText("ET256")
print(title)
while True:
"""Criação e validação de uma nova senha para acesso."""
print("\n[ + ] Criando senha para acesso.")
print("[ ! ] NÃO PERCA OU COMPARTILHE A SUA SENHA.")
__password = stdiomask.getpass(prompt="\n=> Insira uma nova senha: ")
__confirm_password = stdiomask.getpass(prompt="=> Confirme a senha: ")
if __password == __confirm_password:
print("\nExecute novamente o script para começar a usar...\nBoa sorte!\n")
break
else:
print("\n[ ERRO ] AS SENHAS DIGITADAS SÃO DIFERENTES!")
print("Tente novamente..")
# Escreve a senha de acesso no arquivo
with open(__PASSWORD_FILE, "w") as fo:
fo.write(__password)
# Combina senha + salt e cria a chave
__KEY = KDF2(__password, salt, dkLen=32)
# Encripta o arquivo com a senha de acesso
encrypt_data(__PASSWORD_FILE, __KEY)
sleep(4)
sys.exit(0)