Tutorial para descifrar eboot.bin.

Esta pequeña guia, esta hecha por Veritas en PSX-scene y es la manera de como se ha hecho funcionar el Hot pursuit, gt5 etc. Esta en ingles y paso de traducirla mal, si alguien la quiere traducir bien que lo haga.

I've actually written this a few times and promptly lost it due to browser instability. Oops.


Anyway, this guide requires you to have some knowledge of how the SELF and ELF file formats are laid out. I don't have a quick tool to do this for me, but it takes maybe 5 minutes of my time to do it by hand.
Open EBOOT.BIN in a hex editor of your preference.
In EBOOT.BIN, look at the SELF control info, if you see anything resembling the game titleid, it's an NPDRM SELF and this guide won't work, give up.
Use readself on EBOOT.BIN to get information about the encrypted metadata sections.
unself EBOOT.BIN eboot.elf
Open eboot.elf in a hex editor of your preference.
In eboot.elf, go to every encrypted metadata section (now decrypted), copy its data, and replace the encrypted data in EBOOT.BIN.
In EBOOT.BIN, change SELF header to indicate it's FSELF.
In EBOOT.BIN, change SELF section headers that are marked as encrypted to say they are not encrypted.
If the game is a newer SDK version (like GT5, which is 3.50), in EBOOT.BIN, find the .sys_proc_param segment and change the SDK version to something earlier, such as 3.41. This will probably cause crashes in games that actually use newer SDK features that are not available in earlier SDK versions.
Save EBOOT.BIN
Cross fingers, run game, hope it works.





YO SOY HERMESIANO.
algun tuto mejor que este ?
quiero desencriptar el eboot de two world 2
sanjolu escribió:algun tuto mejor que este ?
quiero desencriptar el eboot de two world 2


No es necesario, es IMPRESCINDIBLE ! [sonrisa]
Qué herramientas hay que usar?

Yo tengo aquí el eboot del GT5 EUR y el SDK de Sony pero no me aclaro de qué hacer ni qué buscar

Si alguien que sepa me ayuda puedo ir probando a ver si funciona
se hace con el notepad ++
uxio1973 escribió:se hace con el notepad ++

Claro que si campeón
De todos mozos, esta guía requiere tener ciertos conocimientos sobre cómo se estructuran los formatos SELF y ELF. No tengo ninguna herramienta para hacer esto, pero tomará quizás 5 minutos de mi tiempo hacerlo a mano.
Abrir el EBOOT.BIN en un editor hexadecimal (el que prefieras).
En el EBOOT.BIN, mira en "control info" del SELF, si ves alguna cosa parecida a "titleid", esto es un NPDRM SELF i esta guía no te ayudara, olvidado.
Usa el readself en el EBOOT.BIN para conseguir información sobre las secciones de metadatos encriptados (encrypted metadata sections)
unself EBOOT.BIN eboot.elf.
Abrir eboot.elf en el editor hexadecimal (el que prefieras).
en eboot.elf, ve y copia todo lo referente a las secciones de metadatos encriptados (encrypted metadata sections) que ahora están desencriptados, y subtituyelos por los encriptados en el EBOOT.BIN.
En el EBOOT.BIN, cambia la cabecera del SELF par aindicar que es un FSELF.
En el EBOOT.BIN, cambia la sección de cabeceras SELF que están marcadas como encriptadas para indicar que no lo están.
Si el juego usa la nueva versión del SDK (cómo GT5, la 3.50), en el EBOOT.BIN, busca y encuentra el .sys_proc_param y cambia la versión del SDK por algo anterior, cómo es la 3.41. Esto puede crear posibles cuelgues si se usan las nuevas funcionalidad del SDK que no están disponibles en versiones anteriores.
Salva el EBOOT.BIN
Cruza los dedos, arranca el juego y espera que funcione


