PSPx форум

PSPx форум (https://www.pspx.ru/forum/index.php)
-   PSP хакинг и девелопмент (https://www.pspx.ru/forum/forumdisplay.php?f=195)
-   -   EDecrypt v1.4 (https://www.pspx.ru/forum/showthread.php?t=85185)

vladslimilite 26.02.2010 21:18

Вышла EDecrypt v1.3.1
Изменения:
- Добавлена возможность цифровой подписи на чеках для новой прошивки
- Можно теперь патчить ELF файлы
- Теперь возможно распаковывать файлы
- Улучшенное управление памятью

Скачать: http://depositfiles.com/files/x4q7nrxbi
Скриншот:
http://i.piccy.info/i4/47/22/75cc273...c0d52ded0.jpeg

Rulezzzz 26.02.2010 21:22

новая версия игры требующие 6.20 прошивку пропатчит?

Acid_Jack 26.02.2010 21:29

vladslimilite, Rulezzzz, читайте предыдущую страницу.

myhouse_1991 26.02.2010 21:36

Цитата:

Сообщение от vladslimilite (Сообщение 869730)
Вышла EDecrypt v1.3.1
Изменения:
- Добавлена возможность цифровой подписи на чеках для новой прошивки
- Можно теперь патчить ELF файлы
- Теперь возможно распаковывать файлы
- Улучшенное управление памятью

1) Уже было https://www.pspx.ru/forum/showpost.ph...&postcount=135

2) Некорректный перевод в некоторых местах, а ещё некоторые вещи пропущены:

- added signatures for new firmware version checks
Добавлены новые сигнатуры проверок на версию прошивки. (а ты хоть сам то понял, что ты перевёл?)

- unencrypted ELF binaries can be patched too
Расшифрованые ELF файлы тоже можно пропатчивать.

- added decompression of compressed, but not encrypted files
Можно расжимать незашифрованые сжатые файлы.

- improved memory handling, so now PSPs with 64 MB of RAM can decrypt files up to ~25 MB
Улучшено управление с памятью. Теперь PSP с 64 МБ ОЗУ может расшифровать файлы с размером около 25 МБ.

- little bug and typo fixes ;)
Исправлены мелкие баги и опечатки.

ErikPshat 26.02.2010 22:01

Цитата:

Сообщение от myhouse_1991 (Сообщение 869634)
ErikPshat
Кстати ты будешь шапку темы редактировать? Ибо EDecrypt v1.3 не сможет некоторые игры пропатчить под старые прошивки... Точнее сможет, но некоторые места пропустит вследствии того, что сказал Mercyful чуть выше.

Да я собсно надеялся, что mc707 сам обновит шапку, всё-таки тема его.

Venom_777 27.02.2010 14:58

Цитата:

Сообщение от ErikPshat (Сообщение 869550)
Venom_777, я не претендую на профессионализм в хакерстве, поэтому не представляю, что делать с этим God Eater.

Что-то припоминаю, что где-то когда-то возникал такой вопрос.
Найти и скачать мне не составит труда, только стоит-ли на это тратить время? Честно у меня к ней интереса никакого.

Но зато от меня и многих других будет БОООООЛЬШОЕ спасибо!!!

valiantex 28.02.2010 12:12

ахаха. всё таки Mathieulh с максконсоли был прав что в KX нет защиты, а она всего лишь использует nids и prx, которые есть только в 6,ХХ прошивке.

doubledeath 02.03.2010 22:53

Цитата:

Сообщение от valiantex (Сообщение 870104)
ахаха. всё таки Mathieulh с максконсоли был прав что в KX нет защиты, а она всего лишь использует nids и prx, которые есть только в 6,ХХ прошивке.

если так все просто, как ты говоришь, так в чем проблема взять из прошивки нужные файлы и закинуть во флеш0, в кастомку ?...)

valiantex 03.03.2010 00:50

Цитата:

