Developer KaKaRoToKS Shares Some Knowledge
Вслед за прогрессом PS3 сцены KaKaRoToKS делится своими знаниями в области программирования!!!
http://pastie.org/private/3np6uj6md1occbctdeir6a
Внимание: Данная информация заинтересует исключительно разработчиков!!!
Код
С того момента, как выложили LV0 ключи, я верю, что могу поделиться с вами этой информацией, чтобы помочь людям создать свою собственную 4.x CFW:
NPDRM ECDSA signature в SELF footer проверяется с помощью lv2.
Она сначала спрашивает appldr должна ли быть проверена эта signature, and appldr will только если вы выставите flag в SELF, в NPDRM, с ключами от прошивок 3.56+ (без приватных ключей).
Это означает, что SELF файлы, подписанные с новыми 3.56+ ключами не имеют ecdsa проверки (вероятно, чтобы ускорить загрузку).
Если appldr говорит, что ecdsa signature должна быть проверена, то тогда, lv2 будет проверять её лично и выдаст ошибку, если она не правильная.
Есть множество путей, как решить эту проблему:
1 - Пропатчить проверку ключей в appldr.
2 - Пропатчить "выставить flag на 1" в appldr если ключи < 0xB.
3 - Пропатчить код в lv2, который хранит результаты из appldr.
4 - Пропатчить актуальную функцию проверки ключей в lv2.
5 - Игнорировать результат ecdsa из lv2. Это один из вариантов патча (4, который патчит функцию проверки ключей в lv2):
В памяти 0x800000000005A2A8, в offset 0x6a2a8 в файле lv2_kernel.elf,
замените:
e9 22 99 90 7c 08 02 a6
на:
38 60 00 00 4e 80 00 20
Это нужно для ядра прошивки 4.21 (эта последняя прошивка, которую я иследовал).
Я снова вас покидаю и предоставляю возможность прочитавшим самим найти правильные offset для ядра прошивки 4.25 и скоро выходящей 4.30.
И вот еще немного информации... в 4.21 lv2, в адресе памяти 0x800000000005AA98 (вам нужно самим найти нужный offset),
при загрузке lv2 имеется 'check_signature_flag' результат из appldr, так что, если вы хотите использовать метод под номером 3,
просто замените 'ld %r0, flag_result_from_appldr' на 'ld %r0, 0' и у вас будет новый метод пропатчивания прошивки.
Этот способ должен работать так же идеально, как и предыдущий, или один из моих 5.
Наслаждайтесь homebrew вернувшихся на 4.x CFW....
P.S.: Спасибо flatz и glu0n, которые помогли получить мне эту информацию
Последний раз редактировалось akela1979; 24.10.2012 в 16:58.
|