Cómo crear descripciones detalladas en NFT Studio de Avalanche Wallet con Software Libre

SM Eduardo D'Attellis
9 min readFeb 11, 2021

Si queremos llevar nuestras obras digitales -o digitalizadas- al universo blockchain con Avalanche Wallet, al momento de crear un nuevo token no fungible (NFT) dentro de una colección con NFT Studio, nos topamos con el campo “Descripción”, ¿Qué podemos colocar ahí?, es el tema en el que trabajaremos en este tutorial y para lo cual utilizaremos herramientas de software libre. Si bien este tutorial está enfocado en obras de arte digital y de cryptoarte, puede servir de referencia para construir descripciones de otros NFTs. Para obtener una visión general del uso de NFT Studio y como crear NFTs en Avalanche Wallet pueden seguir este tutorial de Andrea Vargas.

¿Qué información podemos colocar en la descripción de un NFT creado con NFT Studio de Avalanche Wallet?

1.- Ficha técnica de la obra:

Al igual que una obra física podemos usar datos relevantes como el nombre la pieza, nombre del autor, medidas, relación de aspecto, técnicas implementadas, año de creación, nombre de la serie (si forma parte de una). Adicional podemos colocar el formato digital y/o extensión de archivo en el que está guardada la obra, software o conjunto de software con el que fue creada, direcciones electrónicas del autor y de la obra (entre otros sitios de interés), enlaces de información y/o descarga de aplicaciones para mejorar la experiencia de usuario como aplicaciones para realidad aumentada o realidad virtual y resaltar algunos metadatos clave.

Para indicar las medidas, podemos utilizar tanto referencias a un tamaño físico (metros, centímetros, milímetros, pies o pulgadas) como medidas digitales -que resultaría más apropiado al tratarse de un activo digital- las cuales podemos expresar en píxeles (ancho y alto), como en megapíxeles (o cociente resultante de dividir el producto del ancho por el alto en píxeles de una imagen entre 1000, MP = PX ancho * PX alto / 1000). Para relacionar medidas físicas con digitales podemos indicar la resolución, que es la cantidad de píxeles por la unidad de medida física al cuadrado, la más usada es dpi o ppi (píxeles o puntos por pulgada cuadrada), esta referencia es relevante si la obra está destinada a imprimirse en un sustrato físico.

La relación de aspecto es la proporción del ancho respecto al alto de una imagen o vídeo, las más comunes para formatos digitales son 1:1 para proporciones cuadradas (igual ancho y alto), 16:9, 16:10 y 17:9 para formatos de pantalla tipo “Widescreen” horizontales y 9:16, 10:16 y 9:17 para pantallas verticales.

Dentro de las medidas digitales hay estándares de uso común, tales como el formato 1080p o Full HD (1920 × 1080 píxeles equivalente a 2,07 megapíxeles y una relación de aspecto 16:9 en horizontal y 9:16 en vertical), 2160p o 4K (3840 × 2160 píxeles equivalente a 8,29 megapíxeles y una relación de aspecto 16:9 en horizontal y 9:16 en vertical), 4320p o 8K (7680 × 4320 píxeles equivalente a 33,17 megapíxeles y una relación de aspecto 16:9 en horizontal y 9:16 en vertical) y 8640p o 16K (15360 × 8640 píxeles equivalente a 132,71 megapíxeles y una relación de aspecto 16:9 en horizontal y 9:16 en vertical).

2.- HASH (cadena identificadora de caracteres alfanuméricos):

Un hash es una serie de caracteres obtenido a través de una función hash o colisión mediante el uso de un algoritmo criptográfico, esta suma dependiendo del tipo puede contener entre 32 y 128 caracteres alfanuméricos. Esta suma es un tipo de metadato que es es casi único o casi biunívoco al estado de un archivo, de forma que si el archivo es modificado, el resultado de la suma cambia, por ello su uso en el análisis de integridad de un archivo luego de una descarga y/o la detección de modificaciones del mismo. Hay que tomar en cuenta que a mayor extensión, mayor posibilidad de que el hash sea biunívoco, y que el cambiar el nombre del archivo no cambia el hash.

Para obtener el hash de un archivo con una distribución del Sistema Operativo GNU/Linux abrimos una consola o terminal y nos dirigimos al directorio donde está guardado el archivo del que queremos obtener el hash (con el comando cd rutadelarchivo), o movemos el archivo nuestra carpeta principal de usuario (podemos usar el comando ls para listar el contenido y así saber o confirmar si el archivo al que le aplicaremos la suma para obtener el hash está en el directorio donde nos encontramos).

