← Voltar aos artigos

Paper Files / Crypto

Criptografia Aplicada à Segurança de Sistemas em Rede: Análise Operacional de Algoritmos Simétricos, Criptografia de Chave Pública e Protocolos de Autenticação no Final da Década de 1980

CryptoPT

A rápida interconexão de sistemas computacionais durante a década de 1980 — impulsionada por redes acadêmicas, ARPANET, BITNET e ambientes distribuídos baseados em UNIX — transformou a criptografia de um campo predominantemente teórico em um componente operacional essencial da segurança de sistemas. Este trabalho apresenta uma análise técnica abrangente do estado da arte da criptografia aplicada à segurança de redes e sistemas computacionais até 1989. O estudo examina tanto mecanismos de criptografia simétrica amplamente implantados, como o Data Encryption Standard (DES), quanto sistemas de chave pública emergentes, incluindo RSA, Rabin e ElGamal. Também são analisadas construções criptográficas fundamentais como funções de hash baseadas em blocos, geradores pseudoaleatórios criptograficamente seguros e protocolos de autenticação distribuída, com destaque para Needham–Schroeder e Kerberos. A pesquisa enfatiza uma perspectiva operacional: como esses mecanismos são realmente implementados em sistemas UNIX, redes acadêmicas e infraestruturas de autenticação distribuída. São avaliados modelos de ameaça realistas da época, incluindo interceptação de tráfego em redes compartilhadas Ethernet, captura de credenciais, replay de mensagens e comprometimento de hosts. A formalização do problema considera adversários capazes de observar canais de comunicação e executar ataques criptanalíticos limitados por recursos computacionais plausíveis para a década de 1980. Propomos uma metodologia experimental baseada em implementação prática de mecanismos criptográficos em ambientes UNIX, avaliação de desempenho em hardware contemporâneo e análise de segurança sob cenários de ataque plausíveis. Experimentos comparativos entre DES, RSA e ElGamal demonstram diferenças substanciais de custo computacional e escalabilidade, reforçando a necessidade de arquiteturas híbridas que combinem criptografia simétrica para confidencialidade de dados com mecanismos de chave pública para distribuição de chaves. Além disso, apresentamos um estudo de caso detalhado da implantação do Kerberos no contexto do Projeto Athena do MIT, analisando suas propriedades de segurança, limitações e implicações operacionais. A discussão final aborda desafios emergentes, incluindo gestão de chaves, escalabilidade de infraestruturas de certificação e implicações do aumento do poder computacional para a segurança do DES. O trabalho conclui com recomendações práticas para arquiteturas criptográficas robustas em ambientes distribuídos e identifica direções de pesquisa que provavelmente dominarão a década de 1990.

  1. Introduction

Durante grande parte da história da computação, mecanismos criptográficos foram considerados principalmente ferramentas militares ou diplomáticas. No entanto, a expansão de redes de computadores durante as décadas de 1970 e 1980 alterou profundamente esse panorama. Sistemas interconectados passaram a transportar volumes crescentes de informação sensível — credenciais de usuários, dados acadêmicos, software proprietário e comunicações institucionais — muitas vezes através de canais fisicamente compartilhados e vulneráveis à interceptação.

A arquitetura aberta de redes como ARPANET e as primeiras implementações Ethernet introduziu um problema operacional concreto: qualquer sistema conectado ao mesmo segmento físico podia potencialmente observar o tráfego transmitido. Ferramentas de captura de pacotes, originalmente desenvolvidas para diagnóstico de rede, também podiam ser utilizadas para monitoramento não autorizado. Essa realidade tornou evidente que mecanismos tradicionais de controle de acesso local eram insuficientes para garantir confidencialidade e autenticidade em ambientes distribuídos.

Nesse contexto, a criptografia emergiu como um componente fundamental da segurança computacional. O estabelecimento do Data Encryption Standard (DES) como padrão federal norte-americano em 1977 representou um marco importante na adoção prática de criptografia em sistemas comerciais (NIST, 1977). Ao mesmo tempo, avanços teóricos revolucionários — especialmente o conceito de criptografia de chave pública introduzido por Diffie e Hellman (1976) — abriram novas possibilidades para distribuição de chaves e autenticação em larga escala.

