BFGR WadTools v036

BFGR WadTools v0.39a

Me base en la doc de wiibrew y en las segher tools, concretamente en zeventig. Lo libero bajo licencia GPLv2 (al igual que las segher tools), en parte por obligacion y para que todo el mundo pueda usar parte del codigo en sus programas, o lo que sea.

Aplicaciones:
wadunpacker: basicamente es el zeventig de segher pero modificado para que, ademas de desempaquetar un WAD, haga un dump del Ticket, TMD y cadena de certificados.

wadpacker: se indica por argumentos el ticket, tmd, cert y nombre de fichero destino, con opcion de añadir varias opciones de firmado o de cambio de ID de titulo (ver ayuda ejecutando el programa sin parametros).
A su vez actualiza la TMD con los hashes SHA y los tamaños de los XXXXXXXX.app. Si estos datos no son originales, se debe incluir el parametro "-sign" para que haga la firma trucha.

wadsigncheck: Checkea la firma de un .wad de 2 formas: normal y trucha.

imet_signer: Permite modificar nombres de canales de forma sencilla.
USO: ./imet_signer 00000000.app [ archivo_texto ]
Si solo se especifica el .app, se recalcula el hash md5 y se guarda en el mismo.
Si se especifica un fichero de texto, pone en el .app las cadenas de texto contenidas en el archivo (usar solo UTF-8; se ignora un byte).
El archivo de texto deberá contener 8 lineas: banner_info, autor, y 6 lineas con los nombres de canal en los 6 idiomas.

finder: Script para bash que, dada una carpeta y un hash SHA1, busca un fichero en las subcarpetas que tenga el mismo hash dado y muestra la ruta completa, si lo encuentra. Solo devuelve la 1ª coincidencia. (Util para VC).
Uso: ./finder carpeta hash

Compilacion:
tar xvjf bfgr_wadtools_v039a.tar.bz2
cd bfgr_wadtools_v039a
make

(Da bastantes warnings, pero son simples faltas de casts)

Prerequisitos:
Paquetes "build-essential" y "libssl-dev".

Observaciones del wadpacker:
- Cuando no se encuentra un XXXXXXXX.app descrito en la TMD, se para el programa, se informa de ello con los datos de tamaño del archivo que falta (en decimal (bytes)) y el hash SHA que deberia tener segun la TMD proporcionada.
- Para modificar un WAD existente, simplemente desempaquetarlo con
wadunpacker, modificar los archivos pertinentes y empaquetar con la opcion "-sign".

PD: NO me hago responsable de posibles daños de cualquier tipo.

PD2: Cualquier modificacion/distribucion del programa sera siempre bienvenida y no tiene que contar con mi consentimiento. Se debera publicar el codigo fuente de cuaquier programa que incluya parte o la totalidad del mismo.

Nuevas versiones:
Changelog v0.37:
- Arreglada la firma para que la acepte el instaldor de WADs.
- Arreglado el wadchecksign, que ahora comprueba correctamente las firmas en modo normal y en modo trucha.

Changelog v0.37b:
- Añadido un script (bash) de busqueda de fichero segun un hash SHA1 dado. Uso: ./finder carpeta hash
- Renombrado el comprobador de firmas.
(Carece de interes su recompilacion en windows)

Changelog v0.38:
- Movidas funciones comunes a la libreria 'tools'.
- Añadido un nuevo programa (imet_signer) para modificar los nombres de los canales.

Changelog v0.38c:
- Ahora se muestra la ayuda al ejecutar los programas sin argumentos. (Help fix)
- Arreglado un bug importante en el wadpacker. Ahora se alinean los ficheros a 64bytes de forma correcta. (Boundary fix)

Changelog v0.39a:
Wadpacker:
- Se han añadido mas opciones para firmar ticket o tmd de forma independiente. (-T -M)
- Se ha añadido la opcion de cambiar la ID de titulo (-i ABCD)
- Se ha añadido la opcion de desactivar la watermark o mas conocido como el "guiño". Cuando se activa esta opcion (-w) el ticket (si ha sido marcado para firmar) se firma exactamente igual que el blaze wadpacker (compatibles con la tienda).
Imet_signer:
- Ahora el fichero debera incluir 8 lineas: banner_info, autor y 6 lineas con el nombre del canal en los 6 idiomas.

Versiones para Windows:
Version v0.37: http://www.gigasize.com/get.php?d=k6pgv70cyhd (por noalone)
Version v0.38: http://rapidshare.com/files/110495991/bfgr_wadtools_v038_bin.zip.html (por suloku)
Version v0.38c: http://www.gigasize.com/get.php?d=f225nyz2hmb (por noalone)
Version v0.39a: http://www.gigasize.com/get.php?d=fdtw40wdlxf (por noalone)
Version v0.39a: http://rapidshare.com/files/111118696/bfgr_wadtools_v039a_win32.rar.html (por suloku, lee las keys en directorio del ejecutable)
Saludos [oki]

Adjuntos

vaya cuantos creadores de wads y no los publicaban, enhorabuena se agradece, sobre todo el codigo gracias.
alguien lo podria compilar con cigwin y subirlo a algun mirror pa ejecutarlo en windows?
Se agredece pero estas son para Linux nada mas vdd? XD
torito.. al parecer el unico problema que tiene tu packer es el mismo que el mio.. (la parte del trucheo...) eso lo puedes solucionar reescribiendo unos bytes.. (no se si esto se deba al wadinstaler de waninoko.. o sea TOTALMENTE necesario para la trucheada) para ver los offsets.. puedes ver el codigo fuente de mi prog.. ver el ticket del snes.. o ver las imagenes posteadas en el hilo de mi alpicacion.. y q bueno q hayas agregado las funciones trucha.. al tools.c X-D
me compila mal, da error al ejecutar
NEO117 escribió:Se agredece pero estas son para Linux nada mas vdd? XD


En principio es un codigo fuente para compilarse bajo linux... con la tools de segher...

Pero si se compila bajo cigwin en windows obtendremos un ejecutable exe para windows compatible =D


Alguien lo compila con cigwin please?
NEO117 escribió:Se agredece pero estas son para Linux nada mas vdd? XD

Se puede compilar para Windows, Mac, Solaris, etc. No lo hago por vagancia, que linux para programar es lo mas comodo del mundo (gcc, kate y apt para librerias y listo xD).

kikekakik escribió:torito.. al parecer el unico problema que tiene tu
packer es el mismo que el mio.. (la parte del trucheo...) eso lo puedes
solucionar reescribiendo unos bytes.. (no se si esto se deba al
wadinstaler de waninoko.. o sea TOTALMENTE necesario para la trucheada)
para ver los offsets.. puedes ver el codigo fuente de mi prog.. ver el
ticket del snes.. o ver las imagenes posteadas en el hilo de mi
alpicacion.. y q bueno q hayas agregado las funciones trucha.. al
tools.c X-D


Posiblemente haya algun bug, mas que nada en la firma de la TMD, que modifico los ultimos bytes del campo reserved y no se si afectaria en algo. La firma de ticket deberia estar bien, ya que modifico la clave de titulo, asi que simplemente cambia el cifrado de los datos (hasta donde llegan mis conocimientos, no deberia importar esta clave, que en teoria es unica para cada titulo).

A ver si mañana tengo un moment y lo miro. Gracias por la notificacion.

Saludos. [oki]
Sólo se me compila bien el wadpacker con cygwin, pero el wadunpacker no, ni el wadchecksign con cygwin.
Alguien podría subirlos ya compilados??
broly7 escribió:Sólo se me compila bien el wadpacker con cygwin, pero el wadunpacker no, ni el wadchecksign con cygwin.
Alguien podría subirlos ya compilados??


Ya los tengo compilados,los quieres?

los subo para quien se pelee con los make. 1 min!!

WadTools compilado Cygwin
noalone escribió:
Ya los tengo compilados,los quieres?

los subo para quien se pelee con los make. 1 min!!

WadTolls compilado Cygwin


