Skip to main content

PS3 HDD Adventures

Investigation into the decryption and access of the PlayStation 3 hard disk drive from Linux and BSD based systems.

Welcome

In late 2023, my PlayStation 3 succumb to an unfortunately common fault in that it decided the file system on the hard disk drive was corrupted and beyond repair.
With the disk drive encrypted with a per-console key, any attempt at data recovery or file system repair seemed unlikely. However I quickly discovered that a lot of work had already been undertaken by the community to understand this encryption, the partition table, and the file systems used by the PS3.
The result of this means that if you are able to extract your consoles encryption key (the so called eid_root_key), then it was possible to decrypt and mount the file system under a Linux system.
Being able to recover data from the drive now seemed like a very real prospect. But what about attempting to repair the file system using utilities like fsck? This would require write access to the file system, which under Linux alone was not possible.

The articles on this blog will document and share my attempts at achieving write access to the file system, by decrypting the disk drive using Linux and then passing the decrypted file system through to a BSD based system (such as FreeBSD and NetBSD) which can natively write to the UFS2 user data partition used by the PS3.

This work could lead to the potential of data recovery and restoration, migration, and repair all being possible:

  • fsck_ffs/fsck_ufs can be used to repair the file system that PS3 has declared corrupt and beyond repair
  • dd and resize_ffs can be used to migrate a smaller drive to a larger one, and then extend the file system to utilise the newly available space
  • cp can be used to do simple file level migrations of data between one disk and another
  • Easier user data backup (and restore), without having to rely on the painfully slow built in backup utility

This blog is a work in progress, so until articles have been written on the different subjects you can read my notes from various tests: