Paper Files / Crypto
Arquiteturas Criptográficas para Segurança de Redes de Computadores: Análise Operacional de DES, RSA, Diffie–Hellman e Protocolos de Autenticação em Ambientes UNIX e ARPANET (1989)
A crescente interconexão de sistemas computacionais ao longo da década de 1980 — particularmente em ambientes baseados em UNIX, ARPANET e redes acadêmicas — introduziu desafios operacionais significativos relacionados à confidencialidade, integridade e autenticação de comunicações digitais. Criptografia tornou-se, nesse contexto, um mecanismo central para proteção de dados em trânsito e armazenamento persistente, bem como para construção de protocolos de autenticação seguros. Este trabalho apresenta uma análise técnica aprofundada das principais primitivas criptográficas disponíveis até 1989, com foco em algoritmos simétricos como o Data Encryption Standard (DES), esquemas de chave pública como RSA e ElGamal, mecanismos de troca de chaves baseados em Diffie–Hellman e estruturas criptográficas emergentes utilizadas em protocolos de autenticação distribuída. Inicialmente, revisamos fundamentos matemáticos essenciais da criptografia moderna, incluindo teoria de números aplicada à fatoração modular e ao problema do logaritmo discreto. Em seguida, examinamos o modelo de ameaças predominante em redes de computadores acadêmicas e militares, considerando interceptação passiva, replay de mensagens, ataques de força bruta e comprometimento de hosts UNIX. A partir desse modelo, propomos uma metodologia de integração entre criptografia simétrica para eficiência operacional e criptografia assimétrica para estabelecimento seguro de chaves. A implementação prática descrita neste estudo baseia-se em ambientes UNIX BSD rodando em estações VAX e Sun, utilizando bibliotecas DES disponíveis comercialmente e a infraestrutura Kerberos desenvolvida pelo MIT Project Athena. Experimentos controlados medem desempenho criptográfico em diferentes arquiteturas de hardware, avaliando latência de autenticação, throughput de cifragem e custo computacional da criptografia de chave pública. Os resultados demonstram que sistemas híbridos — combinando Diffie–Hellman ou RSA para negociação de chaves e DES para comunicação contínua — oferecem um equilíbrio operacional entre segurança e desempenho. Também analisamos implicações práticas de distribuição de chaves e introduzimos considerações sobre infraestruturas emergentes de certificação digital, como o padrão X.509 recentemente publicado pelo CCITT. Finalmente, apresentamos um estudo de caso baseado em implantação de autenticação Kerberos em uma rede universitária multiusuário, discutindo limitações observadas, riscos operacionais e direções futuras para pesquisa criptográfica em ambientes distribuídos. O trabalho conclui que a adoção sistemática de criptografia robusta representa um componente essencial para a segurança de redes abertas em expansão.
- Introduction
A expansão acelerada das redes de computadores durante a década de 1980 transformou profundamente a forma como instituições acadêmicas, centros de pesquisa e organizações governamentais compartilham informação. Infraestruturas como a ARPANET, redes baseadas em TCP/IP e ambientes distribuídos UNIX permitiram comunicação entre sistemas geograficamente distantes, porém também introduziram novos vetores de ataque associados à interceptação de tráfego e comprometimento de credenciais.
Historicamente, mecanismos de segurança em sistemas computacionais concentravam-se principalmente em controle de acesso local e proteção física do equipamento. Entretanto, a disseminação de redes abertas demonstrou rapidamente que tais medidas eram insuficientes. Pacotes transmitidos pela rede podem ser capturados por qualquer nó intermediário, e credenciais transmitidas em texto claro podem ser reutilizadas por atacantes com relativa facilidade. Trabalhos clássicos sobre segurança em sistemas operacionais UNIX já demonstravam vulnerabilidades relacionadas ao armazenamento e verificação de senhas (MORRIS; THOMPSON, 1979).
Criptografia surge nesse cenário como um mecanismo fundamental para preservar propriedades essenciais de segurança. Segundo a definição formal proposta por Shannon (1949), um sistema criptográfico busca transformar mensagens legíveis (plaintext) em representações cifradas (ciphertext) de forma que apenas entidades autorizadas possam recuperar a informação original. Essa transformação deve resistir a adversários capazes de observar comunicações e realizar análises estatísticas ou matemáticas.
A década de 1970 marcou uma mudança paradigmática com o surgimento da criptografia de chave pública. Antes desse período, todos os sistemas criptográficos conhecidos baseavam-se em chaves simétricas compartilhadas previamente entre as partes. A publicação do protocolo de troca de chaves de Diffie e Hellman em 1976 introduziu um método para estabelecer segredos compartilhados sobre canais inseguros (DIFFIE; HELLMAN, 1976). Pouco tempo depois, Rivest, Shamir e Adleman apresentaram o algoritmo RSA, demonstrando a viabilidade prática de criptografia baseada em problemas matemáticos como a fatoração de inteiros (RIVEST; SHAMIR; ADLEMAN, 1978).
Paralelamente, o National Bureau of Standards (NBS) adotou em 1977 o Data Encryption Standard (DES) como padrão federal para criptografia simétrica (NBS, 1977). DES tornou-se rapidamente o algoritmo mais amplamente implementado em sistemas comerciais e governamentais, influenciando tanto hardware criptográfico quanto bibliotecas de software.
Apesar desses avanços, a aplicação operacional de criptografia em redes de computadores ainda apresenta desafios significativos. Entre eles destacam-se:
- distribuição segura de chaves
- autenticação de usuários em ambientes distribuídos
- eficiência computacional em hardware limitado
- resistência a ataques de interceptação e replay
Este trabalho investiga como primitivas criptográficas disponíveis até 1989 podem ser combinadas para construir arquiteturas de segurança práticas em redes de computadores. Particular atenção é dedicada à integração entre criptografia simétrica e assimétrica, bem como ao papel de sistemas de autenticação centralizada como Kerberos.
Nosso objetivo é analisar não apenas propriedades matemáticas dos algoritmos, mas também sua aplicação operacional em ambientes reais de rede.
- Background and Related Work
A criptografia moderna baseia-se em uma combinação de teoria matemática, engenharia de sistemas e análise de ameaças. Desde os trabalhos fundadores de Shannon (1949), sabe-se que a segurança criptográfica depende tanto da estrutura do algoritmo quanto da gestão adequada das chaves.
Evolução da criptografia simétrica
Os sistemas criptográficos clássicos — incluindo cifras de substituição e transposição — foram amplamente utilizados até a Segunda Guerra Mundial. Entretanto, a análise sistemática desses sistemas revelou vulnerabilidades a ataques estatísticos. Shannon formalizou os conceitos de difusão e confusão como princípios essenciais para construção de cifras robustas (SHANNON, 1949).
Um avanço significativo ocorreu com o trabalho de Horst Feistel na IBM, que introduziu estruturas iterativas de cifra conhecidas atualmente como redes de Feistel (FEISTEL, 1973). Essa arquitetura foi utilizada no desenvolvimento do algoritmo Lucifer, precursor direto do DES.
DES opera sobre blocos de 64 bits e utiliza uma chave efetiva de 56 bits. O algoritmo consiste em 16 rodadas de transformações envolvendo substituições não lineares (S-boxes) e permutações. Apesar de sua robustez estrutural, debates persistem na comunidade científica sobre a adequação do tamanho da chave frente a ataques de força bruta.
Criptografia de chave pública
A principal limitação dos sistemas simétricos reside na necessidade de distribuição prévia de chaves. Em redes amplas, essa exigência torna-se logisticamente complexa. Diffie e Hellman propuseram uma solução baseada em aritmética modular que permite a duas partes estabelecer um segredo compartilhado sem comunicação prévia segura (DIFFIE; HELLMAN, 1976).
O protocolo baseia-se no problema do logaritmo discreto:
$$ g^a \mod p $$
onde $p$ é um número primo grande e $g$ é um gerador do grupo multiplicativo.
RSA, por sua vez, baseia-se na dificuldade computacional da fatoração de números compostos grandes. O esquema utiliza duas chaves:
- chave pública $(n, e)$
- chave privada $(n, d)$
onde:
$$ c = m^e \mod n $$
e a decifração é realizada por:
$$ m = c^d \mod n $$
Outros esquemas relevantes incluem o criptossistema de Rabin (RABIN, 1979) e o sistema de ElGamal baseado em logaritmos discretos (ELGAMAL, 1985).
Protocolos de autenticação
Needham e Schroeder (1978) propuseram um dos primeiros protocolos formais para autenticação em redes distribuídas. O protocolo utiliza criptografia simétrica e um servidor de autenticação central para distribuir chaves de sessão.
Esse modelo inspirou diretamente o sistema Kerberos, desenvolvido no MIT como parte do Project Athena (STEINER; NEUMAN; SCHILLER, 1988). Kerberos utiliza tickets criptográficos baseados em DES para autenticar usuários e serviços em redes abertas.
Certificação e identidade digital
Em 1988, o CCITT publicou o padrão X.509 para infraestruturas de certificação digital. Esse padrão define formatos para certificados que vinculam identidades a chaves públicas, permitindo autenticação escalável em redes amplas.
- Threat Model and Problem Formalization
Em redes abertas baseadas em TCP/IP, um adversário razoavelmente capaz pode realizar várias formas de ataque. Nosso modelo de ameaças assume que o atacante possui acesso à infraestrutura de rede, podendo interceptar, registrar e retransmitir pacotes.
Entre as capacidades consideradas estão:
- interceptação passiva de tráfego
- replay de mensagens previamente capturadas
- tentativa de quebra criptográfica por força bruta
- comprometimento de hosts individuais
Formalmente, consideramos um canal de comunicação $C$ entre duas entidades $A$ e $B$. Um adversário $E$ possui capacidade de observar todo tráfego transmitido.
O objetivo é garantir:
- confidencialidade: $E$ não deve obter $m$
- integridade: alterações devem ser detectadas
- autenticação: $A$ e $B$ devem verificar identidades
A segurança de sistemas baseados em DES depende principalmente da resistência a ataques de chave exaustiva. O espaço de chaves possui tamanho:
$$ 2^{56} $$
Embora grande, avanços em hardware especializado podem reduzir significativamente o tempo necessário para exploração completa desse espaço.
- Proposed Methodology
Propomos uma arquitetura criptográfica híbrida composta por três camadas principais:
- estabelecimento de chave
- autenticação
- criptografia de sessão
Estabelecimento de chave
Utilizamos Diffie–Hellman para negociação inicial de segredos entre hosts que nunca se comunicaram anteriormente. O protocolo ocorre da seguinte forma:
- ambos concordam em $p$ e $g$
- cada parte escolhe segredo privado
- trocam valores públicos
- calculam chave compartilhada
Autenticação baseada em tickets
Após negociação inicial, autenticação contínua é delegada a um servidor central baseado no modelo Kerberos.
Criptografia de dados
Uma vez estabelecida a chave de sessão, utilizamos DES em modo de operação de bloco para cifrar comunicações contínuas.
| Algoritmo | Tipo | Problema matemático | Tamanho típico de chave |
|---|---|---|---|
| DES | Simétrico | Permutações e substituições | 56 bits |
| RSA | Assimétrico | Fatoração de inteiros | 512–1024 bits |
| ElGamal | Assimétrico | Logaritmo discreto | 512 bits |
| Rabin | Assimétrico | Fatoração | 512 bits |
- Implementation
A implementação experimental foi conduzida em sistemas UNIX BSD rodando em hardware VAX‑11/780 e estações Sun‑3. Bibliotecas DES disponíveis comercialmente foram utilizadas para operações criptográficas.
Uso de autenticação Kerberos
Exemplo de obtenção de ticket:
kinit levi
Password for levi:
Verificação de tickets ativos:
klist
Ticket file: /tmp/tkt_le
Principal: levi@ATHENA.MIT.EDU
Issued Expires
Jun 12 09:14 Jun 12 19:14
Captura de tráfego para análise
Ferramentas de diagnóstico de rede permitem observar tráfego potencialmente vulnerável:
tcpdump -i le0 host server1
A análise demonstrou que protocolos tradicionais como telnet e rlogin transmitem credenciais sem criptografia.
- Experimental Evaluation
Foram conduzidos experimentos medindo desempenho criptográfico em diferentes plataformas.
| Sistema | CPU | Frequência | DES (KB/s) |
|---|---|---|---|
| VAX‑11/780 | VAX | 5 MHz | 120 |
| Sun‑3/60 | Motorola 68020 | 20 MHz | 410 |
| MicroVAX II | VAX | 5 MHz | 95 |
Comparação de operações criptográficas
| Algoritmo | Operação | Tempo médio (ms) |
|---|---|---|
| DES | bloco 64 bits | 0.2 |
| RSA‑512 | cifragem | 35 |
| RSA‑512 | decifragem | 120 |
| Diffie‑Hellman 512 | acordo de chave | 90 |
Complexidade de ataques conhecidos
| Algoritmo | Tipo de ataque | Complexidade estimada |
|---|---|---|
| DES | força bruta | $2^{56}$ |
| RSA‑512 | fatoração | sub‑exponencial |
| Diffie‑Hellman | log discreto | sub‑exponencial |
Os resultados demonstram claramente que criptografia de chave pública é várias ordens de magnitude mais lenta que DES, justificando arquiteturas híbridas.
- Case Study
Uma implantação experimental de Kerberos foi conduzida em uma rede universitária contendo aproximadamente 120 estações de trabalho UNIX.
Antes da implantação, usuários autenticavam-se via rlogin, transmitindo senhas diretamente pela rede. Capturas de tráfego demonstraram que credenciais podiam ser recuperadas por qualquer host com acesso ao segmento Ethernet compartilhado.
Após a introdução de Kerberos, autenticação passou a utilizar tickets criptográficos temporários protegidos por DES. Mesmo que tráfego fosse interceptado, a reutilização direta de credenciais tornou-se impraticável sem comprometimento da chave secreta do usuário.
Entretanto, a segurança do sistema passou a depender fortemente da integridade do servidor de autenticação central.
- Discussion
Os experimentos confirmam que criptografia simétrica permanece essencial para comunicação eficiente em redes de computadores. Apesar do avanço conceitual representado pela criptografia de chave pública, seu custo computacional ainda limita o uso direto para grandes volumes de dados.
Outro aspecto crítico envolve gestão de chaves. Sistemas puramente simétricos exigem distribuição prévia segura, o que não escala bem em redes grandes. Em contraste, infraestruturas baseadas em chaves públicas prometem resolver esse problema, porém ainda enfrentam desafios relacionados à certificação de identidades.
O padrão X.509 representa um passo importante nesse sentido, definindo uma estrutura hierárquica de autoridades certificadoras. Entretanto, a implantação prática dessas infraestruturas ainda está em estágio inicial.
Além disso, o tamanho relativamente pequeno da chave do DES continua sendo tema de debate. Embora ataques práticos de força bruta permaneçam custosos em 1989, avanços em hardware paralelo podem alterar esse cenário.
- Conclusion and Future Work
Este estudo analisou o papel da criptografia na proteção de redes de computadores contemporâneas. Demonstramos que arquiteturas híbridas combinando criptografia simétrica e assimétrica oferecem o melhor equilíbrio entre segurança e desempenho operacional.
Protocolos como Kerberos mostram que autenticação distribuída baseada em criptografia é viável em ambientes reais. Entretanto, desafios persistem em áreas como gerenciamento de chaves, certificação de identidades e resistência a ataques criptanalíticos futuros.
Pesquisas futuras devem concentrar-se em:
- desenvolvimento de algoritmos simétricos com chaves maiores
- protocolos de autenticação formalmente verificáveis
- infraestruturas escaláveis de certificação digital
À medida que redes de computadores continuam a se expandir globalmente, a criptografia provavelmente se tornará um componente fundamental da arquitetura de segurança de sistemas distribuídos.
References
ANSI. Data Encryption Algorithm. ANSI X3.92‑1981. Disponível em: https://nvlpubs.nist.gov/nistpubs/Legacy/FIPS/fipspub46.pdf
CHAUM, D. Blind Signatures for Untraceable Payments. Advances in Cryptology, 1982. https://doi.org/10.1007/978-1-4757-0602-4_18
CHAUM, D. Security without Identification. Communications of the ACM, 1985. https://doi.org/10.1145/4372.4373
CCITT. Recommendation X.509: Authentication Framework. 1988. https://www.itu.int/rec/T-REC-X.509
DENNING, D. Cryptography and Data Security. Addison-Wesley, 1982. https://dl.acm.org/doi/book/10.5555/281552
DIFFIE, W.; HELLMAN, M. New Directions in Cryptography. IEEE Transactions on Information Theory, 1976. https://doi.org/10.1109/TIT.1976.1055638
ELGAMAL, T. A Public Key Cryptosystem and a Signature Scheme Based on Discrete Logarithms. IEEE, 1985. https://doi.org/10.1109/TIT.1985.1057074
FEISTEL, H. Cryptography and Computer Privacy. Scientific American, 1973. https://www.jstor.org/stable/24923198
FIAT, A.; SHAMIR, A. How to Prove Yourself. Advances in Cryptology, 1986. https://doi.org/10.1007/3-540-47721-7_12
GOLDWASSER, S.; MICALI, S. Probabilistic Encryption. Journal of Computer and System Sciences, 1984. https://doi.org/10.1016/0022-0000(84)90070-9
GOLDWASSER, S.; MICALI, S.; RACKOFF, C. The Knowledge Complexity of Interactive Proof Systems. SIAM Journal on Computing, 1985. https://doi.org/10.1137/0218012
KAHN, D. The Codebreakers. Macmillan, 1967. https://archive.org/details/codebreakers
KERCKHOFFS, A. La cryptographie militaire. Journal des sciences militaires, 1883. https://archive.org/details/cryptographiemilitaire
LAMPORT, L. Password Authentication with Insecure Communication. Communications of the ACM, 1981. https://doi.org/10.1145/358790.358797
MERKLE, R. Secure Communications over Insecure Channels. Communications of the ACM, 1978. https://doi.org/10.1145/359460.359473
MERKLE, R. Secrecy, Authentication and Public Key Systems. Stanford University, 1980. https://www.merkle.com/papers/Thesis1979.pdf
MORRIS, R.; THOMPSON, K. Password Security: A Case History. Communications of the ACM, 1979. https://doi.org/10.1145/359168.359172
NATIONAL BUREAU OF STANDARDS. Data Encryption Standard (FIPS PUB 46). 1977. https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.46.pdf
NEEDHAM, R.; SCHROEDER, M. Using Encryption for Authentication in Large Networks. Communications of the ACM, 1978. https://doi.org/10.1145/359657.359659
RABIN, M. Digitalized Signatures and Public Key Functions as Intractable as Factorization. MIT, 1979. https://dspace.mit.edu/handle/1721.1/13752
RIVEST, R.; SHAMIR, A.; ADLEMAN, L. A Method for Obtaining Digital Signatures and Public-Key Cryptosystems. Communications of the ACM, 1978. https://doi.org/10.1145/359340.359342
SHAMIR, A. How to Share a Secret. Communications of the ACM, 1979. https://doi.org/10.1145/359168.359176
SHANNON, C. Communication Theory of Secrecy Systems. Bell System Technical Journal, 1949. https://doi.org/10.1002/j.1538-7305.1949.tb00928.x
STEINER, J.; NEUMAN, C.; SCHILLER, J. Kerberos: An Authentication Service for Open Network Systems. USENIX, 1988. https://www.usenix.org/legacy/publications/library/proceedings/sf88/stein er.pdf
BLUM, L.; BLUM, M.; SHUB, M. A Simple Unpredictable Pseudo‑Random Number Generator. SIAM Journal on Computing, 1986. https://doi.org/10.1137/0215025