rupor, короче я понял почему сначала декриптуется, а потом не декриптуется.
Когда я шифрую, то использую другое название выходящего файла. Вот пример:
make_npdata -e UP4403-NPUB31672_00-TENNISFACEUNLOCK.edat UP4403-NPUB31672_00-TENNISFACEUNLOCK.edat.enc 1 1 2 0 16 3 00 UP4403-NPUB31672_00-TENNISFACEUNLOCK 1
То есть, к исходному названию я добавляю в конец выходного файла суффикс
.enc
А потом проверяю для декриптовки и вписываю названия файла для декриптовки точно такое же, как он у меня вышел на выходе, т.е. с суффиксом
.enc, а на выходе конечно же пишу название с суффиксом
.dec и он у меня прекрасно декриптуется, хоть тыщу раз. Вот скрипт декриптовки
make_npdata -d UP4403-NPUB31672_00-TENNISFACEUNLOCK.edat.enc UP4403-NPUB31672_00-TENNISFACEUNLOCK.edat.dec 1
Потом что я делаю? Удаляю весь мусор со всеми исходниками и проверками, а зашифрованный файл оставляю и переименовываю его в оригинальное название с
.edat на конце, т.е. удаляю суффикс
.enc
Так вот, после этого он перестаёт декриптоваться!!!
Получается, что при шифровке к файлу добавляется информация о названии файла, которое писали во время шифровки на выходе.
А теперь переименуй мои файлы ключей с суффиксом на конце
.enc и они у тебя спокойно будут декриптоваться.
Получается утилита хеширует название шифруемого файла и использует этот хеш при декриптовке. Но вот PS3 этот хеш игнорирует и выходит, нормально дешифровывает файл. И это нам на руку, чтобы другие шаловливыми ручками не разгадали метод шифрования
