Guia de Criptografia e Segurança da Informação
Classificado em Tecnologia
Escrito em em
português com um tamanho de 6,31 KB
Esteganografia
A esteganografia estuda técnicas de ocultar mensagens. Ela consiste em transmitir mensagens sem que estas sejam notadas. Entre as técnicas de esteganografia mais conhecidas, podemos citar as tintas invisíveis.
O recipiente (carrier) possui o documento e a chave; ao inserir o documento em uma imagem, música ou vídeo, quem possuir a chave conseguirá retirar o conteúdo escondido.
Criptografia com Chave Simétrica (Secret Key)
A mesma chave é compartilhada e utilizada por Bob e Alice em ambas as direções. É usada frequentemente na cifragem e decifragem de mensagens longas.
Cifra de César
Utiliza o número da letra na tabela ASCII e adiciona o valor da chave para obter uma nova letra. Exemplo: se A = 96 e a Chave = 4, o resultado 100 (letra R) substituirá a letra A.
Cifra de Vigenère
A chave sempre se repete, independentemente do comprimento do texto, e vice-versa. À esquerda fica a chave e no topo o texto simples. Se a chave for "B" e o texto for "B", pela tabela, o resultado será "C".
Cifra por Transposição
A ordem dos caracteres é alterada. Por exemplo, se a entrada é 1 2 3 4 5, a saída pode ser 3 4 1 5 2. Utiliza valores de 0 a 15 em binário.
Esquema DES (Data Encryption Standard)
- Transposição (texto limpo de 64 bits)
- Iterações 1 a 16 (k1 a k16) com gerador de chave de rodada (Round key generator) de 64 bits
- Permutação
- Transposição (texto cifrado de 64 bits)
DES: Iteração de Bloco
O bloco é dividido em 32 bits da esquerda e 32 bits da direita. Os 32 bits da direita enviam a chave sem função para o lado esquerdo. Os 32 bits da direita passam por uma função e uma operação XOR com o complemento da esquerda. Na saída, temos os 32 bits da direita criptografados.
Configuração AES (Advanced Encryption Standard)
- Tamanho do bloco de dados: 128 bits
- 10 rodadas para chaves de 128 bits
- 12 rodadas para chaves de 192 bits
- 14 rodadas para chaves de 256 bits
Criptografia com Chave Pública Assimétrica (RSA)
Critérios do RSA
- Escolha, de forma aleatória, dois números primos grandes (P e Q), no mínimo da ordem de 10100.
- Compute n = p * q.
- Compute a função totiente de n: φ(n) = (p-1)(q-1).
- Escolha um número inteiro E tal que 1 < E < φ(n), de forma que E e φ(n) sejam primos entre si.
- Compute D de forma que D * E ≡ 1 (mod φ(n)), ou seja, D seja o inverso multiplicativo de E em mod φ(n).
Ao final, temos:
- Chave pública: o par de números (N, E).
- Chave privada: o par de números (N, D).
Alice usa a chave pública para criptografar e, na decifragem, Bob utiliza a chave privada. Este método é eficiente para mensagens menores.
Segurança da Informação
Os pilares fundamentais são: Privacidade (Confidencialidade), Autenticação, Integridade e Não Repúdio.
Assinatura Digital
Para assinar um documento, Alice utiliza uma chave privada que só ela possui. Bob decifra com a chave pública de Alice, garantindo a autoria. A assinatura digital sozinha não agrega privacidade; se um nível rigoroso de privacidade for necessário, outro nível de cifragem deve ser aplicado.
Hash
Alice utiliza o Hash para gerar uma síntese, que é cifrada com sua chave privada para criar a assinatura. Esta é incorporada ao texto simples (não criptografado) enviado a Bob. O receptor (Bob) recebe a mensagem, decifra a assinatura com a chave pública de Alice e compara a síntese resultante com o hash da mensagem recebida para validação.
Autenticação de Usuário
Chave Simétrica
Uma chave simétrica entre duas entidades é útil se, e somente se, for utilizada uma única vez. Ela deve ser criada no início de uma sessão e destruída ao final. Usando apenas a chave, Alice envia Kab(Alice, Senha) e, em seguida, envia os dados para Bob.
Usando Nonce
Alice envia a solicitação; Bob envia um RB (nonce); Alice envia Kab(RB) e inicia a transmissão.
Usando Autenticação Bidirecional
Alice envia sua identificação e um RA; Bob retorna RB(Kab(RA)); Alice responde com Kab(RB) e inicia a transmissão.
Método de Diffie-Hellman
Tanto Bob quanto Alice conhecem os valores de N e G. Alice define um valor privado X e Bob define um valor privado Y.
- Alice envia R1 = Gx mod n.
- Bob retorna R2 = Gy mod n.
- Alice calcula K = (R2)x mod n.
- Bob calcula K = (R1)y mod n.
Para validação, ambos chegam ao resultado K = Gxy mod n.
Abordagem usando KDC (Centro de Distribuição de Chaves)
Alice envia uma solicitação ao KDC (Alice, Bob). O KDC retorna Ka(Kab, (Kb(Alice, Bob, Kab))). Alice envia para Bob a parte Kb(Alice, Bob, Kab) e ambos iniciam a troca de dados usando a chave Kab.
Tabela X.509
Padrão e formato para certificados digitais. Contém: Versão, Número Serial, Assinatura, Emissor, Validade, Nome e Chave Pública.
Kerberos
Funcionamento: Baseia-se em três elementos: AS (Servidor de Autenticação), TGS (Servidor de Concessão de Tickets) e o servidor de destino. Requer o protocolo NTP (Network Time Protocol) na rede.
Processo:
- Solicitação de ticket para o AS.
- Geração da chave de sessão Alice-TGS e do ticket para o TGS.
- Solicitação de ticket para Bob no TGS.
- Geração da chave de sessão Alice-Bob e do ticket para Bob.
- Solicitação do serviço.
- Fornecimento do serviço.
Engenharia Social
Consiste em buscar informações do alvo em locais públicos, como redes sociais (Facebook e afins), para descobrir dados importantes sem a necessidade de invasão técnica.