Thalia (discussão | contribs)
Etiqueta: visualeditor
Thalia (discussão | contribs)
Etiqueta: visualeditor
Linha 267: Linha 267:
[[Arquivo:Dividindo.jpg|centre]]
[[Arquivo:Dividindo.jpg|centre]]


= Referências Bibliográficas =
= Referências Bibliográficas =
<nowiki>https://pt.wikipedia.org/wiki/Criptografia</nowiki>
# <nowiki>https://pt.wikipedia.org/wiki/Criptografia</nowiki>
 
# <nowiki>http://olhardigital.uol.com.br/fique_seguro/video/o-que-e-criptografia/32640</nowiki>
<nowiki>http://olhardigital.uol.com.br/fique_seguro/video/o-que-e-criptografia/32640</nowiki>
# <nowiki>http://www.bosontreinamentos.com.br/seguranca/introducao-a-criptografia/</nowiki>
 
# <nowiki>http://tecnologia.hsw.uol.com.br/criptografia6.htm</nowiki>
<nowiki>http://www.bosontreinamentos.com.br/seguranca/introducao-a-criptografia/</nowiki>
 
<nowiki>http://tecnologia.hsw.uol.com.br/criptografia6.htm</nowiki>


<br>
<br>

Edição das 19h01min de 8 de setembro de 2016

Técnica de Criptografia

A palavra Criptografia vem do grego "Kryptós Gráphein", ou seja, "Escrita Oculta". Criptografia é o estudo a aplicação de técnicas para comunicação e armazenamento seguro de dados em sistemas computacionais.

Conceito

Criptografia é a técnica em que a informação transmitida pode ser transformada da sua forma original para outra impossível de ser identificada, a intenção é ter um armazenamento seguro de dados em sistemas computacionais e que apenas o destinatário certo e com a chave específica possa ter acesso àquela informação.

Encriptação

Encriptação é o processo que converte informações em um formato legível (texto puro) para um formato ilegível (texto cifrado), para isso, utiliza-se algoritmo criptográfico.

Decriptação

É o processo inverso da Encriptação, ou seja, é a transformação da informação ilegível em uma informação legível, utilizando-se também um algoritmo criptográfico.  

Criptoanálise 

Processo de transformação de dados cifrados (encriptados) em dados legíveis (decriptados) sem que conheça a chave de encriptação. Portanto, trata-se de decifrar a encriptação dos dados para obter acesso ao conteúdo das mensagens. Porém com o intuito de descobrir falhas nos algoritmos para torná-los mais seguros, validá-los ou descartá-los. 

Tipos de Criptografia

Criptografia de Chave Simétrica

Este tipo de criptografia utiliza uma única chave, ou seja, uma mensagem pode ser encriptada pelo emissor e decriptada pelo destinatário utilizando-se a mesma chave. É chamada de simétrica por se tratar de uma chave (iguais).

Uma cifra simétrica é definida sobre um par de algoritmos de encriptação (E) e decriptação (D), onde:

m = Texto plano (mensagem)
c = Texto cifrado (encriptado)
k = Chave criptográfica
E = Algoritmo de encriptação(Randomizado)
D = Algoritmo de decriptação(Fixo)

c = E(k,m) e m = D(k,c). Logo: m = D(k,E(k,m)) Equação de consistência

Para todo m pertencente a m e k pertencente a k: D(k,E(k,m)) = m


Exemplo de algoritmo de chave simétrica
 OTP (One-Time-Pad)

Gilbert Vernam, 1917, Bell Labs.

A chave é uma string de bits aleatória, com pelo menos o mesmo tamanho da mensagem em si.

Exemplo com o F da Tabela ASCII:

K exor m
Mensagem 1 0 0 0 1 1 0
Chave 1 1 0 0 0 1 1
C 0 1 0 0 1 0 1

K exor c
C 0 1 0 0 1 0 1
Chave 1 1 0 0 0 1 1
Mensagem 1 0 0 0 1 1 0

Ou seja, texto cifrado, é igual à aplicação do algoritmo de encriptação sobre a chave e a mensagem, que é igual à chave exor mensagem.


Criptografia de Chave Assimétrica

Esse tipo de criptografia utiliza duas chaves diferentes, por isso é chamada de Assimétrica. A mensagem é criada a partir da chave pública do destinatário e somente pode ser decriptada com a chave privada que somente o destinatário tem acesso, mesmo que, outra pessoa intercepte a mensagem e tenha a mensagem pública do destinatário, essa pessoa não poderá decriptar a mensagem. 

Exemplo de algoritmo de chave assimétrica
RSA (Rivest, Shamir e Adleman)

Criado por Ron Rivest, Adi Shamir e Len Adleman, em 1977, é um dos algoritmos de chave assimétrica mais utilizados. Seu funcionamento consiste na multiplicação de 2 números primos (chave privada) muito grandes para a geração de um terceiro número (chave pública).

m Texto plano (mensagem)
c Texto cifrado (encriptado)
(e,n) Chave pública
(d,n) Chave privada
n Produto de dois números primos
^ Operação de exponenciação
mod Operação de módulo (resto da divisão inteira) 
Criar um par de chaves

1.Pegar dois números primos p e q (tamanho aproximadamente igual). Calcular n = p*q.  

2.Pegar um número e que não tem nenhum fator em comum com (p-1)*(q-1)

3.Calcular d como e*d mod (p-1)*(q-1) = 1

O par (e,n) é a chave pública. (d,n) é a chave privada. 

