criptografia: aprendizagem da ... - dev-sirox…dev-sirox.com.br/download/aprendizagemcripto.pdf ·...

59
UNIVERSIDADE NOVE DE JULHO SIRALBERTO SOUZA LEITÃO DE ALMEIDA BRUNO MICHEL DA CONCEIÇÃO OLIVEIRA CRIPTOGRAFIA: APRENDIZAGEM DA CRIPTOGRAFIA NO ÂMBITO EMPRESARIAL SÃO PAULO 2013

Upload: ledieu

Post on 06-Oct-2018

219 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

UNIVERSIDADE NOVE DE JULHO

SIRALBERTO SOUZA LEITÃO DE ALMEIDA

BRUNO MICHEL DA CONCEIÇÃO OLIVEIRA

CRIPTOGRAFIA: APRENDIZAGEM DA CRIPTOGRAFIA NO

ÂMBITO EMPRESARIAL

SÃO PAULO – 2013

Page 2: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

SIRALBERTO SOUZA LEITÃO DE ALMEIDA

BRUNO MICHEL DA CONCEIÇÃO OLIVEIRA

CRIPTOGRAFIA: APRENDIZAGEM DA CRIPTOGRAFIA NO

ÂMBITO EMPRESARIAL

Trabalho de conclusão de Curso apresentado

como exigência parcial, para a obtenção do

Grau de Bacharel em Ciência da Computação,

do Centro Universitário Nove de Julho –

UNINOVE

Orientador: Prof. Me. Luciano Gavinho

UNIVERSIDADE NOVE DE JULHO – UNINOVE

SÂO PAULO 2013

Page 3: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

RESUMO

Para a maioria das informações corporativas que trocamos em nosso dia-a-dia de

trabalho, há a necessidade de um cuidado absolutamente especial com esse valioso

bem, as informações movimentam o cenário da empresa e fornecem diretrizes para

o crescimento do negócio. O computador e suas tecnologias são os principais

responsáveis por garantir o bom funcionamento do fluxo destas informações desde

uma simples troca de e-mail a uma transação bancária milionária, contudo um

computador desprotegido e sem segurança de acesso colocam em risco a razão da

existência do negócio, pois as informações ali contidas estarão expostas a qualquer

atacante mal intencionado. A necessidade da criptografia de dados torna-se

imprescindível a partir deste momento, em que um computador que guarda todo o

valor de mercado do negócio da empresa, pode estar sendo acessado por pessoas

e programas mal intencionados, uma vez que essas informações são uma fonte de

riquezas. Entre os principais alvos de ataques, estão as empresas de pequeno e

médio porte, que não dispõem de recursos necessários para um investimento maior

na segurança da informação ou que não adotam uma política sólida de segurança.

Este estudo é destinado a empresas que não utilizam criptografia e até mesmo para

aquelas empresas utilizam técnicas ultrapassadas e com maior vulnerabilidade.

Palavras-chave: Segurança da Informação. Algoritmos Criptográficos. Symantec.

Encriptação. Chaves Criptográficas. Chave Simétrica. Chave Assimétrica.

Page 4: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

ABSTRACT

For most corporate information that we exchange in our daily work, there is a

necessity of an absolutely special care with this valuable asset, information move the

stage of the company and provide guidelines for business growth. The computer and

its technologies are primarily responsible for ensuring the proper functioning of the

flow of this information from a simple exchange of e-mail to a millionaire banking

transaction, however an unprotected computer without access security put at risk the

reason for the existence of the business because the information contained therein

will be exposed to any malicious attacker. The necessity for data encryption becomes

essential from now on where a computer that holds all the market value of the

company's business, can be accessed by intruders and malicious programs, since

such information is a source of wealth. The small and medium-sized companies are

among the main targets of attacks because they do not have enough resources for a

greater investment in information security or do not adopt a solid and strong political

security. This study is intended for companies that do not use encryption or even for

those companies that use outdated techniques and with greater vulnerability.

Keywords: Information Security. Cryptographic algorithms. Symantec. Encryption.

Cryptographic Keys. Symmetric Key. Asymmetric key.

Page 5: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

LISTA DE ILUSTRAÇÔES

Figura 1 - Método de Cifragem Hebraico. ................................................................. 11

Fonte: http://imasters.com.br/artigo/6360/seguranca/criptografia-de-dados-parte-01-

origem-e-evolucao ..................................................................................................... 11

Figura 2 - Cifra de César com deslocamento de três posições. ................................ 12

Figura 3 - Exemplo de troca de chaves assimétrica .................................................. 16

Fonte: http://tigger.uic.edu/depts/accc/newsletter/adn26/figure2.html ....................... 16

Figura 4 - Processo de funcionamento da TripleDES Fonte: Criptografia e

Segurança: O Guia Oficial RSA ................................................................................ 22

Figura 5 - Tempo de quebra das chaves por força bruta .......................................... 24

Figura 6 - Protocolo SSL e suas trocas de sessões cliente-Servidor Fonte:

Criptografia e Segurança de Redes: Princípios e práticas ........................................ 36

Figura 7 - Netbeans: Início da criação do projeto em JAVA ...................................... 43

Figura 8 - Tela inicial da Aplicação de Aprendizagem ............................................... 45

Figura 9 - Tela demonstrando a abertura de um arquivo para criptografar ............... 46

Figura 10 - Tela demonstrando o arquivo com o diretório ......................................... 46

Figura 11 - Tela demonstrando o arquivo que será salvo e para criptografar ........... 47

Figura 12 - Tela demonstrando diretórios para processo de criptografar .................. 47

Figura 13 - Tela demonstrando o processo realizado de criptografia ........................ 48

Figura 14 - Tela demonstrando a abertura de um arquivo para descriptografar ....... 49

Figura 15 - Tela demonstrando a abertura de um arquivo para descriptografar ....... 49

Figura 16 - Tela demonstrando o arquivo com o diretório em descriptografar .......... 50

Figura 17 - Tela demonstrando o arquivo que será salvo e para descriptografar ..... 51

Figura 18 - Tela demonstrando diretórios para processo de descriptografar ............ 51

Figura 19 - Tela demonstrando o processo realizado de descriptografia .................. 52

Figura 20 – Tela de digitação de dados em criptografia AES em texto ..................... 53

Figura 21 - Tela de criptografia AES em texto que foi digitado ................................ 53

Page 6: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

LISTA DE TABELAS

Tabela 1 - Funcionamento do algoritmo de troca de chaves ..................................... 17

Tabela 2 - Exemplo de criptografia aplicada em JAVA ............................................. 20

Tabela 3 - A chave AES e suas combinações........................................................... 25

Tabela 4 - Comparação de ameaças na Web. .......................................................... 40

Page 7: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

LISTA DE ABREVIATURAS E SIGLAS

ENIAC Eletronic Numerical Integrator And Computer

IBM International Business Machines

DES Data/Digital Encryption Standard

MD5 Message-Digest algorithm 5

TDES Triple Data/Digital Encryption Standard

AES Advanced Encryption Standard

SHA Security Hash Algorithm

IPSEC Internet Protocol Security

SSL Secure Socket Layer

TLS Transport Layer Services

TCP/IP Transmission Control Protocol / Internet Protocol

SEC Security Electronic Transaction

SQL Structured Query Language

API Aplication Programming Interface

NSA National Security Agency

NIST National Institute of Standards and Technology

FIPS Federal Information Processing Standards

CIDAL Confidencialidade, Integridade, Disponibilidade, Autenticidade e

Legalidade

Page 8: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

SUMÁRIO

1 INTRODUÇÂO ........................................................................................... 10

1.1 A ORIGEM DA CRIPTOGRAFIA ................................................................ 10

1.2 A CRIPTOGRAFIA MODERNA .................................................................. 13

1.3 A CRIPTOGRAFIA NA ERA DIGITAL ........................................................ 14

1.3.1 EXEMPLOS DE CHAVES SIMÉTRICAS E DEFINIÇÃO. .......................... 15

1.3.2 EXEMPLOS DE CHAVES ASSIMÉTRICAS............................................... 15

1.3.3 A TÉCNICA DO HASH ............................................................................... 17

1.3.4 COMO CRIAR UMA CRIPTOGRAFIA ?..................................................... 18

1.3.5 A IBM e a proposta da DES........................................................................ 20

1.3.6 O SECURITY HASH ALGORITM - SHA..................................................... 26

2 A SEGURANÇA NAS CORPORAÇÔES .................................................... 28

2.1 ESTUDO DE CASOS ................................................................................. 28

2.2 APRENDIZADOS EM SEGURANÇA DA INFORMAÇÂO .......................... 30

2.3 PRIMÓRDIOS DA SEGURANÇA DA INFORMAÇÂO ................................ 31

2.4 O C.I.D.A.L., PILARES IMPORTANTES DA SEGURANÇA ....................... 31

2.5 SISTEMAS INSEGUROS ........................................................................... 32

2.6 CRIPTOGRAFIA E SEGURANÇA PARA A WEB ...................................... 33

2.6.1 PRINCIPAIS TÉCNICAS DE SEGURANÇA PARA A WEB ....................... 34

2.6.2 TÉCNICAS RECOMENDADAS DE SEGURANÇA PARA WEB ................ 36

3 ATAQUES A SEGURANÇA E A ENGENHARIA SOCIAL .......................... 37

3.1 ATAQUES DIRETOS ................................................................................. 38

3.2 ATAQUES INDIRETOS .............................................................................. 38

3.3 SOLUÇÔES E HIPÓTESES ....................................................................... 41

Page 9: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

4 DESENVOLVIMENTO DA APLICAÇÃO DE APRENDIZAGEM ................. 42

4.1 APLICANDO A FERRAMENTA NETBEANS IDE - LINGUAGEM JAVA .... 42

4.2 FLEXIPROVIDER – ARQUITETURA DA CRIPTOGRAFIA JAVA .............. 44

4.3 DESCRIÇÕES DA APLICAÇÃO DESENVOLVIDA .................................... 44

5 CONCLUSÂO ............................................................................................. 54

REFERÊNCIAS BIBLIOGRÀFICAS .......................................................................... 55

FOLHA DE APROVAÇÃO DO TCC .......................................................................... 59

Page 10: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

10

1 INTRODUÇÂO