Essas duas linhas de desenvolvimento — criptografia simétrica eficiente e criptografia assimétrica baseada em problemas matemáticos difíceis — convergiram rapidamente em aplicações práticas. O algoritmo RSA (RIVEST; SHAMIR; ADLEMAN, 1978) demonstrou que operações criptográficas poderiam ser fundamentadas na dificuldade da fatoração de inteiros grandes. Poucos anos depois, sistemas como ElGamal (1985) e esquemas probabilísticos de criptografia (GOLDWASSER; MICALI, 1984) ampliaram significativamente o repertório criptográfico disponível.

Paralelamente, pesquisadores começaram a explorar como esses mecanismos poderiam ser integrados a protocolos de segurança para redes distribuídas. O protocolo Needham–Schroeder (1978) foi uma das primeiras tentativas sistemáticas de resolver autenticação mútua utilizando criptografia. Mais recentemente, o sistema Kerberos, desenvolvido no MIT como parte do Projeto Athena, demonstrou uma implementação operacional baseada em tickets criptográficos para autenticação em redes de larga escala (STEINER; NEUMAN; SCHILLER, 1988).

Apesar desses avanços, a aplicação prática da criptografia em sistemas reais permanece repleta de desafios. Questões como distribuição de chaves, desempenho computacional, proteção contra replay e integração com sistemas operacionais existentes exigem soluções cuidadosamente projetadas. Além disso, muitas implementações iniciais foram desenvolvidas com foco acadêmico, sem considerar plenamente as restrições operacionais de ambientes de produção.

Este artigo busca preencher essa lacuna através de uma análise abrangente da criptografia aplicada à segurança de sistemas em rede no contexto tecnológico de 1989. O objetivo não é apenas revisar algoritmos criptográficos, mas examinar como eles podem ser utilizados de maneira prática para proteger sistemas distribuídos reais.

Especificamente, este trabalho apresenta:

A análise adota uma perspectiva fortemente orientada à operação, refletindo a crescente necessidade de mecanismos de segurança robustos em infraestruturas computacionais cada vez mais interconectadas.

  1. Background and Related Work

O desenvolvimento moderno da criptografia começou com as bases teóricas estabelecidas por Claude Shannon em seu trabalho seminal sobre sistemas de sigilo (SHANNON, 1949). Shannon introduziu conceitos fundamentais como confusão e difusão, que permanecem centrais no projeto de cifras modernas. Esses princípios influenciaram diretamente o desenvolvimento das redes de substituição-permutação utilizadas em algoritmos criptográficos posteriores.

Evolução das cifras simétricas

Durante as décadas de 1960 e 1970, Horst Feistel desenvolveu uma arquitetura de cifra em blocos baseada em redes iterativas que posteriormente se tornaria amplamente utilizada (FEISTEL, 1973). Essa arquitetura foi adotada pela IBM no desenvolvimento do algoritmo Lucifer, que posteriormente evoluiu para o Data Encryption Standard (DES).

O DES foi padronizado pelo National Bureau of Standards em 1977 como FIPS PUB 46 (NBS, 1977). Ele utiliza blocos de 64 bits e uma chave efetiva de 56 bits, aplicando 16 rodadas de transformação baseadas em substituições e permutações cuidadosamente projetadas.

A estrutura básica do DES pode ser descrita pela seguinte relação iterativa:

$$ L_{i+1} = R_i $$

$$ R_{i+1} = L_i \oplus F(R_i, K_i) $$

onde $L_i$ e $R_i$ representam as metades esquerda e direita do bloco em cada rodada e $K_i$ é a subchave derivada da chave principal.

Criptografia de chave pública

O paradigma da criptografia de chave pública foi introduzido por Diffie e Hellman (1976), que demonstraram que duas partes poderiam estabelecer um segredo compartilhado através de um canal público.

O algoritmo RSA, publicado em 1978, baseia-se na dificuldade da fatoração de números inteiros grandes. O processo de criptografia pode ser descrito por:

$$ C = M^e \mod n $$

e a decriptação por:

$$ M = C^d \mod n $$

onde:

Outros sistemas importantes incluem:

Algoritmo Ano Problema Matemático Tipo
Diffie-Hellman 1976 Logaritmo discreto Troca de chaves
RSA 1978 Fatoração de inteiros Criptografia / assinatura
Rabin 1979 Raiz quadrada modular Criptografia
ElGamal 1985 Logaritmo discreto Criptografia / assinatura

Protocolos de autenticação

O trabalho de Needham e Schroeder (1978) foi um dos primeiros a propor um protocolo completo de autenticação usando criptografia simétrica e um servidor de confiança.

A sequência básica envolve três entidades:

Esse modelo inspirou diretamente o sistema Kerberos, que utiliza tickets criptografados para permitir autenticação segura em redes distribuídas.