Para obtener el hash elegimos el tipo de suma o checksum que vamos a realizar: MD5 (32 caracteres / 128 bits); SHA-1 (40 caracteres / 160 bits); SHA-224 (56 caracteres / 224 bits); SHA-256 (64 caracteres / 256 bits); SHA-384 (96 caracteres / 384 bits) y SHA-512 (128 caracteres / 512 bits).

Ya en la consola escribimos: tipodesuma nombredelarchivo.extensión y la consola arrojará el resultado correspondiente al checksum empleado. Por ejemplo: md5sum mifoto.jpg arrojó como resultado la suma md5 b0a5e2f5d89267c8a9f8f7909fe08571 de una imagen JPEG llamada mifoto.jpg. Para copiar la suma sombreamos con el ratón y usamos el atajo de teclado Ctrl+Shift+C, o hacemos clic derecho, y elegimos copiar por medio del ratón.

En la siguiente captura de pantalla puede apreciarse el listado de contenido del directorio y el resultado (hashs) de diferentes tipos de checksum aplicados a un mismo archivo:

Secuencias CLI para ir al directorio, ver su contenido y obtener hashs en Ubuntu 18.04

Adicional, para no tener que verificar la suma manualmente, los checksum también nos permiten verificar la integridad de un archivo, para ello primero debemos crear un archivo con la extensión del tipo de checksum, para que pueda ser verificado por medio de la consola, escribiendo por ejemplo: sha512sum mifoto.jpg > mifoto.jpg.sha512 (esto creará el archivo de texto “mifoto.jpg.sha512” con la suma), y para verificar este archivo usamos sha512sum -c mifoto.jpg.sha512 (el archivo de verificación y el archivo a verificar deben estar en el mismo directorio).

Secuencias CLI para crear un archivo de verificación y verificar el hash de un archivo en Ubuntu 18.04

Para el ejemplo hemos usado sha512sum, la sintáxis es la misma para cualquiera de los checksum, sólo varía el prefijo antes de “sum” (md5sum, sha1sum, sha224sum, sha256sum, sha384sum y sha512sum) y la extensión del archivo de verificación (md5, sha1, sha224, sha256, sha384 y sha512).

Las aplicaciones para obtener un hash en la interfaz de línea de comandos (CLI) vienen preinstalados en la mayoría de las distribuciones de GNU/Linux tales como Ubuntu o Trisquel, por lo que podemos utilizar un una distribución en modo Live USB, Live CD o Live DVD. Para obtener hashs más grandes (336 caracteres / 1600 bits) se puede instalar SHA-3. En Ubuntu se instala con apt o aptitude el paquete “libdigest-sha3-perl”, y las opciones se obtienen con “man sha3sum”.

3.- Metadatos:

Los metadatos son datos que describen otros datos, más allá de agregarlos a la descripción debe haber correspondencia entre estos y la información que coloquemos en NFT Studio. Entre los más simples de obtener están la fecha y hora de creación y modificación del archivo, así como el tamaño o peso y el tipo (MIME) del archivo (que se obtienen al clicar con clic derecho y luego clic izquierdo en propiedades). Otros metadatos son más complejos y se requieren de programas específicos para visualizarlos, agregar nuevos o editarlos.

Para visualizar, agregar y editar metadatos de imágenes podemos usar -entre otras- la herramienta ExifTool a través de la interfaz de línea de comandos (CLI) o podemos usar GIMP, un programa multiplataforma que es un potente editor de imágenes, y que entre sus funciones incluye la lectoescritura de metadatos.

Para visualizar o editar los metadatos de una imagen en GIMP, vamos al menú contextual clicamos en Imagen > Metadatos y elegimos entre “Editar metadatos” o “Ver los metadatos” según sea el caso.

Ruta de menú contextual para ver o editar metadatos de una imagen en GIMP
Visualización de datos Exif de una imagen en GIMP
Visualización de datos XMP de una imagen en GIMP

Dentro de los metadatos de imágenes con los que podemos trabajar en GIMP están el agregar el nombre o título de la imagen, el nombre del autor, descripción de la imagen, palabras clave, copyright (tipo, aviso y url), estos metadatos están en formato XMP (Extensible Metadata Platform o Plataforma Extensible de Metadatos) que es un tipo de descripción XML. También podemos colocar datos de posicionamiento global, atributos del tradicional IPTC (International Press Telecommunications Council) y metadatos DICOM (Imágenes y comunicaciones digitales en medicina). GIMP incluye la opción de exportar e importar archivos de metadatos, muy útil por ejemplo cuando estamos trabajando en una serie de imágenes que comparten la mayoría de los metadatos.