Gracias.
El wadchecksign pide la root-key, de donde se puede sacar.
noalone escribió:
Usa la busqueda!!! esta en un post de la wiki, en varios post, en un post de arangel...en mil sitios

saludos

PD.-es la misma que la del wiiscrubber


La root-key es una clave publica RSA de 2048 bits, no la conocida common-key de AES 128 bits. La coña es que no la tengo e hice el programa sin tenerla, simplemente confío en las tools de segher xD
Ambas claves (root-key y common-key) deben estar en la carpeta .wii del home del usuario. Si se recompila para windows, estria bien modificar esas rutas.

noalone, se agradece el aporte [oki]

Saludos.
torito21 escribió:
La root-key es una clave publica RSA de 2048 bits, no la conocida common-key de AES 128 bits. La coña es que no la tengo e hice el programa sin tenerla, simplemente confío en las tools de segher xD
Ambas claves (root-key y common-key) deben estar en la carpeta .wii del home del usuario. Si se recompila para windows, estria bien modificar esas rutas.

noalone, se agradece el aporte [oki]

Saludos.


no lo sabia, mis disculpas.
torito21 escribió:
La root-key es una clave publica RSA de 2048 bits, no la conocida common-key de AES 128 bits. La coña es que no la tengo e hice el programa sin tenerla, simplemente confío en las tools de segher xD


Es el mismo fallo que me daba el zeventig de segher, y creo que poca gente dispone de esa clave.
thanks for more wad tools :) I have common-key.bin in bfgr_wadtools_v036 folder but i still get the error 'cannot open common-key: no such file or folder' when I use wadunpacker

any help for this? thanks
stev418 escribió:thanks for more wad tools :) I have common-key.bin in bfgr_wadtools_v036 folder but i still get the error 'cannot open common-key: no such file or folder' when I use wadunpacker

any help for this? thanks

You need to put the common key in a folder named .wii on your linux user home, ie: /home/user/.wii/common-key
I dont know how the cygwin windows compilation was done, probably this paths need to be reset.

EDIT: Acabo de hacer un canal homebrew con el gecko region free 1.3. Lo he hecho con estas wadtools, asi que, segun me ha dicho kike, es probable que el instalador de waninkoko falle al instalar el ticket (primer paso de la instalacion). De ser asi, modificaria la firma trucha para que tragase.
Probadlo y me contais, que no tengo mi wii a mano.

Saludos

PD: http://rapidshare.com/files/110267103/geckorf13_channel.wad.html (Eliminado)
http://rapidshare.com/files/1102918...annel2.wad.html (Nuevo)
torito21 escribió:You need to put the common key in a folder named .wii on your linux user home, ie: /home/user/.wii/common-key
I dont know how the cygwin windows compilation was done, probably this paths need to be reset.

EDIT: Acabo de hacer un canal homebrew con el gecko region free 1.3. Lo he hecho con estas wadtools, asi que, segun me ha dicho kike, es probable que el instalador de waninkoko falle al instalar el ticket (primer paso de la instalacion). De ser asi, modificaria la firma trucha para que tragase.
Probadlo y me contais, que no tengo mi wii a mano.

Saludos

PD: http://rapidshare.com/files/110267103/geckorf13_channel.wad.html


Falla al instalar el ticket no solo en tu canal si no tambien en varios que he hecho yo.
feler escribió:
Falla al instalar el ticket no solo en tu canal si no tambien en varios que he hecho yo.


Ok, pues fixeando que es gerundio...gracias por el feedback. [oki]

EDIT: Volvi a subir el canal de prueba Gecko Region Free 1.3 con el nuevo fix. Como antes, que alguien lo pruebe que no tengo mi wii a mano.
Thx
http://rapidshare.com/files/110291888/geckorf13_channel2.wad.html
He compilado el dol2elf con tus tools, la 0.37 pero no funciona bien el dol2elf :S

¿A ti te funciona?
esa tool es de segher creo.

en el devkitpro esta el dol2elf (o al reves),que si funciona bien.