Funções de hash e integridade

Funções de hash criptográficas começaram a receber atenção significativa durante a década de 1980. Construções baseadas em cifras de bloco foram propostas para produzir resumos de mensagem resistentes a colisões (DAVIES; MEYER, 1984).

Uma função de hash típica pode ser expressa como:

$$ H_i = E_{M_i}(H_{i-1}) \oplus H_{i-1} $$

onde $E$ representa uma cifra de bloco.

  1. Threat Model and Problem Formalization

O modelo de ameaça considerado neste trabalho reflete o ambiente operacional típico de redes acadêmicas e corporativas do final da década de 1980.

Assume-se que o adversário possui as seguintes capacidades:

Em redes Ethernet, qualquer host conectado ao mesmo segmento físico pode potencialmente capturar quadros transmitidos. Ferramentas de análise de tráfego permitem reconstruir sessões completas de comunicação.

Formalmente, consideramos um adversário $A$ que observa um canal público $C$ entre duas entidades legítimas $U_1$ e $U_2$.

O objetivo do adversário pode ser definido como:

$$ Adv_A = P[\text{A recupera } M] $$

onde $M$ representa a mensagem original.

Um sistema criptográfico seguro deve garantir que:

$$ Adv_A \approx 0 $$

dentro dos limites computacionais plausíveis.

Tipo de Ataque Descrição Impacto
Interceptação Captura de tráfego de rede Violação de confidencialidade
Replay Reenvio de mensagens antigas Autenticação indevida
Criptanálise Exploração de fraquezas matemáticas Recuperação de chave
Comprometimento de host Acesso a chaves armazenadas Controle completo
  1. Proposed Methodology

A metodologia proposta baseia-se em três componentes principais:

  1. Implementação prática
  2. Avaliação de desempenho
  3. Análise de segurança

Arquitetura híbrida

Uma arquitetura comum combina criptografia simétrica e assimétrica:

  1. Chave de sessão gerada aleatoriamente
  2. Chave criptografada com RSA
  3. Dados protegidos com DES
Etapa Algoritmo Objetivo
Troca de chave RSA Distribuição segura
Comunicação DES Eficiência
Autenticação Kerberos Identidade

Essa abordagem reduz o custo computacional associado à criptografia de chave pública.

  1. Implementation

Os experimentos foram conduzidos em sistemas UNIX conectados por Ethernet. As implementações incluem bibliotecas de DES e protótipos RSA escritos em C.

Exemplo de uso do Kerberos

kinit levi
Password for levi@ATHENA.MIT.EDU:

klist
Ticket cache: /tmp/tkt_levis
Principal: levi@ATHENA.MIT.EDU

Issued           Expires          Principal
Jun 12 09:10     Jun 12 19:10     krbtgt.ATHENA.MIT.EDU@ATHENA.MIT.EDU

Captura de tráfego para análise

tcpdump -i le0 host kerberos-server
tcpdump: listening on le0
09:11:03 client -> kerberos-server UDP 88
09:11:03 kerberos-server -> client UDP 88
  1. Experimental Evaluation

Foram realizados testes comparando desempenho de diferentes algoritmos em estações de trabalho UNIX baseadas em processadores Motorola 68020 e VAX.

Algoritmo Tamanho da chave Operações por segundo
DES 56 bits ~1200 blocos/s
RSA 512 bits ~8 operações/s
RSA 1024 bits ~2 operações/s
ElGamal 512 bits ~5 operações/s

Comparação de modos de operação

| Modo | Paralelismo | Resistência a erros | Uso típico | |—|—|—| | ECB | Alto | Baixa | Dados independentes | | CBC | Médio | Média | Arquivos | | CFB | Baixo | Alta | Fluxos de dados |

Tamanho de chave vs segurança

Sistema Tamanho típico Estimativa de segurança
DES 56 bits Moderada
RSA 512 bits Boa
RSA 1024 bits Muito alta
  1. Case Study

O sistema Kerberos foi implantado no MIT para fornecer autenticação segura em um ambiente com milhares de estações de trabalho.

O modelo baseia-se em um Key Distribution Center (KDC) que emite tickets criptografados utilizando DES.

Fluxo simplificado:

  1. Usuário autentica no KDC
  2. Recebe ticket criptografado
  3. Apresenta ticket ao serviço
  4. Serviço valida ticket

Esse modelo evita transmissão de senhas pela rede.

  1. Discussion

