2010-08-25 12 views
13

Estoy diseñando un formato de archivo binario desde cero, y me gustaría incluir algunos bytes mágicos al principio para que pueda identificarse fácilmente. ¿Cómo hago para elegir qué bytes? No conozco ningún registro central de números mágicos, ¿es solo cuestión de elegir algo bastante aleatorio que no haya sido identificado por, digamos, el comando de archivo en una caja UNIX cercana?¿Cómo elijo un buen número mágico para mi formato de archivo?

+0

Eche un vistazo a esta pregunta, menciona una base de datos de números mágicos: http://stackoverflow.com/questions/55869/determine-file-type-of-an-image –

+0

TABLA DE FIRMAS DEL ARCHIVO: http: // www.garykessler.net/library/file_sigs.html –

+0

Fechado (como en "RFC borrador vencido"), pero interesante: https://tools.ietf.org/html/draft-main-magic-00 –

Respuesta

18

Aléjate de los números mágicos súper cortos. El hecho de que esté diseñando un formato binario no significa que no pueda usar una cadena de texto para el identificador. Sígalo por un char de EOF, y como una ventaja adicional las personas que cat o tipo su archivo binario no obtendrá un terminal destrozado.

+7

El carácter EOF es bueno Consejo. –

+0

No hay ningún personaje que haga que 'cat' deje de leer prematuramente (que puedo encontrar), por lo que alguien que' cat's tenga un formato binario va a tener un terminal destrozado haga lo que haga. Sin embargo, el carácter "sustituto" ("1A") es el que desea para "tipo". –

Cuestiones relacionadas