PD.- no se porque dices que no funciona bien.
Sí que funciona, no habia probado el ELF, pero es que el de segher le mete un monton de padding y de 2 megas y pico que ocupa el elf, conviertiendo el dol ocupa 5 megas y pico.

Podrias mirarme si en devkitpro hay un elf2dol? (no lo tengo instalado). Aunque será de gamecube o de wii? :S
Alguien podria subir la v37 compilada con cygwin?
te mando por mp un dooltol, que hace o dos procesos, elf2dol y dol2elf

broly7 en 5 min lo tienes arriba
noalone escribió:te mando por mp un dooltol, que hace o dos procesos, elf2dol y dol2elf

broly7 en 5 min lo tienes arriba


Muchas gracias, ahora mismo lo pruebo.

De donde lo sacaste? Llevo un par de dias buscando (no podia compilar el dol2elf hasta hoy) y nada.

salu2
noalone escribió:del devkitppc

V37 con cygwin


Muchisimas gracias por el trabajo de recompilacion para windows. [plas]

Voy a ver si hago un script de busqueda de archivos por hash (ya sabeis para que :D ).

EDIT: hecho. Ire poniendo nuevas cosas en el post principal para ordenarlo un poco.

Saludos.
Torito, el canal geckoregionfree, funciona?
Nadie me puede explicar por mp como conseguir el common-key.bin?

Gracias, es que no tengo claro como conseguirlo.
broly7 escribió:Torito, el canal geckoregionfree, funciona?


Esa es una buena pregunta, todavia no lo probe. Lo que si se es que el que hice con la version 0.36 no iba, ya que firmaba el ticket de una forma que no le gustaba al instalador de wads. El que hay puesto lo hice con la version 0.37 que deberia arreglar esto, segun lo que me dijo Kike; la firma trucha esta bien hecha, el tema es que el instalador de wads requiere que esta firma se haga de una forma concreta; espero haber acertado :-p Pero no lo he probado, ya ke no tengo wii operativa cerca.
A ver si alguien lo prueba e informa.

Saludos

EDIT: He conseguido que alguien lo pruebe: se instala/desinstala bien, pero luego no aparece en el menu de wii :S
No se si lo he hecho mal o que firmo mal la TMD: Me inclino por lo primero.

EDIT2: Ya se donde esta el fallo, era cosa mia. Parece que empequeta correctamente. Todo depende de lo que le guste a la wii xDD
Ya he creado el canal geckoregionfree! me lo ha instalado en la wii...pero al arrancarlo se queda la pantalla en negro y no chuta...
Sera por el dol?
broly7 escribió:Ya he creado el canal geckoregionfree! me lo ha instalado en la wii...pero al arrancarlo se queda la pantalla en negro y no chuta...
Sera por el dol?


Pues puede ser que sea cosa del dol (porque tambien es extraño que nadie lo haya hecho hasta hoy...). Yo el mio lo hice desempaquetando un wad homebrew, substituyendo el 00000001.app por el dol del GRF, cambie el title ID en la TMD y en el ticket, empaquete con firma y listo.
A ver si consigo una wii en condiciones y lo pruebo..

EDIT: Probado: FAIL , habia modificado cosas que no debia...

Saludos.
torito21 escribió:
Pues puede ser que sea cosa del dol (porque tambien es extraño que nadie lo haya hecho hasta hoy...). Yo el mio lo hice desempaquetando un wad homebrew, substituyendo el 00000001.app por el dol del GRF, cambie el title ID en la TMD y en el ticket, empaquete con firma y listo.
A ver si consigo una wii en condiciones y lo pruebo..

EDIT: Probado: FAIL , habia modificado cosas que no debia...

Saludos.


Yo acabo de crear un canal homebrew launcher, con titulo cambiado, y partiendo del elf.

Si no se habia creado antes supongo que era por carencia del archivo dol.

Luego pruebo a ver si a mi me tira.

EDIT: no, a mi tampoco me ha rulado, pantallazo negro, lástima.
suloku escribió:
Yo acabo de crear un canal homebrew launcher, con titulo cambiado, y partiendo del elf.