Para los que el google les de cosas raras... al no realizar el tuto algunas cosas las he dejado tal cual (o bien indico su nombre en ingles.

Seguramente no tardaran en sacar algo que lo haga de forma automatizada, no seria muy dificil...

Saludos.
se podra hacer algo parecido .. editar los eboot.bin para que funcionen los juegos que necesitan br en el lector

osea, editar las llamadas al lector por el ps3game

??


y hacer que funcione bien el ac bh
Traducción subjetiva a mi manera... xDD
He escrito esto varias veces pero se ha perdido por un fallo en mi navegador. Ups.

Igualmente, esta guia requiere que tengas algunos conocimientos de como se distribuyen los archivos en formato SELF y ELF. No tengo ninguna herramienta para hacerlo, pero solo se necesitan 5 minutos para hacerlo a mano.
Abre el EBOOT.BIN con un editor hexadecimal.
En EBOOT.BIN, busca la información de control del SELF. Si ves algo al titleid del juego, entonces es un SELF NPDRM y esta guía no te servirá, así que olvídalo.
Utiliza readself en EBOOT.BIN para obtener la información sobre las secciones de los datos encriptados.
Extrae el eboot.elf del EBOOT.BIN.
Abre el eboot.elf con tu editor hexadecimal.
En el eboot.elf, ve a cada sección encriptada de metadatos (ahora desencriptados), copia esos datos y sustitúyelos por los datos encriptados en el EBOOT.BIN.
En el EBOOT.BIN, cambia la cabecera del SELF para indicar que es FSELF.
En el EBOOT.BIN, cambia las cabeceras de sección SELF que están marcadas como encriptadas para que digan que no lo están.
Si el juego utiliza una versión de SDK nueva (como el GT5 que utiliza la 3.50), en el EBOOT.BIN encuentra el segmento .sys_proc_param y cambia la versión del SDK por algo más antiguo, como el 3.41. Esto, seguramente, hará que los juegos que utilicen características de la nueva SDK que no están disponibles en las anteriores, fallen durante su ejecución.
Guarda el EBOOT.BIN.
Cruza los dedos, inicia el juego y reza para que funcione.
tambien serviria supongo para los juegos como Resident Evil Gold Edition que hay que instalar el parche y luego cambiar el eboot.bin?
aqui teneis un tuto pero esta incompleta,teneis que tener linux para hacerlo:http://justalonelyblog.wordpress.com/2011/01/03/tutorial-como-desencriptar-eboots/
uxio1973 escribió:se hace con el notepad ++


El Notepad++ no es un editor hexadecimal que yo sepa, pero podéis cogeros el HxD mismamente, que es gratuito y está en español ;) .

Personalmente creo que es mejor no perder el culo con el descifrado de eboots manual y esperarse a que salga alguna herramientas que lo haga automático (o parcialmente automático), porque además, tal y como dicen en el primer post, hay que tener un cierto conocimiento de la estructura de un ELF (o eso he entendido).

Salu2
Acabo de probar el Prince of Persia Trilogy con ese tuto y al desencriptar el EBOOT.bin da error y buscando con un editor hexadecimal "control info", o alguna cosa parecida a "titleid", y no encuentra nada ¿se refiere al titulo del juego? porque si no, no entiendo porque da error.
Ariath escribió:
uxio1973 escribió:se hace con el notepad ++


El Notepad++ no es un editor hexadecimal que yo sepa, pero podéis cogeros el HxD mismamente, que es gratuito y está en español ;) .

Personalmente creo que es mejor no perder el culo con el descifrado de eboots manual y esperarse a que salga alguna herramientas que lo haga automático (o parcialmente automático), porque además, tal y como dicen en el primer post, hay que tener un cierto conocimiento de la estructura de un ELF (o eso he entendido).

Salu2

Si se puede editar un archivo hex con notepad ++, y es muy recomendable, ya que puedes buscar algo concreto, con su buscador.Es un editor de texto multilenguaje.
Como dice Veritas, hay que tener algun conocimiento del tema, pero bueno lo mas malo que te puede pasar es que te de un pantallazo negro.De todas modos ese tutorial hecho en ese blog esta genial, creo que deberiamos empezar por ahi.Creo que deberiamos intentar modificar un eboot.bin sencillo. yo cre que two worlds 2, se deberia sacar.
Me referia ha este tuto.¿Alguien que sepa seguir donde se queda estancado?

Para los que querais meterle mano a los EBOOT y editarlo os dejo los pasos que yo he seguido :

Bajamos si no tenemos el programa para descargarnos el repositorio :
sudo apt-get install git-core

Bajamos el respositorio de las ps3tools:
git clone git://git.fail0verflow.com/ps3tools.git

Creamos el direcotrio donde iran las keys:
cd $HOME
mkdir .ps3
cd .ps3

Ahi copiamos las siguientes keys: Descarga

cd ps3tools

Si no tuvieramos instaladas las librerias zlib:
sudo apt-get instal zlib1g-dev

Compilamos:
make

Ahora ya podemos explorar los EBOOT:

./readself EBOOT.bin
Nos mostrara información de las cabeceras del fichero.

./unself EBOOT.bin eboot.elf
Para desencriptarlo.

Ahora tocara hacerse con un editor Hexadecimal. Yo he utilizado este:
sudo apt-get install okteta

Con esto tendríamos nuestro EBOOT desencriptado y lo mismo se puede hacer con PUPs, PKGs y demás.

Veritas de PSX-Scene ha publicado los pasos que ha seguido para editar el EBOOT del NFS en 3.41 pero yo no he conseguido que me funcione

