Capturar webcam con VB.NET

¿Que haremos? Crearemos una aplicación en Visual Studio, la cual hará uso de una webcam para capturar el video en frames independientes y depositarlos en memoria para despues mostralos al usuario a través de un picturebox y un Timer para crear la ilusión de movimiento. ¿Porque lo haremos? Porque es justo y necesario ¿Que necesitamos? [...]

Envío de correo con JavaMail/Netbeans

JavaMail es una expansión de Java que facilita el envío y recepción de e-mail desde código java. JavaMail implementa el protocolo SMTP (Simple Mail Transfer Protocol) así como los distintos tipos de conexión con servidores de correo -TLS, SSL, autentificación con usuario y password, etc [Según SantaWikipedia] ¿Qué necesitamos? JavaMail 1.4.5 Java y Netbeans 6.9 [...]

Proyecto de base de datos Firebird VB

En este proyecto realizaremos una aplicación de base de datos Firebird con el lenguaje de programación de Visual Basic de Microsoft, este proyecto tendrá las funciones básicas de gestión INSERT, DELETE, UPDATE y una interfaz de usuario para utilizarlas. ¿Que necesitamos? Visual Studio 2008 o superior Firebird última versión Firebird ADO.NET Data Provider. Conocimientos básicos [...]

Imprimir imagen con Print

La siguiente clase hace uso de PRINT para imprimir una imagen que se encuentra en un variable de tipo FileInputStream, esta clase a su vez es implementada desde una interfaz que hace fácil su uso, la clase así como todo el proyecto esta comentado. import java.io.File; import javax.print.Doc; import java.io.IOException; import javax.print.DocFlavor; import javax.print.SimpleDoc; import java.io.FileInputStream; [...]

Code Army Bolivia

29/5/11

Esteganografia LSB en Java - [Proyecto Completo]

JAN29

Mensajes ocultos utilizando el método de Inserción en el bit menos significativo
(Least Significant Bit Insertion)
El método de Inserción en el Bits Menos Significativo, llamado también método de Sustitución,  consiste en reemplazar el Bits menos significativo de los pixeles de una imagen digital  por otro Bits del mensaje que se quiere ocultar.
¿Cuál es el Bits menos significativo?
El Bits menos significativo o LSB (Abreviatura en ingles) de un numero binario, es el bits que se encuentra al extremo derecho de este

¿Y qué es un pixel?
Un píxel o pixel es la menor unidad homogénea en color que forma parte de una imagen digital, ya sea esta una fotografía, un fotograma de vídeo o un gráfico.

Dicho de otra forma, si se aplica zoom a una imagen digital, se podrá observar que está formada por varios puntos (cuadrados) de colores, esta sucesión de pixeles en forma de una matriz es lo que conocemos como imagen, cada uno de estos pixeles está formado por 3 bytes cada uno de estos almacena un color primario Rojo, Verde, Azul (RGB en ingles) y la variación entre ellas forman los distintos colores que podemos ver en pantalla.

¿Y cómo funciona el método de sustitución?
Si quisieramos esconder la letra A=01000001 que  esta formado por 8 bits, dentro la imagen de abajo, necesitarios utilizar 3 pixeles de la imagen, cada pixel tiene 3 bytes para cada color RGB

Primero debemos extraer los 3 primeros pixeles de la fotografía

Y aplicamos la sustitución LSB de cada número binario por cada bit del carácter “A” (nuestro mensaje)

Como se observa se ha sustituido cada bits LSB (recuadro rojo) por cada bits del carácter “A” formando nuevos valores para los colores RGB, estos nuevos colores no cambian mucho con respecto al original y así no pueden ser distinguidos por el ojo humano, pasando inadvertidos.

Se utilizaron 8 bits LSB en total, uno por cada bit del mensaje, los que no se utilizan, se dejan como están.

Para este método de sustitución LSB puede emplearse cualquier formato de imagen fuente (*.JPG, *.PNG, *.BMP) pero este debe ser guardado en formato *.BMP (destino), esto porque los otros formatos tienden a perder información con la compresión, BMP no tiene compresión por eso son más grandes, este método además tiene la ventaja de no alterar el tamaño de la imagen. El tamaño del mensaje que se desee ocultar, dependerá del tamaño de la imagen, se utiliza un promedio de 3 pixeles por carácter lo que en una imagen de 200x200 pixeles nos da para almacenar 13000 caracteres, suficientes creo para guardar mucha información.


Proyecto completo: Codigo Fuente, Tutorial, Demo, Aplicación portable + Bonus
Click para descargar

¿Bonus?
Si, como me gusta fomentar la investigación, dejo en un rar una sopresa (solo para entendidos), esta con contraseña, asi que el que quiera la "llave" ya sabe donde buscar

continue reading

8/5/11

Reportes con Imagenes [Videotutorial]

JAN29

Video Tutorial que muestra una de las maneras de utilizar y mostrar imagenes en iReport, pasando estas como parametros desde Java, se utiliza el IDE Netbeans 6.9 y JasperReport v3.7.2

El video lo explica todo, y para un usuario intermedio de java/netbeans/iReport es bastante obvio, sin embargo, dejo tambien el codigo fuente

[Enlace Actualizado]
Click para descargar

continue reading

2/5/11

Tu foto en una portada

JAN29

Aprovechando el feriado del primero de mayo y como tambien se vino una helada que no dan ganas de salir ni a la puerta :( me entretuve haciendo una pagina web modificando un proyecto  "TU PORTADA"que ya tenia hecho hace tiempo en un servidor gratuito con muchas limitaciones, pero ahora, estrenando un dominio propio y para testear como anda este nuevo hosting (30 dias de garantia) le hice algunas modificaciones mas de forma que de fondo.
Trate de simplificar el uso de imagenes (el costo por byte es muy caro en mi pais), ademas utilice la maquetacion por el sistema 960 Grid System para apresurar las cosas, lenguaje PHP y JavaScript, dando como resultando una web sencilla de rapido cargado 
No podia falta un video

VISITEN ESTA PAGINA

La dirección es: http://www.tuportada.jc-mouse.net/

continue reading

Post recomendado