NCA: Difference between revisions

No edit summary
 
(11 intermediate revisions by 4 users not shown)
Line 27: Line 27:
| 0x200
| 0x200
| 0x4
| 0x4
| Magicnum "NCA3" ("NCA2", "NCA1" or "NCA0" for pre-1.0.0 NCAs)
| Magic "NCA3" ("NCA2", "NCA1" or "NCA0" for pre-1.0.0 NCAs)
|-
|-
| 0x204
| 0x204
Line 63: Line 63:
| 0x220
| 0x220
| 0x1
| 0x1
| KeyGeneration (0x03 = [[3.0.1]], 0x04 = [[4.0.0]], 0x05 = [[5.0.0]], 0x06 = [[6.0.0]], 0x07 = [[6.2.0]], 0x08 = [[7.0.0]], 0x09 = [[8.1.0]], 0x0A = [[9.0.0]], 0x0B = [[9.1.0]], 0x0C = [[12.1.0]], 0x0D = [[13.0.0]], 0xFF = Invalid)
| KeyGeneration (0x03 = [[3.0.1]], 0x04 = [[4.0.0]], 0x05 = [[5.0.0]], 0x06 = [[6.0.0]], 0x07 = [[6.2.0]], 0x08 = [[7.0.0]], 0x09 = [[8.1.0]], 0x0A = [[9.0.0]], 0x0B = [[9.1.0]], 0x0C = [[12.1.0]], 0x0D = [[13.0.0]], 0x0E = [[14.0.0]], 0x0F = [[15.0.0]], 0x10 = [[16.0.0]], 0x11 = [[17.0.0]], 0x12 = [[18.0.0]], 0x13 = [[19.0.0]], 0x14 = [[20.0.0]], 0xFF = Invalid)
|-
|-
| 0x221
| 0x221
| 0x1
| 0x1
| [9.0.0+] Header1SignatureKeyGeneration (0 or 1)
| [9.0.0+] SignatureKeyGeneration
|-
|-
| 0x222
| 0x222
Line 113: Line 113:
| 0x0
| 0x0
| 0x4
| 0x4
| StartOffset (in Media Units which are 0x200 bytes)  
| StartOffset (in blocks which are 0x200 bytes)  
|-
|-
| 0x4
| 0x4
| 0x4
| 0x4
| EndOffset (in Media Units which are 0x200 bytes)  
| EndOffset (in blocks which are 0x200 bytes)  
|-
|-
| 0x8
| 0x8
Line 141: Line 141:
| 0x3
| 0x3
| 0x1
| 0x1
| HashType (0 = Auto, 1 = None, 2 = HierarchicalSha256Hash, 3 = HierarchicalIntegrityHash)
| HashType (0 = Auto, 1 = None, 2 = HierarchicalSha256Hash, 3 = HierarchicalIntegrityHash, [14.0.0+] 4 = AutoSha3, [14.0.0+] 5 = HierarchicalSha3256Hash, [14.0.0+] 6 = HierarchicalIntegritySha3Hash)
|-
|-
| 0x4
| 0x4
| 0x1
| 0x1
| EncryptionType (0 = Auto, 1 = None, 2 = XTS, 3 = AesCtr, 4 = AesCtrEx)
| EncryptionType (0 = Auto, 1 = None, 2 = AesXts, 3 = AesCtr, 4 = AesCtrEx, [14.0.0+] 5 = AesCtrSkipLayerHash, [14.0.0+] 6 = AesCtrExSkipLayerHash)
|-
|-
| 0x5
| 0x5
| 0x3
| 0x1
| Padding
| [14.0.0+] MetaDataHashType (0 = None, 1 = HierarchicalIntegrity)
|-
| 0x6
| 0x2
| Reserved
|-
|-
| 0x8
| 0x8
Line 172: Line 176:
|-
|-
| 0x178
| 0x178
| 0x20
| 0x28
| [12.0.0+] [[#CompressionInfo|CompressionInfo]]
| [12.0.0+] [[#CompressionInfo|CompressionInfo]]
|-
|-
| 0x198
| 0x1A0
| 0x68
| 0x30
| [14.0.0+] [[#MetaDataHashDataInfo|MetaDataHashDataInfo]]
|-
| 0x1D0
| 0x30
| Reserved
| Reserved
|}
|}
Line 540: Line 548:
| 0x10
| 0x10
| [[#BucketTreeHeader|TableHeader]]
| [[#BucketTreeHeader|TableHeader]]
|-
| 0x20
| 0x8
| Reserved
|}
|}


Line 564: Line 576:
| 0x4
| 0x4
| Reserved
| Reserved
|}
== MetaDataHashDataInfo ==
{| class="wikitable" border="1"
|-
! Offset
! Size
! Description
|-
| 0x0
| 0x8
| TableOffset
|-
| 0x8
| 0x8
| TableSize
|-
| 0x10
| 0x20
| TableHash
|}
|}