Skip to content

Qué garantiza la firma ​

Un .oim firmado lleva una firma ECDSA emitida por OIM. Esta página dice exactamente qué cubre esa firma y qué no, porque una garantía que promete de más vale menos que una pequeña que se cumple siempre.

Lo que la firma sí garantiza ​

Los datos del documento no se han alterado desde que OIM los empaquetó. La firma cubre los metadatos del archivo: los slots, su contenido por idioma, la posición, los estilos, las animaciones y la capa dinámica entera.

Si alguien cambia un solo carácter dentro de esos datos, la verificación falla. El reproductor lo detecta antes de pintar nada:

  • el estado de la firma pasa a invalid_signature;
  • la capa dinámica no se ejecuta: ningún slot, ninguna animación, ninguna interacción;
  • queda la imagen base, visible como una imagen normal.

Un archivo manipulado no se «degrada»: deja de ser un documento OIM y pasa a ser un PNG.

El contenido pasó por el saneado de OIM antes de firmarse. Desde el 22 de agosto de 2026, el backend sanea el contenido antes de firmarlo, no después. Se eliminan los vectores activos —manejadores de eventos on*, <script>, <iframe>, <object>, <embed> y los esquemas de URL que no sean http, https, data:image/ o una referencia interna—. El reproductor vuelve a sanear al pintar: son dos barreras, no una sustituyendo a la otra.

Los metadatos de la imagen base no viajan. Al empaquetar se descartan los chunks de texto del PNG de entrada y el EXIF de un JPEG. Un .oim no arrastra comentarios, datos de cámara ni geolocalización de la imagen original.

Lo que la firma no garantiza ​

No se inspeccionan los píxeles de la imagen base. Si alguien esconde algo dentro de ellos —esteganografía—, viajará con el archivo y la firma lo cubrirá como parte del documento.

Esto es una consecuencia del formato, no un descuido. Un .oim guarda su imagen sin pérdida, que es justo lo que se espera de un formato de diseño: los bordes quedan limpios, los degradados no se ensucian y una exportación es idéntica a la siguiente. Un mensaje escondido en los bits menos significativos sobrevive a ese guardado exactamente por la misma razón que sobrevive el trabajo del autor.

La alternativa sería reencodear con pérdida cada imagen que entra. Destruiría la carga oculta, y con ella la calidad de todas las imágenes, incluidas las legítimas. Preferimos no degradar el producto de todos para cerrar una puerta que además se puede rodear.

Detectar esteganografía LSB de forma fiable no es posible, así que tampoco prometemos detectarla.

La firma no dice quién hizo el archivo. La autoría no se guarda dentro del documento: es un dato personal y quedaría sellado en un archivo que su autor ya no puede borrar. Vive en el registro, que sí se puede rectificar. La firma dice «esto salió de OIM y no ha cambiado», no «esto lo hizo tal persona».

La firma no dice que el contenido sea correcto, veraz ni apropiado. Es una garantía de integridad y procedencia, no un juicio sobre lo que el documento dice.

En una frase ​

La firma garantiza que los datos del documento no se han alterado desde que OIM los empaquetó, y que pasaron por nuestro saneado. No inspecciona la imagen base: si alguien esconde algo en sus píxeles, viajará con el archivo.

Si integras el formato ​

Si escribes tu propio lector de .oim, verifica la firma antes de usar nada del documento, y sanea el contenido antes de insertarlo en un documento vivo. El saneado del backend reduce mucho la superficie, pero la última barrera es siempre la de quien pinta.