Che cos'è il formato di file SFO?
Un file .sfo - sempre denominato param.sfo all'interno di un pacchetto di gioco - è un contenitore di metadati binari compatto utilizzato su tutte le piattaforme Sony PlayStation dalla PSP fino alla PS5. Memorizza i parametri chiave-valore che il dashboard della console (la XMB su PS3 e PSP, la schermata iniziale su PS4 e PS5) legge per visualizzare il titolo di un gioco, l'ID del titolo, la stringa della versione, la versione del software di sistema richiesta e il livello di parental control.
Il formato utilizza un'intestazione binaria fissa di 16 byte che inizia con i magic bytes \x00PSF, seguita da una tabella di stringhe di chiavi UTF-8 terminate da null e una tabella di dati di valori tipizzati. I valori possono essere stringhe UTF-8, interi a 32 bit o array di byte grezzi. Le chiavi comuni includono TITLE, TITLE_ID, APP_VER, PARENTAL_LEVEL e SYSTEM_VER. Il file è in formato little-endian e non presenta crittografia o checksum; l'integrità è gestita a livello del contenitore padre .pkg.
param.sfo non viene mai distribuito come file autonomo. Gli utenti lo incontrano quando estraggono un pacchetto di gioco, un backup o un archivio di aggiornamento per PSP, PS3, PS4 o PS5. Il file è in genere inferiore a 2 KB. Strumenti come PS4 SFO Reader/Editor (hippie68) consentono di leggere e modificare questi parametri - utile per lo sviluppo di homebrew o per il patching regionale dei titoli. La variante PSP/PS3/PS Vita utilizza i byte di versione dell'intestazione 01 01; la PS4 ha introdotto una variante aggiornata con chiavi aggiuntive.
Sicurezza e incolumità
RISCHIO: LOWI file PARAM.SFO sono metadati passivi e non possono eseguire codice. Il rischio è specifico al contesto: modificare un param.sfo in un pacchetto di gioco per abbassare la versione del firmware richiesta è una tecnica comune per CFW/homebrew; le implicazioni legali e di ban della console dipendono dalla situazione dell'utente. Scaricare file .sfo casuali da Internet comporta il consueto rischio legato al software.
Dettagli del formato
in sintesi- CuteFTP Site File Object (file di connessione ServerFTP) - CuteFTP utilizzava .sfo per i profili di connessione ai server FTP salvati; il formato è un binario proprietario GlobalSCAPE.
- Bitstream Font Outline File - La tecnologia legacy dei font Bitstream utilizzava .sfo come file collaterale dei dati dei font; effettivamente obsoleto, nessun software moderno lo utilizza.
Programmi che aprono file SFO
Dettagli tecnici
specifiche approfondite| Magic bytes | `\x00PSF` (0x00 0x50 0x53 0x46) all'offset 0 |
| Ordine dei byte | Little-endian |
| Contenitore | Binario personalizzato Sony con intestazione fissa, tabella delle stringhe delle chiavi, tabella dei dati e tabella degli indici |
| Dimensione intestazione | 16 byte fissi; memorizza gli offset alla tabella delle chiavi e alla tabella dei dati, oltre al conteggio totale delle voci |
| Versione del formato | Byte 4-5: `01 01` (v1.1) per PSP, PS3 e PS Vita; PS4/PS5 utilizzano una variante aggiornata |
| Tipi di valore | Stringhe UTF-8, interi a 32 bit senza segno e array di byte grezzi |
| Esempi di chiavi | `TITLE`, `TITLE_ID`, `APP_VER`, `PARENTAL_LEVEL`, `SYSTEM_VER` |
| Sicurezza dei dati | Nessuna crittografia o checksum all'interno dell'SFO; l'integrità è delegata alla firma del contenitore PKG padre |
| Dimensione tipica del file | Inferiore a 10 KB; il `PARAM.SFO` di PS3 è tipicamente tra 500 B e 2 KB |
| Piattaforme | PSP, PS3, PS Vita, PS4, PS5 |
| Nomenclatura file | Sempre `param.sfo` (minuscolo) all'interno dei pacchetti di gioco; mai distribuito come file autonomo |
| Archiviazione dati | Valori memorizzati come byte grezzi non compressi - stringhe UTF-8 o interi little-endian a 4 byte in tabelle piatte |
| Rilasciato | ~2005 (PSP, PlayStation Portable) |
| Ultima versione | PS4/PS5 variant (updated ~2013 with PS4 launch) |
| Specifica | www.psdevwiki.com |
Conversioni SFO
Domande e risposte della community
chiesto dagli utentiAncora nessuna domanda - sii il primo a chiedere informazioni sui file SFO.