1. Open EBOOT.BIN in a hex editor of your preference.
2. In EBOOT.BIN, look at the SELF control info, if you see anything resembling the game titleid, it’s an NPDRM SELF and this guide won’t work, give up.
3. Use readself on EBOOT.BIN to get information about the encrypted metadata sections.
4. unself EBOOT.BIN eboot.elf
5. Open eboot.elf in a hex editor of your preference.
6. In eboot.elf, go to every encrypted metadata section (now decrypted), copy its data, and replace the encrypted data in EBOOT.BIN.
7. In EBOOT.BIN, change SELF header to indicate it’s FSELF.
8. In EBOOT.BIN, change SELF section headers that are marked as encrypted to say they are not encrypted.
9. If the game is a newer SDK version (like GT5, which is 3.50), in EBOOT.BIN, find the .sys_proc_param segment and change the SDK version to something earlier, such as 3.41. This will probably cause crashes in games that actually use newer SDK features that are not available in earlier SDK versions.
10. Save EBOOT.BIN
11. Cross fingers, run game, hope it works.

Se que hay que copiar el offset que muestra la info encriptada de uno a otro. Pero no lo consigo
A ver si alguien es tan amable de explicarlo un poco mejor

EDITO: Investigando un poco he encontrado esto: Informacion SELF

typedef struct
{
uint32_t magic; // “SCE”
uint32_t version; // 2
uint16_t attribute; // 0×8000 – fself
uint16_t category;
uint32_t metadataInfoOffset;
uint64_t fileOffset;
uint64_t fileSize;
uint64_t unknown06;
uint64_t programInfoOffset;
uint64_t elfHeaderOffset;
uint64_t elfProgramHeadersOffset;
uint64_t elfSectionHeadersOffset;
uint64_t unknown11;
uint64_t unknown12;
uint64_t controlInfoOffset;
uint64_t controlInfoSize;
uint64_t unknown15;
}
SELFHEADER_t;

He conseguido cambiar el tipo a fself editando el décimo par de valores. Pero no encuentro donde decirle a la cabecera que el fichero no esta encriptado
Se podra jugar solo con disco duro externo y el juego parcheado o hara falta un dispositivo de jailbreak??
ruzmaister escribió:Se podra jugar solo con disco duro externo y el juego parcheado o hara falta un dispositivo de jailbreak??

Por ahora, no hay ningún software que habilite la carga de backups directamente sin ningún jailbreak. Este hilo hace referencia a la técnica para poder parchear juegos que requieren un FW igual o superior al 3.50 en FW 3.41.
Admoroux escribió:
ruzmaister escribió:Se podra jugar solo con disco duro externo y el juego parcheado o hara falta un dispositivo de jailbreak??

Por ahora, no hay ningún software que habilite la carga de backups directamente sin ningún jailbreak. Este hilo hace referencia a la técnica para poder parchear juegos que requieren un FW igual o superior al 3.50 en FW 3.41.

Entonces me pillare el ps3key.He visto en paginas webs como ps3pi....com que ponen el gt5 y el eboot para solo copiar y reemplazar el que trae el juego.es asi de facil??Es que del tuto este no endiendo nada y de linux se, pero no demasiado
Pregunto desde mi ignorancia: Es posible realizar este metodo si tengo un dongle "viejito" (amazebreak v1.0)
que no tiene funciones PEEK / POKE??? de antemano gracias........
gus3000 escribió:Pregunto desde mi ignorancia: Es posible realizar este metodo si tengo un dongle "viejito" (amazebreak v1.0)
que no tiene funciones PEEK / POKE??? de antemano gracias........


Hombre, mucha idea sobre dongles no tengo, pero diría que esto es solo para que los juegos que requieran un firmware más nuevo se "conformen" con uno anterior. No se trata de una funcionalidad del dongle o de la PS3 que necesite del dongle.
alguien ha conseguido modificar algún eboot?? yo he probado con el de Apache Air Assault y no consigo que me cargue, me devuelve siempre al xmb
pAhKT escribió:alguien ha conseguido modificar algún eboot?? yo he probado con el de Apache Air Assault y no consigo que me cargue, me devuelve siempre al xmb

Donde te equivocas, estas usando el manual? del blog?
uxio1973 escribió:Donde te equivocas, estas usando el manual? del blog?


si, estoy siguiendo el manual del blog, sólo que yo lo hago desde windows, te dejo los pasos que sigo a ver si sabes orientarme

1 Offset 980
1 Size 855168
2 Offset 860980
2 Size 6BF00

copio desde 0 hasta 855168 en eboot.elf y lo pego en el rango 980-855AE8 del eboot.bin
copio desde 860000 hasta 6BF00 en eboot.elf y lo pego en el rango 860980-8CC880 en eboot.bin

y modifico los valores marcados igual que en la imagen.


SAludos
las F delante de los self, las has comprobado estan bien??
uxio1973 escribió:las F delante de los self, las has comprobado estan bien??



no se a que F te refieres, en el tuto que estoy siguiendo no pone nada de comprobar F


SAludos
alguien que lo pueda hacer con assassins creed la hermandad. se me estropeo el lector y no puedo jugar mi backup!!! por favor
Un slaudo y gracias de antemano [bye]
26 respuestas