O objetivo deste artigo é apresentar os conceitos básicos sobre esteganografia e criptografia. As mesmas são as técnicas mais utilizadas para ocultar mensagens e informações nos mais variados tipos de arquivos.
Em que situação o tema é útil
Em algumas situações, a possibilidade de ocultar uma informação dentro de outra possibilita desenvolvermos lógicas de autenticação de arquivo. Através deste artigo o leitor será capaz de entender os conceitos e técnicas do processo e estará apto a criar sua própria lógica para ocultar uma informação dentro de um arquivo de imagens.
Esteganografia e Criptografia
Desde sua invenção a milhares de anos, as técnicas de esteganografia estão presentes até hoje em nosso dia a dia e, são utilizadas em várias situações, onde é necessário incluir meta dados de maneira oculta em arquivos. Neste artigo trataremos sobre a história e técnicas de esteganografia, criando exemplos práticos para demonstrar a técnica de ocultar informações em arquivos de imagens. Ao final, será criada uma aplicação prática onde uma mensagem poderá ser incluída em uma imagem, sem que essa altere visualmente a imagem.
Apesar de ser uma palavra complexa, a esteganografia é algo bem simples de se entender. Esteganografia (esteganos = "escondida/protegida" e graphei = "escrita") define o ato de ocultar uma informação em outra, para que apenas o conhecedor do método possa ler a informação escondida.
Embora soem parecidas, é muito importante não confundir esteganografia com criptografia. A criptografia tem por função ocultar o significado de uma mensagem, enquanto a esteganografia tem por função ocultar a existência de uma mensagem.
Em termos práticos, uma pode ser utilizada dentro da outra. Podemos ter uma mensagem criptografada que pode ser escondida em um lugar específico (arquivo de imagens, músicas etc.), aumentando assim seu grau de segurança.
A esteganografia é uma das técnicas utilizadas para garantir a autenticidade e verificar direitos autorais em imagens e outras mídias.
O primeiro uso de esteganografia que se tem conhecimento, está documentado em "As Histórias" de Heródoto e data de cerca de 440 a.C. Em um dos textos, uma certa pessoa desejava enviar uma mensagem ao seu superior e temia que tal mensagem caísse em mãos erradas. Ele então escolheu um de seus escravos de confiança, raspou sua cabeça e escreveu em sua careca a mensagem destinada ao seu superior. Após esperar que os cabelos crescessem novamente, enviou seu escravo até seu chefe com a instrução de que deveriam raspar seus cabelos.
Já na China antiga, por exemplo, uma das formas conhecidas para se transportar mensagens secretas, era escrever tal mensagem sobre seda fina e em seguida o pequeno retalho era enrolado na forma de uma pequena bola e recoberto por cera. O encarregado de transportar a mensagem então engolia tal objeto e viajava até seu destino.
Veja que nesses dois casos, qualquer um que descobrisse o segredo (raspar os cabelos ou que as bolinhas estavam no estômago do mensageiro) poderia descobrir a mensagem.
Outro método muito conhecido e que foi muito utilizado, foi criado na Grécia antiga, fazendo-se pequenos furos em letras de um texto que posteriormente poderiam ser juntadas para formar palavras e em seguida frases.
Existem diversas formas de ocultação de mensagens e abaixo iremos tratar de alguns dos mais conhecidos e um tanto engraçados:
Ave Maria de Trithemius
Em meados do século XV um abade chamado Johannes Trithemius imaginou um sistema esteganográfico muito funcional para a época.
Ele criou frases religiosas correspondentes para os caracteres da escrita tradicional. Com esse sistema, uma mensagem secreta poderia ser escrita, porém, seria completamente ocultada por um texto que a primeira vista pareceria com uma passagem ou um poema bíblico.
As frases e suas letras correspondentes podem ser vistas na Tabela 1, em uma versão em português (as frases originais eram em latim).
Letra |
Frase Correspondente |
A |
no céu |
B |
para todo o sempre |
C |
um mundo sem fim |
D |
numa infinidade |
E |
Perpetuamente |
F |
por toda a eternidade |
G |
Durável |
H |
Incessantemente |
I e J |
Irrevogavelmente |
K |
Eternamente |
L ... |
Confira outros conteúdos:
Perguntas frequentes
Nossos casos de sucesso
Eu sabia pouquíssimas coisas de programação antes de começar a estudar com vocês, fui me especializando em várias áreas e ferramentas que tinham na plataforma, e com essa bagagem consegui um estágio logo no início do meu primeiro período na faculdade.
Estudo aqui na Dev desde o meio do ano passado!
Nesse período a Dev me ajudou a crescer muito aqui no trampo.
Fui o primeiro desenvolvedor contratado pela minha
empresa. Hoje eu lidero um time de desenvolvimento!
Minha meta é continuar estudando e praticando para ser um
Full-Stack Dev!
Economizei 3 meses para assinar a plataforma e sendo sincero valeu muito a pena, pois a plataforma é bem intuitiva e muuuuito didática a metodologia de ensino. Sinto que estou EVOLUINDO a cada dia. Muito obrigado!
Nossa! Plataforma maravilhosa. To amando o curso de desenvolvimento front-end, tinha coisas que eu ainda não tinha visto. A didática é do jeito que qualquer pessoa consegue aprender. Sério, to apaixonado, adorando demais.
Adquiri o curso de vocês e logo percebi que são os melhores do Brasil. É um passo a passo incrível. Só não aprende quem não quer. Foi o melhor investimento da minha vida!
Foi um dos melhores investimentos que já fiz na vida e tenho aprendido bastante com a plataforma. Vocês estão fazendo parte da minha jornada nesse mundo da programação, irei assinar meu contrato como programador graças a plataforma.
Wanderson Oliveira
Comprei a assinatura tem uma semana, aprendi mais do que 4 meses estudando outros cursos. Exercícios práticos que não tem como não aprender, estão de parabéns!
Obrigado DevMedia, nunca presenciei uma plataforma de ensino tão presente na vida acadêmica de seus alunos, parabéns!
Eduardo Dorneles
Aprendi React na plataforma da DevMedia há cerca de 1 ano e meio... Hoje estou há 1 ano empregado trabalhando 100% com React!
Adauto Junior
Já fiz alguns cursos na área e nenhum é tão bom quanto o de vocês. Estou aprendendo muito, muito obrigado por existirem. Estão de parabéns... Espero um dia conseguir um emprego na área.