Esconder información en imágenes con JavaScript y Esteganografía

Siguiendo con los tutoriales de esteganografía para ocultar información en una foto sin que el ojo humano lo pueda notar vamos a ver cómo aplicar dicha técnica con JavaScript en el lado del cliente. Con el tutorial de hoy vas a aprender a usar la Esteganografía en imágenes con JS desde el navegador web sin necesidad de instalar nada. Serás capaz de ocultar cualquier mensaje secreto en la imagen sin que se vea alterada. Si combinas lo expuesto en este post con el artículo de encriptación de información en JavaScript vas a poder encriptar y esconder mensajes usando Esteganografía. Bonus: de hecho la misma imagen que acompaña este post tiene un mensaje oculto. Descarga la imagen y lee su contenido: Esconder-informacion-en-imagen-de-JavaScript-con-esteganografia.png Puedes acceder a la demostración ya mismo en el siguiente enlace sin salir de tu navegador. Prueba seleccionando una imagen y ocultando un mensaje, después regresa a este post para saber cómo fue programado: https://parzibyte.github.io/ejemplos-javascript/esteganografia/ ...

junio 6, 2024 · 6 min · 1231 palabras · Parzibyte

Actualización plugin ESC POS v3.3.0 - Algoritmos de imágenes

En este post voy a explicar la última actualización de mi plugin, ya que he añadido algoritmos nuevos para imprimir imágenes. Anteriormente solo estaba soportado el Raster bit image, pero ahora he agregado el NV Graphics y Bit image column format. La principal razón por la que agregué estos algoritmos es porque en algunos casos la alineación de las imágenes no era respetada (igualmente revisaré eso más a fondo en próximas actualizaciones) y porque algunas impresoras no son compatibles con el Raster bit image. También he optimizado algunos algoritmos existentes para que sean más rápidos. Te invito a leer los detalles completos, pues esta actualización trae algunas mejoras pero rompe algunas cosas. Si tú quieres seguir usando el plugin con los conectores que existían anteriormente, simplemente no actualices a la versión 3.3.0, ya que los conectores existentes no van a ser actualizados (para eso solo actualizaré el diseñador web que ya es capaz de generar código fuente). ...

enero 23, 2024 · 4 min · 695 palabras · Parzibyte

Métodos para imprimir imágenes en impresoras térmicas

Hoy vamos a ver algunos algoritmos para generar comandos ESC POS para imprimir imágenes en una impresora térmica. Hay varios enfoques para imprimir, y algunos de ellos solo son soportados en ciertos modelos de impresoras, además de que en algunos casos la alineación de imágenes no es respetada al usar cierto método. Veamos cuáles son los algoritmos para imprimir imágenes en una impresora térmica. Nota: aquí te voy a mostrar los algoritmos para implementarlos en lenguajes de programación. Si tú solo quieres imprimir imágenes en tu impresora térmica sin detalles técnicos puedes usar mi diseñador web. ...

enero 18, 2024 · 3 min · 537 palabras · Parzibyte

Raster bit image - Algoritmo ESC POS (GS v 0)

El día de hoy voy a explicar el algoritmo Raster bit image, mismo que es un método para convertir una imagen en bytes entendibles para el protocolo ESC POS de las impresoras térmicas. Además de este algoritmo existen el Bit image column format, NV Graphics y otros de los que todavía no tengo conocimiento. Estos 3 son los algoritmos más comunes a la hora de imprimir imágenes en una impresora térmica, si los conoces entonces no tendrás problemas al momento de imprimir imágenes en una impresora térmica. Bien, veamos este último algoritmo que es realmente sencillo después de haber revisado los otros 2. Su comando es GS v 0 y recibe los bytes de la imagen en formato de raster. Nota importante: recomiendo encarecidamente revisar los otros dos algoritmos, pues si bien todos son distintos, revisarlos te ayudará a entender la conversión de números, anchos, altos, bytes, LSB, MSB, etcétera. ...

