repl.it
@menezesenderson/

trabalhoHash

Python

Trabalho para atividade de Estrutura de Dados 2.

fork
loading
Files
  • main.py
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
import hashlib
import os
import time

clear = lambda: os.system('clear')

def testar_opcao(opcao):
  try:
    int(opcao)
  except ValueError:
    print("Digite um número válido!")
    time.sleep(2)
    main()

def main():
  clear()
  print("Seja bem vindo, ao PASSWORD Plus!")
  opcao = None
  servidor = dict()
  while (opcao != 0):
    clear()
    print("Escolha uma opção do menu:")
    print("1 - Criar Usuario e Senha")
    print("2 - Digitar uma senha e autenticar usuário")
    print("0 - Sair")
    opcao = input("Aguardando opção: ")

    testar_opcao(opcao)

    if (int(opcao) == 1):
      clear()
      usuario_novo = input("Digite o nome de usuario: ")
      senha_nova = input("Digite uma senha: ")
      senha_hash = hashlib.md5(senha_nova.encode())
      servidor[senha_hash.hexdigest()] = {'usuario': usuario_novo}

    elif(int(opcao) == 2):
      clear()
      consulta_senha = input("Digite sua senha: ")
      senha_hash = hashlib.md5(consulta_senha.encode())
      if senha_hash.hexdigest() in servidor.keys():
        consulta_usuario = input("Senha pertence a qual usuario? \nDigite: ")
        if servidor[senha_hash.hexdigest()]['usuario'] != consulta_usuario:
          print("Usuário incorreto!\n")
          time.sleep(2)
        else:
          clear()
          print("\n Você está autenticado como: {}".format(servidor[senha_hash.hexdigest()]['usuario']))
          time.sleep(2)
      else:
        clear()
        print("Senha não existe!")
        time.sleep(2)

  print("Saindo...")

main()
Fetching token
?