Qu'est-ce que le format de fichier XCI ?
Un fichier .xci est une image binaire d'une cartouche de jeu Nintendo Switch, créée en extrayant le contenu de la puce eMMC intégrée à une cartouche physique. Le format a été introduit lors du lancement de la console Nintendo Switch en mars 2017 et est parfois appelé NX Card Image ou eXternal Cart Image.
La structure du fichier commence par un en-tête Gamecard chiffré dans les premiers 0x200 octets, suivi d'un certificat de cartouche et de métadonnées de carte. À l'offset 0x10000, une table de partition HFS0 (Hash FileSystem) contient des sous-partitions nommées secure, normal, update et logo. À l'intérieur de la partition secure, les fichiers Nintendo Content Archive (.nca) contiennent les données réelles du jeu - des exécutables chiffrés au format ExeFS et des ressources de jeu au format RomFS.
Tout le contenu est chiffré en AES-XTS à l'aide de clés dérivées de clés maîtresses spécifiques à l'appareil. Pour utiliser un fichier .xci avec un émulateur, les clés de déchiffrement (prod.keys) doivent être extraites d'une console Nintendo Switch physique. Sans ces clés, le fichier ne peut être ni déchiffré ni lancé.
La taille des fichiers varie de 512 Mo à 32 Go, correspondant aux capacités des puces des cartouches physiques. Ce format est distinct du .nsp (Nintendo Submission Package), utilisé pour les jeux numériques de l'eShop. La variante compressée .xcz applique une compression NCZ pour réduire la taille du fichier sans modifier la structure de base.
Les deux principaux émulateurs Switch, Yuzu et Ryujinx, ont été fermés suite à des actions en justice de Nintendo en 2024. Des forks communautaires poursuivent le développement mais restent dans une incertitude juridique.
Sécurité et sûreté
RISQUE : MEDIUMLes fichiers XCI eux-mêmes ne sont pas malveillants (données de jeu chiffrées). Cependant, les sites distribuant des dumps XCI pour des jeux que les utilisateurs ne possèdent pas sont des sources de piratage. Risque : le téléchargement à partir de sources non officielles peut transmettre des logiciels malveillants intégrés ou déguisés en fichiers .xci. Le risque juridique lié à la possession de dumps de jeux commerciaux sans posséder la cartouche est réel (violation du droit d'auteur). L'écosystème des émulateurs a également été visé par des actions en justice de Nintendo (fermeture de Yuzu en 2024, accord Ryujinx en 2024). Utilisez uniquement des cartouches légales extraites par vos soins ; utilisez des outils basés sur Lockpick_RCM ou Hekate sur une console possédée physiquement pour extraire légalement les clés et les jeux.
Détails du format
en bref- Fichier de mappage de polices Adobe Reader - Adobe Acrobat/Reader utilise .xci pour les fichiers de configuration de mappage de polices basés sur XML ; totalement sans rapport avec la Nintendo Switch.
- Fichier de configuration IP Xilinx Vivado - Les outils FPGA Xilinx/AMD utilisent .xci pour la configuration du cœur IP ; sans rapport avec Nintendo ou Adobe.
Programmes qui ouvrent les fichiers XCI
Détails techniques
spécifications approfondies| Type de fichier | Image binaire propriétaire de cartouche de jeu |
| Type MIME | application/octet-stream |
| Ordre des octets | little-endian |
| Structure du conteneur | Partitions HFS0 (Hash FileSystem 0) : secure, normal, update, logo |
| Chiffrement | AES-XTS par secteur ; clés dérivées de clés maîtresses spécifiques à l'appareil |
| Fichier de clés de déchiffrement | prod.keys - doit être extrait du matériel physique Nintendo Switch ; requis par les émulateurs |
| Octets magiques | HEAD (48 45 41 44) à l'offset 0x0 (en-tête Gamecard chiffré) |
| Disposition de l'en-tête | En-tête Gamecard chiffré de 0x200 octets ; certificat de 0x200 octets ; table de partition racine HFS0 à l'offset 0x10000 |
| Format interne | Fichiers NCA (Nintendo Content Archive) contenant ExeFS (exécutable) et RomFS (données de jeu) |
| Vérification d'intégrité | Hachages SHA-256 stockés dans les en-têtes de partition HFS0 pour chaque entrée de fichier |
| Taille de fichier typique | 512 Mo - 32 Go (correspond à la capacité de la puce eMMC de la cartouche physique) |
| Capacités des puces de cartouche | 1, 2, 4, 8, 16 ou 32 Go eMMC |
| Variante compressée | .xcz - applique la compression NCZ aux fichiers NCA individuels dans le conteneur XCI |
| Remplissage (Padding) | Les fichiers peuvent contenir du remplissage vide si les données du jeu sont plus petites que la capacité de la puce physique |
| Publié | 2017 (Nintendo Switch launch, March 3, 2017) |
| Dernière version | current (no version number published; format tied to Switch hardware revision) |
| Spécification | switchbrew.org |