Buscar

Criptografia AES em Python

Prévia do material em texto

Criptografia 
 
 
1. Exercício: Peça aos alunos que implementem um algoritmo de criptografia 
simétrica, como o AES (Advanced Encryption Standard), em um programa 
de computador. Eles podem seguir as etapas abaixo:
Escolha uma linguagem de programação de sua preferência.
Pesquise e implemente o algoritmo AES para criptografar e descriptografar 
mensagens.
Crie uma função ou método para receber uma mensagem de entrada e uma 
chave de criptografia.
Use o algoritmo AES para criptografar a mensagem usando a chave 
fornecida.
Crie outra função ou método para receber a mensagem criptografada e a 
chave de criptografia e descriptografar a mensagem original.
Teste o programa com diferentes mensagens e chaves de criptografia para 
garantir que a criptografia e descriptografia estejam funcionando 
corretamente.
Resposta:
pythonCopy codefrom Crypto.Cipher import AES
from Crypto.Random import get_random_bytes
from Crypto.Protocol.KDF import scrypt
def encrypt_message(message, key):
 cipher = AES.new(key, AES.MODE_EAX)
 nonce = cipher.nonce
 ciphertext, tag = cipher.encrypt_and_digest(message)
 return nonce, ciphertext, tag
def decrypt_message(nonce, ciphertext, tag, key):
 cipher = AES.new(key, AES.MODE_EAX, nonce=nonce)
 decrypted_message = cipher.decrypt_and_verify(ciphertext, tag)
 return decrypted_message
# Exemplo de uso
message = b"Hello, World!"
key = get_random_bytes(16) # Chave de 128 bits
nonce, ciphertext, tag = encrypt_message(message, key)
af://n2881
	 Criptografia

Mais conteúdos dessa disciplina