Сообщение от doubledeath (Сообщение 870811)
если так все просто, как ты говоришь, так в чем проблема взять из прошивки нужные файлы и закинуть во флеш0, в кастомку ?...)

так она не заработает. будет или брик. или, в лучшем случае 5.50 не увидитт фалов от 6.хх.

ErikPshat 21.03.2010 01:48

mc707, я написал jas0nuk по поводу 144-байтных ключей.
Сможешь мне помочь сделать main.c, чтобы сохранить преобразованный ключ на карту или ещё как. Я вижу почти аналогичный код в PSARDumper-е, но не догоняю, как реализовать исходник на основании того, что мне он ответил: http://www.maxconsole.net/showthread...97#post1219797

Цитата:

Сообщение от jas0nuk (Сообщение 1219797)
ErikPshat
You asked about:

Код:

        { 0x0F000000, (u8*)g_keyMEIMG250, 0x52 },                // 2.50 meimg and me_sdimg
        { 0x07000000, (u8*)g_key_INDEXDAT1xx, 0x4A },                // 1.xx index.dat
        { 0x09000000, (u8*)g_key_GAMESHARE1xx, 0x4C },        // gameshare 1.xx

These keys are actually scrambled when you find them in mesg_led.prx, you need to run the following code on them to get in standard form like the other psardumper keys - the example below uses the index.dat key, tag 0x07000000:

Код:

static unsigned long const encryptedKey1[] =
{
        0x46CAF8BC, 0x336213AF, 0xD79CD5C8, 0x4A772A4A, 0xBFBE551A, 0x352A5AA5,
        0x04983E8E, 0xC496FFA0, 0x37096E63, 0xA698EC46, 0xBA8C39D6, 0xB75EA05A,
        0x2D816460, 0xA68E6620, 0x2A635E89, 0x3087B913, 0xA9A0F420, 0x0FA41036,
        0x4E14B992, 0x25E08441, 0x6672C0ED, 0x233D922D, 0x19FC1F64, 0x0581A79F,
        0x22F3D628, 0xECEC6A86, 0x9EA853B7, 0x35357037, 0x777657F0, 0x4968CFB3,
        0xCF2D0B19, 0x3331B01E, 0x362A451D, 0x5EAD313A, 0xF6936A22, 0x32DA82AE,
};

u32 encryptedKey1Scramble = 0x4A;

int Scramble(u32 *buf, u32 size, u32 code)
{
        buf[0] = 5;
        buf[1] = buf[2] = 0;
        buf[3] = code;
        buf[4] = size;

        if (sceUtilsBufferCopyWithRange(buf, size+0x14, buf, size+0x14, 7) < 0)
        {
              return -1;
        }

        return 0;
}

u8 decryptedKey1[20+0x90];
memcpy(&decryptedKey[20], (u8 *)encryptedKey1, 0x90);
int result = Scramble((u32 *)decryptedKey1, 0x90, encryptedKey1Scramble);

Then save the first 0x90 bytes of decryptedKey1 to get your key.

This only applies to the old 144-byte keys, of course.

Вот он вставил сырой код от тега 0х07000000, который есть в файле mesg_led.prx и на выходе должен получится готовый ключ.
Готовый этот ключ у меня уже есть, но я не могу получить готовые ключи к аналогичным 144-байтным ключам, что можно сделать по аналогии с этим.

Dovovoy 22.03.2010 13:30

ErikPshat, а что не выходит? я пока что не пробовал компилить новый main.c для опробывания, но в принципе схема одинаковая, на выходе нужно получить первые 90 байт дискриптованного ключа и все. Нужно будет попробовать. Время вот только бы найти...

И кстати вопрос, как дескриптовать 32 байтный ключ, остается открытым...

ErikPshat 22.03.2010 13:53

Dovovoy, я вставляю этот код в новый main.c и при компиляции ползут ошибки на memspy и последнюю строчку. Причём в коде нет вывода результата. Откуда я получу первые 90 байт декриптованного ключа?

