Entenda como funciona um sistema de criptografia

Entenda como funciona um sistema de criptografia
Você estudante de TI e geral, veja como podemos encriptar um dado digital utilizando apenas a matemática.
Neste tópico não vamos abordar sobre chave simétrica, assimétrica, algoritmo xor, hashs, etc, mas sim sobre a estrutura binária de um dado e como ele pode ser alterado.
O algorítmico utilizado é bem simples para melhor entendimento do conceito.

Vamos utilizar uma calculadora especial para nossos cálculos:
Calculadora Binaria

A calculadora faz operações matemática entre vários formatos de números, por exemplo:
30 (decimal)  + 1010 (binário)
 


a (char) – B3 (hexadecimal)
 


Note que a calculadora é formada por:

  • 4 linhas (Cada linha corresponde à um formato de número)
  • 2 colunas (No centro de cada coluna você escolhe o tipo de operação +-*/)

Se você colocar mais de um número em uma coluna, estes números serão somados automaticamente, exemplo:
(8 decimal + 101 binário) + b char

 

Encriptando um Dado:

O exemplo seguinte é apenas uma descrição como podemos utilizar a calculadora para entender certos algoritmos  de criptografia.
Vamos encriptar a palavra “insecuritynet” com a senha “root”

 

Veja que temos 13 caracteres:
Utilizando a calculadora podemos converter cada caractere em números decimais.

Caractere "i"

 

Caractere "n"

 

E assim por diante teremos:

 

Agora vamos codificar a senha “root”

 

Vamos somar cada caractere da palavra (insecuritynet) com um caractere da senha (root).
I + r  = 105 + 116 =  Û = 219

Estamos mostrando os números decimais apenas para ficar claro o cálculo matemático, mas utilizando a calculadora não precisamos mais dos números decimais.

 

Veja como fica toda a soma:

 

Veja como fica a palavra “insecuritynet” codificada com a senha “root”:

 

Sem a senha é muito difícil reverter para a palavra original, imagine este dado trafegando na rede, serão dados binários:

 

Um sniffer irá decodificar para hexadecimal e seu caractere correspondente:

 

Se for um dado importante estará bem protegido.
Claro que o algorimito utilizado neste exemplo é muito simples (o objetivo é apenas didático) e todo o processo não é feito manualmete, mas sim via software.

Decodificando o dado encriptado:

Para decodificar basta fazer a operação inversa:

219 (decimal) – r(char) = i (char)

 

Subtraindo o dado encriptado com a senha teremos o dado real:

 



Como funcionam os Decoders

Uma vez tendo o dado já decriptado e o dado encriptado é possível criar um software que faz várias tentativas até se chegar a senha:

Vamos supor que saibamos qua a senha tenta 4 dígitos:

 

Claro que isto irá levar muito tempo para processar, o software irá que testar muitas senhas.

Nível da criptografia:
Partindo de que cada caractere é formada por um byte (8 bits), a senha root possui 32 bits (4 x 8)
 


Imagine quanto tempo se demora para decodificar uma senha de 256 bits com os computadores atuais, dependendo da senha pode ser meses ou anos, pressupondo que durante uma comunicação sejam utilizadas várias chaves.

Legislação americana sobre criptografia:

O governo dos Estados Unidos, por meio da legislação, conseguia impedir a exportação softwares de segurança. Um aplicativo, contendo criptografia, só podia ser vendido fora do território americano se o tamanho da chave criptográfica limitasse a 56 bits, limites estes que os especialistas consideravam ser quebráveis pela NSA.
Porem atualmente os EUA não é o único país com tecnologia para produzir softwares de criptografia.


 Computação quântica: Solução ou problema de segurança:

Não vamos entrar em detalhes sobre computação quântica, até porque seria necessário um livro para detalhar seu funcionamento, mas vamos partir do seguinte conceito:

Na mecanica quântica  é possível que uma partícula esteja em dois ou mais estados ao mesmo tempo
Um computador clássico tem uma memória feita de bits. Cada bit guarda um "1" ou um "0" de informação. Um computador quântico mantém um conjunto de qubits. Um qubit pode conter um "1", um "0" ou uma sobreposição destes. Em outras palavras, pode conter tanto um "1" como um "0" ao mesmo tempo. O computador quântico funciona pela manipulação destes qubits. Sem mais detalhes a velocidade de processamento partindo de estados de partículas é muito grande.

Solução de segurança:
Podemos criar chaves enormes, praticamente do tamanho da mensagem.
Podemos utilizar a propriedade da mecânica quântica que um elétron muda seu comportamento a partir do momento que é observado.

Problema de segurança:
Se um governo deter a tecnologia deste tipo de processamento este governo teria um computador que seria  potente o suficiente para quebrar qualquer sistema de criptografia aplicada atualmente.

Mais Ferramentas:

Vela algumas ferramentas que podem auxiliar em seus estudos:

Secret Message - Encode - Codificador de mensagens
Codifique sua mensagem com uma senha de forma que apenas as as pessoas que possuírem a senha poderá decodifica-la.
Encode   Decode

Ferramentas para codificação de paginas web:
Encode HTML
Encode Javascript
Decode HTML / Javascript

Conversores:
Numeros
Caracteres
Texto Binary Hexa
Medidas (Bytes)

Calculadora especial
Faça operações matemáticas entre diversos sistemas de números:
Binário, Decimal, Hexadecimal e Char.
Link da Calculadora

MD5 decoder
Word List + brute force
Download

Se você deseja aprofundar seus estudos de segurança digital participe de nosso Curso Online ASCD,  saiba mais.

  • 29/01/2014

  • by Insecuritynet

Compartilhar

logo