Ejemplo de esteganografía en imágenes con Python

Introducción Buscando y buscando librerías para ocultar mensajes en imágenes utilizando Python encontré algunas, pero ninguna funcionó en mi máquina. Ya fuera al momento de instalarla o al momento de utilizarla. Así que decidí hacerlo a mano, y aprender un poco del proceso. Al final, pude ocultar texto para más tarde recuperarlo. A esta técnica se le llama esteganografía. No utilicé ninguna librería, sólo PIL para obtener los pixeles de una imagen. Los métodos explicados aquí puede que sean redundantes, pero son bastante explicativos. Antes de continuar, recomiendo y casi obligo a leer cómo es que modificamos el LSB de cada byte de cada nivel de color en un pixel. Recuerda tener instalado Python y pip. Nota: si quieres ver el código completo míralo en GitHub. ...

abril 6, 2018 · 8 min · 1595 palabras · Parzibyte

Introducción a la esteganografía con imágenes en LSB

Introducción La esteganografía es una técnica para ocultar mensajes en un canal encubierto. Hay muchas formas de hacerlo, y hoy veremos cómo es que se hace en imágenes. Sólo explicaremos la teoría, no haremos nada práctico por el momento. Actualización: aquí un ejemplo. ...

abril 5, 2018 · 5 min · 874 palabras · Parzibyte

Juego de batalla naval con Arduino, LCD y comunicación serial

Introducción No hace mucho me fue encargado un pequeño proyecto en donde tenía que simular el juego de una batalla naval usando un Arduino, dos módulos USB a TTL, algunos leds controlados con un 74hc595 y una LCD con el módulo I2C. Trataré de ser lo más específico posible y no omitir ningún detalle. Recuerda que todo esto es modificable, y con un poco de tiempo puedes adaptarlo a muchos otros escenarios. Por ejemplo, puede que no necesites los leds, o que en lugar de USB a TTL utilices Bluetooth, etcétera. Todo queda en ti. Nota: también he creado el juego de batalla naval en Python. ...

abril 5, 2018 · 26 min · 5392 palabras · Parzibyte

Descargar e instalar cURL en Windows

Introducción Si eres un desarrollador web (y aunque no lo seas), probablemente necesites utilizar curl para probar peticiones HTTP y esas cosas. Por desgracia, no todos utilizamos Linux (en donde esta herramienta es nativa). Por lo tanto, investigué cómo descargar curl y utilizarlo en Windows. Descargar Comencemos por descargar el ejecutable comprimido. Vamos a la siguiente página: https://winampplugins.co.uk/curl/. En la parte inferior encontramos versiones para Windows de 32 y 64 bits. Dependiendo de la arquitectura, descargamos el archivo. ...

abril 4, 2018 · 2 min · 275 palabras · Parzibyte

Obtener siguiente cuadrado perfecto en Javascript

Introducción Un cuadrado perfecto es aquel número entero que al sacarle raíz cuadrada sigue siendo un número entero. Por ejemplo, 25 lo es; ya que su raíz cuadrada es 5, y 5 es un entero. No pasa lo mismo para 24, ya que su raíz es algo como 4.89. Vamos a escribir una función en Javascript para calcular o estimar el siguiente cuadrado perfecto de otro cuadrado perfecto. Más información aquí: https://es.wikipedia.org/wiki/Cuadrado_perfecto ...

abril 4, 2018 · 2 min · 397 palabras · Parzibyte

Tomar foto de cámara web con Javascript, actualizado

Introducción Nota: ya hay una versión 3 de este código. En ese nuevo post explico cómo dar la posibilidad de que el usuario cambie la cámara, además de que introduzco otras mejoras y actualizaciones. Míralo aquí. Esta es la versión 2 de la primera entrada que escribí. Estaba probando la app en Chrome, y aparecía un mensaje que dice así: [Deprecation] URL.createObjectURL with media streams is deprecated and will be removed in M68, around July 2018. Please use HTMLMediaElement.srcObject instead. See https://www.chromestatus.com/features/5618491470118912 for more details. ...

abril 4, 2018 · 4 min · 682 palabras · Parzibyte

Comprobar si una cadena es anagrama de otra en Javascript

Introducción Un anagrama es una palabra o frase que resulta de la transposición de letras de otra palabra o frase. Dicho de otra forma, una palabra es anagrama de otra si las dos tienen las mismas letras, con el mismo número de apariciones, pero en un orden diferente. Aquí algunos ejemplos: Desamparador – desparramado Conservadora – conversadora Nacionalista – altisonancia Veamos cómo podemos comprobar si es un anagrama utilizando Javascript. ...

abril 3, 2018 · 4 min · 695 palabras · Parzibyte

Primer y último carácter o letra de cadena en Javascript

Introducción Este será un post muy corto. Veremos cómo obtener el primer y último carácter de una cadena en el lenguaje de programación Javascript. Obtener primer carácter Utilizamos el método charAt, que personalmente traduciría como “carácter en”. Es una función nativa que las cadenas tienen. Devuelve un carácter, recibe la posición del carácter que queremos. Así que, para obtener la primera letra, lo hacemos así: var cadena = "Hola, mundo"; var primerCaracter = cadena.charAt(0); // primerCaracter es H Simplemente estamos obteniendo el carácter en la posición 0, es decir, el primero. ...

abril 3, 2018 · 1 min · 177 palabras · Parzibyte

The Feast of Many Beasts (La fiesta de muchas bestias) solución Javascript

Introducción Resolviendo ejercicios de codewars, encontré uno que no es nada difícil pero me gustó mucho. Se trata de la fiesta de muchas bestias. Es muy simple. ¡Todos los animales están teniendo una fiesta! Cada animal trae un plato. Sólo hay una regla: el plato debe comenzar y terminar con las mismas letras que el nombre del animal. Escribe una función “fiesta” que tome el nombre y el plato del animal como argumentos y devuelva verdadero o falso para indicar si la bestia puede llevar el plato a la fiesta. ...

abril 3, 2018 · 2 min · 319 palabras · Parzibyte

Equivalente a Date.now() de Javascript para obtener milisegundos en PHP

Introducción Con Javascript, podemos obtener los milisegundos transcurridos desde la fecha Unix utilizando el método estático now de la clase Date. Así: let milisegundos = Date.now(); Si venimos de ese lenguaje, y nos cambiamos a otro, es probable que extrañemos dicha función. Por lo que hoy veremos cómo obtener los milisegundos transcurridos desde la fecha Unix en PHP, o un equivalente a Date.now() de Javascript. La solución se encuentra al final del post, por si vienes sólo por ella. En caso de que no, puedes leer la explicación y el funcionamiento. ...

marzo 29, 2018 · 3 min · 521 palabras · Parzibyte