Просмотр полной версии : Дешифровка игр PS Vita
Файлы игры в формате NoNpDrm зашифрованы.В частности иконки sce_sys/icon0.png и sce_sys/pic0.png(их нельзя открыть на ПК) У меня вопрос для экспертов(которые создают русификаторы;)) по какому алгоритму и каким ключом шифруются данные? И я в курсе что это на консоли делает VitaShell но мне интересен сам алгоритм.Хочу на Python сделать прогу для ПК
botik,
изучай: https://github.com/cuevavirus/psvpfstools
Остались два вопроса.
1 ВОПРОС
Имеется программа для консоли FAGDec.vpk которая глубоко дешифрует файлы в папке sce_module и eboot.bin.Есть ли её аналог на ПК? Программа psvpfsparser хорошая но именно с этими файлами до конца не справляется.Это позволит легко переводить формат pkg файлов в формат VPK без участия консоли.
2 ВОПРОС
После установки любого VPK генерируется head.bin который одинаковый для всех консолей а если установить разные игры то отличаться head.bin будет только несколькими строчками 0x100-0x10F и 0x420-0x42F .Какой алгоритм их создания? (предполагаю что без hmac_sha1 не обошлось) Хотелось на ПК его генерировать без участия консоли.
botik,
1) https://github.com/TeamMolecule/sceutils (в изначальном репо нет ключей, смотри форки)
2) https://github.com/lusid1/pkg2zip
Говнодампы в VPK не нужны.
botik,
1) https://github.com/TeamMolecule/sceutils (в изначальном репо нет ключей, смотри форки)
2) https://github.com/lusid1/pkg2zip
Говнодампы в VPK не нужны.
1 Благодарю за программу.Но она что-то не работает.И примеров нет посмотреть
2 VPK это самый лучший формат полностью расшифрован и очень легко переводится в nonpdrm.На пример игра VVVVVV адаптирована для nonpdrm можно и саундреки послушать на ПК и поиграть без установки. Секрет в файле head.bin
https://mega.nz/#!Y7QlhIoT!Pd9oNDJiEdEgWumNBGPfuTyfXg4bRqYsWyb8GrF_QMU
Но она что-то не работает.И примеров нет посмотреть
Ну, печаль тебе. У команды NoPayStation работает, создаёт CompPack'и автоматом. И вообще это оффтоп в этой теме.
VPK это самый лучший формат полностью расшифрован и очень легко переводится в nonpdrm.
Ты адекватный вообще? Нет средств по PFS шифрованию, чтобы получить NoNpDrm версию из расшифрованных ресурсов.
На пример игра VVVVVV адаптирована для nonpdrm
Ты что курил? По ссылке сраный Витамин дамп, там даже загрузчик плагинов/модулей от Витамина лежит - steroid.suprx.
А ты проверял?установи его как NoNpDrm версию и он заработает.
botik,
отключил NoNpDrm плагин, обновил БД и получил установленную игру. Обычное дешифрованное говно, которое не имеет отношения к NpDrm шифрованию и не требует обхода лицензии при помощи плагина.
А зачем плагин отключать? У меня с ним все установилось и запустилось.Я прямо с магазина их качаю и дешифрую.Но пока вижу два плюса.
1 Меньше места игра занимает в архиве
2 Теперь русификатор можно соединить с игрой без папки rePatch.
С помощью Vitashell получил расшифровку eboot.bin.Оасталось снять DRM защиту.Скопировал его на ПК скачал прогу sceutils подключил keys_external.py. Далее в командной строке scedecrypt.py eboot.bin <folder>.Пишет ошибку Invalid metadata info padding (decryption likely failed)'
В самом Python коде понимаю выше среднего уровня и смог переделать прогу для Python3. И получил ту же самую ошибку.Где можно ознакомиться с подробными инструкциями как сделать чтобы все работало?
Где можно ознакомиться с подробными инструкциями как сделать чтобы все работало?
Нигде.
Нашел keys.py которая использует программа но это не помогло.
https://pastebin.com/muzFMBAZ
Или keys.py неправильный или прога не рабочая.Я просмотрел код и сразу вопрос к примеру зачем в keys.py строчки
ENC_KEY = binascii.a2b_hex('AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA')
ENC_IV = binascii.a2b_hex('AF5F2CB04AC1751ABF51CEF1C8096210')
если сама программа эти значения вообще не использует в своих вычислениях.А может сам автор проги их умышленно удалил? Я и сам могу написать прогу с нуля если бы знал точный алгоритм расшифровки.
botik,
с фига ли бы не использует? Это ключ от secure kernel в версиях ПО до 3.69 включительно.
Но, вообще, есть таблица ключей и алгоритмов (https://docs.google.com/spreadsheets/d/1NRDVSqYR3uwnzCLY47ZBACzFlXTzcvJtgLMc3aGOdEU/export?format=xlsx&id=1NRDVSqYR3uwnzCLY47ZBACzFlXTzcvJtgLMc3aGOdEU) от Мэтьюха, если уверен в своих силах.
Ключи увидел а алгоритм не вижу.Нужен алгоритм который представляет набор конкретных действий в определенном порядке например вычисление PSVIMG ключа из аккаунта.Все подробно и четко описано даже пример приведен
https://wiki.henkaku.xyz/vita/PSVIMG
Сразу можно и прогу на python3 написать.Вместо AID написать свое значение.
from Crypto.Cipher import AES
from Crypto.Hash import SHA256
AID = 0x0000000000000000
aid_bytes = AID.to_bytes(8,"big")
seed = aid_bytes + b'Sri Jayewardenepura Kotte'
key = SHA256.new(seed).digest()
cipher = AES.new(b'\xa9\xfaZby\x9f\xccLrkN,\xe3Pm8', AES.MODE_ECB)
decrypted =cipher.decrypt(key)
print ("KEY=",end="")
print (decrypted.hex())
input()
Все разобрался.Неужели было сложно автору написать одну строчку мануала о том что в модуле sceutils.py в строке 11 значение klictxt нужно изменить на ключ из файла work.bin по адресу 0x50.Мы ведь не экстрасенсы.
Ключи увидел а алгоритм не вижу.
Там целая колонка всяких AES128-CBS, ты чего?
Неужели было сложно автору написать одну строчку мануала
Это инструмент для тех, кто понимает.
в модуле sceutils.py в строке 11 значение klictxt нужно изменить на ключ из файла work.bin по адресу 0x50
Ничего никогда не менял и всё работало.
Ничего никогда не менял и всё работало.
Как раз потребовалось файлик посмотреть. Повторяю, ничего внутри файлов не менял и всё работает:
python self2elf.py -i eboot.bin -o eboot.elf -k work.bin
Я об этом догадался после 2 дней копания в коде что нужно ещё -k work.bin добавлять.Но я её переделал под себя и в exe перевел(self2elf.exe).Теперь работает -k key(из work.bin).
Два дня копаться в коде, чтобы увидеть синтаксис, который прога выводит сама, лол?
16699
Тема перенесена http://www.pspx.ru/forum/showthread.php?t=109597
Ты вполне можешь создать персональную тему для софтины где-нибудь типа здесь: https://www.pspx.ru/forum/forumdisplay.php?f=455
vBulletin® v3.8.7, Copyright ©2000-2025, vBulletin Solutions, Inc. Перевод: zCarot