Сообщение от in1975
ErikPshat, что-то размер в 0x30 байт наводит меня на мысль о потерянных данных из этого сообщения
|
Ну это ты про другие байты. Вот их не хватает в NPDRM подписи. Потому что scetool подписывает EBOOT.BIN с секцией
SCE Version 0x10 байт = это формат дисковой версии Blu-Ray. А должно быть 0x30 байт. Следом идут 3 секции: Control Info [Flags], Control Info [Digest] и Control Info [NPDRM]. Третья секция Control Info [NPDRM] 0x90 байт как раз появляется, если стоит PRESENT=TRUE (вторые 4 байта жёлтой секции, после первых 4 байт).
В scetool есть возможность добавить подпись в NPDRM:
- -j, --np-add-sig TRUE/FALSE(default) Whether to add a NP sig. or not.
Но при этом всё равно создаётся EBOOT с 0x10 байт в секции
SCE Version, как у дисковой версии, хотя в PRESENT=TRUE (вторые 4 байта) проставляет единичку (TRUE = 00 00 00 01, когда FALSE = 00 00 00 00).
Поэтому такой EBOOT не запускается на OFW. Там не хватает этих 0x20 байт (32 байта, если считать байты десятичной системой).
Ну и вот ещё подкатила инфа о контрольной сумме 8 байт в конце файла, а перед ними стоит ECDSA подпись, которая, по моему мнению, не проверяется.
А что за потерянные данные? Если ты имеешь в виду 0x30, то перед 30, если спереди пишется
0x, то это означает 16-ричное число, а если пишут просто 30, то подразумевается десятеричное число. Каждая строка 0x10 байт имеет 16 байт, а 0x30 байт имеет 48 байт.
P.S. Добавил в то сообщение файлы закладок для
Hex Workshop, а как ими пользоваться есть
инструкция здесь.
И если дописать в исходниках scetool эту секцию
SCE Version, то можно будет переподписывать EBOOT.BIN.