Editing Activation File
Jump to navigation
Jump to search
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 7: | Line 7: | ||
=== File Verification === | === File Verification === | ||
A HMACSHA256 of the entire act.dat file using the SHA256 of the OpenPsId as the key is stored in Vtrm using SceShellCore's | A HMACSHA256 of the entire act.dat file using the SHA256 of the OpenPsId as the key is stored in Vtrm using SceShellCore's module ID in slot 0. | ||
SceShellCore's module ID is <code>0x3800000000000010</code>. | |||
<code>hmacsha256(sha256(sceKernelGetOpenPsIdForSystem()), act.dat)</code> (pseudo-code) | <code>hmacsha256(sha256(sceKernelGetOpenPsIdForSystem()), act.dat)</code> (pseudo-code) | ||
Line 25: | Line 27: | ||
The file is truncated to valid activation structures, so its size will be a multiple of 512. | The file is truncated to valid activation structures, so its size will be a multiple of 512. | ||
=== Activation | === Activation === | ||
Fields are big-endian. | Fields are big-endian. | ||
Line 38: | Line 40: | ||
| Signature || <code>0x000</code> || 4 || <code>41 43 54 00</code> ('ACT\0') | | Signature || <code>0x000</code> || 4 || <code>41 43 54 00</code> ('ACT\0') | ||
|- | |- | ||
| Version || <code>0x004</code> || 2 || <code>00 01</code> || 1 | | Version || <code>0x004</code> || 2 || <code>00 01</code> || 1 (current) | ||
|- | |- | ||
| Type || <code>0x006</code> || 2 || <code>00 02</code> || 2 or 3 | | Type || <code>0x006</code> || 2 || <code>00 02</code> || 2 or 3 | ||
Line 50: | Line 52: | ||
| Unknown || <code>0x020</code> || 64 || - || | | Unknown || <code>0x020</code> || 64 || - || | ||
|- | |- | ||
| | | OpenPsId SHA256 Hash || <code>0x060</code> || 32 || - || <code>sha256(sceKernelGetOpenPsIdForSystem())</code> (pseudo-code) | ||
|- | |- | ||
| Unknown || <code>0x080</code> || 32 || - || Found to match exactly for different users and consoles. Maybe system version SHA256 hash? | | Unknown || <code>0x080</code> || 32 || - || Found to match exactly for different users and consoles. Maybe system version SHA256 hash? | ||
|- | |- | ||
| RIF Secret Encryption IV || <code>0x0A0</code> || 16 || - || See [[ | | RIF Secret Encryption IV || <code>0x0A0</code> || 16 || - || See [[Rif#RIF|rif]] | ||
|- | |- | ||
| RIF Secret Encryption Key Seed | | RIF Secret Encryption Key Seed || <code>0x0B0</code> || 16 || - || Used to decrypt [[Rif#Secret|rif secret]] (KDS RIF only) | ||
|- | |- | ||
| Unknown || <code> | | Unknown || <code>0x0C0</code> || 64 || - || | ||
|- | |- | ||
| RSA Signature || <code>0x100</code> || 256 || - || Verified using same public key as RIF type 0 | | RSA Signature || <code>0x100</code> || 256 || - || Verified using same public key as RIF type 0 |