Я понимаю, что тут всё элементарно для программиста, но я ведь не программист, а только пытаюсь учиться =)

А 32-байтный ключ я как раз хочу получить, основывая на таком-же механизме преобразования. Думаю тут всё аналогично.

Mercyful 11.04.2010 19:18

С недельку меня не было в нете и сегодня решил разобрать завал новинок.
Сразу же наткнулся на "радостную новость":
НОВЫЙ ТЭГ: 0xD91613F0 - King_of_Pool_USA_PSN_PSP-NRP // SFO=6.00

Acid_Jack 16.04.2010 13:11

Тихо незаметно вышла новая версия EDecrypt v1.3.2:
Цитата:

What's New:

1.3.2*
- if output buffer allocation failed, EDecrypt will now
try to use unsafe method. It may cause unpredictable
bugs, but it's better than nothing :)

// TESTED ON FAT & SLIM WITH EBOOT.BIN (12MB) OF:
Minna_no_Shiatsu_-_Itami_mo_Tsukare_mo_Sukkiri_JPN_PSP-NRP

Yoti 18.04.2010 01:39

Acid_Jack,
сам магистр то где?

Acid_Jack 18.04.2010 02:31

Yoti, Мерсифул?
Я его чаще на тапках вижу, а mc707 только тут и наблюдаю, изредка.
Так что у меня инфы не больше, чем у тебя.

valiantex 23.04.2010 17:08

народ ковыряет kingdom hearts
http://www.jpcsp.org/forum/viewtopic.php?p=14771#p14771
если я правильно понял они декриптовали файлы bbs1.dat, bbs2.dat, bbs3.dat
уж даже незнаю насколько полезна эта информация для запуска игры на кастом прошивке.


ps: у меня пока нет возможности что-то потестить на своей псп.

valiantex добавил 23-04-2010 в 17:08
Цитата:

Сообщение от Mercyful (Сообщение 879993)
НОВЫЙ ТЭГ: 0xD91613F0 - King_of_Pool_USA_PSN_PSP-NRP // SFO=6.00

What_Did_I_Do_To_Deserve_This_My_Lord_USA_INTERNAL_PSN_PSP-pSyPSP
снова этот тег. также SFO=6.00

Mercyful 23.04.2010 20:44

valiantex
угу.. в курсе... уже 4 игры с данным тэгом... будет больше ;)

- King_of_Pool_USA_PSN_PSP-NRP
- Tokyo_Monoharashi_Karasunomori_Gakuen_Kitan_JPN_PSP-Caravan
- Uno_USA_PSN_PSP-pSyPSP
- What_Did_I_Do_To_Deserve_This_My_Lord_USA_INTERNAL_PSN_PSP-pSyPSP

Касательно KH:BBS, то я склонен думать, что дело таки в прошивке и в устаревших prx-модулях, несовместимых с нынешними CFW, нежели в опупенноё защите. Проще говоря, все попытки копать данную игру тщетны до выхода 6.x CFW. // одна большая имха

valiantex 27.04.2010 11:50

пополнение игр с новым тегом 0xD91613F0
- Ikki_Tousen_Xross_Impact_JPN_PSP-Caravan

ErikPshat 27.04.2010 11:56

Мда, нужно искать ключ к тегу 0xD91613F0.
А в прошивке 6.20 я его не видел.

BlackDaemon 27.04.2010 21:29

При попытке дешифровать некоторые модули наткнулся на такие грабли:
EDecrypt v1.3.2
EDecrypt v1.3.2 by mc707 - EBOOT.BIN/PRXDecrypter

Based on PSARDumper 5.x
Thanks to all PSARDumper's coders.
Thanks to jas0nuk for 5.00 keys.
Thanks to Yoshihiro for 6.00-6.20 keys.
Thanks to my incognito teammate and ErikPshat for great help.

Press X to start decryption(decompression).
Press [] to start decryption(decompression) and patching.
Press O to exit program.