Exemplo :  Pegar dois números primos aleatórios: p = 29q = 37  Calcular n = pq = 29 * 37 = 1073  e deve ser escolhido de forma aleatória de modo que e não tenha nenhum fator em comum com(p-1) (q-1)(p-1)(q-1) = (29-1)(37-1) = 1008  Pegar e = 71  Escolher d como 71*d mod 1008 = 1  Vamos encontrar d = 1079  Agora temos as nossas chaves: 

  • A chave pública é (e,n) = (71,1073) (chave de criptografia)
  • A chave privada é (d,n) = (1079,1073) (chave de decodificação) 

Criptografando a mensagem "HELLO", usando a tabela ASCII:

m = 7269767679 

Então, temos que recortar a mensagem em blocos contendo menos dígitos do que N. N tem 4 dígitos, então vamos recortar a nossa mensagem em blocos de três dígitos: 

726 976 767 900 (completa-se com zeros)  

Criptografar cada bloco: c = m^e mod n 

726^71 mod 1073 = 436 
976^71 mod 1073 = 822 
767^71 mod 1073 = 825 
900^71 mod 1073 = 552 

A mensagem criptografada é 436 822 825 552.

Mensagem descriptografada: m = c^d mod n

436^1079 mod 1073 = 726 
822^1079 mod 1073 = 976 
825^1079 mod 1073 = 767 
552^1079 mod 1073 = 900  

Ou seja, a sequência de números 726976767900

A mensagem em texto simples 72 69 76 76 79: "HELLO".

Função de Hash (Resumo de Mensagem)

Um algoritmo de resumo de mensagem, recebe uma mensagem de tamanho variável como entrada e um resumo fixo como saída, a mensagem é totalmente incompreensível. Essa saída é chamada de Resumo e o algoritmo é chamado de One-Way Hash.

Um algoritmo Hash necessita, no mínimo, de:

  • A mensagem deve ser impossível de se determinar, baseando somente em seu Resumo.
  • Deve ser impossível encontrar uma mensagem qualquer que possa um Hash em particular ou desejado.
  • É computacionalmente inviável duas mensagens ter o mesmo resumo.
  • O mapeamento de um Hash para uma mensagem deve parecer totalmente aleatório
  • A alteração de qualquer bit na mensagem original deve fazer com que a mensagem prozuda um Hash totalmente diferente.

Usos das Funções de Hash:

  • Autenticação
  • Integridade de mensagens
  • Assinatura de mensagens
  • Detecção de alteração de dados
  • Verificação de senhas

Exemplo de algoritmo Hash: MD5

Autenticação

A Autenticação é utilizada para verificar que as informações são originárias de uma fonte confiável, ou seja, assegura que a mensagem foi realmente originada pelo remetente, e não por outra pessoa.

Maneiras de autenticar uma pessoa ou uma informação:

Senha

A maneira mais comum de autenticação é um nome de usuário e uma senha. Caso a senha e usuário estiverem corretos, obtêm-se o acesso à informação, caso contrário, não.

Cartões de acesso

Pode ser cartões de crédito ou simples cartões com tira magnética, como por exemplo, a carteirinha da universidade.

Assinaturas Digitais

Uma assinatura digital é basicamente uma maneira de se assegurar que um documento eletrônico seja autêntico, seja ele, um e-mail, uma planilha eletrônica ou um arquivo de texto, e permite também verificar a integridade do documento, se foi ,ou não, alterado no caminho. Utiliza-se uma chave assimétrica (privada e pública), umas das que são utilizadas é a RSA.

Uma assinatura digital deve ser:

  • Simples de produzir para o assinante
  • Facilmente verificável
  • Difícil de ser falsificada
  • Quem usa a assinatura não pode negar que assinou um documento (não-repúdio)



Esteganografia

Esteganografia e criptografia são duas áreas com objetivos diferentes, a criptografia tem o objetivo de impedir uma mensagem ser lida por pessoas não autorizadas, já a esteganografia tem o objetivo de fazer com que mensagem nem pareça existir.

Ruído

É uma técnica simples que consiste em substituir o ruído em uma imagem ou em um arquivo de áudio pela informação que se deseja transmitir.

Exemplo BPCS: Bit-Plane Complexity Segmentation

A idéia é dividir os planos de bits de uma imagem BMP, PNG ou JPG em regiões com ruídos e sem ruídos.

Espalhando a Informação

Mecanismos mais sofisticados espalham a informação nos pixels de uma imagem ou em partes de arquivos de áudio.O sinal a ser transmitido é codificado em um sinal similar a um ruído de rádio e é, então, transmitido em freqüências, com o objetivo de obter uma comunicação mais confiável, mais eficiente e mais secreta.

Ordenação

Consiste em transmitir a informação através da ordem em que os elementos de uma lista são dispostos. Essa técnica não altera a qualidade da informação que está sendo transmitida, mas pode ser facilmente perdida caso haja uma nova alteração.

A ordem dos atributos alt e name determina o valor do bit. A primeira linha pode representar o bit 0, enquanto a segunda pode representar o bit 1.

Dividindo a Informação

Divide a mensagem em pequenas partes, de modo que ela só possa ser obtida novamente se o receptor possuir todas, ou talvez algumas, partes em suas mãos.

Referências Bibliográficas

  1. https://pt.wikipedia.org/wiki/Criptografia
  2. http://olhardigital.uol.com.br/fique_seguro/video/o-que-e-criptografia/32640
  3. http://www.bosontreinamentos.com.br/seguranca/introducao-a-criptografia/
  4. http://tecnologia.hsw.uol.com.br/criptografia6.htm