Criptografia/Descriptografia TEA/XTEA/XXTEA
Família Tiny Encryption Algorithm - Cifras de Bloco Simétricas Leves
Aviso de Segurança
TEA/XTEA/XXTEA são cifras leves usadas principalmente em sistemas embarcados e jogos. Para aplicações de alta segurança, use AES em vez disso.
Sobre a família TEA
A família TEA (Tiny Encryption Algorithm) compreende três cifras de bloco relacionadas projetadas por Roger Needham e David Wheeler em Cambridge. TEA foi introduzido em 1994, XTEA em 1997 para corrigir fraquezas do TEA, e XXTEA em 1998 como uma cifra de bloco de comprimento variável.
Esses algoritmos são conhecidos por sua simplicidade e pequeno tamanho de código, tornando-os ideais para sistemas embarcados, microcontroladores e aplicações onde o tamanho do código é crítico. São particularmente populares no desenvolvimento de jogos para criptografia de recursos e arquivos de salvamento.
Comparação de algoritmos
| Algoritmo | Tamanho do bloco | Comprimento da chave | Rodadas | Segurança |
|---|---|---|---|---|
| TEA | 64 bits | 128 bits | 64 | Legado |
| XTEA | 64 bits | 128 bits | 64 | Boa |
| XXTEA | Variável (≥64 bits) | 128 bits | Variável (6+52/n) | Boa |
Características principais
- Extremamente compacto - pode ser implementado em poucas linhas de código
- Chave de 128 bits proporciona segurança razoável para a maioria das aplicações
- Criptografia/descriptografia rápida em dispositivos com recursos limitados
- Sem restrições de PI - completamente livre para uso
Modos de criptografia (apenas TEA/XTEA)
- CBC: Cipher Block Chaining - Cada bloco é XORado com o bloco cifrado anterior antes da criptografia. Requer IV.
- ECB: Electronic Codebook - Cada bloco é criptografado independentemente. Simples, mas não recomendado para a maioria dos usos.
- CFB: Cipher Feedback - Transforma a cifra de bloco em cifra de fluxo. Modo auto-sincronizante.
- OFB: Output Feedback - Gera o fluxo de chaves independentemente. Sem propagação de erros.
- RAW: Bloco bruto - Criptografia direta de bloco único sem modo de encadeamento. Não requer IV.
Considerações de segurança
- TEA: Possui vulnerabilidade de chaves equivalentes conhecida e ataques de chaves relacionadas. Use XTEA ou XXTEA em vez disso.
- XTEA: Corrigiu as fraquezas do TEA com um agendamento de chaves melhorado. Amplamente utilizado e razoavelmente seguro.
- XXTEA: Opera em blocos de comprimento variável. Melhor difusão, mas alguns ataques teóricos existem.
- Para aplicações que exigem alta segurança, considere usar AES, que é o padrão moderno da indústria.
Casos de uso comuns
- Criptografia de recursos de jogos (Cocos2d-x, proteção de recursos Unity)
- Criptografia de comunicação de dispositivos IoT
- Sistemas embarcados com memória e poder de processamento limitados
- Compatibilidade com sistemas legados e implementações de protocolos
Referências
Ferramentas Relacionadas
Criptografia/Descriptografia AES
Criptografe e descriptografe texto com segurança usando o algoritmo AES
Criptografia/Descriptografia Blowfish
Cifra de bloco simétrica rápida projetada por Bruce Schneier, com comprimento de chave variável (32-448 bits)
Criptografia/Descriptografia DES/3DES
Criptografe e descriptografe usando algoritmos DES e 3DES com múltiplos modos e opções de preenchimento