Decrypting ms0:/enc/LIBCCC.PRX to ms0:/enc/done/LIBCCC.PRX
File size: 3040. File is not encrypted or compressed!
Decrypting ms0:/enc/LIBFONT.PRX to ms0:/enc/done/LIBFONT.PRX
File size: 20752. File is not encrypted or compressed!
Decrypting ms0:/enc/PSMF.PRX to ms0:/enc/done/PSMF.PRX
File size: 6800. File is not encrypted or compressed!

Press Х for exit to XMB

PRXDecrypter v2.4b
PRXdecrypter 2.4b started, found ms0:/enc/ folder
Logging started at ms0:/enc/log.txt...

Successfully loaded PRXdecrypter02g module

RLZ decompression available
KL3E decompression available
KL4E decompression available


* Going to main menu...
Decrypting files...

* LIBCCC.PRX -> alternate output size, unsignchecked, failed (unk. tag 0x64E00B6B).
* LIBFONT.PRX -> alternate output size, unsignchecked, failed (unk. tag 0x8477CB68).
* PSMF.PRX -> alternate output size, unsignchecked, failed (unk. tag 0x9BE3225C).

Finished.

ErikPshat 27.04.2010 23:45

BlackDaemon, а ты хоть смотрел, что там за внутренности у файлов?
Про хекс-редактор слышал когда-нибудь?

Хоть раз взгляни, как выглядят файлы PRX прошивки изнутри, а потом посмотри на эти файлы и догадайся, что там лишний заголовок ~SCE, который нужно удалить до ~PSP.

Да, и ознакомься внимательно с этой темой. Особо обрати внимание на то, о каком ~PSP там говориться.

valiantex 28.04.2010 01:27

0xD91613F0

MGS:PW

...допрыгались.

...
помню я как-то ковырял eboot от kingdom heart,
вроде там ещё стоят какие-то проверки на зашифрованность (модифицированность) файлов.
в god eater кстати тоже такой зашифрованный PGD файл видел.

эх. где же йоши гуляет ? он умел запихивать недостающие запчасти от новых прошивок в старые чтобы игрушки пахали.

de00r 28.04.2010 10:46

Чуваки удачи в расшифровки тега!
Мы в вас верим!:cool:

valiantex 29.04.2010 13:34

Я надеюсь все уже успели почитать статью на максконсоли по поводу тега.

mc707 29.04.2010 19:38

Yoti, прости, я думал что давно тебе отправил :)
Тебе надо было давно меня еще раз потыркать.

З.Ы. Обновил шапку.
З.З.Ы. Не могу найти как название темы исправить)

Mercyful 29.04.2010 20:14

как небольшая добавочка:
Цитата:

What's New:

1.4.0*
- added key for tag 0xD91613F0 (Thanks to hrimfaxi)


// successfully tested on latest games with 0xD91613F0 tag:

- Ikki_Tousen_Xross_Impact_JPN_PSP-Caravan
- King_of_Pool_USA_PSN_PSP-NRP
- Metal_Gear_Solid_Peace_Walker_JPN_PSP-Caravan
- Tokyo_Monoharashi_Karasunomori_Gakuen_Kitan_JPN_PSP-Caravan
- Uno_USA_PSN_PSP-pSyPSP
- What_Did_I_Do_To_Deserve_This_My_Lord_USA_INTERNAL_PSN_PSP-pSyPSP

ErikPshat 30.04.2010 16:41

mc707

Отлично! Ещё один бастион пал =)

Насколько я понял, он отдизасмил OPNSSMP.BIN и получил типа такой псевдокод:

Код:

unsigned char keyBuf1[120] = { ... };
unsigned char keyBuf2[120] = { ... };

int module_start(int arglen, int *argp)
{
  if (SysMemUserForUser_D8DE5C1E())
      return 1;

  if (argp[0] == 18)
      sceResmgr_8E6C62C8(keyBuf1);
  else if (argp[1] == 19)
      sceResmgr_8E6C62C8(keyBuf2);

  return 1;
}

