Este projeto é um script simples para criptografar e descriptografar mensagens usando criptografia simétrica(AES via Fernet), com derivação de chave baseada em senha(PBKDF2HMAC).
- Criptografa mensagens digitadas pelo usuário.
- Descriptografa mensagens usando a mesma senha.
- Gera salt aleatório para cada criptografia, aumentando a segurança.
Escolha uma opção:
1. Criptografar
2. Descriptografar
3. Sair
>1
digite a mensagem que você quer criptografar: Olá mundo!
MlBNZ1lWWWZNeWc2VUpYaU5icWVNVFdLRncxSy14UmRJbFk1Yzl1X3ltQXdhRDRSdmRSV044ZGRHQnB1MGFRPT0=
Escolha uma opção:
1. Criptografar
2. Descriptografar
3. Sair
>2
digite a mensagem que você quer descriptografar: XAE9q09oqBcOz9kCJtK_2mdBQUFBQUJvdUYwMFRnV1YyeVJQeUpURnJSWFc0TkxEU1JuMlBNZ1lWWWZNeWc2VUpYaU5icWVNVFdLRncxSy14UmRJbFk1Yzl1X3ltQXdhRDRSdmRSV044ZGRHQnB1MGFRPT0=
digite a senha para descriptografar a mensagem: 0909
mensagem descriptografada: Olá mundo!
MlBNZ1lWWWZNeWc2VUpYaU5icWVNVFdLRncxSy14UmRJbFk1Yzl1X3ltQXdhRDRSdmRSV044ZGRHQnB1MGFRPT0=
Escolha uma opção:
1. Criptografar
2. Descriptografar
3. Sair
>2
yeVJQeUpURnJSWFc0TkxEU1JuMlBNZ1lWWWZNeWc2VUpYaU5icWVNVFdLRncxSy14UmRJbFk1Yzl1X3ltQXdhRDRSdmRSV044ZGRHQnB1MGFRPT0=
digite a senha para descriptografar a mensagem: 0909
mensagem descriptografada: Olá mundo!
Escolha uma opção:
1. Criptografar
2. Descriptografar
3. Sair
>
Instale as dependências:
- pip install cryptography
-
Algoritmo de criptografia: Fernet (AES 128 em modo CBC + HMAC para integridade)
-
Derivação de chave: PBKDF2HMAC com SHA256
-
Salt: Gerado aleatoriamente (16 bytes) para cada operação de criptografia
-
Iterações do KDF:** 100.000 (aumenta a segurança contra ataques de força bruta)
-
Codificação: Base64 para facilitar o armazenamento e transferência dos dados criptografados
-
Senha: Convertida em chave criptográfica segura usando PBKDF2HMAC
Biblioteca Cryptography:
-
PBKDF2HMAC (cryptography.hazmat.primitives.kdf.pbkdf2)
-
hashes (cryptography.hazmat.primitives)
-
default_backend (cryptography.hazmat.backends)
-
Fernet (cryptography.fernet)
Bibliotecas padrão Python:
-
import os
-
import base64