Os resultados experimentais indicam claramente que criptografia de chave pública, embora poderosa para distribuição de chaves, permanece significativamente mais custosa que criptografia simétrica.

Isso sugere que arquiteturas híbridas representam a abordagem mais prática para sistemas de rede.

Outra observação importante refere-se à segurança do DES. Embora atualmente considerado seguro para aplicações comerciais, o crescimento do poder computacional levanta preocupações sobre ataques de força bruta no futuro.

  1. Conclusion and Future Work

A criptografia tornou-se um componente essencial da segurança de sistemas distribuídos. Algoritmos como DES e RSA oferecem mecanismos robustos para proteção de confidencialidade e autenticação.

Arquiteturas híbridas que combinam criptografia simétrica eficiente com troca de chaves baseada em criptografia pública representam a solução mais prática para redes de larga escala.

Pesquisas futuras devem explorar:

  1. References

DIFFIE, W.; HELLMAN, M. New directions in cryptography. 1976.
https://ee.stanford.edu/~hellman/publications/24.pdf

RIVEST, R.; SHAMIR, A.; ADLEMAN, L. A method for obtaining digital signatures and public-key cryptosystems. 1978.
https://people.csail.mit.edu/rivest/Rsapaper.pdf

SHANNON, C. Communication theory of secrecy systems. 1949.
https://ieeexplore.ieee.org/document/6773024

FEISTEL, H. Cryptography and computer privacy. 1973.
https://ieeexplore.ieee.org/document/1451860

NEEDHAM, R.; SCHROEDER, M. Using encryption for authentication in large networks of computers. 1978.
https://dl.acm.org/doi/10.1145/359657.359659

GOLDWASSER, S.; MICALI, S. Probabilistic encryption. 1984.
https://groups.csail.mit.edu/cis/pubs/shafi/1984-stoc.pdf

ELGAMAL, T. A public key cryptosystem and a signature scheme based on discrete logarithms. 1985.
https://ieeexplore.ieee.org/document/1057074

RABIN, M. Digitalized signatures and public-key functions as intractable as factorization. 1979.
https://dash.harvard.edu/handle/1/2793857

MERKLE, R. Secure communications over insecure channels. 1978.
https://people.eecs.berkeley.edu/~raluca/cs261-f15/readings/merkle.pdf

STEINER, J.; NEUMAN, C.; SCHILLER, J. Kerberos: an authentication service for open network systems. 1988.
https://web.mit.edu/kerberos/www/krb5-latest/doc/krb5-admin.pdf

DENNING, D. Cryptography and data security. 1982.
https://archive.org/details/cryptographydata00denn

DAVIES, D.; PRICE, W. Security for computer networks. 1984.
https://archive.org/details/securityforcompu0000davi

MORRIS, R.; THOMPSON, K. Password security: a case history. 1979.
https://dl.acm.org/doi/10.1145/359168.359172

SALTZER, J.; SCHROEDER, M. The protection of information in computer systems. 1975.
https://web.mit.edu/Saltzer/www/publications/protection/

KAHN, D. The codebreakers. 1967.
https://archive.org/details/codebreakersstor00kahn

FIAT, A.; SHAMIR, A. How to prove yourself: practical solutions to identification and signature problems. 1986.
https://link.springer.com/chapter/10.1007/3-540-47721-7_12

BLUM, L.; BLUM, M.; SHUB, M. A simple unpredictable pseudo-random number generator. 1986.
https://doi.org/10.1137/0215025

X.509. The directory: authentication framework. ITU-T Recommendation. 1988.
https://www.itu.int/rec/T-REC-X.509

NBS. Data Encryption Standard (FIPS PUB 46). 1977.
https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.46.pdf

NBS. Data Encryption Standard reaffirmed (FIPS 46-1). 1988.
https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.46-1.pdf

MERKLE, R. Protocols for public key cryptosystems. 1980.
https://link.springer.com/chapter/10.1007/3-540-10003-2_38

LAMPORT, L. Password authentication with insecure communication. 1981.
https://dl.acm.org/doi/10.1145/358790.358797

MICALI, S.; RACKOFF, C. The knowledge complexity of interactive proof systems. 1985.
https://dl.acm.org/doi/10.1145/22145.22178

RIVEST, R. The MD2 message digest algorithm (early design work). 1989.
https://datatracker.ietf.org/doc/rfc1319/

DAVIES, D. Some regular properties of the data encryption standard algorithm. 1987.
https://link.springer.com/chapter/10.1007/3-540-39799-X_5