Si no se habia creado antes supongo que era por carencia del archivo dol.

Luego pruebo a ver si a mi me tira.

EDIT: no, a mi tampoco me ha rulado, pantallazo negro, lástima.


Pues parece que habrá que esperar a una nueva version, porque parece que tiene mucha dependencia de un loader...

Por cierto, nueva version BFGR WadTools v0.38 con un nuevo programa para modificar nombres de canales.

Saludos.
mañana a la mañana loa compilo ;)
Buenisimo el programa nuevo!

Con esto y un bizcocho...

A ver si saca marcan su tool para cambiar el banner de los canales ^^
Alguien puede subir el Imet_signer compilado con cygwin?
Muchiiisimas gracias

EDITO: Torito, tu wadunpacker y tu imet_signer no se pueden compilar bien, funcionan mal, revisalos...
broly7 escribió:Muchiiisimas gracias

EDITO: Torito, tu wadunpacker y tu imet_signer no se pueden compilar bien, funcionan mal, revisalos...


si que se pueden compilar bien, de hecho lo acabo de compilar.

¿como compilas?
broly7 escribió:Muchiiisimas gracias

EDITO: Torito, tu wadunpacker y tu imet_signer no se pueden compilar bien, funcionan mal, revisalos...


A mi el imet_signer me va de fabula, ya he instalado canales y todo.

He usado el mismo del rar que he subido. Ahora pruebo el unpacker.

EDIT: donde va la common key? Con qué nombre? No para de decirme que no la encuentra xD
en el directorio home de tu linux o cygwin
noalone escribió:en el directorio home de tu linux o cygwin


OK, gracias, voy a ver si encuentro en el codigo como poner que busque en la ruta del exe que es mas comodo.

Si no lo logro te importara añadir la ruta de ejecucion en la proxima version / indicar el codigo a modificar?

EDIT: ya lo he conseguido, quiza los binarios de windows tendrian que pillar la key del directorio del programa no? Subo los que tengo compilados que las pilland de ahi?

A todo esto, la root-key no hace falta para nada no?
Nunca supe de donde salieron todas estas keys ni como se obtienen, no me interese nunca por truchear juegos :p

edit2: vale, la root-key se usa para el wadsigncheck. ¿Como puedo obtener esta clave?

(y ya de paso como se obtiene la common, me refiero a sacarla de la wii)
suloku escribió:Subo los que tengo compilados que las pilland de ahi?

edit2: vale, la root-key se usa para el wadsigncheck. ¿Como puedo obtener esta clave?

(y ya de paso como se obtiene la common, me refiero a sacarla de la wii)

Puedes subir la compilacion que pilla las claves del dir actual, que siempre sera mas facil para los usuarios de windows. Gracias por el curre.
Respecto a la root-key, solo hace falta para comprobar las firmas con el wadsigncheck y, segun tengo entendido, esta clave permanece en el ambito privado.

Saludos.
en realidad me dijo marcan que se podia pedir al ssl de nintendo ya que es publica.
Alguien me puede explicar porque me pasa lo de la imagen?? No me funcionan.
http://rapidshare.com/files/110522930/bfgr_wadtools_v038_win32.rar.html

Cambios:
+ common-key y root-key renombrados a common-key.bin y root-key.bin respectivamente.
+ coje common-key.bin y root-key.bin del directiorio del ejecutable.

Incluye codigo fuente, pero solo se ha editado tools.c

Simplemente son cambios para facilitar la vida a los que usamos windows.

Alguien me puede explicar porque me pasa lo de la imagen?? No me funcionan.


¿Qué imagen?

noalone escribió:en realidad me dijo marcan que se podia pedir al ssl de nintendo ya que es publica.


Pues estaria bien saberlo, me gustaria comprobar como chekea los juegos creados por nosotros, un canal de mi nand y uno de "esos" para ver si falla algo y si esta bien echo el wad.

Realmente sin esa clave el programa de chekear no sirve de mucho, pues al no encontrar la clave peta [+risas]
Esta sorry. No me funcionaaan...!!
link
69 respuestas
1, 2