Na medida em que novas mentes e personalidades surgem em nosso meio para

contribuir com grandes inovações, ideias, pesquisas e estudos, crescem

significativamente a necessidade de proteção dos mesmos, seja um produto ou

serviço. As empresas objetivam exatamente isso, entretanto, visando o lucro ou a

recompensa do sucesso de tal projeto, criando se assim uma grande base de dados

não só no fim de um projeto, mas também em todo o seu planejamento e execução

que, nos dias atuais, são tratados de forma diferenciada por guardarem informações

tão valiosas.

Com os grandes avanços na tecnologia da informação, conseguimos inserir em um

sistema computacional aquilo que antes só havia no nosso meio físico: a proteção

das informações. Sabemos que há uma grande intenção em interceptar esses

dados, surgindo assim uma necessidade indispensável de aprimoramento da

segurança em nossos sistemas de informação desde os mais simples até os mais

complexos. As informações trocadas em todo o âmbito empresarial precisam ser

protegidas uma vez que estamos nos referindo a informações que podem conter um

valor inestimável para a corporação ou negócio e desta forma devem ser mantidos

em total sigilo pelo custodiante desta informação. Com o intuito de ajudar esses

profissionais da segurança da informação, demonstraremos neste trabalho de

pesquisa uma aplicação computacional que encripta e decifra o arquivo que contém

a informação desejada através de algoritmos criptográficos preparando o mesmo

para envio seguro seja através de correio eletrônico e Cloud Computing ou

dispositivo de armazenamento.

1.1 A origem da criptografia

Surge como a arte ou a ciência de esconder, ocultar ou com o intuito de proteger a

