Es mejor que no uses extensiones conocidas, aunque el formato sea el mismo. Son con esa ya hay mucha gente que ni se molesta en averiguar qué es lo que hay dentro.
Un ejemplo que he visto en una aplicación así: los archivos extra (como tus MOD) subían con extensión .zipx , y realmente era un zip comprimido con una contraseña, pero, además, estaba invertido (el primer byte del archivo era el último, el segundo, el penúltimo, etc.).
Hay más trucos, como hacerle un XOR a todos los bytes, sumar un valor fijo a cada grupo de bytes, etc., etc. Hay muchos métodos para esconder la información.
Lo malo es... si hacen ingeniería inversa de tu programa y averiguan el procedimiento que usas.
En cuanto a la forma de hacerlo, pues puedes usar el mismo lenguaje en que desarrollas los MOD, pero depende de si puedes integrar el procedimiento de comprensión.
Ejemplo: tuvimos un caso en que era necesario enviar informes a los clientes. Ese informa iba comprimido, ya que era texto y tenía que ser muy rápido. Pero en el lado del cliente no podíamos instalar la biblioteca de descomprensión. La solución fue comprimir los archivos con un sencillo método RLE personalizado para comprimir palabras, no bytes. Y el procedimiento para descomprimir en el lado del cliente fue igual de simple.
Un ejemplo que he visto en una aplicación así: los archivos extra (como tus MOD) subían con extensión .zipx , y realmente era un zip comprimido con una contraseña, pero, además, estaba invertido (el primer byte del archivo era el último, el segundo, el penúltimo, etc.).
Hay más trucos, como hacerle un XOR a todos los bytes, sumar un valor fijo a cada grupo de bytes, etc., etc. Hay muchos métodos para esconder la información.
Lo malo es... si hacen ingeniería inversa de tu programa y averiguan el procedimiento que usas.
En cuanto a la forma de hacerlo, pues puedes usar el mismo lenguaje en que desarrollas los MOD, pero depende de si puedes integrar el procedimiento de comprensión.
Ejemplo: tuvimos un caso en que era necesario enviar informes a los clientes. Ese informa iba comprimido, ya que era texto y tenía que ser muy rápido. Pero en el lado del cliente no podíamos instalar la biblioteca de descomprensión. La solución fue comprimir los archivos con un sencillo método RLE personalizado para comprimir palabras, no bytes. Y el procedimiento para descomprimir en el lado del cliente fue igual de simple.
Si pero hay un problema los mods pueden contener varios archivos y con distintas extension , entonces seria complicado protegerlos de esa manera. Hasta el momento creo que la mejor forma es contenerlos en una carpeta comprimida o ya sea una extension nueva como comente. .
El punto es que no se como programarlo, es decir que lenguaje usar para lograrlo. Lei sobre archivos batch y eso pero no se si seria el camino correcto, tu que me recomendarias?.