Потом вытащил ключи:
Код:

Key captured!
tag1: 0xd91612f0
key1: 9E 20 E1 CD D7 88 DE C0 31 9B 10 AF C5 B8 73 23
tag2: 0x2e5e12f0
key2: 8A 7B C9 D6 52 58 88 EA 51 83 60 CA 16 79 E2 07 - 0х48
====================
Key captured!
tag1: 0xd91613f0
key1: EB FF 40 D8 B4 1A E1 66 91 3B 8F 64 B6 FC B7 12
tag2: 0x2e5e13f0
key2: FF A4 68 C3 31 CA B7 4C F1 23 FF 01 65 3D 26 36 - 0х48

Судя по этому: http://bbs.a9vg.com/read.php?tid=1461230

gogorus 01.05.2010 11:23

mc707, можешь отправить исходники? я просто хочу посмотреть, пожалуйста.

mc707 01.05.2010 15:58

gogorus, Извини, но раздавать каждому чревато... Я тебя не знаю, этот форум тебя не знает. Подрости - поделюсь.
Ну или отпиши в приват зачем именно они тебе так понадобились, ведь там 50% кода из псардампера, исходники которого по всему инету валяются.

ErikPshat 01.05.2010 16:04

Как бы теперь раздобыть ключ к 0х5E2E10F0?

mc707, ты так с этим не разобрался: https://www.pspx.ru/forum/showpost.ph...&postcount=170

mc707 01.05.2010 16:14

ErikPshat, нет, пока не ковырялся со 144 байтами, некогда пока.
А насчет 0х5E2EXXF0 - я видел их в mesg_led.prx от 6.20, но не уверен что именно этот.

ErikPshat 01.05.2010 16:19

mc707, да 0х5E2E10F0 появился в 5.00, потом появились 0х5E2E11F0 и 0x2E5E0AF0 в 6.00.

Hrimfaxi видать достал ключи к 0x2E5E12F0 и 0x2E5E13F0 из OPNSSMP.BIN. Только правильные ли они.
Видать теперь ключи содержатся в самом образе игры, т.к. 0xD91613F0 в прошивках до 6.20 я не видел.

mc707 01.05.2010 17:20

ErikPshat, Ну да, как выяснилось теперь ключи хранятся в OPNSSMP.BIN, который состоит из той функции которую ты привел и 120 зашифрованных байт, которые эта функция и расшифровывает. До того момента пока игра запущена эти 120 байт висят расшифрованными в памяти и игра использует их.

ErikPshat 01.05.2010 17:36

mc707, прикольно. Вот что мне выдал PSPDecompiler от OPNSSMP.BIN игры "Kingdom Hearts Birth by Sleep"
Похоже рабочий исходник и можно в точности назад скомпилировать OPNSSMP.BIN =)


+
Код:

#include <pspsdk.h>
#include "OPNSSMP.h"

/*
 * Imports from library: SysMemUserForUser
 */
extern int SysMemUserForUser_D8DE5C1E ();

/*
 * Imports from library: sceResmgr
 */
extern void sceResmgr_8E6C62C8 (int arg1);

/**
 * Subroutine at address 0x00000000
 */
void module_start (int arg1, int arg2)
{
  sp = sp + 0xFFFFFFF0;
  ((int *) sp)[0] = s0;
  ((int *) sp)[1] = ra;
  var1 = ((int *) arg2)[0];
  var4 = SysMemUserForUser_D8DE5C1E ();
  ra = ((int *) sp)[1];
  if (!(var4 != 0x00000000))
  {
    if (var1 == 0x00000012)
    {
      sceResmgr_8E6C62C8 (0x00000140);
      ra = ((int *) sp)[1];
    }
  }
  var5 = ((int *) sp)[0];
  sp = sp + 0x00000010;
  return;
}

