LibProsperoPKG è una nuova libreria sviluppata da SvenGDK e realizzata interamente in C# per offrire agli sviluppatori un sistema completo dedicato alla creazione, all’analisi e alla modifica dei pacchetti PKG della PlayStation 5.

Progettata per funzionare con C# 14 e .NET 10, rappresenta una soluzione moderna che elimina la necessità di ricorrere a strumenti esterni da riga di comando, consentendo di gestire l’intero processo direttamente all’interno delle applicazioni .NET.
Another side-project I'm working on :https://t.co/lCbXkBnK91
— SvenGDK (@SvenGDK) June 28, 2026
Uno degli aspetti più interessanti del progetto è la sua pipeline completamente integrata, che automatizza tutte le fasi necessarie alla generazione di un pacchetto PS5.
A partire da una cartella contenente i file dell’applicazione, la libreria si occupa della creazione del file system PFS interno, dell’applicazione della crittografia AES-XTS, della costruzione del PFS esterno, della generazione dei metadati del container e, infine, della produzione dell’immagine finale destinata alle console di sviluppo.
Tutto il processo viene eseguito in memoria, rendendo l’integrazione particolarmente semplice per chi sviluppa software in ambiente .NET.
LibProsperoPKG offre inoltre un ampio insieme di funzionalità dedicate alla gestione dei pacchetti PS5.
Permette infatti di creare diverse tipologie di PKG, come applicazioni e patch, integra un modello GP5 per la gestione dei progetti, include strumenti per leggere e modificare pacchetti già esistenti e genera automaticamente le immagini DDS in formato BC7 utilizzate per icone e risorse presenti nella cartella sce_sys grazie all’integrazione con Magick.NET.
La libreria supporta inoltre i formati PFS, PFSC e PlayGo, implementa la firma RSA-3072 dei metadati e offre una gestione completa delle chiavi Prospero, mettendo a disposizione un’API chiara e ben documentata che può essere facilmente integrata in strumenti personalizzati.
L’utilizzo risulta piuttosto semplice: è sufficiente definire le opzioni di compilazione, specificando informazioni come la cartella sorgente, la destinazione del pacchetto, il Content ID, il Title ID, il nome dell’applicazione e la versione, lasciando poi alla libreria il compito di eseguire automaticamente l’intero processo di costruzione.
Oltre alla creazione dei pacchetti, è disponibile anche un lettore dedicato che consente di aprire e analizzare PKG già esistenti.
Il progetto è attualmente in fase di sviluppo attivo e viene considerato un work in progress, anche se ha già raggiunto un livello di maturità notevole.
I pacchetti prodotti risultano coerenti e correttamente firmati, ma alcune componenti dell’immagine finale, come la digest table e l’install-metadata archive, vengono ancora generate con un approccio definito “best-effort”.
Al momento la libreria è pensata principalmente per console PS5 in modalità debug, dove i controlli risultano meno restrittivi, mentre il funzionamento sulle console retail resta comunque limitato dalle protezioni hardware della piattaforma.
La documentazione inclusa nel progetto rappresenta uno dei suoi punti di forza. All’interno della cartella dedicata sono disponibili approfondimenti sullo stato di implementazione, una descrizione tecnica del formato PKG della PlayStation 5, la documentazione completa delle API e numerosi dettagli utili per comprendere il funzionamento interno della libreria.
In evidenza
- Pipeline completamente integrata. Cartella → layout PFS interno → crittografia AES-XTS → PFS esterno → container dei metadati \x7FCNT → immagine di debug \x7FFIH finalizzata, dall’inizio alla fine.
- Completamente autonoma. Il modello di progetto GP5, il generatore delle immagini PFS, la crittografia AES-XTS, la firma RSA-3072 dei metadati e la generazione dell’immagine di debug finale vengono gestiti interamente dalla libreria.
- Lettura e scrittura. Consente di analizzare, ispezionare e modificare pacchetti PS5 esistenti (\x7FCNT / \x7FFIH), oltre a crearne di nuovi.
- Generazione delle texture. Il ricodificatore delle immagini DDS (BC7) utilizzate per icone e immagini nella cartella sce_sys si basa su Magick.NET.
Requisiti
| Componente | Requisito |
|---|---|
| Toolchain | .NET 10 SDK o versione successiva |
| Linguaggio | C# 14 |
| Dipendenza NuGet | Magick.NET-Q8-AnyCPU |
Compilazione
cd LibProsperoPKG/src/LibProsperoPkg
dotnet build -c Release
Questo comando genera il file LibProsperoPkg.dll.
Per creare un pacchetto NuGet: dotnet pack -c Release
Guida rapida
Aggiungere un riferimento al progetto (oppure al file LibProsperoPkg.dll compilato o al pacchetto NuGet) e creare un pacchetto partendo da una cartella dell’applicazione già preparata:
using LibProsperoPkg;
var options = new ProsperoBuildOptions
{
Mode = ProsperoPackageMode.Application,
OutputFormat = ProsperoOutputFormat.DebugImage, // Installabile su console in modalità debug
SourceFolder = @"/path/to/prepared/app", // Deve contenere la cartella sce_sys/
OutputFolder = @"/path/to/output",
ContentId = "UP9000-PPSA00000_00-PROSPERO00000000",
TitleId = "PPSA00000",
Title = "My PS5 Application",
Version = "01.00",
};
ProsperoBuildResult result = ProsperoPackageBuilder.Build(options, Console.WriteLine);
Console.WriteLine($"Pacchetto creato in: {result.OutputPath}");
foreach (var warning in result.Warnings)
Console.WriteLine($"Avviso: {warning}");
Analisi di un pacchetto esistente
using LibProsperoPkg.PKG;
ProsperoPkg pkg = ProsperoPkgReader.Read(@"/path/to/some.pkg");
Console.WriteLine($"Tipo: {pkg.Type}");
Console.WriteLine($"Content ID: {pkg.Header.ContentId}");
Console.WriteLine($"Elementi: {pkg.Entries.Count}");
API pubbliche in sintesi
| Namespace | Tipi principali |
|---|---|
LibProsperoPkg |
ProsperoPackageBuilder, ProsperoBuildOptions, ProsperoBuildResult, ProsperoPackageMode, ProsperoOutputFormat, InnerImageForm |
LibProsperoPkg.PKG |
ProsperoPkgBuilder, ProsperoPkgReader, ProsperoPkgWriter, ProsperoFihBuilder, ProsperoPkgSigner, ProsperoDdsEncoder, ProsperoPkg, ProsperoPkgHeader |
LibProsperoPkg.PFS |
ProsperoPfsLayout, ProsperoPfsImage, ProsperoPfsc |
LibProsperoPkg.GP5 |
Gp5Creator, Gp5Project e relativo modello degli elementi. |
LibProsperoPkg.Keys |
ProsperoKeys |
LibProsperoPkg.PlayGo |
ProsperoPlayGo |
Per informazioni più approfondite sullo stato delle funzionalità e sulla documentazione tecnica del formato PKG per PS5, consultare la cartella docs/.
Documentazione
- docs/README.md – Indice della documentazione.
- docs/getting-started.md – Installazione, compilazione e creazione del primo pacchetto.
- docs/api-overview.md – Panoramica delle API pubbliche suddivise per namespace.
- docs/implementation-status.md – Stato delle funzionalità implementate e di quelle ancora mancanti.
- docs/ps5-pkg-format.md – Approfondimento tecnico sul formato PKG della PS5 e sul processo di creazione.
Limitazioni
LibProsperoPkg genera un pacchetto completo e coerente, la cui struttura e il contenitore dei metadati possono essere letti e ricostruiti correttamente tramite il lettore integrato.
Tuttavia, due componenti dell’immagine finale dipendono da informazioni generate direttamente dalla console e vengono quindi ricreate con un approccio best effort anziché essere riprodotte in modo identico: la tabella dei digest dell’immagine finale e l’archivio dei metadati di installazione presente nella parte conclusiva del pacchetto.
La libreria è pensata principalmente per console in modalità debug, dove i controlli sull’immagine finale risultano meno restrittivi. L’accettazione del pacchetto sulla console rimane comunque vincolata all’hardware.
Per maggiori dettagli è possibile consultare docs/implementation-status.md.
Download: Source code LibProsperoPKG
Alcune parti di questo articolo sono state generate con l’aiuto dell’intelligenza artificiale. Questo articolo contiene link affiliati a Amazon. Se acquisti tramite questi link, potrei guadagnare una commissione senza costi aggiuntivi per te.🔥 Prodotti in promozione e articoli più venduti: PS5
Vedi altri prodotti PS5
Ultimo aggiornamento 2026-08-10 / Link di affiliazione / Immagini da Amazon Product Advertising API

![[Scena Switch] Rilasciato SwitchNOW v1.2.0 per Nintendo Switch: Scorciatoie HOME, updater, pubblicità GeForce NOW e nuova autenticazione](https://www.biteyourconsole.net/wp-content/uploads/GeForceNowSwitch1900-238x178.webp)
![[Scena PS5] Rilasciato ShadowMountPlus v1.7 Alpha 5 ora con montaggio LVD più veloce, cache PFSC e controllo ventola](https://www.biteyourconsole.net/wp-content/uploads/ShadowMountPlus1900-238x178.webp)

![[Scena Switch] Rilasciato SwitchNOW v1.2.0 per Nintendo Switch: Scorciatoie HOME, updater, pubblicità GeForce NOW e nuova autenticazione](https://www.biteyourconsole.net/wp-content/uploads/GeForceNowSwitch1900-100x75.webp)
![[Scena PS5] Rilasciato ShadowMountPlus v1.7 Alpha 5 ora con montaggio LVD più veloce, cache PFSC e controllo ventola](https://www.biteyourconsole.net/wp-content/uploads/ShadowMountPlus1900-100x75.webp)