Criptografia Moderna
O que é Criptografia?
Criptografia é a ciência de proteger informações transformando-as em um formato ilegível para qualquer pessoa que não possua a chave para decifrá-las. É uma das ferramentas mais fundamentais em segurança da informação, garantindo confidencialidade, integridade e autenticidade de dados.
Tipos de Criptografia
1. Criptografia Simétrica
Usa a mesma chave para cifrar e decifrar informações. É rápida e eficiente para grandes volumes de dados.
- AES (Advanced Encryption Standard): Padrão atual, usado em 128, 192 ou 256 bits
- ChaCha20: Alternativa moderna ao AES, otimizada para dispositivos móveis
- 3DES: Legado, em processo de descontinuação
- Blowfish: Predecessor do AES, ainda usado em aplicações específicas
2. Criptografia Assimétrica
Utiliza um par de chaves: uma pública para cifrar e outra privada para decifrar. Fundamental para assinaturas digitais e troca segura de chaves.
- RSA: Amplamente usado, segurança baseada em fatoração de números primos
- ECC (Elliptic Curve Cryptography): Mais eficiente que RSA com chaves menores
- DSA: Digital Signature Algorithm para assinaturas digitais
- Ed25519: Implementação moderna de curvas elípticas
3. Funções Hash
Transformam dados de qualquer tamanho em uma saída de tamanho fixo. Usadas para integridade e armazenamento seguro de senhas.
- SHA-256/SHA-512: Família SHA-2, padrão atual
- SHA-3: Padrão mais recente, alternativa ao SHA-2
- BLAKE2/BLAKE3: Mais rápidos que SHA, crescente adoção
- bcrypt/Argon2: Especializados para hashing de senhas
Infraestrutura de Chaves Públicas (PKI)
PKI é um framework que gerencia certificados digitais e criptografia de chave pública, essencial para autenticação segura e comunicações criptografadas.
Componentes da PKI
- Autoridade Certificadora (CA): Emite e revoga certificados digitais
- Autoridade de Registro (RA): Verifica identidades antes da emissão
- Certificados Digitais: X.509 vinculam chaves públicas a identidades
- CRL/OCSP: Listas de revogação e status de certificados
TLS/SSL
Transport Layer Security (TLS) e seu predecessor SSL são protocolos criptográficos que garantem comunicações seguras pela internet.
Melhores Práticas TLS
- Usar exclusivamente TLS 1.2 ou TLS 1.3
- Desabilitar cipher suites fracos (RC4, DES, 3DES)
- Implementar Perfect Forward Secrecy (PFS)
- Usar certificados de 2048 bits ou superiores
- Habilitar HSTS (HTTP Strict Transport Security)
- Implementar Certificate Pinning em aplicações críticas
Gestão de Chaves
A segurança de qualquer sistema criptográfico depende criticamente da gestão adequada de chaves criptográficas.
Ciclo de Vida das Chaves
- Geração: Usar geradores criptograficamente seguros (CSPRNG)
- Armazenamento: HSMs para chaves críticas, vaults para aplicações
- Distribuição: Canais seguros, protocolos de troca de chaves
- Rotação: Periodicidade definida, automação recomendada
- Revogação: Procedimentos claros para comprometimento
- Destruição: Eliminação segura ao fim do ciclo
Hardware Security Modules (HSM)
HSMs são dispositivos físicos que geram, armazenam e protegem chaves criptográficas com certificação FIPS 140-2/3.
- Proteção contra extração de chaves
- Operações criptográficas aceleradas por hardware
- Conformidade regulatória (PCI-DSS, LGPD)
- Cloud HSM para ambientes de nuvem
Criptografia em Diferentes Contextos
Dados em Repouso
- Full Disk Encryption (FDE) com BitLocker, LUKS
- Database encryption (TDE - Transparent Data Encryption)
- File-level encryption para dados sensíveis
- Backup encryption obrigatório
Dados em Trânsito
- TLS/SSL para comunicações web
- IPSec para VPNs site-to-site
- SSH para administração remota
- STARTTLS para email (SMTP, IMAP)
Dados em Uso
- Homomorphic Encryption (ainda experimental)
- Secure Enclaves (Intel SGX, AMD SEV)
- Confidential Computing
Criptografia Pós-Quântica
Computadores quânticos ameaçam algoritmos atuais como RSA e ECC. O NIST está padronizando algoritmos resistentes a ataques quânticos:
- CRYSTALS-Kyber: Encapsulamento de chaves
- CRYSTALS-Dilithium: Assinaturas digitais
- SPHINCS+: Assinaturas baseadas em hash
- FALCON: Assinaturas compactas
Conformidade e Regulamentações
- LGPD/GDPR: Criptografia recomendada para dados pessoais
- PCI-DSS: Criptografia obrigatória para dados de cartão
- HIPAA: Criptografia para registros médicos
- FIPS 140-2/3: Padrões para módulos criptográficos
Vulnerabilidades e Ataques Comuns
- Man-in-the-Middle: Interceptação de chaves não protegidas
- Padding Oracle: Exploração de erros de padding
- Timing Attacks: Análise de tempo de operações
- Side-Channel Attacks: Extração via consumo de energia/EM
- Rainbow Tables: Pré-computação de hashes fracos
Melhores Práticas
- Nunca implemente sua própria criptografia, use bibliotecas testadas
- Mantenha bibliotecas criptográficas atualizadas
- Use salt aleatórios para hashing de senhas
- Implemente key stretching (PBKDF2, bcrypt, Argon2)
- Utilize números aleatórios criptograficamente seguros
- Documente decisões de design criptográfico
- Realize auditorias de implementações criptográficas
- Planeje crypto-agility para migração de algoritmos
Ferramentas e Bibliotecas
- OpenSSL: Toolkit criptográfico completo
- libsodium: Biblioteca moderna e fácil de usar
- Bouncy Castle: Implementação em Java e C#
- Cryptography.io: Biblioteca Python
- AWS KMS/Azure Key Vault: Gestão de chaves em nuvem
- HashiCorp Vault: Gestão de segredos e chaves
A criptografia é fundamental para proteger dados em todos os estados. Uma estratégia robusta combina algoritmos apropriados, gestão rigorosa de chaves, implementação correta e conformidade com padrões. Com a ameaça da computação quântica, organizações devem começar a planejar a transição para criptografia pós-quântica enquanto mantêm as melhores práticas atuais.