informação por escrito, a criptografia (do Grego: kriptos (oculto) e grapho (escrita) é

Page 11: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

11

um método de troca de mensagens onde somente o destinatário conhece a forma de

decifrá-las e posteriormente efetuar a leitura do seu conteúdo, ou seja, mesmo que a

mensagem seja interceptada em algum lugar no caminho até o destinatário, o

atacante não será capaz de compreendê-la. Quando o destinatário conhece a forma

de decifrar e processar o seu conteúdo então dizemos que o mesmo possui a “chave

criptográfica”, desta forma somente as pessoas envolvidas na troca das informações

são capazes de conhecer o conteúdo “escondido” através de vários métodos de

cifragem.

Há 2000 anos a. C. os egípcios criaram os primeiros conceitos de criptografia em

seus hieróglifos para transmitirem mensagens onde somente faraós dotados de

conhecimentos daqueles símbolos conseguiam compreende-los. Alguns anos mais

tarde os antigos Hebraicos criaram um tipo de criptografia utilizando duas

sequencias de alfabetos, a sequencia de cima fica como conhecemos (de A à Z)

mas a de baixo fica disposta de forma invertida (de Z à A) e então a mensagem fica

encriptada de acordo com sua letra correspondente do alfabeto de A à Z acima, Veja

a figura abaixo :

Figura 1 - Método de Cifragem Hebraico.

Fonte: http://imasters.com.br/artigo/6360/seguranca/criptografia-de-dados-parte-01-origem-e-evolucao

Por exemplo, se quisermos encriptar a palavra “criptografia” utilizando o método

Hebraico, ficaria desta forma: “XIRKGLTIZURZ”. Este método de cifragem ficou

conhecido como “Atbash” e baseia-se numa forma de substituição simples de

caracteres, porém nos dias atuais é absolutamente inseguro e considerado um

método de segurança baixíssimo se aplicar nas nossas atividades, uma vez que é

perfeitamente reversível, pois se utilizarmos o mesmo método no texto cifrado pode-

se obter o texto original. Foi importante apenas nos tempos antigos da civilização

onde as pessoas desconheciam completamente tais técnicas para esconder textos.

Page 12: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

12

Também próximo àquela época, outro método de cifra marcante na história foi o

método criado por Julio César, um antigo líder Romano que usava uma técnica

específica e desconhecida até então pelas civilizações de sua época, trata-se de um

método similar ao Hebraico, contudo há uma pequena diferença na maneira em que

eram cifrados os textos na sequência alfabética, deslocando para a direita ou para a

esquerda três posições sobre o alfabeto original que foi implementado, inclusive em

objetos em que era possível manipular as posições dos caracteres em uma espécie

de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

para combinar os caracteres com o seu significado na forma codificada, conforme

mostrado na figura abaixo:

Figura 2 - Cifra de César com deslocamento de três posições.

Fonte: http://www.jornallivre.com.br/13847/o-que-e-a-cifra-de-cesar-ou-cifra-de-troca.html

O surgimento da criptografia nos tempos antigos certamente foi um marco no início

da segurança da informação, sinal de que desde o início de nossa história tivemos

uma grande preocupação em proteger nossas informações, as primeiras noções de

técnicas para proteção dos dados embora muito simples era na verdade uma grande

novidade para a sociedade da época pois não tinham noção de cifragem e

decifragem, desta forma a criptografia era extremamente eficiente para aqueles que

dominavam essa importante técnica usada como base até os dias atuais.

É necessário distinguir criptografia, criptoanálise e criptologia. Criptografia é um

ramo da criptologia preocupada em lidar com uma projeção de um sistema para

encriptação e decriptação segura com o objetivo de assegurar confidencialidade,

Page 13: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

13

integridade e autenticidade da mensagem. Criptoanálise é o ramo da criptologia em

lidar com a tentativa de explorar as vulnerabilidades de um algoritmo criptográfico de

um sistema de criptografia para recuperar a mensagem original. Criptografia é o

estudo de técnicas para assegurar o sigilo e/ou autenticidade da informação.

1.2 A criptografia moderna

Avançando alguns anos na história, a criptografia, acompanhando a evolução

humana, continuava a ter sua importância na sociedade, todavia mais focada na

troca de informações secretas em meio a guerra e conflitos étnicos para impedir que

as informações não fossem interceptadas pelo inimigo, utilização muito semelhante

ainda à dos tempos antigos de Julio César.

No século XX foi criada pela marinha alemã uma máquina que era capaz de criar

diferentes combinações e chaves criptográficas ao pressionar alguns botões

funcionando de forma semiautomática, a máquina “Enigma" como ficou conhecida

foi inventada por Arthur Scherbius e era considerada uma inovação tecnológica por

apresentar o conceito de automação e eficiência devido a necessidade de um

estudo muito aprofundado para conhecer seu funcionamento uma vez que devido

as inúmeras possibilidades de combinações era praticamente impossível decifrar

suas mensagens ou tentar todas as possibilidades, que na segurança da

informação, é conhecido como força bruta. Algum tempo após o sucesso da Enigma

frente a Marinha alemã, seu uso estendeu-se também para o exército alemão.

Contudo, com o auxílio de uma máquina em especial, seu funcionamento foi

desvendado após ter sido roubada um exemplar da máquina por terceiros, logo após

algum tempo estudando essa máquina descobriu-se que a enigma era na verdade

um sistema de criptografia recíproca por ser facilmente reinicializada, uma vez que

para decifrar a mensagem, era apenas necessário digitar o texto cifrado no teclado e

o texto puro era mostrado no visor. Posteriormente a invenção da Enigma, outras

máquinas baseadas em seu funcionamento foram inventadas, porém com

mecanismo mais aprimorado e uma segurança maior.

Page 14: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

14

1.3 A criptografia na era digital

A invenção do primeiro computador, o “ENIAC” (Eletrical Numerical Integrator and

Calculator) impulsionou a criação de computadores de alta performance uma vez

que sentia-se cada vez mais a necessidade de otimizar as tarefas devido ao

crescimento pós segunda guerra em que era imprescindível o avanço tecnológico,

principalmente no que diz respeito a computadores.

Com o desenvolvimento tecnológico dos computadores, cresceu proporcionalmente

o uso da criptografia, deixava-se para trás as máquinas constituídas de rotores e

funções manuais para entrar no mundo computacional, muito atrativo por

proporcionar uma cifragem muito mais complexa se comparado àquelas existentes

até então. O surgimento dos circuitos integrados impulsionado pelo crescimento

considerável da exploração das capacidades do silício proporcionou o maior avanço

na historia da computação, proporcionando a criação de chips cada vez menores,

como o desenvolvimento do microprocessador que elevou a capacidade de cálculo e

desempenho geral dos computadores. Nesta nova era de possibilidades de

segurança, os computadores permitiram a encriptação de praticamente qualquer tipo

de informação, representável no formato binário, ao contrário da criptografia clássica

que era encriptada somente por meio de textos escritos e a mecânica com a

utilização de máquinas específicas. O uso do computador dominou a linguística da

criptografia, tanto para o desenvolvimento de cifras cada vez mais seguras quanto

para a criptoanálise (análise de algoritmos criptográficos com a finalidade de tentar

encontrar uma solução para a decifragem da informação), diversas cifras de

computador podem ser caracterizadas pelo seu funcionamento com base em sua

sequencia binária, contudo a cifragem moderna ficou à frente da criptoanálise

mostrando que o uso de uma cifra de qualidade faz com que seja muito mais

eficiente e difícil de ser decifrada sendo necessário em alguns casos um hardware

bem mais robusto com um processamento acima da média para que a cifra em

questão revele a informação após uma sequencia muito grande de tentativas,

conhecida como força bruta. O principal objetivo é levar o atacante a desistir da

criptoanálise, fazendo com que a mesma se torne impraticável e ineficiente. Estando

Page 15: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

15

ciente do desenvolvimento da criptografia e dos algoritmos criptográficos os

designers de sistema devem considerar os melhores métodos existentes para prover

a maior segurança possível ao seu negócio, deve-se levar em consideração, o

desenvolvimento do poder de processamento que está em contínua evolução, sendo

necessária uma previsão consequente dos ataques de força bruta para poder

encontrar a melhor forma de encriptação dos dados uma vez que a tecnologia e a

capacidade de processamento também beneficia a criação de algoritmos e chaves

de encriptação muito mais eficientes.

A troca de chaves é extremamente importante para uma comunicação segura entre

duas partes, os métodos computacionais para encriptação podem ter duas

características simples: o método simétrico e o assimétrico em que se usam trocas

de chaves diferentes.

1.3.1 EXEMPLOS DE CHAVES SIMÉTRICAS E DEFINIÇÃO.

A chave simétrica é uma das técnicas na qual utilizam se somente uma chave, ou

seja, a chave que cifra é a mesma que decifra a informação, obtendo contrastes,

pois pela utilização de uma chave para as duas funções, o processamento se torna

mais rápido e eficiente, todavia, se um intruso descobrir esta chave particular, obtém

uma brecha para uma possível invasão e consequentemente uma falta de

confidencialidade e integridade de dados, sendo acessível para qualquer

manipulação indevida. Com a análise dessa vulnerabilidade, foi criado a 3DES

conhecido também como triple DES, que detalharemos mais a seguir. O uso da

3DES permitiu criar duas ou três chaves simétricas sucessíveis, ou seja, para

acessar a informação é preciso decifrar uma chave, em seguida, a segunda e até

mesmo uma terceira se houver, para então obter acesso à informação original.

1.3.2 EXEMPLOS DE CHAVES ASSIMÉTRICAS.

A chave assimétrica é uma das técnicas utilizada sobre um relacionamento de duas

chaves, sendo que uma cifra (chave pública) e a outra decripta (chave privada), mais

usada pela dificuldade de acesso da chave privada, onde descobrindo o valor da

Page 16: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

16

chave pública, não cede a decifragem da informação original. Geralmente o método

de encriptação assimétrico é mais seguro justamente pela utilização de um par de

chaves.

Figura 3 - Exemplo de troca de chaves assimétrica

Fonte: http://tigger.uic.edu/depts/accc/newsletter/adn26/figure2.html

De acordo com a figura acima, podemos observar que para a comunicação entre

membros da comunidade, todos devem ter seus pares de chaves, onde para obter a

leitura de mensagem, o usuário A entrega sua chave pública para usuário B ou vice-

versa, possibilitando o envio de mensagens, assim, podemos analisar cada envio de

encriptação da mensagem pública do usuário, que, poderá ser acessado pela chave

privada do usuário.

Matematicamente falando, são usadas nas expressões, a aritmética modular e

números primos, como no exemplo abaixo:

Page 17: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

17

ENTIDADE A ENTIDADE B

ENTIDADE A escolhe um número A (por exemplo, 3).

ENTIDADE B escolhe um número B (por exemplo, 6).

ENTIDADE A coloca o número escolhido numa Função de caminho único (neste caso, 7A (mod11)): 73 = 343(mod 11) = 2.

ENTIDADE B coloca o número escolhido numa Função de caminho único (neste caso, 76 = 117649(mod 11) = 4.

A ENTIDADE A calcula JÁ=64(mod 11) = 9

A ENTIDADE B calcula HB = 26 = 64 (mod 11) = 9.

9 9

Tabela 1 - Funcionamento do algoritmo de troca de chaves

Como citado sobre as entidades no cálculo, obtemos um número primo como

identificador de potência sobre uma base número de um mesmo número primo,

como resultado aplica-se o “mod”, onde obtemos o resto da divisão, aplicando na

Entidade A e B, no final conclui-se que cada entidade tem sua chave pública,

posteriormente, para acesso, utiliza-se a chave privada com algoritmo de conversão

da fórmula de expressão modular e números primos.

1.3.3 A técnica do Hash

Uma função hash registra um grupo caracteres, que funcionarão como uma chave, e

os mapeia para um valor com um determinado tamanho, sendo chamado de “valor

de hash”. Esse valor representa a sequencia original dos caracteres, contudo

normalmente é menor do que o original. O hash foi desenvolvido para indexar e

localizar itens em bancos de dados porque é mais fácil encontrar o valor de hash

mais curto do que a sequencia original. A partir do algoritmo conhecido como MD5,

torna-se útil a utilização do Hash para a encriptação de mensagens e principalmente

de senhas uma vez que os sistemas computacionais e de acesso não armazenam o

texto original e sim aquele gerado pela função hash, para isso o sistema faz uma

verificação básica, transforma a senha em um hash único que é determinado pela

Page 18: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

18

senha que foi digitada, e compara com aquele hash que está armazenado no banco

de dados, caso o hash seja igual, o acesso a um programa ou sistema é liberado,

caso contrário o sistema irá informar ao usuário que a senha digitada é invalida.

Podemos perceber que neste método não há uma comparação direta da senha

pessoal do usuário e sim do hash único correspondente à senha cadastrada pelo

usuário, sendo assim não é possível visualizar diretamente a senha num banco de

dados, somente seu hash que está codificado pelo algoritmo MD5, para tanto seria

necessário o conhecimento do algoritmo para descobrir a senha equivalente.

1.3.4 Como criar uma criptografia?

Existem varias técnicas de se criar uma criptografia, cada uma com suas

características e diferenças como, por exemplo: a criptografia de chave única, MD5

e criptografia de chave pública e chave privada. A criptografia de chave única utiliza

a mesma chave tanto para codificar quanto para decodificar mensagens. Apesar de

este método ser bastante eficiente em relação ao tempo de processamento, ou seja,

o tempo gasto para codificar e decodificar mensagens tem como principal

desvantagem a necessidade de utilização de um meio seguro para que a chave

possa ser compartilhada entre pessoas ou entidades que desejem trocar

informações criptografadas.

A MD5 é uma técnica de criptografia unidirecional, um hash MD5 não pode ser

transformado novamente no texto que lhe deu origem, normalmente essa

criptografia é utilizada para guardar senhas. Para efetuar a comparação entre as

senhas é efetuada uma comparação entre o novo hash MD5 da senha informada

com o Hash MD5 salvo. A criptografia de chave publica utiliza duas chaves distintas,

uma para codificar e outra para decodificar a mensagem. A chave publica pode ser

divulgada livremente e a privada é mantida em segredo com seu proprietário.

Segundo Burnett (2002), existe algum passo básico a ser seguido quando se quer

encriptar alguma informação:

Page 19: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

19

Utilizar um padrão de algoritmo criptográfico (descritos mais adiante), e

também um gerador de números aleatórios. O seu algoritmo desenvolvido

deve estar otimizado para que não seja alvo fácil para métodos de força

bruta, usando uma chave de tamanho grandes ou suficiente para suportar

esses ataques, recomenda-se utilizar criptografia em bloco (3DES, por

exemplo) se utilizar uma mesma chave mais de uma vez no processo. Caso

seu algoritmo tenha que ser utilizado em vários sistemas diferentes, escolha o

método AES, que garante maior eficiência quando portado. Se precisar de um

algoritmo que tenha mais desempenho (rapidez) prefira cifragem de fluxo.

O gerador de números aleatórios deve ser utilizado aqui, e gerado de

diferentes formas por segurança, devendo ser também eficiente contra força

bruta.

Escolha o tamanho da sua chave, lembrando que normalmente o tamanho da

chave de no mínimo 128 bits é recomendável e mais utilizado, gere essa

chave no algoritmo gerador de aleatórios.

Utilizar o algoritmo simétrico escolhido que funcione com a sua chave para

que a informação seja encriptada.

Armazene sua chave de forma segura.

Para recuperar os dados basta utilizar sua chave e aplique o algoritmo simétrico,

desta forma seu texto será decriptado.

Exemplo de criptografia em JAVA:

Algoritmo Função

String alfabeto “=<abcdefghijklmnopqrstuvwxyzçéáíúóãõ

ABCDEFGHIJKLMNOPQRSTUVWXYZÇÁÉÓÍÚÃ

Õ1234567890.;:?,º]}§[{ª!@#$%&*()_+-=\\/|\'\">"; char[] t = texto.toCharArray();

Declarando variáveis

Page 20: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

20

String palavra="";

for (int i = 0; i < t.length; i++) { int posicao = alfabeto.indexOf(t[i]) + 5; if (alfabeto.length() <= posicao) { posicao = posicao - alfabeto.length(); }

Criando um método de

Criptografia

palavra = palavra + alfabeto.charAt(posicao);

}

return palavra;

}

Retorna um texto cifrado

Tabela 2 - Exemplo de criptografia aplicada em JAVA

1.3.5 A IBM e a proposta da DES

Durante a década de 70, iniciavam-se as primeiras pesquisas no que diz respeito a

métodos de cifragem de dados, segundo Burnett (2002) o surgimento da DES

(Digital Encryption Standard) proporcionou uma cifragem muito mais complexa e

eficiente para aquela época uma vez que considerava se que a mesma não tinha

nenhuma vulnerabilidade.

A DES provocou uma grande aceitação pelos profissionais responsáveis pela

segurança da informação uma vez que os métodos através do uso de máquinas

específicas para criptografar dados se tornavam cada vez mais ultrapassados, tendo

em vista que,

“O advento dos computadores tornou possível descartar as antigas regras

sobre a criptografia e criar um novo paradigma. Pesquisadores na IBM

decidiram desenvolver um novo algoritmo para a era dos computadores e

criaram um esquema chamado de Lucifer, um algoritmo inventado pelo

criptógrafo Horst Feistel. Eles também tiveram a ajuda da National Security

Agency (NSA), a agência responsável por proteger os dados secretos do

governo dos Estados Unidos, um dever que incluía a criptografia. O fruto

desse trabalho em grupo foi o DES. (BURNETT; PAINE, 2002, p. 39)”

Page 21: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

21

Desde então, a criptografia se tornou uma ferramenta amplamente usada em

comunicações, redes de computadores, e para a segurança geral, sendo o DES

adotado como um padrão a se seguir. Homologada pela FIPS (Federal Information

Processing Standards), a DES é uma cifra em blocos que se aplica em uma

sequência simples de texto e cria um texto cifrado de mesmo comprimento, usando

o método simétrico, ou seja, a mesma chave que encripta a informação é a que

decifra. O tamanho do bloco e também a chave usados são de 64 bits, contudo 8

bits da chave são usados por paridade (para detectar erros), por isso efetivamente o

tamanho da chave na DES é de 56 bits. Uma chave deste tamanho nos dias de hoje

é considerada fraca devido ao incessante avanço no poder de processamento

computacional. Com um hardware apropriado: por exemplo, um ataque de força

bruta pode sistematicamente tentar todas as 256 chaves eficientemente, que

possuem 72 quadrilhões de diferentes chaves possíveis. Um exemplo de hardware

que conseguiu essa façanha a um tempo atrás foi Cost-Optimized parallel Code

Breaker, conhecido como “Copacabana” foi construído por universitários alemães

que investiram um alto valor nessa máquina, que pode quebrar uma chave DES de

56 bits em uma média de nove dias. O termo Data Encryption Algoritm (DEA) é

usado algumas vezes fazendo referência ao DES (algoritmo atual), neste contexto,

TDEA é um acrônimo usado para a Triple DES. Segundo Burnett (2002) a DES

precisava de melhorias uma vez que aproximava cada vez mais a possibilidade de

quebra de suas chaves e algoritmos pois os pesquisadores descobriram suas

vulnerabilidades e já almejavam uma possível decifragem ou quebra gerando uma

desconfiança e incômodo em torno da técnica da IBM.

A necessidade gerou melhoria, em conformidade e aprovado pela FIPS, a 3DES

também conhecida como TripleDES ou TDES, teve seu algoritmo de encriptação

homologado e com uso seguro previsto até o ano de 2030, quando será substituído

pela nova AES. A TDES usa, como o próprio nome sugere, três chaves

criptográficas em sequência, realizando três vezes o algoritmo DES tendo as três

chaves um tamanho de 56 bits cada uma totalizando 168 bits fazendo com que

ataques de força bruta contra a TDES não se tornem tão práticos, todavia prolongam

a tentativa do atacante. Esta implementação da FIPS, a TDES, usa três ciclos de

aplicação: “encriptação – decriptação – encriptação (novamente)”. Pode parecer

confuso já que no segundo ciclo não há exatamente uma decriptação uma vez que é

Page 22: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

22

decifrado com uma chave diferente, que, simplesmente embaralha ainda mais o

texto já cifrado anteriormente (BURNETT; PAINE, 2002, p.73).

Figura 4 - Processo de funcionamento da TripleDES

Fonte: Criptografia e Segurança: O Guia Oficial RSA

Com esse método não há possibilidade de descobrir as chaves de forma sequencial

pois enquanto não obtiver o resultado correto da primeira chave não será possível

descobrir a segunda nem mesmo a última. Segundo Burnett (2002), supondo que as

três chaves são chamadas de A, B e C e cada possível valor da chave é numerado

de 0 a 72 quatrilhões e que a combinação correta das chaves seja A = 1, B = 33.717

e C = 1.419.222. Um invasor ou hacker poderia tentar um valor de 0 para as chave

A, B e C. Isso não levaria à resposta cabível para a decriptação total, então ele tenta

Page 23: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

23

A = 1, B = 0 e C = 0 e assim sucessivamente. De acordo com essa ideia, levaria

muito tempo para tentar todas as combinações de A, B e C até encontrar o resultado

correto. Mesmo a primeira chave sendo correto, o valor completo das chaves B e C

não está correta, não gerando desta forma o texto puro. Apesar da eficiência, a

3DES apresenta alguns problemas como o tempo de execução, sendo lenta no

processo de encriptação e decriptação dos dados, de forma lógica, é três vezes

mais lenta que a DES original. Outro problema é que criptógrafos conseguiram

simplificar o algoritmo original que usa chaves de 168 bits (56x3), fazendo com que

na prática computacional seja equivalente a 108 bits para um ataque de força bruta.

Em geral, esses problemas resultaram mais uma vez na necessidade de troca do

algoritmo, apesar dele ainda ser seguro utilizado nos dias de hoje em algumas

aplicações. Com intuito de substituir com maior segurança o padrão DES, o NIST

(National Institute of Standards and Technology) organização governamental dos

Estados Unidos responsável por padronizar métodos para a tecnologia, convocou a

qualquer pessoa ou organização que criassem um novo algoritmo de criptografia

que fosse suficientemente seguro para os dias atuais, podendo substituir os

algoritmos da DES. Nomeado como AES (Advanced Encryption Standard), os

desenvolvedores não deveriam ter direitos de propriedades sobre o algoritmo ou

quaisquer técnicas utilizadas para poder participar da seleção do melhor método de

cifragem no NIST, resultando em comum acordo entre o instituto e os

desenvolvedores (BURNETT, 2002, p. 43). Muitos requisitos para o novo algoritmo

foram exigidos, tais como segurança, desempenho (não deveria causar lentidão no

sistema sendo utilizado) e em relação a memória, a mesma deveria ser otimizada e

ocupar pouco espaço. O algoritmo escolhido para o novo padrão foi nomeado como

Rijndael, e foi desenvolvido pelos Belgas Vincent Rijmen e Joan Daemen que

propuseram o melhor algoritmo segundo o NIST. A AES possui código aberto e

qualquer indivíduo ou organização pode utilizar modificar e melhorar o algoritmo de

acordo com suas preferências, tornando-se amplamente utilizada após sua invenção

em 1999 pelos pesquisadores belgas já citados, desta forma segundo Burnett

(2002), é muito provável que a AES seja usada pela maioria dos desenvolvedores

que utilizam e desenvolvem criptografia, tornando-se padrão em todo o mundo.

Embora os termos e AES Rijndael sejam usados alternadamente, existem algumas

diferenças entre os dois. AES tem um tamanho de bloco fixo de 128 bits e um

tamanho de chave de 128, 192 ou 256 bits, enquanto o Rijndael pode ser

Page 24: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

24

especificado com os tamanhos de chave e bloco em um múltiplo de 32 bits, com um

mínimo de 128 bits e um máximo de 256 bits, levando os sistemas a terem que

trabalhar durante muito tempo para tentar todas as chaves possíveis no caso de

ataques de força bruta. Veja uma comparação na figura abaixo:

Figura 5 - Tempo de quebra das chaves por força bruta

A AES possui algumas vantagens como:

A Advanced Encryption Standard não só garante a segurança, mas também

melhora o desempenho em uma variedade de configurações, tais como

cartões inteligentes, implementações de hardware, etc.

A AES é reconhecida como uma norma federal no processamento de

informações e não há atualmente nenhum ataque direto de força bruta que

não seja conhecido contra a AES.

A AES é forte o suficiente para ser certificada para uso do governo dos EUA

(e outros países) para informações secretas.

As cifras que são usadas alternativamente, a Advanced Encryption Standard são

SSL e TLS. Criptografia RC4 possui um funcionamento semelhante à AES. RC4 é

de 128 - os bits RC4 é uma cifra de alto desempenho, contudo está sempre sujeita a

vários tipos de ataques. Essa é a razão de criptografia sem fio WEP ser ineficiente.

Assim AES é usada de forma prioritária com relação a outras normas. Possui um

Page 25: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

25

número de combinações muito grande, sendo inviável, na maioria dos casos,

ataques de força bruta:

Tamanho da chave Possíveis combinações

1-bit 2

2-bit 4

4-bit 16

8-bit 256

16-bit 65536

32-bit 4.2*109

56-bit (DES) 7.2*1016

64-bit 1.8*1019

128-bit (AES) 3.4*1038

192-bit (AES) 6.2*1057

256-bit (AES) 1.1*1077

Tabela 3 - A chave AES e suas combinações

Page 26: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

26

1.3.6 O Security Hash Algoritm - SHA

As funções de SHA são provenientes de cinco técnicas criptográficas desenvolvidas

pela NSA. Se tornou desde então um padrão de processamento e encriptação de

dados publicado inicialmente nos Estados Unidos e depois utilizado por várias

organizações e pessoas no mundo. Algoritmos de hash são capazes de calcular a

representação de um comprimento fixo, mais comumente conhecido como um

resumo da mensagem, de qualquer tamanho. Os cinco algoritmos incluem: SHA-1,

SHA-224, SHA-256, SHA-384 e SHA-512. Os últimos quatro, são variações muitas

vezes referidas coletivamente como SHA-2. SHA-1 cria um resumo de mensagem

de 160 bits, o comprimento de bits criado pelos outros quatro algoritmos é indicado

pelos seus nomes - 224, 256, 384, e 512. A SHA-1 é amplamente utilizado em

muitos programas de segurança e protocolos como SSL, TLS, SSH, PGP, S / MIME

e IPsec. Há muitas funções de hash diferentes, um exemplo é a SHA-1:

Utilizando a SHA-1, a palavra 'teste' =

“a94a8fe5ccb19ba61c4c0873d391e987982fbbd3” certamente só a palavra 'teste' irá

resultar em a94a8fe5ccb19ba61c4c0873d391e987982fbbd3 como valor de output

(saída). Além disso, cada vez que qualquer pessoa em qualquer lugar executar a

palavra "teste" através da função SHA-1 terá sempre o resultado:

a94a8fe5ccb19ba61c4c0873d391e987982fbbd3, ou seja, o mesmo. Desta forma, se

fornecermos este hash ‘a94a8fe5ccb19ba61c4c0873d391e987982fbbd3' e dizer-lhe

que veio do SHA-1, você provavelmente não conhecerá nenhuma forma de

descobrir o que foi colocado na função para criar isso. Quase todas as senhas do

computador são armazenadas desta forma. Quando você cria uma senha no

computador e a executa através de uma função de hash, armazena apenas o

resultado. Como a função é "sentido único", mesmo se alguém tivesse acesso ao

arquivo que armazena essa saída, não seria capaz de descobrir sua senha. Quando

o computador solicita que você digite sua senha de login, ele irá buscar o hash que o

corresponde uma vez que a função sempre gera a mesma coisa para o mesmo

input, ele simplesmente verifica para certificar-se que a saída do que você acabou

de entrar corresponde a saída que tem armazenado. Justamente porque as senhas

devem ser redefinidas. O computador não armazena sua senha em texto simples e

Page 27: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

27

sim apenas uma impressão digital do mesmo, não há nenhuma maneira de

conhecer sua senha.

Exemplo de aplicação HASH em JAVA:

package cifras;

import com.sun.org.apache.xerces.internal.impl.dv.util.Base64;

import java.io.UnsupportedEncodingException;

import java.security.MessageDigest;

import java.security.NoSuchAlgorithmException;

public class SHA256 {

public static String getHash(String password) throws NoSuchAlgorithmException,

UnsupportedEncodingException

{

MessageDigest digest = MessageDigest.getInstance("SHA-256");

byte[] input = digest.digest(password.getBytes());

return Base64.encode(input);

}

Page 28: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

28

2 A Segurança nas corporações

Foi relatado em um artigo do site Pplware sobre a a quebra da chave que deu a

possibilidade de se inicializar a utilização da assinatura digital e inovação de chave

pública com o sistema Plataforma Linux Sparc, onde foi descoberta uma falha grave

na execução no final conseguiram atacar a biblioteca Openssl e realizado extração

de bits da chave privada, a quebra é gerada em 100 horas. Visando a necessidade

da segurança, a ICP-Brasil orientou as empresas que cedem produtos com essas

tecnologias, realizar até 31 de Dezembro de 2013, a troca da chave criptográfica de

1024 bits e que comece a utilizar no mínimo a chave de 2048 bits.

O problema maior é que não só certificados digitais obtêm esse tamanho de chave

como outros sistemas de segurança, como aplicações que usam autenticação, como

os sistemas operacionais da Microsoft, onde a mesma, no dia 14 de agosto de 2012,

lançou atualização para bloquear as chaves abaixo de 1024 bits como sinal de

alerta.

Se tratando de segurança, vimos que a confidencialidade foi e a integridade da

informação que o certificado digital obtinha, se perderam por uma descoberta de

vulnerabilidade, tendo que usar outro tipo de tecnologia para suprir a falha e as

empresas que aplicam técnicas de segurança, indicado que mais que a metade das

empresas brasileiras, investia pouco na segurança da informação Gerando um

resultado gigantesco de prejuízos, como empresas que serão citadas no capítulo a

seguir, já na atualidade, como os acontecidos estão mostrando de forma global, uma

grande porcentagem está aderindo ou mesmo se atualizando.

2.1 Estudo de casos

Na notícia do dia 15/11/2012, a empresa Adobe cita sobre uma investigação, a

respeito de uma coleta de 230 nomes, endereços de e-mails e senhas criptográficas

Page 29: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

29

aplicadas uma técnica de criptografia muito praticada, a chamada MD5, mas por ser

boa, não podemos dizer também que ela é perfeita para a segurança, pois ela é

facilmente quebrada como outros tipos de criptografias, que por aplicativos criados

com intuito de quebrar códigos, se obtêm o almejado. Como dica de criação de

senhas e possibilidades de não ter perca de dados futuros, como prevenção, sempre

é bom criar senhas com caractere especial, letras maiúsculas e/ou números, sendo

assim, o tempo de quebra levará mais tempo.

Dia 26/04/2012 às 18h14, mais uma empresa foi vítima de uma falha de segurança

(Nissan), onde admitiram que houve roubo de dados em sua rede de computadores

e identificado dia 13/04/2012, a empresa japonesa de carros, cita que houve invasão

e manifestação de um vírus que transmitiu informações de funcionários como senha

de identificação, após detecção dessa invasão, tomou medidas de segurança, para

que não houvesse manipulação pelos dados de autenticação adquiridos ilegalmente,

outra empresa que utilizava funções hash, mas não citada qual técnica dessa

função.Com base a esses dois exemplos acontecidos recentemente, a importância

da evolução da criptografia no Brasil e no mundo fica muito em evidência, empresas

buscando técnicas e reforços para melhoria na segurança da informação. Os

Hackers, de acordo com os fatos, preferem invadir microempresas que possuem

uma estrutura de segurança menor, ocasionando a falência, com fraudes, multas

adquiridas, roubo de informações confidenciais, entre outras ações prejudiciais.

Só em 2011, o Brasil recebeu um número estimado de 1,8 bilhões de reais,

analisado em uma noticia dia 12/03/2012 no site www.invasão.com.br, que cita o

Brasil, despreparado para utilizar uma ferramenta inovadora chamada Cloud

Computing (Computação em nuvem), onde nesse sistema, se permite acessar os

dados de servidores em qualquer lugar, com essa noticia ruim, piora com a

informação que o Brasil está entre os últimos para essa adoção, uma explicação

mais convincente, é analisando que o Brasil não possui leis que garantem

privacidade da transferência de informações nesse sistema e somente possui

legislação contra invasão aderida recentemente.

Page 30: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

30

2.2 Aprendizados em Segurança da Informação

Em primeira vista, os usuários pensam que a Segurança da Informação (SI) garante

totalmente, ou seja, estamos garantidos cem por cento em relação ao CID

(Confidencialidade, Integridade e Disponibilidade), mas na verdade, os fatos

mostram que o pensamento correto é mitigar as possibilidades de que comprometa.

A informação que é um ativo que em cada dado tem seu peso ponderado deve ser

analisada na questão de Segurança Lógica (orientação com base ao ativo citado),

Segurança Física (local físico que a informação é armazenada) e a Segurança

Técnica (normas).

A criptografia é focada na confidencialidade entre os atores do processo, tendo em

mente que, pelo meio de ocultar dados e deixando-o integro e disponível, gera um

processo de certo modo seguro, aplicado na WEB, aplicações que possuem

principalmente comunicação externa, senhas, entre outras aplicações, podemos dar

grandes exemplos como: controle remoto, transferência entre bancos, banco online,

email seguro, analisamos a criptografia como não só mais usado pelos militares,

agentes e diplomatas, agora é considerada como moderna e uma ciência se

pensando em características da matemática.

Na Segurança da Informação existe uma análise muito utilizada nas empresas de

grande porte, a segurança da parte física, ou seja, utilização de perímetros de

proteção de invasão de privacidade de um pen-drive, HD externo, entre outros

equipamentos que podem possuir informações confidenciais, pode utilizar a técnica

chamada criptografia.

Tratando-se da parte lógica (conscientização), quanto à parte técnica, cada empresa

aplica seus métodos, onde cada um cabe escolher a proteção desejada, onde um

gestor de segurança da informação deve exercer sua função de controlar os

processos e cedendo proteção aos ativos da empresa, mas o cenário mostra que na

maioria das situações, ocorre àquela situação de uma empresa ter medo de

mudanças, tratar os processos pelo modo reativo, deixando o planejamento e

análise necessária de lado, esquecendo que a tecnologia evolui beneficamente

como também acompanhando com elementos negativos e o motivo de acontecer

Page 31: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

31

isso, está por conta de não dar valor ao custo sobre a segurança, não tendo em

mente que a falta dela pode trazer até a falência.Avaliação do que vale mais, aceitar

riscos e repor por um custo financeiro menor comparado ao mitigar a ameaça são

pensamentos que podemos começar a mudança e diminuir o cenário.

2.3 Primórdios da Segurança da Informação

Na Segurança da Informação, existe uma análise muito utilizada nas empresas de

grande porte, a segurança da parte física, ou seja, utilização de perímetros de

proteção de invasão de privacidade de um pen-drive, HD Externo, entre outras

ferramentas usadas para roubo de informações confidenciais, utilizando a técnica

chamada criptografia, tratando-se da parte lógica, quanto à parte técnica (políticas

de segurança VER) e a parte lógica (conscientização), cada empresa aplicam seus

métodos, onde cabe à empresa escolher a proteção desejada, normalmente ocorre

àquela situação de uma empresa ter medo de mudanças, ter custos sobre a

segurança e avaliação do que vale mais, aceitar riscos e repor por um custo

financeiro menor comparado ao mitigar a ameaça.

2.4 O C.I.D.A.L. e os pilares importantes da Segurança

Confidencialidade: (Proteção contra exposição para pessoas não autorizadas);

As organizações que possuem informações que são importantes, ou seja, patrimônio

maior hoje em dia é a informação da empresa como: marketing, tecnologia da

informação, financeiro, administrativo.

Pensando nisso, podemos citar o uso de confidencialidade, onde tem o ato de tornar

a informação confidencial.

Page 32: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

32

Integridade: (Proteção contra alteração ou dano);

Nos dias de hoje, temos ameaças pela internet que ocorrem situações de alterações

na informação, assim podemos lembrar-nos da Integridade, ou seja, uma informação

integra, é uma informação que tem uma segurança contra possível alteração ou até

corrupção.

Disponibilidade: (Proteção contra interferência com os meios de acesso aos

recursos).

A importância da disponibilidade é evidente no dia a dia, onde se uma aplicação ou

site fica fora do ar, a metodologia de criptografar requer requisitos para ficar

disponível, por exemplo, se tivermos a data e hora incorreta por desconfiguração,

alguma espécie de bloqueio, podemos interferir na disponibilidade da informação.

2.5 Sistemas inseguros

Os Sistemas de modo geral, usam protocolos para comunicação, transportando

assim a informação com certo nível de segurança, acompanhando o processo,

assim aplicações que varrem pacotes e com tentativas de interceptar, tendo então a

utilização de chaves criptográficas na transmissão da informação. Temos no

cotidiano, boatos de espionagens, principalmente dos EUA que não exaltam a

privacidade que o Brasil tanto maneja obter, tendo que criar suas próprias

aplicações. Situações que convencem esta análise, podemos citar sobre o voto

eleitoral que usa um sistema de armazenamento de votos registrados, onde

especialistas defendem o voto impresso e dizendo que o sistema atual é inseguro,

citação dita em uma matéria no site www.noticias.terra.com.br no dia 15 de outubro,

criticando o Brasil ser o único país sem a confirmação impressa individual do voto e

defenderam a ideia da existência de um mecanismo que confirme em um papel a

escolha do eleitor no momento da votação, prática já ocorrida na Alemanha, onde foi

considerando inconstitucional e pela impressão, a realização da recontagem dos

Page 33: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

33

votos. Outra abordagem muito interessante vem de um professor de ciências da

computação da UnB que garantiu que o software do TSE é comprovado a sua

insegurança, contudo, traz a necessidade de uma confirmação física dos votos,

assim lembramos-nos dos fatores de segura, o que sabemos (registro do voto) e o

que temos (voto impresso) e por último, o que somos, representando pelo título de

eleitor.

Outro elemento que tem um grande peso é o Smartphone, por sua vez, ganhou o

gosto do público pela sua capacidade de ter variedades de aplicações que auxiliam

no nosso cotidiano, como descobrir onde está o seu ônibus, auxiliar de dieta,

tradutor, a cada dia tem novidades e quase sempre, nos surpreende.

A empresa Google com seu sistema operacional mais usado no mercado sofre

algumas críticas em questão de segurança, pois existem celulares que não sofrem

atualizações, tendo que malwares estão sendo desenvolvidos e descobertas de

falhas ficam sendo uma ameaça, por outro lado as empresas que aderem ao

sistema para um smartphone, vendem celulares com melhor capacidade e seu

software de última linha, esquecendo-se dos outros aparelhos que ficaram

ultrapassados, pontos negativos que a FBI e pelo Departamento Nacional de

Segurança norte-americano reconhecem e consideram o Android o sistema mais

inseguros de todos, ao contrário do Windows Phone e a pioneira BlackBerry, são

considerados os mais seguros. Analisando também, que o android é um sistema

open source, ou seja, código aberto.

2.6 Criptografia e Segurança para a Web

Nos dias atuais e que dependemos diretamente do uso da World Wide Web para

nossos negócios e outras necessidades, como as aplicações desktop, a web precisa

de uma segurança ainda mais aprimorada, devido ao alto tráfego de importantes

dados que correm por ali, se tornam um atrativo para maliciosos/hackers

interceptarem algum tipo de informação de valor direta ou indiretamente. Para isso

Page 34: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

34

foram criados alguns protocolos de segurança que garantem a autenticidade dos

dados de ambos os comunicadores.

“Praticamente todas as empresas, a maioria dos órgãos do governo e

muitos indivíduos agora possuem sites Web gráficos. Como resultado, as

empresas demonstram grande interesse em utilizar a Web para o comércio

eletrônico. Mas a realidade é que a internet e a Web são extremamente

vulneráveis a riscos de vários tipos. À medida que as empresas percebem

essa realidade, a demanda por serviços Web segura aumenta. (Stallings;

2008, p. 379)”

Segundo Stallings (2008), os servidores da web onde são guardadas as

informações, são os principais alvos de ataques na internet, se os mesmos forem

subvertidos e acessados indevidamente, pois as informações corporativas e

transações comerciais que ali contém, serão gravemente ameaçadas e podem

ocasionar perda de reputação e recursos financeiros para a empresa. Um servidor

Web pode apresentar falhas de segurança em potencial devido a seu software ser

muito complexo e podem estar vulneráveis a uma série de ataques de segurança.

Uma preocupação a mais nesse quesito é o fato de que os usuários dos sistemas

não estão totalmente preparados para lidar e perceber essas falhas apesar de estar

ciente dos riscos que existem. Quando um servidor Web é contaminado, um

atacante pode ser capaz de obter acesso a dados e sistemas que não fazem parte

da web, mas que estão em máquinas conectadas localmente ao servidor

(STALLINGS; 2008, p. 379).

2.6.1 Principais técnicas de segurança para a web

Existem diversas técnicas que podem oferecer segurança na web, citaremos

algumas das melhores como o IPSEC (Internet Protocol Security), pois o mesmo é

transparente para o usuário final e aplicações que oferece uma solução de uso geral

e ainda possui suporte a controle de tráfego de dados passando por uma filtragem

para então ser processado. O protocolo SSL (Secure Socket Layer) dá suporte ao

TCP/IP nas aplicações envolvidas na troca de informações. Existe uma extensão

chamada TLS (Transport Layer Services) que é a versão padrão da internet onde

contém os métodos criptográficos que asseguram a troca segura da informação.

Page 35: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

35

Utilizando a criptografia simétrica o SSL/TLS oferece uma maior integridade através

de códigos de autenticação de mensagens e inclui as condições necessárias para

que os usuários envolvidos determinem as formas de criptografia e métodos de

segurança que serão usados.

Um exemplo é o (SET) Security Eletronic Transaction, é o melhor método de

segurança utilizando criptografia para atuar em transações de cartões de crédito.

Page 36: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

36

Figura 6 - Protocolo SSL e suas trocas de sessões cliente-Servidor

Fonte: Criptografia e Segurança de Redes: Princípios e práticas

2.6.2 Técnicas recomendadas de segurança para Web

Segundo Stallings (2008) para especificação de cifra, são usados os algoritmos de

criptografia de dados em massa com base no padrão AES, e algoritmo de HASH,

pode ser MD5 ou SHA-1. Assim assegura se uma cifragem segura para trabalhar

com o SSL, que na comunicação estabelece várias sessões entre cliente e servidor,

Page 37: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

37

sendo assim como um método necessário, o uso da chave assimétrica, no caso a

AES, além de não prejudicar muito o desempenho das negociações das trocas de

chaves por se tratar de um método de encriptação eficiente e que oferece melhor

desempenho em sistemas.

3 Ataques a Segurança e a Engenharia Social

De acordo com o Livro: Segurança e Espionagem Digital – 2ª Edição, invasões de

celulares, E-mails relacionando roubos, interceptação de mensagens, pescaria de

senhas, grampo de telefonia, ocorrem no cotidiano e todos nós estamos sujeitos por

atos maliciosos. Então podemos já logo pensar em uma urgência de orientações de

segurança. Podemos mitigar a probabilidade de ocorrer a falta de confidencialidade

e às vezes até de disponibilidade da informação, existem ataques como Cavalo de

Tróia, Phising, Backdoor, Hijack, recebidos em spams baixados, downloads em sites

inseguros, em resumo, o meio adquirido é a navegação inadequada. A arte do

ataque se recebe, ao pensar em como iludir o usuário por propagandas como

spams, por exemplo, onde geralmente recebemos um e-mail com anúncios, boletos,

formulário de ativação, várias situações que comprometem e para não ocorrer um

problema grave, podemos exercitar a segurança lógica, que por sua vez, cede seus

métodos de segurança em meio de orientações. Para que não sejamos mais uma

vítima desses hackers que persistem persuadir usuários, devemos entender e

mitigar possíveis situações, assim para ficar mais fácil, pode citar sobre o famoso

hacker chamado Kevin Mitnick, onde foi uma pessoa que usava todas as técnicas de

persuasão para conseguir passar por perímetros de segurança, usando ataques

diretos e ataques indiretos, (falaremos no próximo capítulo), onde se explorava seu

alvo, ganhando confiança e conhecimento do estabelecimento para conseguir o

almejado, ferramentas mais usadas para detetives que exploram para conseguir a

verdade. Uma frase posta resume seu pensamento:

"O Sistema pode ser impenetrável, 100% seguro, porém existem pessoas por trás

desses sistemas, e o fator humano é o elo mais fraco da segurança." Kevin Mitnick.

Page 38: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

38

3.1 Ataques diretos

Ataques diretos são aqueles ataques que são focados em um contato pessoal, tendo

uso de telefones, fax ou até pessoalmente, táticas são exploradas sobre perímetros

existentes, pensando sempre em agir com persuasão com as pessoas, sendo assim,

o almejado será conquistado.

Métodos utilizados:

Disfarce: o disfarce é composto por uso de outro nome, troca de aparência, focando

na sua missão que é ocultar sua identidade.

Redes de contato: um engenheiro citado se aproveita de pessoas que tem relação

ao processo, com intuito de extrair grandes informações.

Apelo sentimental: uso de emoção como um ator, convencendo com uma história

para vítima, tende obter êxito no processo.

3.2 Ataques Indiretos

Os hackers estudam vulnerabilidades de sistema de aplicação em busca de algo, o

que leva uma pessoa ter um pensamento de invasão é pelo que o outro usuário

possua interesse próprio da informação, como copiar o jeito criado, fazer melhor,

entre outros pensamentos.

O termo hacker está cada vez se formalizando no seu termo correto, porque as

pessoas conheciam um hacker como aquele que faz algo malicioso, como roubar

informações, invadir sites, fraudar corporações, mas na realidade, o hacker estuda

vulnerabilidades e gostam de conhecer técnicas e programações pró a instituição, já

quando falamos de algo malicioso, o elemento é chamado de invasor, onde o

Page 39: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

39

mesmo infiltra em sistemas, causando prejuízos e tendo total acesso a máquina da

vítima, usando também quebras de chaves criptográficas, chamados ckackers.

Os grupos hackers procuram senhas, acesso ao sistema para auto se beneficiar,

formado por alguns curiosos do mundo da segurança digital, chamados script

kiddies (meninos scripts), criam processos que tem como foco, iludir o usuário,

enviando coisas ridículas que ainda mesmo assim tem êxito. Qualquer computador

que esteja com compartilhamento administrativo é alvo fácil para invasão,

geralmente usado no sistema Linux uma aplicação que tem objetivo acessar o micro

que tenha essa vulnerabilidade, já quebras de senhas de roteadores com uso da

criptografia wpa2, são quebráveis pelo Linux Black..., pensando nessas ameaças

digitais, nada melhor que um planejamento de segurança, como troca mensal da

senha de rede, backups para disponibilidade da informação, criptografia das

informações sigilosas.

Ameaças Consequências Contramedidas

Integridade

- Modificação de dados

do usuário.

- Navegador Cavalo de

Tróia

- Modificação de

memória

-modificação de

memória em trânsito

- Perda de informações

- Comprometimento da máquina

- Vulnerabilidade a todas as outras

ameaças de Somas de verificação

(checksums) criptográficas

- Somas de verificação

(checksums) criptográficas

Confidencialidade

- Registro não

autorizado de tráfego

na rede

- Roubo de

informações do

servidor

- Roubo de dados do

cliente

- Informações sobre

configurações de rede

- Informação sobre qual

cliente fala com o

servidor

- Perda de informações

- Perda de privacidade

- Criptografia, PROXY’ para

WEB

Page 40: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

40

Negação de

Serviço

- Encerramento de

threads do usuário

- Inundação da

máquina com

solicitações falsas

- Preenchimento da

capacidade total do

disco ou da memória

- Isolamento da

máquina por ataques

de DNS

- Interrupção

- Incômodo

- Impede que o usuário realize o

trabalho

- Difícil de impedir

Autenticação - Simulação de

usuários legítimos

- Falsificação de dados

- Falsificação da identidade do

usuário

- Crença de que as informações são

válidas

- Técnicas Criptográficas

Tabela 4 - Comparação de ameaças na Web.

Dada á quantidade de informações sensíveis e financeiras que são transmitidas

através da Internet a cada segundo, torna-se uma escolha óbvia para os criminosos

virtuais realizarem suas atividades ilegais. No entanto, o alto tráfego e a proliferação

de aplicações web inseguras tornam ataques de hackers baseados na web ainda

mais atraente, e ainda mais rentável. A tentativa de infiltração em sistemas e

computadores com intenções maliciosas não é nenhuma novidade. Desde o início

da história da computação desde os anos 80, entusiastas da computação que eram

qualificados para essa finalidade e usam seus conhecimentos para invadir sistemas

sem intenção de roubo ou apropriação da informação alheia, entretanto a

descoberta de maneiras de burlar esses sistemas aliado despertou a atenção de

personalidades maliciosas, dando início ao surgimento dos Hackers. No entanto,

com o advento de aplicativos baseados na web, a sofisticação dos ataques de

hackers aumentou drasticamente, enquanto a quantidade de habilidade necessária

para suportar e defender se destes ataques tem diminuído proporcionalmente. Os

Hackers hoje em dia podem fazer uso de uma série de ferramentas que ajudam a

automatizar seu ataque. Usando ferramentas de verificação, assim o atacante é

capaz de realizar a primeira etapa de seu ataque, uma espécie de enumeração.

Nesta fase a informação é recolhida sobre o alvo pretendido. Com ferramentas

específicas, o atacante pode utilizar algumas delas que permitem “escanear” vários

computadores, roteadores, servidores e sites de uma só vez à procura de

informações específicas que irão ajudá-los facilmente atacar a máquina. Adicione a

isso a capacidade de o atacante conduzir o processo de enumeração com um

Page 41: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

41

exército de computadores zumbis (Computadores com identificação mascarada).

Uma vez identificados os alvos, o atacante continua a analisar e procurar as

vulnerabilidades conhecidas. Dependendo do objetivo geral do atacante, eles

poderiam estar procurando por um número qualquer, uma combinação, ou uma série

de vulnerabilidades possíveis que estejam disponíveis. Podem incluir: “Cross-site

scripting”, Injeção de SQL ou “SQL injection”, Repúdio de serviços ou informações,

Execução de arquivos remotos e muitos outros. Uma vez que as vulnerabilidades

são identificadas, o atacante pode passar para a última fase de seu ataque,

explorando os computadores. Usando as informações encontradas na análise de

vulnerabilidades, o atacante em seguida, tenta explorar os computadores de destino.

Novamente, esse processo pode ser automatizado como os outros, e quando

lançado de um grande exército “botnet” (aplicações que se auto-replicam quando é

instalado no host para cumprir seu objetivo, geralmente são funções maliciosas) o

atacante pode explorar milhares de vítimas com o mínimo esforço da sua parte).

3.3 Soluções e Hipóteses

A necessidade das empresas sobre Segurança da Informação fica escassa e

principalmente nas microempresas, o Brasil em 2012, mais que a metade das

empresas se comprometeu a aumentar o investimento na segurança de dados com

a criptografia e camadas de proteção.

Uma análise interessante de se fazer é que enquanto o Brasil se preocupa com a

infraestrutura de segurança, países desenvolvidos em Tecnologia da informação, se

preocupam com funcionários e ex-funcionários, ou seja, o alvo do Brasil, ainda não

está no detalhe do agente insatisfeito ser uma ameaça e sim no planejamento de

como proteger de maneira que consiga mitigar o problema.

Como solução, propomos a utilização de uma criptografia adequada que é uma das

técnicas de segurança, com foco nas boas práticas, incentivando as empresas a

pensar sobre as quebras de segurança em modo indireto ou direto.

Page 42: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

42

4 Desenvolvimento da aplicação de aprendizagem

O desenvolvimento da aplicação foi baseado no ensinamento de como a criptografia

age, como é gerada e importâncias dela.

A aplicação recebe atribuição de funcionalidades da criptografia AES, usando 128

bits na chave criptográfica em arquivos e texto, onde podemos atribuir à chave que o

próprio sistema reconhece ou conseguimos também, criar chaves que serão

validadas pelo usuário, como exemplo, softwares que instalamos em nosso

computador, um Sistema Operacional, sendo mais preciso, no processo solicita uma

chave que possui letras e números a serem digitados, quando digitado

incorretamente, informa que a chave é inválida, senão obtemos acesso, contudo, é

obtido confidencialidade, ou seja, só o dono que possui a chave tem acesso e

legalidade, onde acessar algo com chave de ativação é considerado crackeamento.

Analisamos que o software necessitava de componentes na programação que

formalizaria um produto para determinada aplicação, contendo layout, campos de

texto e de escolhas para realização do objetivo.

No processo, tivemos o uso de uma ferramenta de desenvolvimento Java Netbeans

e a API (Application Programming Interface) chamada Flexiprovider, ambas serão

abordadas nos títulos seguintes.

4.1 Aplicando a ferramenta Netbeans IDE - Linguagem Java

A ferramenta desejada para desenvolvimento foi o Netbeans que possui tecnologias

como Java, HTML5, PHP, C / C++ com possibilidades de criar aplicações desktop,

Page 43: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

43

móvel e web com Java, de distribuição gratuita e com uma funcionalidade diferencial

que é gerar código, cedendo uso de geração rápida.

O desenvolvimento pode ser realizado com muita facilidade, onde a ferramenta

possui uma semântica que aponta erros, quando obtido a compilação, podemos

resolver, analisando a mensagem em inglês, fazendo a necessária leitura ou

pesquisa sobre aquela eventualidade de erro. Assim, podemos obter um

desenvolvimento prático e fácil, fornecendo também sua grande funcionalidade de

gerar desenvolvimento de Frame, entre outras partes gráficas para utilização.

O projeto foi criado com pacote de desenvolvimento Java SE (Standart Edition),

versão padrão voltada para criação de Applets do browser e também aplicações

direcionados para usuário desktop, podendo ser executado em Windows , Mac OS,

Linux, Solaris, etc.

Figura 7 - Netbeans: Início da criação do projeto em JAVA

Page 44: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

44

A aplicação recebeu elementos como: JTextField, Jbuttom, JProgressBar, JLabel,

JPanel,.., cada uma atribuída uma variável especifica, sendo ajustadas de acordo

com o layout, em seguida, trabalhamos em cima das instruções necessárias para o

programa receber, a partir daí, começamos a analisar os testes e adequações de

código.

4.2 Flexiprovider – Arquitetura da Criptografia Java

Flexiprovider é uma ferramenta criada com foco em criptografia muito bem

explicativas, com algoritmos fáceis para utilização, cedendo a praticidade e até

facilitando para quem não conhece bem o que a criptografia pode nos fornecer essa

poderosa ferramenta foi desenvolvida pelo grupo pesquisa da universidade

technische darmstadt, localizada em darmstadt, na alemanha.

no próprio site, existem exemplos de algoritmos de criptografia que auxiliaram muito

no projeto, contém algoritmos de chave pública como exemplo a cifra rsa – chave

assimétrica (desenvolvido por ron rivest, adi shamir e len adleman), aes - chave

simétrica, curva elíptica (ecies) e também hash’s como md5, por último, assinaturas

digitais.

4.3 Descrições da aplicação desenvolvida

A Aplicação de Aprendizagem em Criptografia, ela foi desenvolvida para demonstrar

a utilização da criptografia, como ela age na informação, onde também, o layout foi

criado com intuito de fornecer praticidade no uso.

Os processos são bem simples, encriptar, decriptar e obter texto cifrado, segue

abaixo, os processos que a aplicação pode fornecer para o aprendizado de

criptografia.

Page 45: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

45

4.4 Processo de encriptar

O processo de encriptar nos fornece um procedimento bem simples, onde o foco é

ocultar a informação, por meio de criptografia AES, onde obtemos a geração de

chave que faz ocultação de dados e nos fornece confidencialidade para algum

processo, sendo que apenas o programa reconhece a chave para acesso, sendo

também, que é possível obtermos o processo de gerarmos uma chave (senha) e

tentarmos acesso no processo de decriptar.

Figura 8 - Tela inicial da Aplicação de Aprendizagem

Logo abaixo, temos a janela que cede a abertura do arquivo testes.txt, após ter

clicado em arquivo no painel Encriptar:

Page 46: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

46

Figura 9 - Tela demonstrando a abertura de um arquivo para criptografar

Logo abaixo, temos a janela informa o arquivo e seu diretório:

Figura 10 - Tela demonstrando o arquivo com o diretório

Logo abaixo, temos a janela que cede salvamento do arquivo “ArquivoCifrado.txt”:

Page 47: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

47

Figura 11 - Tela demonstrando o arquivo que será salvo e para criptografar

Logo abaixo, temos a janela que informa o arquivo com seu diretório:

Figura 12 - Tela demonstrando diretórios para processo de criptografar

Page 48: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

48

Logo abaixo temos a janela que confirma o processo de criptografia AES:

Figura 13 - Tela demonstrando o processo realizado de criptografia

Após obter o processo de criptografia, podemos localizar o arquivo e tentando obter

a leitura, contém dados incompreensíveis, ou seja, a informação foi ocultada.

4.5 Processo de decriptar

Depois de obtermos um arquivo salvo com a informação ocultada, podemos fazer o

processo de torná-la original pelo processo de decriptar. Para isso, podemos usar o

painel Decriptar, segue abaixo:

Page 49: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

49

Janela Inicial Da Aplicação

Figura 14 - Tela demonstrando a abertura de um arquivo para descriptografar

Logo abaixo, temos a janela que cede a abertura do arquivo ArquivoCifrado.txt, após

ter clicado em arquivo no painel Decriptar:

Figura 15 - Tela demonstrando a abertura de um arquivo para descriptografar

Page 50: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

50

Logo abaixo, temos a janela informa o arquivo e seu diretório:

Figura 16 - Tela demonstrando o arquivo com o diretório em descriptografar

Page 51: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

51

Logo abaixo, temos a janela que cede salvamento do arquivo “ArquivoOriginal.txt”:

Figura 17 - Tela demonstrando o arquivo que será salvo e para descriptografar

Logo abaixo, temos a janela informa os arquivos e seus diretórios:

Figura 18 - Tela demonstrando diretórios para processo de descriptografar

Page 52: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

52

Logo abaixo temos a janela que confirma o processo de descriptografia:

Figura 19 - Tela demonstrando o processo realizado de descriptografia

4.6 Processo de criptografia em texto

Depois de entendermos o processo gerado pela encriptação, temos outro painel na

aplicação chamada Criptografia AES em Texto, onde podemos digitar uma

informação na caixa de texto e clicarmos em aplicar, segue abaixo na ilustração:

Page 53: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

53

Figura 20 – Tela de digitação de dados em criptografia AES em texto

Resultado após ter clicado em aplicar:

Figura 21 - Tela de criptografia AES em texto que foi digitado

Page 54: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

54

5 Conclusão

No cotidiano, é demonstrada que cada vez mais está em evidência a necessidade

de investimentos em segurança da informação, principalmente nas pequenas

empresas, a disciplina Segurança da Informação pode ser exercida e compreendida

por pesquisas na WEB e podemos sempre nos manter atualizados, pesquisando

noticias, sobre novas ameaças, obter segurança para si e levarmos para a vida,

como também, podemos compartilhar nosso conhecimento em pró a nossa

empresa, onde empresas como demonstramos no projeto, estão muito das vezes,

expostas por novas ameaças ou até totalmente exposta, por isso podemos criar

novas mentes protetoras, incentivando alunos, incentivando empresas que a

Segurança é essencial, se assegurando que terá surpresas nos processos

corporativos.

O Brasil, enfim, está se protagonizando nessa busca de segurança, após situações

de espionagens , onde países foram relacionados, citadas até de espionar a

décadas, quebrando os pilares da Segurança (mais afetadas são confidencialidade e

integridade).

A criptografia antigamente foi uma das únicas tecnologias para proteger a

informação e hoje ela não pode ser ignorada, principalmente em questão WEB, onde

será tendência pela tecnologia Cloud Computer, enfatizando a concluirmos que a

segurança não é um produto e sim um processo rotineiro que devemos incentivar

cada vez mais as empresas.

Page 55: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

55

REFERÊNCIAS BIBLIOGRÀFICAS

Adobe Systems. (15 de Novembro de 2012). Acesso em 15 de Novembro de 2012,

disponível em Adobe: http://www.portogente.com.br/texto.php?cod=73844

ALVES, C. B. (s.d.). Segurança da informação vs. Engenharia Social - Como se

proteger para não ser mais uma vítima. Acesso em: 30 de Novembro de 2013,

disponível em: Monografias Brasil Escola:

http://monografias.brasilescola.com/computacao/seguranca-informacao-vs-

engenharia-social-como-se-proteger.htm

BURNETT, S., & PAINE, S. (2002). Criptografia e Segurança O guia Oficial RSA. Rio

de Janeiro, RJ, Brasil: Elsevier Ltda.

CARMONA, T. (2007). Segurança e Espionagem Digital (2ª ed.). São Paulo: Digerati

Books.

Centro de Estudos, Resposta e Tratamento de Incidentes de Segurança no Brasil -

CERT.BR. (03 de Junho de 2012). Cartilha de Segurança para internet. Acesso em:

15 de Novembro de 2013, disponível em: CERT - Criptografia:

http://cartilha.cert.br/criptografia/

DODT, C. (27 de Novembroi de 2013). Segurança da Informação: PerspSegurança

da Informação: Da Utopia a criação de uma cultura de proteção aos dados

corporativos. Acesso em: 21 de Novembro de 2013, disponível em: GRC -

Governança, Riscos e Conformidade: http://claudiododt.com/2012/06/26/seguranca-

da-informacao-da-utopia-a-criacao-de-uma-cultura-de-protecao-aos-dados-

corporativos

Eletronic Bus. (s.d.). Advanced Encryption Standard – AES Encryption Algorithm.

Acesso em: 17 de Setembro de 2013, disponível em: Eletronicbus.com:

http://electronicsbus.com/advanced-encryption-standard-aes-encryption-algorithm/

Page 56: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

56

FILIPE. (10 de Junho de 2008). O que é a cifra de césar ou cifra de troca? Acesso

em: 21 de Agosto de 2013, disponível em: Jornal Livre:

http://www.jornallivre.com.br/13847/o-que-e-a-cifra-de-cesar-ou-cifra-de-troca.html

FlexiProvider. (26 de Junho de 2012). TECHNISCHIE UNIVERSITÄT DARMSTADT.

Acesso em: 15 de Novembro de 2013, disponível em: FlexiProvider:

http://translate.google.com.br/translate?sl=en&tl=pt&js=n&prev=_t&hl=pt-

BR&ie=UTF-8&u=http%3A%2F%2Fwww.flexiprovider.de%2F

Global Information Assurance Certification - GIAC, Eric Conrad. (s.d.). Data

Encryption Standard - DES. Acesso em: 25 de Agosto de 2013, disponível em:

Documento do GIAC: http://www.giac.org/cissp-papers/62.pdf

Globo. (02 de Abril de 2013). Lei que torna crime invadir celulares, tablets e

computadores entra em vigor - Lei Carolina Dieckmann. Acesso em: 22 de 11 de

2013, disponível em: Globo - G1: http://g1.globo.com/jornal-

nacional/noticia/2013/04/lei-que-torna-crime-invadir-celulares-tablets-e-

computadores-entra-em-vigor.html

Globo Jornalismo. (26 de Abril de 2012). Nissan. Acesso em: 2012 de Abril de 2012,

disponível em: Globo - g1: http://g1.globo.com/tecnologia/noticia/2012/04/nissan-

admite-invasao-e-roubo-de-dados-em-sua-rede-computadores.html

Janeiro, T. C.-U. (s.d.). Assinatura Digital. Acesso em: 02 de Agosto de 2013,

disponível em: GTA.UFRJ: http://www.gta.ufrj.br/grad/07_1/ass-dig/Bibliografia.html

LAZOTI, R. (03 de Outubro de 2008). Como Utilizar Criptografia em Java. (R. Lazoti,

Editor) Acesso em: 20 de Novembro de 2013, disponível em:

http://rodrigolazoti.com.br/2008/10/03/como-utilizar-criptografia-em-java

midianews.com. (09 de Março de 2012). Brasil/Tecnologia - Prejuízo de 1,8 Bilhões.

Acesso em: 01 de Outubro de 2013, disponível em: Midia News - Credibilidade em

tempo real: http://www.invasao.com.br/2012/03/12/ataques-de-hackers-causaram-

prejuizo-de-us-1-bilhao-ao-brasil-em-2011

Page 57: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

57

Notícias Terra.com. (15 de Outubro de 2013). Especialistas defendem voto impresso

e dizem que sistema atual é inseguro. Acesso em: 18 de Novembro de 2013,

disponível em: Terra - Política: http://noticias.terra.com.br/brasil/politica/especialistas-

defendem-voto-impresso-e-dizem-que-sistema-atual-e-

inseguro,13569348118b1410VgnCLD2000000dc6eb0aRCRD.html

OLIVEIRA, R. R. (2012). Artigo, revista, segurança digital. Acesso em: 20 de

Novembro de 2013, disponível em: Ronielton.eti.br:

http://www.ronielton.eti.br/publicacoes/artigorevistasegurancadigital2012.pdf

PRL - Software. (s.d.). Data Encryption Standard. Acesso em: 02 de Setembro de

2013, disponível em: Prlsoftware.com: http://www.prlsoftware.com/des-

encryption.aspx

FERNANDO, R. - Imasters.com. (05 de Junho de 2007). Criptografia de Dados –

Parte 1 (Origem e evolução). Acesso em: 05 de Agosto de 2013, disponível em:

iMasters.com: http://imasters.com.br/artigo/6360/seguranca/criptografia-de-dados-

parte-01-origem-e-evolucao/

SANTOS, R. (03 de Outubro de 2011). Electronware. Acesso em: 20 de Novembro

de 2013, disponível em: Electronware - Criptografia:

http://electronware.blogspot.com.br/2011/10/criptografia.html

STALLINGS, W. (2008). Criptografia e Segurança de Redes - Princípios e práticas.

São Paulo, SP, Brasil: Pearson Prentice Hall.

Tek.sapo.com. (28 de Agosto de 2013). Android considerado o sistema operativo

mais inseguro pelo FBI. Acesso em: 15 de Outubro de 2013, disponível em: Tek

Mobile - Android:

http://tek.sapo.pt/tek_mobile/android/android_considerado_o_sistema_operativo_mai

s_1334790.html

Ti inside Redação. (11 de Novembro de 2011). Investimentos em segurança da

informação devem crescer em 2012. Acesso em: 25 de 11 de 2013, disponível em:

TI Inside Online Segurança: www.tiinside.com.br/30/11/2011/investimentos-em-

Page 58: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

58

seguranca-da-informacao-devem-crescer-em-2012-indica-

pesquisa/sg/252033/news.aspx

University of Illinois at Chicago. (s.d.). Assimetric or Public Key Encription. Acesso

em: 04 de Agosto de 2013, disponível em: Academic Computing and

Communications Center: http://www.gta.ufrj.br/grad/07_1/ass-dig/Bibliografia.html

YOSHIDA, E. Y. (2001). Segurança, Criptografia, Privacidade e Anonimato - Fase 2.

Acesso em: 20 de Novembro de 2013, disponível em: Instituto de Matemática e

Estatística: http://www.ime.usp.br/~is/ddt/mac339/projetos/2001/demais/elias

Page 59: CRIPTOGRAFIA: APRENDIZAGEM DA ... - dev-sirox…dev-sirox.com.br/download/AprendizagemCripto.pdf · de “roleta” na qual poderia girá-las e deslocar quantas posições forem necessárias

59

FOLHA DE APROVAÇÃO DO TCC

SIRALBERTO DE SOUZA LEITÂO DE ALMEIDA

BRUNO MICHEL DA CONCEIÇÂO OLIVEIRA

CRIPTOGRAFIA: APRENDIZAGEM DA CRIPTOGRAFIA NO ÂMBITO

EMPRESARIAL

Trabalho de Conclusão de Curso, apresentado a Universidade Nove de Julho como

requisito parcial para obtenção do grau de Bacharel em Ciência da Computação, sob

a orientação do Prof. Me Luciano Gavinho.

Data: ____/____/____

____________________________________________

Assinatura do professor orientador

OBSERVAÇÕES: _____________________________________________________

___________________________________________________________________

___________________________________________________________________

___________________________________________________________________

___________________________________________________________________