Visualización de archivos binarios con caracteres Unicode y mapas de píxeles

Fuentes: Visualizing binary files

El autor describe dos técnicas para visualizar archivos binarios desarrolladas dentro de su editor hexadecimal 'bine'. La primera aprovecha el carácter Unicode U+2593 (▓ y ░) en la columna ASCII para resaltar bytes NUL y bytes fuera del rango imprimible (0x20–0x7E), sustituyendo las llamadas costosas a ncurses que requeriría una colorización completa al estilo de 'xxd' de Vim. La técnica, según explica, es barata en tiempo de ejecución y sencilla de implementar.

La segunda técnica consiste en tratar un archivo binario como si fuera una imagen. Para ello genera un archivo en formato Portable Graymap (PGM) simplemente emitiendo una cabecera 'P5' seguida del contenido crudo del archivo, asignando cada byte a un píxel en escala de grises (0x00 a 0xFF). El único cálculo adicional es elegir un ancho y alto adecuados. El resultado puede abrirse en cualquier visor de imágenes estándar.

El artículo muestra ejemplos concretos: un ejecutable de GORILLAS.BAS, un tarball con un archivo de texto y una imagen (donde se aprecia un patrón de repetición en el texto), el binario de ruff de 25 MB y una imagen ISO de 690 MB escalada. La generación del PGM tarda 0,2 segundos y el reescalado con ImageMagick 6 segundos, lo que pone un límite práctico en el tamaño del archivo procesable: con un archivo de 4 GB, ImageMagick agotó la memoria disponible. El autor propone como solución procesar el archivo por bloques, aunque no ha implementado esa herramienta.