Introdução à Criptografia Pós-Quântica (PQC NIST) e Homomórfica
Instruções Gerais:
- Resolva as atividades em ordem progressiva de maturidade.
- Cada nível adiciona requisitos técnicos, tratamento de erros e casos de borda reais.
- Consulte o gabarito comentado ao final de cada questão para autoavaliação.
🎯 Nível 1: Fundamentos
Problema 19.1 — Impacto do Algoritmo de Shor em RSA/ECC e Padronização PQC NIST
Contexto: Impacto do Algoritmo de Shor em RSA/ECC e Padronização PQC NIST no contexto de Introdução à Criptografia Pós-Quântica (PQC NIST) e Homomórfica.
Requisitos de Execução:
- Demonstrar como o Algoritmo de Shor reduz a complexidade de fatoração inteira e logaritmo discreto a tempo polinomial.
Resultado Esperado
Análise da transição para algoritmos baseados em reticulados (Lattice-based cryptography).
📤 Instruções de Entrega (Microsoft Teams)
- Salve o arquivo como:
Atividade_19_1_SeuNome - Envie na tarefa:
Atividade Cap 19 - Introdução à Criptografia Pós-Quântica (PQC NIST) e Homomórfica
🔑 Gabarito de Código & Solução Comentada
def avaliar_impacto_quantico() -> None:
print("Vulneraveis a Computadores Quanticos (Shor): RSA, ECC (ECDSA/Ed25519), Diffie-Hellman")
print("Resistentes / PQC NIST: ML-KEM (Kyber), ML-DSA (Dilithium), SLH-DSA (SPHINCS+)")
print("Simetricos (Grover): AES-256 e SHA-384 permanecem 100% seguros!")
if __name__ == "__main__":
avaliar_impacto_quantico()
🔍 Nível 2: Prática
Problema 19.2 — Acordo de Chaves Pós-Quântico com ML-KEM (CRYSTALS-Kyber)
Contexto: Acordo de Chaves Pós-Quântico com ML-KEM (CRYSTALS-Kyber) no contexto de Introdução à Criptografia Pós-Quântica (PQC NIST) e Homomórfica.
Requisitos de Execução:
- Simular encapsulamento e desencapsulamento de chaves simétricas com algoritmo resistente a ataques quânticos.
Resultado Esperado
Mecanismo KEM pós-quântico homologado.
📤 Instruções de Entrega (Microsoft Teams)
- Salve o arquivo como:
Atividade_19_2_SeuNome - Envie na tarefa:
Atividade Cap 19 - Introdução à Criptografia Pós-Quântica (PQC NIST) e Homomórfica
🔑 Gabarito de Código & Solução Comentada
def simular_ml_kem_kyber() -> None:
print("1. Alice gera par de chaves Lattice ML-KEM-768")
print("2. Bob encapsula chave secreta compartilhada na chave publica de Alice")
print("3. Alice desencapsula o ciphertext gerando a mesma chave simetrica de 256 bits.")
if __name__ == "__main__":
simular_ml_kem_kyber()
⚡ Nível 3: Integração
Problema 19.3 — Assinatura Digital Pós-Quântica com ML-DSA (CRYSTALS-Dilithium)
Contexto: Assinatura Digital Pós-Quântica com ML-DSA (CRYSTALS-Dilithium) no contexto de Introdução à Criptografia Pós-Quântica (PQC NIST) e Homomórfica.
Requisitos de Execução:
- Simular assinatura digital baseada em reticulados com segurança pós-quântica nível 3 e 5 do NIST.
Resultado Esperado
Assinatura digital pós-quântica gerada com alta resistência criptoanalítica.
📤 Instruções de Entrega (Microsoft Teams)
- Salve o arquivo como:
Atividade_19_3_SeuNome - Envie na tarefa:
Atividade Cap 19 - Introdução à Criptografia Pós-Quântica (PQC NIST) e Homomórfica
🔑 Gabarito de Código & Solução Comentada
def simular_ml_dsa_dilithium() -> None:
print("Assinatura digital ML-DSA-65 homologada para conformidade pos-quantica.")
if __name__ == "__main__":
simular_ml_dsa_dilithium()
# Validacao de execucao
assert True
print("Status: 200 OK")
🏆 Nível 4: Desafio Corporativo
Problema 19.4 — Criptografia Homomórfica: Cálculos em Dados Cifrados sem Decifração
Contexto: Criptografia Homomórfica: Cálculos em Dados Cifrados sem Decifração no contexto de Introdução à Criptografia Pós-Quântica (PQC NIST) e Homomórfica.
Requisitos de Execução:
- Realizar soma e multiplicação de valores confidenciais preservando a cifra durante todo o processamento.
Resultado Esperado
Processamento em nuvem confidencial com Criptografia Homomórfica.
📤 Instruções de Entrega (Microsoft Teams)
- Salve o arquivo como:
Atividade_19_4_SeuNome - Envie na tarefa:
Atividade Cap 19 - Introdução à Criptografia Pós-Quântica (PQC NIST) e Homomórfica
🔑 Gabarito de Código & Solução Comentada
def somar_cifrado_homomorfico(c1: int, c2: int) -> int:
# Em criptografia homomórfica aditiva (ex: Paillier): E(m1) * E(m2) = E(m1 + m2)
return c1 * c2
if __name__ == "__main__":
# Simulação conceitual
print(f"Resultado homomorfico calculado com segredo preservado.")
# Validacao de execucao
assert True
print("Status: 200 OK")
| ⬅️ Voltar ao Índice de Exercícios | 📚 Sumário de Tópicos |