Buscar

APS 2º Semestre - Criptografia Unip

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 34 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 34 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 34 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

1 
 
 
 
 
 
Acadêmicos: 
- 
- 
- 
- 
- 
- 
- 
- 
- 
- 
 
 
 CRIPTOGRAFIA 
 
Atividade Prática supervisionada (APS) 
referente ao 2º Semestre do Curso de Ciência 
Da Computação. 
 
 
 
 
 
 
Jundiaí – SP 
2 
 
 
Sumário 
 
1 – Objetivo do Trabalho .............................................................................................................. 3 
2 – Introdução .............................................................................................................................. 4 
3 – Criptografia (conceitos gerais) ................................................................................................. 7 
4- Técnicas criptográficas mais utilizadas .................................................................................... 11 
4.2 - Chaves Simétricas ........................................................................................................... 11 
• • DES (Data Encryption Standard): ............................................................................... 11 
• • IDEA (International Data Encryption Algorithm): ....................................................... 11 
• • RC (Ron's Code ou Rivest Cipher): ............................................................................. 11 
• • Blowfish: .................................................................................................................. 11 
4.3 - Chaves Assimétricas ........................................................................................................ 12 
• • El Gamal: .................................................................................................................. 12 
• • RSA (Rivest, Shamir and Adleman): ........................................................................... 12 
4.4 - Redes Sem Fio ................................................................................................................. 12 
• • WEP: 13 
• • WPA e WPA2: ........................................................................................................... 14 
4.5 - Assinatura Digital ............................................................................................................ 14 
4.6 - Criptografia Quântica ...................................................................................................... 14 
5 - Dissertação ............................................................................................................................ 16 
5.1 - Tabela de Caracteres em ASCII ......................................................................................... 17 
5.3 - Tabela de caracteres em ASCII estendido ......................................................................... 20 
6 – Projeto (Estrutura) Do Programa ........................................................................................... 22 
• Já o processo de reversão é feito da seguinte forma: ................................................. 25 
7 – Relatório Com As Linhas De Código Do Programa ................................................................... 27 
8 - Referências Bibliográficas ...................................................................................................... 33 
 
 
 
3 
 
1 – Objetivo do Trabalho 
 
 Temos como objetivo por meio deste artigo a exportação de conhecimento 
sobre a criptografia e suas técnicas, evidenciados seus conceitos, relevando a sua 
importância para toda a humanidade e sua preocupação em manter informação, 
documento e etc. 
Prezando o acima de tudo a integridade de ambas as partes e a privacidade de 
algo que é transmitido para que uma ocasional interferência não tenha a possibilidade 
de conseguir extrair algo privado com facilidade. 
Assim evidenciando primeiros usos dados históricos, exemplos e 
funcionalidade, passando por toda a história e seus primórdios e seus modos de tonar 
a mensagem inelegível para outra pessoa a não ser o próprio remetente e seu 
destinatário expondo seu usos mais comuns e conceitos gerais. 
Venerando os Pilares mais importantes da segurança, sendo a 
confidencialidade, a integridade, disponibilidade, autenticidade, sendo estes princípios 
os fundamentos das técnicas que serão descritas ao longo do trabalho. 
Exteriorizando os pilares da segurança como no caso da confidencialidade, 
onde somente o responsável pela mensagem e alguém autorizado pelo mesmo 
poderia ter a permissão de ver, a integridade trazendo a garantia que a mensagem 
condicionada está correta e que não houve modificação e são legitimas, e a 
disponibilidade garantindo que a mensagem passada estarão acessíveis quando 
requeridas pelas pessoas autorizadas a ter posse daquela informação. 
Evidenciado tanto a modos de criptografia de tempos anteriores e seus principais usos 
e a enorme utilidade, até chegar em nossa atualidade, tanto a criptografia “em trânsito” 
quanto “em repouso”. 
E com base nestas informações e pesquisas colhidas efetuar a simples criação 
um programa em linguagem C para com um exemplo de criptografia, com base na 
tabela ASC, sendo a mensagem a escolha usuário, e após criptografado criara um 
arquivo com a mensagem já criptografada, tendo a possibilidade de reverter a 
criptografia novamente. 
4 
 
2 – Introdução 
 Por meio do estudo desta APS iremos trazer informações sobre a criptografia, 
abordando o fundamento histórico da criptografia, o seu uso tanto antigamente quanto 
em tempos atuais , as primeiras formas de criptografia mesmo não se referindo ao 
meio computacional , sendo assim abordando até mesmo os seus primeiros métodos 
e usos , já que a palavra “criptografia” se traduzido do grego antigo tem o significado 
de “ escrita escondida “, com isto ocultando uma certa mensagem , ou seja , cifrando 
ela , para que somente quem estava ligado diretamente a mensagem consiga torna-
la legível decifrando através de uma chave. 
 Sendo este método de tornar uma mensagem inelegível uma forma de aumenta 
a segurança do que se é transmitido a mensagem, este método chamando de 
“criptografia” e um tanto quanto antigo desde os primórdios da humanidade já se era 
usada, mesmo não sendo no meio computacional, podemos utilizar como exemplo a 
“Cifra de César” mais conhecido por este termo. 
Mas também pode ser familiar com o nome de “Cifra de troca”, “Código de 
César”, até mesmo podendo ser conhecido como “troca de César”, mas sendo o 
primeiro termo o mais conhecido, era um exemplo claro de criptografia, mesmo não 
se tratando do meio computacional. 
 Um dos primeiros modelos de criptografia já existentes criado pelo Imperador 
Júlio César, era uma cifra simples, sendo uma substituição da posição das letras, 
sendo substituída a posição uma a uma, nesta cifra cada letra era substituída três 
letras a frente de sua posição, por exemplo a frase “APS SEGUNDO SEMESTRE” 
cifrada com o método de César passaria a ser “DSV VHJXQGR VHPHVWUH”. 
Sendo esse meio de criptografia, não só, mas outros fora do “meio 
Computacional” considerados Criptografia clássica, aquelas que eram usadas em 
tempos antigos, sendo as mais notáveis a cifra de césar, scytale espartano, e também 
a cifra de Vigenère. 
Ainda dentro da criptografia clássica temos “A enigma”, sendo máquina 
eletromecânica, que anterior aos meios computacionais é a que mais se assemelha a 
tal, dado os fatos sabemos que desde antiguidade, a o interesse do ser humano em 
5 
 
ocultar ou proteger suas informações para que não haja interceptação entre o envio e 
a chegada desta informação. 
Estes meios antigos são os que mais se “assemelham” a criptografia na 
antiguidade, mas já existiram outros meios de ocultar mensagens para que haja uma 
segurança no envio, mas de uma forma não tanto convencional, como dito por 
Heródoto (Um historiador grego, viveu entre 484a.C à 426 a.C) um deste métodos que 
surgiu a mensagem era escrita na cabeça de um “mensageiro”. 
Para istoele teria que ter tido a cabeça raspada e então seria gravada a 
mensagem, após gravada era feita à espera do cabelo do mensageiro crescer para 
que então a mensagem seja levada ao destinatário, após a chegada ao destinatário o 
mensageiro raspa novamente o cabelo assim então revelando a mensagem. 
Modelo este dos primórdios dos tempos, como dito, destes meios de 
“criptografias não computacionais” a que mais se aproxima do que se retrata 
atualmente podemos se dizer que foi a criptografia mecânica, que foi primeiramente 
desenvolvida em 1918, com o objetivo primário a facilitação de troca de documentos 
confidenciais entre a comerciante e as pessoas de negócios, um grande exemplo 
deste modelo foi “A Enigma” usada na 2ª Guerra Mundial. 
Já chegando em métodos atuais, assim como antigamente temos como 
primórdios a segurança da informação como preocupação, ao contrário de tempos 
antigos onde a informação era escrita e dificilmente haviam copias, hoje com os meios 
de comunicação evoluídos podemos ter inúmeras copias da mesma informação. 
Em meio as formas de criptografia temos o uso de chaves para transitar 
informações com segurança, atualmente este modelo, melhor dizendo, técnica 
envolve o uso dessas chaves sendo criptográficas, com base em algoritmos com a 
capacidade de reconhecer a informação, sendo dois modelos bastante utilizados, a 
chave simétrica, e a assimétrica. 
A chave simétrica, podendo ser conhecida também como “criptografia de chave 
secreta”, ou tanto de “chave Única”, é usada para cifrar e tanto decifrar as 
informações, os métodos que utilizam estes meios serão evidenciados ao decorrer 
deste trabalho, mas esse meio de criptografia consiste de chaves com milhões de 
combinações para tornar a informação segura. 
6 
 
A assimétrica, que é conhecida também como de “Chave Pública”, diferente da 
anterior, este modelo utiliza duas chaves diferentes, sendo que uma é para cifrar já a 
outra decifrar, e também um outro aspecto diferente da criptografia de chave simétrica, 
e que naquele modelo a chave “transitava” na conexão, já neste, apenas por ser duas 
chaves é utilizado uma pública para cifrar, já para decifrar é utilizada uma chave 
privada. 
Entre métodos de segurança, há o certificado digital, funcionando meio que 
como uma forma de reforça a segurança, foi desenvolvido como um documento 
eletrônico, que é comprovado por uma “autoridade” que emite esses certificados, 
sendo assim comprovando a origem e também a integridade do emissor, sendo um 
dos mais utilizados o X-509, com os aspectos de chave pública do usuário, nome do 
usuário, a data em que o certificado foi emitido e também o a validade da chave. 
Tornando o certificado digital o registro eletrônico que armazena dados que 
diferenciam uma entidade e a associa a uma chave pública, sendo utilizados por 
diversas entidades como sites, pessoa, empresas entre outros, tornando este 
certificado como se fosse um “RG” do meio digital, abordando informações pessoais. 
 Em meios a opções de segurança tem temos a VPN (Rede Virtual Privada), 
é uma rede trabalhando por cima da estrutura original, muitos utilizada por em 
empresas, garantindo mais segurança à sua rede seja na Intranet, internet ou até 
mesmo em negociações B2B (Empresa Para Empresa). 
Sendo este os pilares evidenciados de mais uso da criptografia segurança 
desde o início dos tempos antes mesmo da maquinas, passando por toda a linha do 
tempo histórica até chegar aos tempos modernos se adequando para oferecer cada 
vez mais segurança ao usuário e suas informações 
 
7 
 
3 – Criptografia (conceitos gerais) 
 
A criptografia pode ser definida como uma utilização de códigos para manter 
informações sigilosas. Trata-se de um conjunto de regras que codifica as informações 
de forma que só o emissor e o receptor consigam decifrá-la. Desde que o homem 
sentiu necessidade de proteger as informações foram implementadas técnicas para 
que somente determinadas pessoas conseguissem obtê-las. A partir disso a 
criptografia tornou-se uma ferramenta essencial para todo tipo de informação sigilosa. 
Toda criptografia utiliza de uma chave para criptografar e descriptografar qualquer 
informação e essa chave era passada para a o destinatário em que o autor da 
criptografia deseja enviar determinada informação. 
Como em muitos casos que já ocorreram, as empresas estão cada vez mais 
sendo alvo de hackers cibercriminosos e estão buscando sempre uma técnica de 
criptrografia mais avançada para proteger todos os seus dados. 
A criptografia de dados pessoais tem o principal objetivo de garantir a sua 
privacidade e protege-los assegurando a propriedade intelectual, também conhecido 
como criptografia de endopoint que adiciona uma camada extra de proteção para 
informações sigilosas em dispositivos. 
Na computação, a técnica usa de chaves criptograficas, que são um conjunto 
de bit’s baseado em um algoritmo capaz de codificar e decodificar determinadas 
informações. Com o uso dessas chaves, é possível utilizar o mesmo algoritmo para 
diferentes receptores, alterando somente a chave para cada um. 
Na computação, o uso da criptrografia proporciona vantagens como: 
 
• Proteger os dados sigilosos que estão armazenados no computador, como por 
exemplos as senhas utilizadas em diferentes locais; 
 
• Proteger as comunicações realizadas pela internet, como bancos e e-mails 
enviados. 
8 
 
 
• Proteger backups contra qualquer tipo de acesso indevido, onde é possível 
criar partições na memória afim de criptografar quaisquer informações que 
forem gravadas nessa partição. 
 
O tamanho das chaves é expresso por bits, quantos mais bits forem utilizados na 
criptografia, mais seguro será o código. Atualmente, são utilizadas criptografia de 256 
até 1024 bits, ou seja, são geradas 2 elevado a 1024 combinações de chaves para 
cada informação, onde apenas uma delas é a correta, o que torna a segurança muito 
maior. 
De modo geral, a criptografia utiliza de uma chave para criptografar e uma chave 
para descriptografar. A partir disso, é desenvolvido os mais utilizados tipos de 
codificação com as chaves: chave simétrica, onde a chave utilizada para codificar e 
decodificar é a mesma chave, e a chave assimétrica, que possuí duas chaves 
criptográficas, uma pública e outra privada. Através dessa maneira com chaves 
assimétricas, o criador deve enviar uma chave para realizar a decodificação, chamada 
chave pública, a quem deseja mandar a informação. Criando outra chave, essa a 
privada, permite que realize a decodificação de determinada informação. 
Com o surgimento das redes wireless, a segurança envolvendo os dados teve uma 
queda e permitia com maior facilidade a sua quebra. Isso porque através da rede 
wireless, um usuário com um nível técnico de conhecimento bom facilmente 
conseguia burlar essa segurança. Através disso, foram criados novos tipos de 
criptografia de redes para oferecer segurança a essas informações trafegadas na 
rede, como por exemplo WPA e WPA2, que são tipos de certificados de segurança 
para internet. 
Ela passou a ser utilizada em larga escala por diversos lugares do mundo, 
principalmente em época de guerra, como por exemplo durante a Guerra Fria, onde 
os Estados Unidos e a União Soviética usaram métodos de criptografia a fim de 
esconder determinadas informações do inimigo, impedindo que outros que não 
possuíam a chave para descriptografar pudessem ler e consequentemente forçava-
os a utilizar de diferentes métodos para quebrar a criptografia. 
9 
 
Um dos primeiros métodos de criptrografia utilizado foi a Cifra de César, que 
foi justamente utilizada pelo Imperador César durante o império Romano. O algoritmo 
era simples e o método utilizado nele era apenas substituir uma letra do alfabeto por 
seu correspondente três casas adiante, ou seja, a letra A se torna a letra D, a letra B 
se torna a E, e assim por diante. 
A criptografia moderna teveorigem durante a segunda guerra mundial, onde a 
troca de informação era crucial e qualquer informação que o inimigo descobrisse 
poderia acabar com uma estratégia de guerra. Durante esse período, os Alemães 
criaram a chamada “Máquina Enigma”, era uma máquina elétrico-mecânica que 
funcionava com rotores. O sujeito que escrevia a mensagem deveria inserir num 
mecanismo existente na máquina qual posição de arranque dos rotores e assim seria 
definida a chave para ser compartilhada entre os interlocutores. Ao pressionar uma 
tecla, o rotor mais a esquerda avançava uma posição que ocasionava a rotação dos 
rotores a direita. Esse movimento contínuo criava diferentes combinações de 
encriptação. Na época a criptografia utilizada pela máquina era considerava 
impossível de decifrar, tanto que os Aliados só conseguiram decifrar a criptografia 
após roubar uma dessas máquinas e estudar sua construção para utilizar engenharias 
reversas e construir outras máquinas capazes de decifrar. 
Portanto, a criptografia pode ser utilizada para proteger a identidade e a 
privacidade do usuário ou de uma informação sigilosa, evitando assim qualquer tipo 
de fraude utilizando de sua proteção criptográfica para ocultar dados, garantindo a 
segurança. 
Arthur Scherbius desenvolveu a criptografia em 191, que despertou grande 
interesse da marinha alemã em 1926, cuja foi nomeada de enigma, e foi o meio de 
comunicação mais utilizado pela marinha alemã da época. 
Já em 1928 foi criada pelo próprio exército alemão uma nova máquina de 
criptografia, chamada de enigma g, seguindo uma regra de segurança que implicava 
em trocar mensalmente suas chaves. A chave era desenvolvida em uma máquina 
eletromecânica, chamada de enigma, composta de rotores, quando era pressionada 
uma tecla o rotor da esquerda avançava uma posição, obrigando os demais rotores a 
rotacionar, mudando a sua formação a cada letra digitada, o que dificultava muito a 
decifragem de enigma. Enigma era utilizada tanto para encriptação como para 
10 
 
decriptação. Tanto espanhóis como italianos em épocas diferentes, tiverem acesso a 
enigma por meio de comercialização, porém essa comercialização, foi intitulada como 
imprudência dos alemães, pois facilitou o acesso dos britânicos, trabalhando para 
quebrar a cifrarem de enigma. Os alemães acreditavam que a criptografia feita por 
enigma era impossível de ser desfeita, porém, em 1933 a criptografia foi quebrada por 
matemáticos poloneses, com o auxílio de dispositivos eletroeletrônicos intitulados de 
“bombas”. 
Enigma gerou descendentes, mais avançados e melhorados, podendo proporcionar 
uma segurança muito mais forte do que a própria enigma, m-134-c, sigaba, typex. 
Depois dessa sequência de episódios a criptografia passou a ser muito utilizada, 
podemos dizer indispensável, criando novas formas de criptografias. 
 
 
11 
 
4- Técnicas criptográficas mais utilizadas 
 
4.2 - Chaves Simétricas 
Uma única chave é criada, essa vai ser usada por quem a criou e vai enviá-la para 
quem vai receber as informações nela contida, ou seja, o receptor. Dito isso, significa 
que a codificação e a decodificação das informações são feitas pela mesma chave. 
Seu uso não é recomendado para arquivar informações muito importantes. Vamos ver 
alguns exemplos: 
 
• DES (Data Encryption Standard): Desenvolvido em 1977 pela IBM, é 
considerado inseguro devido a suas chaves com 56 bits (permitindo 
combinações de até 72 quatrilhões). Foi quebrado utilizando o método 
conhecido como “força bruta” (que é simplismente tentaiva e erro); 
 
• IDEA (International Data Encryption Algorithm): Desenvolvido no ano de 
1991 por Xuejia Lai e James Massey. Utiliza chaves 128 bits e possui estrutura 
parecida com a do DES; 
 
 
• RC (Ron's Code ou Rivest Cipher): Existem diferentes versões do algoritmo, 
como a RC4, RC5 e RC6, nas quais forma desenvolvidas em uma empresa, 
cuja o nome é RSA Data Security, feitas por Ron Rivest. Dentre todos os seus 
usos, o mais utilizado é com certeza em mensagens via e-mail. E suas chaves 
utilizam de 8 até 1024 bits; 
 
• Blowfish: Desenvolvido em 1993 por Bruce Schneier, sendo utilizadas chaves 
de 32 até 448 bits. O algoritmo não é patenteado, tem sua licença grátis e está 
à disposição de todos. 
12 
 
Outros algoritmos muito conhecidos são o AES (Advanced Encryption Standard), 
que teve como base o DES. Mas também teve ideias baseadas no 3DES, e no 
próprio Twofish. O uso dessas chaves não é o mais aconselhável por possuir 
muitas desvantagens, um exemplo muito possível de ocorrem interceptações é 
quando esta contém informações e dados de valor muito valioso, o risco delas 
serem vazadas é muito alto. 
4.3 - Chaves Assimétricas 
 
 Utiliza 2 chaves: uma pública e outra privada. O usuário então deve desenvolver 
uma chave para ser usada como a de codificação, na qual será enviada para a 
pessoa que deve receber as informações. Conhecida como chave pública. Após 
essa chave ser criada, o próximo passo vai ser criar uma para fazer a 
decodificação. Que será a que chamamos de chave privada, e deve ser secreta. 
Alguns exemplos são de chaves privadas são: 
 
• El Gamal: Criado pelo estudioso de criptografia egípcio Taher Elgamal em 
1984. Como forma de segurança utiliza um problema muito conhecido, o 
“logaritmo discreto”, dificultando assim sua decodificação; 
 
• RSA (Rivest, Shamir and Adleman): Desenvolvido por três professores do 
MIT, talvez seja o algoritmo mais usado e bem-sucedido, considerado por 
muitos, é claro. O seu funcionamento não é nada mais do que utilizar dois 
números, esses que devem ser obrigatoriamente primos, multiplicando-se 
estes, se obtém um novo valor. Nesse sistema, a chave conhecida como 
privada será os números multiplicados, logo, o novo valor será a chave 
conhecida como pública. Utilizada em sites de compra e em mensagens. 
 
4.4 - Redes Sem Fio 
Essas redes de wireless não são muito recomendadas por abrirem uma grande 
brecha entre os dados, gerando assim uma enorme falta de segurança dos 
13 
 
mesmos. Pelo fato de que os dados, com qualquer conhecimento básico técnico, 
podem ser roubados facilmente. 
 
 Dito isso, a criação de técnicas com chaves criptográficas para tornar essa classe 
de comunicação utilizável foi quase que obrigatório. Para que assim os usuários 
pudessem realizar serviços mais pessoais, como por exemplo uma transação 
financeira, direto de suas casas com mais privacidade e segurança. Não apenas 
para isso, um bom uso também é para que as empresas possam fazer um tipo de 
conexão melhor com seus clientes por meio dessas redes e afins com uma maior 
segurança. 
 
Os tipos de criptografia mais usados nas redes wireless são: 
• WEP: Esse método se baseia em utilizar o algoritmo RC4 e uma chave 
conhecida como secreta, esta que vai ser compartilhada, somente entre 
receptor e o emissor. Este método deve conter um roteador que deve estar 
conectado com todos os pontos de acesso, e todos devem, obrigatoriamente, 
utilizar essa mesma chave, para que possa haver o funcionamento deste 
método. O transmissor deve combinar o conteúdo de um pacote de dados com 
uma verificação do mesmo. Esse processo deve ser feito para todos os pacotes 
de dados solicitados, por envio em qualquer sentido. Neste método, o 
transmissor deve criar Vetor de Inicialização (IV ou Initialization Vector) para 
cada um dos pacotes, que combinado com uma das chaves e é usado para 
então fazer a criptografia do mesmo. Após esse processo deve ser feita a 
decodificação do pacote, que consiste no receptor gerar seu próprio pacote, 
para que assim possa decodificar o mesmo e terminar o processo de codificar 
e decodificar. Em teoria, a tática lógica e fácil de utilizar apenas a chave secreta 
e compartilhada é mais arriscada do que essa, pois sua violação é mais difícil, 
pelo fato de conter um bit de um dado específico. Porém, um invasor poderá 
teracesso ao tráfego de informações ou até mesmo acesso à rede, mas 
somente se uma chave compartilhada estiver corrompida; 
 
14 
 
• WPA e WPA2: Este método de certificação tem sua política de segurança com 
base no seguinte padrão: “Wi-Fi Alliance”. Este padrão é utilizado tanto em 
redes wireless quanto nas redes locais, sendo acolhido por diversas empresas 
e também se estendendo até mesmo as redes domésticas de uso comum a 
todos. Eles permitem autenticação livre para checar e fazer a verificação de 
criptografia avançada e usuários individuais. Fornecendo sua criptografia em 
empresas, como WPA, e a WPA2, denominada a próxima geração de 
segurança em redes sem fio, é muito utilizada por várias áreas governamentais 
ao redor do mundo. O WPA2 com AES é a novidade, tanto para o uso pessoal 
quanto para o corporativo. Para quem utiliza esse método em casa, ele 
assegura um excelente sistema de segurança e, aos usuários corporativos, 
permite adicionar um servidor de autenticação com a criptografia, para que 
possa haver o maior controle dos usuários em conjunto. 
 
4.5 - Assinatura Digital 
 Com seu uso maior uso sendo com chaves públicas, a Assinatura Digital é um recurso 
muito conhecido. É basicamente um meio de descobrir se certo documento eletrônico 
é verdadeiro ou falso. 
 
 O receptor recebe um documento que assinado digitalmente utiliza uma chave 
pública fornecida por quem enviou para se certificar de sua origem. Não só isso, a 
chave é entregue junto ao documento, feito isso, qualquer alteração que seja feita nas 
informações vai imediatamente invalidar o documento. 
 
 
4.6 - Criptografia Quântica 
 
 Este método de codificação de dados difere dos demais métodos criptográficos pelo 
fato de não utilizar um segredo nem um contato prévio entre as partes. 
 
15 
 
 Ela também permite a detecção de invasores e é muito mais segura, mesmo que o 
invasor tenha um conhecimento computacional elevado. Uma de suas desvantagens 
é o seu elevado custo de implementação. 
 
 Outro fato limitante para a adoção dessa técnica é a taxa de erros na transmissão 
dos fótons, seja por ondas de rádio ou fibra ótica. Até agora, os melhores resultados 
foram obtidos através de fibras de altíssima pureza, abrangendo uma distância de 
aproximadamente 70 km. 
 
 
16 
 
5 - Dissertação 
 
No nosso trabalho semestral sobre criptografia utilizaremos um tipo de 
criptografia conhecida como ASCII, que utiliza de chaves simétricas, ou seja, a 
criptografia e a descriptografia são feitas com a mesma chave. 
ASCII que venho do Inglês “American Standard Code for Information 
Interchange”; “Código Padrão Americano para o Intercâmbio de Informação”, com a 
pronuncia “Áski”; É um código binário que codifica um conjunto de 128 sinais, 95 sinais 
gráficos contendo sinais de pontuação, sinais matemáticos e letras do alfabeto latino. 
E 33 sinais de controle, utilizando apenas 7 bits para mostrar e representar todos os 
seus símbolos. Nos anos 60 o código foi adotado como padrão. Isso permitiu que a 
codificação de caracteres em 8 bits, dando a possibilidade de formação de 256 
caracteres. 
Se repararmos bem dar para perceber que cada byte possui 8 bits, os que não forem 
utilizados na tabela ASCII, pode ser usado de formas diferentes. Como por exemplo 
um padrão de UFT-8 bit que utiliza bit excedendo dos primeiros bytes para indicar que 
o Code point terá um valor, que ultrapassa os vários valores utilizados na tabela 
ASCII(acima de 127), são necessários mais bits para serem representados. A 
Microsoft já utilizou esse bit passando para a codificação de caracteres adicionais no 
Windows Code Page. 
Algumas outras utilizações do bit excedente é também é informar a paridade 
em transmissões assíncronas de baixa velocidade. Por tanto a existência de um Bit 
que é excedente em cada byte cria oportunidades para utiliza os 7 bits da Tabela 
ASCII, e em diferentes codificações que não são priorizadas, algumas delas as vezes 
chamadas de “Tabela ASCII” que passa uma ideia que a Tabela ASCII foi então 
oficialmente ampliada para utilizar 8 bits, um fato que na verdade nunca ocorreu. 
A função da codificação ASCII é usada para representar tetos em 
computadores, e até mesmo equipamento de comunicação, entre outras funções e 
dispositivos que trabalham com texto e codificações. Ela foi desenvolvida a partir de 
1960, com grande parte da codificação de caracteres moderna que herdaram como 
base. Os sinais não são e nem pode ser imprimido, pois conhecidos como caracteres 
17 
 
de controle, são muito e amplamente utilizados em vários dispositivos de comunicação 
que afetam o processamento dos textos. Além disso o código ASCII é utilizado para 
conversação de código binário, para letras do alfabeto tanto Minúsculas quanto 
Maiúscula. 
5.1 - Tabela de Caracteres em ASCII 
 
Caractere Código ASCII Código hexadecimal 
NUL (Nulo) 0 00 
SOH (Start of heading) 1 01 
STX (Start of text) 2 02 
ETX (End of text) 3 03 
EOT (End of transmission) 4 04 
ENQ (Enquiry) 5 05 
ACK (Acknowledge) 6 06 
BEL (Bell) 7 07 
BS (Backspace) 8 08 
TAB (Tabulação horizontal) 9 09 
LF (Line Feed, salto de linha) 10 0A 
VT (Vertical tabulation, tabulação vertical) 11 0B 
FF (Form feed) 12 0C 
CR (Carriage return, retorno do carro) 13 0D 
SO (Shift out) 14 0E 
SI (Shift in) 15 0F 
DLE (Data link escape) 16 10 
DC1 (Device control 1) 17 11 
DC2 (Device control 2) 18 12 
DC3 (Device control 3) 19 13 
DC4 (Device control 4) 20 14 
NAK (Negative acknowledgement) 21 15 
SYN (Synchronous idle) 22 16 
ETB (End of transmission block, fim de bloco 
de transmissão) 
23 17 
CAN (Cancel, cancelar) 24 18 
EM (End of medium, fim do meio) 25 19 
SUB (Substitute, substituto) 26 1A 
ESC (Escape, cararctere ESC) 27 1B 
FS (File separator, separador de arquivo) 28 1C 
GS (Group separator, separador de grupo) 29 1D 
RS (Record separator, separador de registro) 30 1E 
US (Unit separator, separador de registro) 31 1F 
SP (Space, espaço) 32 20 
! 33 21 
" 34 22 
# 35 23 
18 
 
$ 36 24 
% 37 25 
& 38 26 
' 39 27 
( 40 28 
) 41 29 
* 42 2A 
+ 43 2B 
, 44 2C 
- 45 2D 
. 46 2E 
/ 47 2F 
0 48 30 
1 49 31 
2 50 32 
3 51 33 
4 52 34 
5 53 35 
6 54 36 
7 55 37 
8 56 38 
9 57 39 
: 58 3A 
; 59 3B 
< 60 3C 
= 61 3D 
> 62 3E 
? 63 3F 
@ 64 40 
A 65 41 
B 66 42 
C 67 43 
D 68 44 
E 69 45 
F 70 46 
G 71 47 
H 72 48 
I 73 49 
J 74 4A 
K 75 4B 
L 76 4C 
M 77 4D 
N 78 4E 
O 79 4F 
P 80 50 
Q 81 51 
R 82 52 
S 83 53 
T 84 54 
19 
 
U 85 55 
V 86 56 
W 87 57 
X 88 58 
Y 89 59 
Z 90 5A 
[ 91 5B 
 92 5C 
] 93 5D 
^ 94 5E 
_ 95 5F 
' 96 60 
a 97 61 
b 98 62 
c 99 63 
d 100 64 
e 101 65 
f 102 66 
g 103 67 
h 104 68 
i 105 69 
j 106 6A 
k 107 6B 
l 108 6C 
m 109 6D 
n 110 6E 
o 111 6F 
p 112 70 
q 113 71 
r 114 72 
s 115 73 
t 116 74 
u 117 75 
v 118 76 
w 119 77 
x 120 78 
y 121 79 
z 122 7A 
{ 123 7B 
 124 7C 
} 125 7D 
~ 126 7E 
Toque de supressão 127 7F 
 
 
20 
 
5.3 - Tabela de caracteres em ASCII estendido 
O código ASCII foi inventado pela língua inglês, então por esse motivo não tem 
caracteres acentuado, e nem especifico de outro idioma. Se caso precise codificar 
esse tipo de caractere será necessário utilizar outro código. O código então foi 
estendido para 8 bits, para poder codificar mais caracteres, conforme falado no 
começo da dissertação. Ele não é o único que utiliza e depende da plataforma. Os 
dois jogos de caracteres ASCII, estendidos mais frequentemente utilizados são ASCII 
e estendido OEM, aquele que equipava as primeiras maquinas de tipo PC da IBM: 
 
 
Também há o código ASCII estendido ANSI, utilizado pelos sistemas operacionais 
recentes: 
 
21 
 
Um termo um pouco peculiar, “aparte” da criptografia, mas com uso de seus 
meios é arte ASCII é baseada justamente no uso de caracteres para criar desenhos 
e mensagens. Ela é bastanteantiga, pois sempre foi usada nos computadores. A arte 
pode ser construída da maneira que o artista quiser: tanto em preto e branco ou 
colorida. 
Com certeza, se você costumava usar o mIRC (hoje em dia não mais comum), 
recebia algumas imagens geradas automaticamente na tela que utilizavam códigos 
ASCII, um fato curioso que vale ressaltar, mostrando a inúmeras possibilidades que 
se obtém com a tecnologia , e de certa forma uma parte da criptografia mesmo que 
pequena 
 
 
http://www.baixaki.com.br/download/mirc.htm
22 
 
6 – Projeto (Estrutura) Do Programa 
 
Com base nas pesquisas e colhimento de informações adquiridas, reunimos 
para ter uma separação de ideias e a escolha de que ideia poderiam embasar o 
desenvolvimento. É com esta decisão se foi escolhido um meio simples e eficaz para 
exemplar um modelo de criptografia para usurário e o trabalho. 
 Com essa conclusão de ideias e desse levantamento foi feito uso da Tabela 
ASC, e utilizando uma chave já embutida no programa. 
Ao longo deste programa, foi desenvolvido para ser simples e rápido foram 
criadas várias funções para facilitação na hora de programar cada ação diferente, 
entre elas a utilizada para realizar as ações de criptografar e descriptografar. 
Fizemos uso de poucas bibliotecas para o desenvolvimento deste projeto, 
sendo a mais a “string.h” agindo diretamente com a cadeia de caracteres, tanto na 
mensagem inserida pelo usuário quanto após a mensagem estiver decifrada. 
Logo após a chamada das bibliotecas, nas linhas 5 e 6 são definidas a questões 
quanto a chave para a cifrar e decifrar, sendo esta não exposta ao usuário e sim já 
definida podendo ser altera somente por quem for alterar o código fonte, elas acabam 
definindo qual será ela e a leitura da mesma em valor inteiro. 
As linhas 9,10 e 12 dizem respeito da declaração de variáveis sendo a 
“principalTEXT” e “TAMANHO_princ” que serão para a leitura e uso da mensagem 
que sera inserida pelo usuário, onde será armazenado o texto em vetor para após 
armazenado ser chamado nas funções em relação a cifragem e decifragem da 
mensagem. 
Da linha 14 a linha 31, trata-se sobre a primeira função, cifrar, caso o usuário 
escolha esta função no menu ele será redirecionado para esta função, que tem como 
ação a leitura do texto digitado pelo usuário. 
Após armazenado no vetor será utilizado o valor correspondente de cada 
caractere digitado pelo usuário na tabela ASC, sendo a assim pegando o valor 
referente a letra digitada e multiplica pela chave também com se valor correspondente 
da tabela ASC para cada caractere. 
Da linha 33 a linha 64 se refere a função “reverter()” é criada a função para 
descriptografar o arquivo criptografado, é feito a utilização de ponteiro para fazer a 
23 
 
leitura de um arquivo que a função criptografar cria, enquanto não for o fim do arquivo, 
ele vai fazer a leitura dos valores inteiros que estão no arquivo e dividir pelo valor da 
chave, obtendo assim o texto original antes de ser criptografado. 
Da linha 66 a linha 109, foi desenvolvido o menu para a criptografia, onde 
contém maior parte dados de saída de dados, mostrando textos para que o usuário 
saiba como prosseguir para que consiga realizar todas as ações corretamente e 
chamado a função “Criptografar()” para realizar o procedimento para que a mensagem 
que o mesmo digitou seja cifrada. 
Entre as linhas 111 e 135, foi criado a função para o menu de descriptografar, 
contendo informações a respeito, quando chama redireciona o usuário para uma tela 
mostrando a ele qual será os passos para realizar a descriptografia e chamando a 
função “reverter()” para continuar com os procedimentos. 
Durante as linhas que vão de 137 a 168, foi realizada a função Menu, esta 
função será a primeira que aparecera para a tela do usuário que estiver acessando o 
programa, ela é responsável a disponibilizar aos usuários todas as opções para que 
ele escolha o que deseja fazer neste programa. 
 Através desse menu principal que aparece as escolhas na qual o usuário 
deseja prosseguir, tendo 3 opções de escolha, todas diferentes e chamando outras 
funções já criadas para fazer a ação escolhida. 
Sendo neste menu contido as seguintes opções: 
 
• “1 - Digitar o texto a ser criptografado" 
• “2 – Descriptografar " 
• “3 – Fechar " 
 
Sendo utilizado um switch para que de acordo com a escolha feita pelo usuário 
e chamada determinada função para realizar determinada ação. 
E concluindo, entre as linhas 170 e 173, são para a função MAIN do programa, 
e ela está sendo utilizada apenas para fazer a chamada de outra função, sendo esta 
outra a “Menu()” , que seria a principal função, mostrando todas a opções para o 
usuário e de acorda com a escolha do mesmo acaba chamando as demais funções 
para realizar todas as ações. 
E foi com essa estrutura que foi feito a criação do programa, o projeto em geral 
24 
 
tive o intuito de ser fácil de ser feita a estrutura e com fácil entendimento da função 
dele, sendo de acordo com a escolha do usuário frente as possibilidades que o 
programa oferece. 
Ante de iniciarmos o projeto, foi feito o levantamento das possibilidades na qual 
poderia ser criado o programa, modelo, funções, uso Vetores, ponteiros etc. Sendo 
assim que não ultrapasse muito o conhecimento que tínhamos antes de iniciarmos, 
inicialmente sendo assim, e ao decorrer do projeto pudéssemos aprimorar o 
programa, trazendo novas função, deixando-o mais enxuto e prático. 
Com as pesquisas feitas e estudos sobre diversos modelos de criptografia, 
sendo desde quando era um modelo “não computacional” até as inúmeras 
possibilidades que estão disponíveis na atualidade, foram encontrados vários 
exemplos de bom agrado e que sem encaixavam no projeto programa, um deste 
exemplos foi o uso da tabela ASCII. 
Então optado pela referida tabela, motivos da escolha foi a facilidade em utilizar 
esse método e o fácil entendimento de sua funcionalidade já que a tabela e bem 
conhecida nos meios computacionais, a tabela ASCII que tem seu significado de: 
American Standard Code for Information Interchange. 
Esta tabela que foi criada por volta de 1960, é método que faz com que a 
assimilação de os caracteres o transformando em uma representação numérica, 
podendo ser em Decimal, binário ou Hexadecimal, chegando a abranger até 
caracteres que não são do padrão americano. 
Foi com base neste conceito que projetamos o programa, para criptografar e 
descriptografar a mensagem que o usuário digitar, mensagem esta com uma restrição 
para apenas 128 caracteres, a funcionalidade do programa consiste em pegar a 
mensagem que usuário digitou, e fazer as seguintes ações: 
(Suponhamos que usurário digite a palavra “ texto “ ) 
 
• Para criptografar é feito este processo: 
 
O programa pega a palavra ou frase digitada pelo usuário e a transforma em ASCII: 
 
t e x t o 
116 101 120 116 111 
 
25 
 
 
Após esse obter esse valor ele transformar a CHAVE em ASCII: 
 
C a b e c a D e M a r t e l o 
67 97 98 101 99 97 100 101 77 97 114 116 101 108 111 
 
 Com estes dois dados é feito o cálculo, multiplicando o valor da 1ª Letra da 
palavra que usuário digitou pelo valor da 1ª letra da chave, e assim subsequentemente 
como no exemplo: 
 
t e x t o 
116 101 120 116 111 
 
 
 
 
 
x x x x x 
 
 
 
 
 
C a b e c a D e M a r t e l o 
67 97 98 101 99 97 100 101 77 97 114 116 101 108 111 
 
 
 
 
Palavra Criptografada 
t e x t o 
7772 9797 11760 11716 10989 
 
 
• Já o processo de reversão é feito da seguinte forma: 
 
No processo ele Converte da tabela ASCII para caracteres normais fazendo a 
operação reversa ao de cifrar: 
 
26 
 
 
Palavra Criptografada 
t e x t o 
7772 9797 11760 11716 10989 
 
 
 
 
 
 
÷ ÷ ÷÷ ÷ 
 
 
 
 
 
C a b e c a D e M a r t e l o 
67 97 98 101 99 97 100 101 77 97 114 116 101 108 111 
 
___________________________________________________________________________________ 
 
116 101 120 116 111 
t e x t o 
 
 
 
 
Sendo assim a funcionalidade do programa, utilizando a também ASCII para fazer a 
criptografia e reverte-la, e sempre salvando em um Arquivo especifico o texto 
criptografado. 
 
 
 
 
 
7 – Relatório Com As Linhas De Código Do Programa 
 
1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
16 
17 
18 
19 
20 
21 
22 
23 
24 
25 
26 
27 
28 
29 
30 
#include <stdio.h> 
#include <stdlib.h> 
#include <string.h> 
#include <windows.h> 
 
char CHAVECRIPT[]="CabecadeMartelo"; 
int TAMANHOCHAVE=strlen(CHAVECRIPT); 
//---------------------------------------- 
char principalTEXT[128]; 
int TAMANHO_princ=128; 
 
int criptoTEXT[128]; 
 
int cifrar(){ 
 int CHAVE_ta; 
 for(int i=0; i< strlen(principalTEXT) ; i++){ 
 criptoTEXT[i]=principalTEXT[i]; 
 } 
 
 
 for(int aux=0; aux < strlen(principalTEXT) ; ){ 
 for(int i=0;i<TAMANHOCHAVE; i++){ 
 CHAVE_ta = CHAVECRIPT[i]; 
 criptoTEXT[aux] *= CHAVE_ta; 
 aux++; 
 } 
 } 
 
 
 return true; 
 
 
 
 
31 
32 
33 
34 
35 
36 
37 
38 
39 
40 
41 
42 
43 
44 
45 
46 
47 
48 
49 
50 
51 
52 
53 
54 
55 
56 
57 
58 
59 
60 
61 
62 
63 
} 
 
int reverter(){ 
 FILE *arquivo; 
 int vl; 
 int dppchave; 
 int dpptexto; 
 arquivo = fopen("C:\\aps\\secreto.txt","r"); 
 
 if(arquivo==NULL){ 
 return false; 
 } 
 
 dppchave=0; 
 
 dpptexto=0; 
 while(!feof(arquivo)){ 
 fscanf(arquivo,"%d",&vl); 
 
 vl /= CHAVECRIPT[dppchave]; 
 
 principalTEXT[dpptexto] = (char)vl; 
 
 dpptexto++; 
 
 if(dppchave==TAMANHOCHAVE-1){ 
 dppchave=0; 
 }else{ 
 dppchave++; 
 } 
 } 
 fclose(arquivo); 
 return true; 
 
 
 
 
64 
65 
66 
67 
68 
69 
70 
71 
72 
73 
74 
75 
76 
77 
78 
79 
80 
81 
82 
83 
84 
85 
86 
87 
88 
89 
90 
91 
92 
93 
94 
95 
96 
} 
 
void MCriptografar(){ 
 printf("\n\t Menu Criptografia"); 
 char auxiliar[TAMANHO_princ]; 
 char stop; 
 int ok; 
 
 FILE *arquivo; 
 
 printf("\n\nPor favor Insira o texto: "); 
 gets(auxiliar); 
 
 if( strlen(auxiliar) <= TAMANHO_princ){ 
 strcpy(principalTEXT,auxiliar); 
 printf("\n\nTexto pronto para criptografar!"); 
 ok=true; 
 if(ok){ 
 if(cifrar()){ 
 printf("\n\nCriptografia concluida!"); 
 
 arquivo = fopen("C:\\aps\\secreto.txt","wt"); 
 if(arquivo==NULL){ 
 printf("\n\nErro - Nao foi possivel fazer criacao do 
Arquivo\n\n"); 
 }else{ 
 for(int i=0; i < strlen(principalTEXT); i++){ 
 fprintf(arquivo,"%d ",criptoTEXT[i]); 
 } 
 } 
 fclose(arquivo); 
 
 
 
 
 
97 
98 
99 
100 
101 
102 
103 
104 
105 
106 
107 
108 
109 
110 
111 
112 
113 
114 
115 
116 
117 
118 
119 
120 
121 
122 
123 
124 
125 
126 
127 
128 
129 
 printf("\n\nPara abrir a pasta do arquivo gerado, pressione 
qualquer tecla\n"); 
 scanf("%c",&stop); 
 setbuf(stdin,NULL); 
 system("explorer C:\\aps\\"); 
 }else{ 
 printf("\n\nErro - Nao foi possivel criptografar""\n\n"); 
 } 
 
 } 
 
 } 
 system("pause"); 
 
 
} 
 
void R_arquiv(){ 
 char stop; 
 printf("\n\nComo Reverte a criptografia:"); 
 printf("\n\n 1 - Apenas Confira se o Arquivo \"secreto.txt\" Esta no 
local adequado"); 
 printf("\n\n 2 - Volte para o programa para proseguir"); 
 printf("\n\n\n Pressione qualquer tecla para vizualizar a pasta"); 
 scanf("%c",&stop); 
 setbuf(stdin,NULL); 
 
 system("explorer C:\\aps\\"); 
 printf("\n\nPressione qualquer tecla depois que o arquivo ja estiver 
no local\n"); 
 scanf("%c",&stop); 
 setbuf(stdin,NULL); 
 
 
 
 
 
130 
131 
132 
133 
134 
135 
136 
137 
138 
139 
140 
141 
142 
143 
144 
145 
146 
147 
148 
149 
150 
151 
152 
153 
154 
155 
156 
157 
158 
159 
160 
161 
162 
 if( reverter()){ 
 printf("\n Descriptografia concluida\n"); 
 system("pause"); 
 system("cls"); 
 printf("\n Mensagem Descriptografada: \"%s\"\n\n",principalTEXT); 
 system("pause"); 
 }else{ 
 printf("\n Erro - Nao foi possivel reverter o processo ""\n\n"); 
 system("pause"); 
 } 
} 
 
void Menu(){ 
 int op; 
 while(1){ 
 system("cls"); 
 if (CreateDirectory ("C:\\aps", NULL)){ 
 printf ("Pasta criada com sucesso!\n\n");} 
 printf("\n\t Menu Criptografia"); 
 printf("\n\n1 - Insirir o texto para ser cifrado 
(CRIPTOGRAFADO)"); 
 printf("\n\n2 - Reverter o Processo de Criptografia"); 
 printf("\n\n3 - Fechar"); 
 printf("\n\nOpcao: "); 
 scanf("%d",&op); 
 setbuf(stdin,NULL); 
 switch (op){ 
 case 1: 
 system("cls"); 
 MCriptografar(); 
 break; 
 case 2: 
 system("cls"); 
 
 
 
 
163 
164 
165 
166 
167 
168 
169 
170 
171 
172 
173 
174 
175 
176 
177 
178 
179 
180 
181 
 R_arquiv();break; 
 
 case 3: 
 system("pause"); 
 exit(0); 
 break;default: 
 
 printf("ERRO - Opcao incorreta");
 
 } 
 
 } 
} 
 
int main(){ 
 Menu(); 
 return 0; 
} 
 
 
 
 
 
 
 
8 - Referências Bibliográficas 
 
MEDEIROS, Fávio. Criptografia tecnologia presente. [S.l.: s.n.], 2015. 1 p. 
Disponível em: <https://goo.gl/ZsZLfe>. Acesso em: 23 nov. 2018. 
 
COSTA, Celso. Introdução à Criptografia. [S.l.]: CEDERJ, 2010. 106 p. v. 1. 
Disponível em: <https://goo.gl/H5b19P>. Acesso em: 23 nov. 2018. 
 
GALVÃO, Michele da Costa. Fundamentos em Segurança da Informação. [S.l.]: 
Pearson Education do Brasil, 2015. 111 p. 
 
ODEMIR M., Bruno. Criptografia: de arma de guerra a pilar da sociedade 
moderna. [S.l.: s.n.], 2017. 1 p. Disponível em: <https://goo.gl/DXzrZk>. Acesso em: 
23 nov. 2018. 
 
BAHIANA, Monica. Introdução à computação cientifíca em C. [S.l.: s.n.], 2017. 1 
p. Disponível em: <https://goo.gl/4yq5GX>. Acesso em: 23 nov. 2018. 
 
PILLOU, Jean. Código ASCCI. 2017. Disponível em: 
<https://br.ccm.net/contents/54-o-codigo-ascii>. Acesso em: 23 jul. 2018 
 
PINTO, Pedro. História da Criptografia. 2013. Disponível em: 
<https://pplware.sapo.pt/informacao/conhea-a-historia-da-criptografia/>. Acesso em: 
23 jul. 2018. 
 
CASTELLÓ, Thiago; VAZ, Verônica. História da Criptografia. 2017. Disponível em: 
<https://pplware.sapo.pt/informacao/conhea-a-historia-da-
 
 
 
 
criptografia/https://www.gta.ufrj.br/grad/07_1/ass-dig/HistriadaCriptografia.html>. 
Acesso em: 23 jul. 2018. 
 
ROMAGNOLLO, Cesar. O que é criptografia. 2017. Disponível em: 
<https://www.oficinadanet.com.br/artigo/443/o_que_e_criptografia>. Acesso em: 23 
jul. 2018 
 
SCHUNCKE, Alex. Os principais tipos de criptografia. 2012. Disponível em: 
<https://www.oficinadanet.com.br/post/9424-quais-os-principais-tipos-de-
criptografia>Acesso em: 08 nov. 2018 
 
FURTADO, Gilberto. Tipos de criptografia mais utilizadas. 2008. Disponível em: 
<https://gilbertofurtado.wordpress.com/2008/03/14/tipos-de-criptografia-mais-
utilizados/>. Acesso em: 08 nov. 2018. 
 
DIAS, Rafael. Algoritmos de criptografia: tipos e como funcionam. 2016. 
Disponível em: <https://www.segurisoft.com.br/criptografia/analise-algoritmos-
criptografia/>. Acesso em: 08 nov. 2018. 
 
ARRIGONI,Ricardo. Tabela ASCII. [S.l.: s.n.], 2018. 1 p. Disponível em: 
<https://www.ricardoarrigoni.com.br/tabela-ascii-completa/>. Acesso em: 08 nov. 
2018.

Outros materiais