Unconfigured Ad Widget

Collapse

Anúncio

Collapse
No announcement yet.

Criptografia - Introdução - I

Collapse
X
 
  • Filter
  • Tempo
  • Show
Clear All
new posts

  • Font Size
    #1

    Artigo Criptografia - Introdução - I


    Autor: Birkoff
    Modificações: N.D.A


    O que é Criptografia?


    Criptografia é, de maneira simples, “escrever em códigos“. Não vou dedicar linhas à uma abordagem histórica da criptografia. O que interessa é que a ciência da criptografia, a criptologia, é muito antiga. No começo, era bem simples. Coisa que com papel e caneta você faz. Hoje em dia, é muito mais complexa, códigos que se você colocar todos os computadores do mundo pra tentar quebrar vai precisar de mais tempo que a idade estimada do universo pra ter sucesso.

    Ih, já comecei a complicar. Códigos, quebrar? Ok, vou tentar ir com mais calma.

    Em geral, a criptografia é o processo de transformar um texto compreensível (que chamaremos de mensagem) em um texto codificado (que chamaremos de código), usando uma fórmula matemática (que chamaremos de cifra). “Mas espera aí, fórmula matemática?“. Sim! Toda informação num computador, seja o que for, está armazenada na forma de números. Uma figura, um texto, etc. Tudo isso são números. Aplica-se uma fórmula sobre um número, ele vira outro número. De maneira simplificada, isso é a cifragem, ou seja: Você pega uma mensagem (número), aplica uma cifra (fórmula) e obtém um código (outro número).

    Agora, você lembra que lá na escola você aprendeu uma coisa chamada função inversa? Aquela, que se aplicada sobre a resposta obtida na função, retorna o número original? Por exemplo, a função inversa de:

    f(x) = x+1

    é

    g(x) = x-1

    Simples, não? Quando fazemos isso, podemos dizer que estamos decifrando o código. Ou seja, pegamos um código (o número obtido na cifragem), aplicamos uma cifra inversa (função inversa) e obtemos nossa mensagem de volta. Você pode estar pensando: “Ok, mas este exemplo foi ridiculo“. Sim, pra nós, hoje em dia, chamar isso de criptografia pode parecer ridículo. Mas o Grande Júlio César fez uso de uma cifra muito parecida, a famosa Cifra de César, que envolvia associar cada letra a um número e simplesmente fazer algo muito parecido com o que acabamos de fazer: somar 13 para cifrar, e tirar 13 para decifrar.

    Na verdade está envolvida aí uma operação modular, ou seja, imagine os números como indo de 1 a 26 (26 letras do alfabeto) apenas, se chegar a 27 você na verdade volta a 1, e vice-versa, se chegar a 0, volta pro 26. Pra facilitar, coloque os números em um círculo. Note que a obtenção do módulo, matematicamente falando, nada mais é que obter o resto da divisão (28 mod(26) = 2, pois 27 dividido por 26, dá 1 e sobra 2). Pode parecer difícil, mas você certamente já viu isso antes, mas talvez só não percebeu: 15 horas no seu relógio digital, é indicado como 3 horas no seu relógio de ponteiro que representa as 24 horas do dia em módulo 12.

    Claro que hoje em dia as coisas não são mais tão simples. As cifras evoluiram muito em complexidade, usando alguns artifícios da matemática que não vou comentar aqui por não atender o objetivo dos meus posts.

    Uma última coisa importante: o número 13 da cifra de César, pode ser considerado como um exemplo simples de uma coisa importante de qualquer cifra moderna. O número poderia ser qualquer um, de 1 a 25, certo? Ou seja, e você usar 12 para cifrar a mesma mensagem, o código obtido será diferente. Este valor que podemos escolher, e que afeta o resultado obtido, é o que chamamos de chave. No caso de César, se não soubermos a chave, precisamos tentar só as 25 possíveis, o que você pode fazer com lápis e papel em poucos minutos. E com um computador, nem se fala. Esse negócio de tentar todas as chaves possíveis é um dos jeitos mais conhecidos de quebrar um código, e recebe o nome de ataque por força bruta (faz sentido, né?). Uma boa cifra moderna precisa mais do que a idade estimada do universo pra ser quebrada assim.

    Last edited by V3nom; 16-09-2009, 23:00.
    Mesmo longe, eu estou perto. Guia do Hacker 4ever.
X
Working...
X