Esteganografia em texto e em imagem - escondendo informações

Olá pessoal,

estou meio sumido, mas não sei se todos sabem, último ano de faculdade, trabalhos a mil, projeto final de curso e muito serviço deixam qualquer um louco…rs…

Neste post vou falar sobre uma técnica que foi o tema proposto em um trabalho na faculdade: Esteganografia (Steganography), que é a arte de esconder uma mensagem em outra, ou no meio digital, esconder um arquivo em outro.

O primeiro trabalho que foi proposto foi esconder um texto em um texto (HIT - Hide in Text). Foi o que mais deu trabalho, pois não há nada na internet falando sobre isso nem mesmo no Google :) . A técnica que desenvolvi não deve ser tão inovadora, mas resolveu o problema, com a restrição do texto “cobaia”, que irá abrigar (esconder) a mensagem, tem que ser muito, mas muito grande!

O que fiz foi trocar todos os espaços do texto pelos caracteres 0, 32 e 160 (códigos ASCII). Simples né? Mais ou menos…

Tive que fazer uma conversão de cada caracter ASCII da mensagem a ser escondida nesses 3 caracteres. Ou seja, haja espaços para conseguir esconder uma mensagem nem tão grande.

A implementação foi feita em ANSI C. Os fontes dos arquivos podem ser baixados aqui:

A implementação do HIP - Hide in Picture me consumiu um pouco mais de tempo, já que eu teria que ler sobre como funciona o formato BMP. Desta vez a implementação foi em PHP :) , por falta de tempo mesmo…

Os fontes podem ser encontrados aqui:

O link para o demo online.

Bom pessoal, até a próxima!

Comentários (8)

Publicação Artigo sobre Allegro

No final de Outubro um artigo escrito por mim e pela Luana foi publicado na revista INICIA da FAI. Para quem não teve acesso a revista pode lê-lo pelo próprio link acima, ou pela versão em PDF abaixo.

A Utilização da Biblioteca Allegro para o Desenvolvimento de Aplicações Multimí­dia

Até mais…

Comentário

Modeladores UML Livres

Durante minha busca incansável por um modelador (não JUDE) (open-source) para desenhar os diagramas de classes do meu projeto da faculdade, encontrei dois bastante interessantes.

BOUML: bastante interessante e pequeno, apenas achei um pouco complicado de utilizar. Mas tem recursos bastante interessantes como engenharia reversa e trabalha com várias linguagens. E tem a possibilidade de instalar novos plugins.
Link: http://bouml.free.fr/

StarUML: pelos screenshots, parece bem poderoso (ainda não o instalei). Possui recursos interessantes como o BOUML, como a parte de engenharia reversa e por trabalhar com várias linguagens. Além de possuir recursos adicionais como módulos e templates.
Link: http://staruml.sourceforge.net/

Caso você conheça algum outro, me envie via comentário… Será de grande valia…

Comentários (3)

Criando gráficos com Allegro

Neste post vamos ver como podemos criar gráficos com Allegro, bem simples, mas pode ajudar bastante em aplicações em que deve-se mostrar algumas informações de forma mais intuitiva.
Ler o post completo »

Comentários (9)

Exemplo de como usar sockets no Windows (Winsock)

Procurando sobre sockets esses dias atrás, encontrei um link bastante interessante no site da Microsoft. Ele fala sobre a biblioteca winsock e como iniciar seu uso.

MSDN Network - Getting Started with Winsock

Futuramente pretendo fazer um post somente sobre sockets. Até mais…

Comentário (1)

Referências e artigos em C++ (Cpp)

Existem muitos sites com referências de C++, neste post vou mostrar alguns que uso com frequência, e onde na maioria das vezes sano minhas dúvidas sobre a linguagem em si. A maioria dos sites são em inglês. Sem problemas, afinal, quem quer trabalhar com informática, obrigatóriamente deve saber no mínimo o inglês instrumental, para pelo menos saber ler um manual, por exemplo.

Um dia irei começar a traduzir algumas destas referências. Um dia.

Lista de Referências:

Caso eu tenha esquecido de algum site, me enviem um comentário que as insiro aqui.

Comentário

Biblioteca SDL

Nestes útlimos dias estive estudando uma nova (para mim) biblioteca para desenvolvimento de jogos e multimidia.

Estou gostando bastante da variedade de coisas que estou conseguindo fazer com ela, e que ainda não tinha conseguido fazer com Allegro.

Algumas características e poderes que consegui testar desta biblioteca foram:

  • Imagens
  • Vídeo (MPEG)
  • Teclado
  • Mouse
  • Threads
  • Uso de fontes TTF

Estou desenvolvendo algumas classes uteis baseadas nessa biblioteca, já que algumas coisas nela não são tão triviais e simples como em Allegro, ou as vezes são apenas um pouco mais trabalhosas.

Aqui vai uma descrição que peguei no site oficial da biblioteca em uma tradução livre feita por mim:

Simple DirectMedia Layer é uma biblioteca multimidia multi-plataforma desenvolvida para prover acesso de baixo nível a áudio, teclado, mouse, joystick, 3d hardware via OpenGL, e video 2D. É usada para tocadores de MPEG, emuladores, e outros jogos populares, incluindo a versão portada para linux do premiado “Civilization: Call To Power.”

Simple DirectMedia Layer is a cross-platform multimedia library designed to provide low level access to audio, keyboard, mouse, joystick, 3D hardware via OpenGL, and 2D video framebuffer. It is used by MPEG playback software, emulators, and many popular games, including the award winning Linux port of “Civilization: Call To Power.”
Em breve, estarei postando algumas características dessas classes que estou pretendendo criar, para que se alguém estiver afim de ajudar.

Links:

http://www.libsdl.org/ Site oficial

http://www.libsdl.org/tutorials.php Parte de Tutoriais do site oficial

Bibliotecas SDL recomendadas:

SDL defautl

SDL_image - para trabalhar com outros formatos de imagem

SDL_mixer - para trabalhar com audio

SMPEG - para trabalhar com video MPEG

SDL_ttf - para trabalhar com TrueTypeFonts (TTF)

Em breve postarei alguns tutoriais também sobre está biblioteca.

Comentários (10)

Animação e a tecnica de double buffer em Allegro

A animação é recurso bastante interessante de ser usado em jogos e aplicações multimídias, por trazer “vida” ao que é mostrado na tela.

Neste post será mostrado como pode-se implementar uma animação simples usando Allegro e como faze-la usando Double-Buffer (buffer duplo).

Ler o post completo »

Comentários (26)

Usando Imagens em Allegro

Uma das principais características que um jogo deve ter é um design bem feito. E para isso o uso de imagens é indispensável.

Neste post vamos ver como podemos usar imagens em nossas aplicações em Allegro.

Ler o post completo »

Comentários (21)

Primeiro programa em C com Allegro

Continuando a séria de posts sobre Allegro, vamos ver como iniciar um programa usando essa biblioteca. Que por sinal, é bem simples usando o Dev C++. 

Ler o post completo »

Comentários (17)