Поцоны, короче тут такая шняга, SPRX подписываются через scetool со 100% совпадением.
Я сейчас подписал один, но пока пробовал от дисковой версии обратно в её же. То есть, цель эксперимента была получить точную копию исходного оригинала, чтобы убедиться в правильности подписи. И вроде как подписывает как надо.
В общем хейдер заголовки SCE и ELF и хвост файла собрались со 100% совпадением с оригиналом байт-в-байт.
Только само тело поменялось, но это из-за того, что там генерятся рандомные ключи декриптовки, пэтому тело шифруется другим хешем. Но я уверен, что тут всё правильно. Причём размер исходного и шифрованного файлов тоже совпадают до байтика. Думаю в NPDRM шифровка тоже должна пройти успешно.
Короче, проверяйте сами.
Инструкция:- Извлекаем SPRX из архива XJOB_TESTJOB_SPURS.zip и кидаем его в папку scetool (имейте в виду, что утилита scetool.exe сама по себе не работает, а работает она с сопутствующими файлами ключей и бинарников, например, расположенными в папке "data", поэтому утилиту отдельно никуда не таскайте).
- Декриптуйте этот SPRX с помощью ScetoolGui. На выходе получите декриптованный ELF под названием XJOB_TESTJOB_SPURS.SPRX.elf
- Теперь, удерживая SHIFT, нажмите правой кнопкой в пустом месте внутри папки "scetool" и выберите "Открыть окно команд", чтобы запустить консольное окно.
- Скопируйте и вставьте в консоль этот код и нажмите Enter:
scetool -v -t XJOB_TESTJOB_SPURS.SPRX -0 SELF -1 TRUE -s FALSE -2 000A -m C5F50AFEEBD83EFB8E8CE7D18BFBCFA21B1E26CC76D73D8FB6B925F285BE5B55000000000000059000000001000000040000001E000000300000000000000000 -3 1010000001000003 -4 01000002 -5 APP -A 0001000000000000 -6 0003005500000000 -7 TRUE -8 0000000000000000000000000000000000000000000000000000000000000000 -9 00000000000000000000000000000000000000000000003B0000000100040000 -b FREE -c SPRX -f EP1001-BLES01705_00-BSIDSCPATCHPSCEE -g XJOB_TESTJOB_SPURS.SPRX -j TRUE -e XJOB_TESTJOB_SPURS.SPRX.elf XJOB_TESTJOB_SPURS.SPRX.ENC
- Из Эльфа у вас появится подписанный файл под названием XJOB_TESTJOB_SPURS.SPRX.ENC. Сравните его с исходным через хекс или через ScetoolGui и удивитесь, что все данные совпадают.
P.S. Я ещё немного подправил
scetool, сделал немного более информативнее вывод информации, чтобы было понятно, откуда беруться эти названия:
- [retail game/update]
- [normal]
- [NPDRM Application]
- [ REFTOOL DEBUG RETAIL ]
- [SELF]
- [EXEC]
- [PPC64]
- [TRUE][FALSE]
Так же добавил больше инфы по ELF Header и исправил одну несущественную ошибку, где в поле флага процессора вместо положенных 2-ух байт бралось с потолка 4 байта (у EBOOT.BIN). Так что обновляйтесь -
scetool v0.2.9.2