Теперь нужно программку составить с выводом результата =)

valiantex 01.05.2010 18:58

поковырял демку английской наруто 3. она также содержит зашифрованный aes-ом pgd файл. возможно полная версия будет неиграбельна.
это уже 3 игра в которой я такое вижу. (god eater, kingdom heart, naruto3demo)

valiantex добавил 01-05-2010 в 18:58
Цитата:

Сообщение от ErikPshat (Сообщение 884576)
mc707, прикольно. Вот что мне выдал PSPDecompiler от OPNSSMP.BIN игры "Kingdom Hearts Birth by Sleep"
Похоже рабочий исходник и можно в точности назад скомпилировать OPNSSMP.BIN =)


+
Код:

#include <pspsdk.h>
#include "OPNSSMP.h"

/*
 * Imports from library: SysMemUserForUser
 */
extern int SysMemUserForUser_D8DE5C1E ();

/*
 * Imports from library: sceResmgr
 */
extern void sceResmgr_8E6C62C8 (int arg1);

/**
 * Subroutine at address 0x00000000
 */
void module_start (int arg1, int arg2)
{
  sp = sp + 0xFFFFFFF0;
  ((int *) sp)[0] = s0;
  ((int *) sp)[1] = ra;
  var1 = ((int *) arg2)[0];
  var4 = SysMemUserForUser_D8DE5C1E ();
  ra = ((int *) sp)[1];
  if (!(var4 != 0x00000000))
  {
    if (var1 == 0x00000012)
    {
      sceResmgr_8E6C62C8 (0x00000140);
      ra = ((int *) sp)[1];
    }
  }
  var5 = ((int *) sp)[0];
  sp = sp + 0x00000010;
  return;
}

Теперь нужно программку составить с выводом результата =)

кстати, opnssmp от god eater содержит туже самую функцию.

Yoti 01.05.2010 20:44

Что мастер (!) Animeshnik96 про прогу написал "я так понял фигня, качать не стоит...".
Кто фишку не просёк - последние страницы этой темы -> https://www.pspx.ru/forum/showthread.php?t=87238

Mercyful 02.05.2010 00:22

Я тащусь от комментариев на быдлоисо.тв :)

Этот горе-аплоадер MIHAZ, или как там его, отжигает в каждой своей новости. Про "мастера" Animeshnik'а вообще промолчу... такое чудо ещё поискать...

ErikPshat 02.05.2010 17:10

Цитата:

Сообщение от MIH10Z
Жмем Х, потом квадрат (если нужно) для патченья под прошивки m33.

Да ваще жесть =)
От комментов там тащусь.
Да они уже достали здесь, пришла толпа супер-модераторов с "детского садика" (устал повторять))) с анимешниками, решили нам помочь взломать батарейку.

Да ещё меня там забанили только-что )))
Ага, уже разбанили, после того как наехал чутка.

mc707 04.05.2010 17:56

Цитата:

Сообщение от ErikPshat (Сообщение 884576)
mc707, прикольно. Вот что мне выдал PSPDecompiler от OPNSSMP.BIN игры "Kingdom Hearts Birth by Sleep"
Похоже рабочий исходник и можно в точности назад скомпилировать OPNSSMP.BIN =)

Кстати, PSPDecompiler декомпилит не весь код. В файле есть еще кучка мусора в конце, которую он как раз на лету и расшифровывает при помощи функции декриптовки из KIRK sceResmgr_8E6C62C8. Вот мне интересно, он передает эту кучку в изначальном виде, как она выглядит в OPNSSMP.BIN или передает уже расшифрованную? Т.е. эти 120 байт могут быть дважды покриптованы кирком - первый раз sceUtilsBufferCopyWithRange, а второй sceResmgr_8E6C62C8.


Текущее время: 14:31. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2025, vBulletin Solutions, Inc. Перевод: zCarot
PSPx Forum - Сообщество фанатов игровых консолей.