enero 18, 2024 · 7 min · 1460 palabras · Parzibyte

Algoritmo ESC POS: NV Graphics - Impresora térmica

Hoy toca revisar otro algoritmo para imprimir imágenes en una impresora térmica usando el protocolo ESC POS. Existen varias maneras de convertir una imagen a bytes ESC POS para imprimirla, y en este post te voy a explicar el algoritmo NV Graphics cuyo comando es GS ( L. Se supone que la impresión de NV Graphics es la recomendada, ya que es soportada en las impresoras más recientes e incluso permite especificar distintos tonos. Al usar este método de impresión de imágenes podemos enviar los bytes en formato rasterizado o como columnas; yo prefiero enviarlos rasterizados pues es más sencillo. Nota: algunas impresoras antiguas no soportan este comando; en su lugar recomiendo usar bit image column format. ...

enero 16, 2024 · 11 min · 2165 palabras · Parzibyte

String dinámica en C

En este post de programación en ANSI C o simplemente lenguaje C vamos a ver cómo tener una cadena dinámica que crece su tamaño sin ningún límite (más allá de la RAM). Esto es, dicho de otra manera, una string dinámica a la que se le pueden concatenar más cadenas y va a crecer su tamaño según sea requerido. Como bien sabes, las cadenas en C son arreglos de tipo char que tienen el carácter nulo en la última posición, y son de longitud fija. Gracias a los apuntadores, estructuras y funciones como malloc o realloc podemos aumentar la memoria que una variable usa, logrando así tener una cadena dinámica en C a la que le puedes concatenar otros strings sin límite. ...

diciembre 29, 2023 · 3 min · 539 palabras · Parzibyte

Agregar ceros a número con JavaScript

El día de hoy veremos una función muy simple con JavaScript para agregar ceros a la izquierda de un número hasta que el mismo tenga cierta longitud, es decir, rellenar con ceros a la izquierda hasta tener las cifras deseadas. Esto funciona al generar series, entre otros casos. Veamos cómo hacerlo con JavaScript. ...

diciembre 8, 2023 · 2 min · 238 palabras · Parzibyte

Generar serie con prefijo usando JavaScript

En este post vamos a ver cómo generar una serie numérica con JavaScript en donde se solicita lo siguiente: La serie debe tener un prefijo Todos los números deben tener la misma cantidad de cifras, así que se debe rellenar con ceros en caso de ser necesario La serie debe iniciar en un número y terminar en otro, siempre incluyendo el prefijo Por ejemplo, generar una serie que diga “oferta” desde el 1 hasta el 100. Quedaría así: ...

diciembre 8, 2023 · 2 min · 224 palabras · Parzibyte

Calcular edad de una persona con JavaScript

Al usar JavaScript con la clase Date podemos calcular el tiempo exacto transcurrido entre 2 fechas, pero los humanos (o al menos yo) calculamos las edades de manera distinta. Cuando calculamos la edad de una persona necesitamos saber el día de nacimiento y su cumpleaños en el año actual. También revisamos si ya ha cumplido años en este año o todavía no (para hacer la diferencia de años), contamos los meses completos y los días transcurridos desde el mes completo más cercano. Por ello es que el algoritmo es totalmente distinto, ya que no solo se trata de obtener el tiempo exacto, sino de hacerlo como lo hacemos mentalmente. Justamente de eso trata el ejercicio de hoy. ...

diciembre 6, 2023 · 5 min · 871 palabras · Parzibyte

Extensión de archivo con JavaScript

En este corto post de programación con JS vas a aprender a obtener la extensión de un archivo a partir de su nombre. Por ejemplo, si el archivo es “hola.go” serás capaz de obtener solo la extensión “go”, sin importar cuántos puntos tenga el nombre del archivo. Será un ejercicio sencillo en donde vamos a ubicar el índice de un carácter con JavaScript y también vamos a cortar la cadena con substring. ...

octubre 19, 2023 · 2 min · 227 palabras · Parzibyte