Difference between revisions of "IdStorage"

From Vita Development Wiki
Jump to navigation Jump to search
(One intermediate revision by the same user not shown)
Line 23: Line 23:
 
! Leaf Index !! Empty? !! Unique? !! Notes
 
! Leaf Index !! Empty? !! Unique? !! Notes
 
|-
 
|-
| 0x00 || No || No || 0x20 is equal to 0x00
+
| 0x00->0x07 || No || No || SceIdStoragePspCertificates
 
|-
 
|-
| 0x01 || No || No || 0x21 is equal to 0x01
+
| 0x08->0x1F || Yes || No ||
 
|-
 
|-
| 0x02 || No || No || 0x22 is equal to 0x02
+
| 0x20->0x27 || Yes || No || This is equal to SceIdStoragePspCertificates from  leaf 0x00 to 0x07.
|-
 
| 0x03 || No || No || 0x23 is equal to 0x03
 
|-
 
| 0x04 || No || No || 0x24 is equal to 0x04
 
|-
 
| 0x05 || No || No || 0x25 is equal to 0x05
 
|-
 
| 0x06 || No || No || 0x26 is equal to 0x06
 
|-
 
| 0x07 || No || No || 0x27 is equal to 0x07
 
|-
 
| 0x08->0x1F || Yes || No ||
 
 
|-
 
|-
 
| 0x28->0x3F || Yes || No ||
 
| 0x28->0x3F || Yes || No ||
 
|-
 
|-
| 0x40 || No || Yes ||
+
| 0x40->0x47 || No || Yes || SceIdStoragePsp2Certificates
|-
 
| 0x41 || No || Yes ||
 
|-
 
| 0x42 || No || Yes ||
 
|-
 
| 0x43 || No || Yes ||
 
|-
 
| 0x44 || No || Yes || Some parts signatures
 
|-
 
| 0x45 || No || Yes ||
 
|-
 
| 0x46 || No || Yes ||
 
|-
 
| 0x47 || No || Yes ||
 
|-
 
| 0x48 || No || Yes ||
 
|-
 
| 0x49 || No || Yes ||
 
 
|-
 
|-
| 0x4A || No || Yes ||
+
| 0x48->0x4F || No || Yes || It looks like a cert, but it may actually be useless data.
 
|-
 
|-
| 0x4B->0x7D || Yes || No ||
+
| 0x50->0x7D || Yes || No ||
 
|-
 
|-
 
| 0x7E || No || Yes ||
 
| 0x7E || No || Yes ||

Revision as of 00:14, 13 May 2021

See also [1].

Description

Region of the PSVita eMMC where perconsole info is stored.

Location

Idstorage data is stored at first raw partition (code 0x1). Use [2] to extract.

Structure

On PSVita, max 993 leaves exist. Many leaves are empty, Some are empty, others are unique, and there are others which are duplicated. All leaves are of size 512 bytes.

First 0x20 * 0x200 bytes of the IDStorage eMMC partition is the index table, an array of 2-byte integers, which maps idstorage leaf to idstorage index. To find the index of a leaf, go through the array and note index of the element with the value of the desired leaf. Then, seek to 512 * index and read out the leaf data.

Content

Table of leaves

Leaf Index Empty? Unique? Notes
0x00->0x07 No No SceIdStoragePspCertificates
0x08->0x1F Yes No
0x20->0x27 Yes No This is equal to SceIdStoragePspCertificates from leaf 0x00 to 0x07.
0x28->0x3F Yes No
0x40->0x47 No Yes SceIdStoragePsp2Certificates
0x48->0x4F No Yes It looks like a cert, but it may actually be useless data.
0x50->0x7D Yes No
0x7E No Yes
0x7F Yes No
0x80 No Yes Special leaf with "SMI" header. SMI data: factory firmware encrypted and signed. Contains minver at offset 0x08 (size 4 bytes).
0x100 No Yes Build data strings.
0x102 No Yes Like idstorage mgmt data, Some strings, Like some flags, And like mac address, Maybe more?
0x103 No Yes Hw info, Syscon version (include DL verstion), Production date, Mac address, Mac address (USB), some strings, and more.
0x110 No Yes Manufacturing flags (3 byte) + 0xFF padding.
0x111 No Yes Mac address (6 byte) + 0xFF padding.
0x112 No Yes Serial number wide strings.
0x113 No Yes 0xFFed.
0x114 No Yes some data (0x40 byte) + 0xFF padding.
0x115 No Yes Model strings + 0xFF padding.