Ventana de edición de metadatos de una imagen en GIMP

Al momento de grabar los cambios, es importante verificar que en las opciones de guardado/exportación, estén marcados los checkbox “Guardar los datos Exif”, “Guardar los datos XMP” y “Guardar los datos IPTC”.

Ventana de opciones de exportación de una imagen JEPG en GIMP

Queda sobreentendido que la edición de metadatos presume un comportamiento ético, como el no usar esta práctica para realizar un plagio o incluir debidamente el nombre del autor original en la descripción de la imagen en el caso de realizar una obra derivada. Un ejemplo particular que requiere la edición de metadatos son las imágenes 360° equirectangulares creadas a través de software de diseño 3D (tales como Blender), las cuales no tienen la etiqueta Exif que agregan las cámaras fotográficas 360°, esta etiqueta es la permite reconocerlas como tal y distinguirlas de una imagen convencional en programas como el visor 360° de Facebook.

Otras aplicaciones libres que incluyen la edición de metadatos son InkScape para gráficos vectoriales, Audacity para archivos de audio y VLC para archivos de vídeo.

4.- Derechos de Autor y Licenciamiento:

Un elemento que podemos agregar a las descripciones de nuestros NFTs es el copyright -o en su defecto el copyleft-, a tales efectos hay que destacar que el Derecho de Autor -como derecho moral- en inalienable y que través de una venta o transferencia de una obra lo que se ceden son los derechos patrimoniales sobre la misma. Como valor agregado en el modelo de negocios asociado al mercadeo de NFTs pueden corresponder regalías al autor cada vez que se realice una reventa, estas regalías serán porcentuales al precio de venta, aunque esto dependerá del tipo de transacción y de la plataforma donde se realice. El porcentaje correspondiente sobre los derechos patrimoniales en la mayoría de las convenciones de derechos de autor es el 2%, aunque es común para los NFTs emplear una tasa del 10%.

Mas allá del “todos los derechos reservados” del copyright convencional y el “todos los derechos otorgados” del Dominio Público, existen familias de licencias como las Creative Commons, que permiten administrar y permutar los permisos sobre el uso de las obras y establecer condiciones para ello. Usar Creative Commons es tan sencillo como agregar a tu obra el aviso del copyright seguido del tipo y versión de la licencia Creative Commons elegida para la obra e indicar el enlace a la misma. El sitio web de Creative Commons tiene un asistente para seleccionar el tipo de licencia que además incluye un creador de metadatos para la web y de archivos XMP para imágenes, vídeo, audio, texto, entre otros.

Notas complementarias sobre formatos digitales para piezas de arte digital y otras obras creativas:

Al igual que la edición de los metadatos, este punto hay que tenerlo en cuenta antes de crear el token de la obra. La opción de usar formatos de estándares abiertos garantiza una mayor portabilidad y accesibilidad (actual y/o futura) a la obra, así como respetar las libertades informáticas de los usuarios y coleccionistas, al no tener que adquirir o pagar la licencia de un determinado software para acceder y hacer uso del NFT y que adicionalmente -dicho software- pueda comprometer su informática personal al ser instalado.

Salvo que la intención de la obra tenga un carácter interactivo o de creación colectiva, es aconsejable también evitar el uso de formatos de archivo editables, o que tengan dependencias de recursos de un sistema específico, tales como tipografías, codecs, librerías de software y aplicaciones específicas que no tengan alternativas libres multiplataforma.

Algunos formatos estandarizados y formatos abiertos para imágenes son JPEG para imágenes estáticas, PNG y WebP para imágenes estáticas con transparencia, SVG para gráficos vectoriales (estáticos y animados) y WebP para gráficos animados.

Otros formatos abiertos son WebM y Mkv para video, FLAC para audio, ePUB para libros electrónicos, PDF para documentos, glTF y OBJ para gráficos 3D y HTML para archivos web.

Aunque el formato GIF es muy utilizado en la creación de NFTs y es accesible para muchas aplicaciones (como los navegadores de internet) no es un formato estandarizado, ni abierto, y dada su calidad de imagen está propuesto ser remplazado por el formato estandarizado y abierto WebP, muy usado actualmente para la creación de stickers en aplicaciones de mensajería.

--

--

SM Eduardo D'Attellis

Artista Plástico & Integrador de Soluciones. Activista por el Software Libre, la Bibliodiversidad, la Cultura Digital y el Desarrollo Sostenible.