Envelope Files: Difference between revisions
Jump to navigation
Jump to search
(Wrong size for file signature) |
CelesteBlue (talk | contribs) No edit summary |
||
(14 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
Envelope files are a general purpose container format for encrypting and signing a message. This format was likely introduced in FW 3.00 (>2.56 <=3.50). | Envelope files are a general purpose container format for encrypting and signing a message. This format was likely introduced in FW 3.00 (>2.56 <=3.50). | ||
Messages are encrypted using AES128 in | Messages are encrypted using AES128 in CTS mode, and signed using a public key. For encryption keys or public keys, see [[Keys#Envelope_Files_Keys|Keys]]. | ||
= Structure = | |||
== Format == | == Format == | ||
Line 42: | Line 44: | ||
! style="width: 5%" | ID | ! style="width: 5%" | ID | ||
! style="width: 15%" | Name | ! style="width: 15%" | Name | ||
! style="width: | ! style="width: 15%" | Description | ||
! style="width: | ! style="width: 15%" | Process | ||
! style="width: 30%" | Files/URLs | |||
! style="width: 20%" | Remarks | ! style="width: 20%" | Remarks | ||
|- | |- | ||
Line 49: | Line 52: | ||
| beta_updatelist | | beta_updatelist | ||
| Beta Update List | | Beta Update List | ||
| <code>/system/vsh/SceShellCore.elf</code> | |||
| | | | ||
* <code><nowiki>https://fus01.ps4.update.playstation.net/update/ps4/beta/list/us/ps4-updatelist_?.xml</nowiki></code> | * <code><nowiki>https://fus01.ps4.update.playstation.net/update/ps4/beta/list/us/ps4-updatelist_?.xml</nowiki></code> | ||
Line 56: | Line 60: | ||
| timezone | | timezone | ||
| Timezone | | Timezone | ||
| <code>/system/vsh/SceShellCore.elf</code> | |||
| | | | ||
* <code>/system_data/priv/settings_app/timezone.dat.env</code> | * <code>/system_data/priv/settings_app/timezone.dat.env</code> | ||
Line 64: | Line 69: | ||
| system_log_config | | system_log_config | ||
| System Log Config | | System Log Config | ||
| <code>/system/vsh/SceShellCore.elf</code> | |||
| | | | ||
* <code>/system/priv/system_log_ro/config/*.env</code> | * <code>/system/priv/system_log_ro/config/*.env</code> | ||
Line 75: | Line 81: | ||
| system_log_unknown | | system_log_unknown | ||
| | | | ||
| <code>/system/vsh/SceShellCore.elf</code> | |||
| | | | ||
|- | |- | ||
| <code>5</code> | | <code>5</code> | ||
| | | bgdc_config | ||
| Background Daily Checker | | Background Daily Checker | ||
| <code>/system/vsh/SceShellCore.elf</code> | |||
| | | | ||
* <code><nowiki>http://ps4-system.sec.np.dl.playstation.net/ps4-system/bgdc/np/v00/bgdc-config.xml.env</nowiki></code> | * <code><nowiki>http://ps4-system.sec.np.dl.playstation.net/ps4-system/bgdc/np/v00/bgdc-config.xml.env</nowiki></code> | ||
Line 85: | Line 93: | ||
|- | |- | ||
| <code>6</code> | | <code>6</code> | ||
| | | wctl_config | ||
| Title Workaround Control | | Title Workaround Control | ||
| <code>/system/vsh/SceShellCore.elf</code> | |||
| | | | ||
* <code>/mnt/disc/PS4/WCTL/wctl-config.env</code> | * <code>/mnt/disc/PS4/WCTL/wctl-config.env</code> | ||
Line 96: | Line 105: | ||
| morpheus_updatelist | | morpheus_updatelist | ||
| Morpheus (VR) Update List | | Morpheus (VR) Update List | ||
| <code>/system/vsh/SceShellCore.elf</code> | |||
| | | | ||
* <code><nowiki>https://f01.vrs.update.playstation.net/update/vrs/list/vrs-updatelist-utDCG9ywva92MlS0rXGRUJCjpDtsw38V.xml</nowiki></code> | * <code><nowiki>https://f01.vrs.update.playstation.net/update/vrs/list/vrs-updatelist-utDCG9ywva92MlS0rXGRUJCjpDtsw38V.xml</nowiki></code> | ||
Line 101: | Line 111: | ||
|- | |- | ||
| <code>8</code> | | <code>8</code> | ||
| | | netev_config | ||
| | | | ||
| <code>/system/vsh/SceShellCore.elf</code> | |||
| | | | ||
* <code>/system_data/priv/netev/netev-config.env</code> | * <code>/system_data/priv/netev/netev-config.env</code> | ||
* <code><nowiki>http://ps4-system.sec.np.dl.playstation.net/ps4-system/netev/np/v00/netev-config.env</nowiki></code> | * <code><nowiki>http://ps4-system.sec.np.dl.playstation.net/ps4-system/netev/np/v00/netev-config.env</nowiki></code> | ||
| | |||
|- | |||
| <code>9</code> | |||
| gls_config | |||
| | |||
| <code>/system/vsh/app/NPXS21000/eboot.bin</code> | |||
| | |||
* <code><nowiki>http://ps4-system.sec.np.dl.playstation.net/ps4-system/gls/np/v00/gls-default-config.env</nowiki></code> | |||
* <code><nowiki>http://ps4-system.sec.np.dl.playstation.net/ps4-system/gls/np/v01/gls-default-config.env</nowiki></code> | |||
| | | | ||
|- | |- | ||
Line 111: | Line 131: | ||
| hid_config | | hid_config | ||
| | | | ||
| <code>/system/vsh/SceShellCore.elf</code> | |||
| | | | ||
* <code>/system/priv/hid_config_service_ro/hid_config.env</code> | * <code>/system/priv/hid_config_service_ro/hid_config.env</code> | ||
Line 120: | Line 141: | ||
| hidusbpower | | hidusbpower | ||
| | | | ||
| <code>/system/vsh/SceShellCore.elf</code> | |||
| | | | ||
* <code>/system/priv/hid_config_service_ro/hidusbpower.env</code> | * <code>/system/priv/hid_config_service_ro/hidusbpower.env</code> | ||
Line 127: | Line 149: | ||
|- | |- | ||
| <code>13</code> | | <code>13</code> | ||
| | | patch_hmac_key | ||
| | | | ||
| <code>/system/vsh/SceShellCore.elf</code> | |||
| Embedded data in <code>/system/vsh/SceShellCore.elf</code> | |||
| | | | ||
|- | |- | ||
Line 135: | Line 158: | ||
| bgft | | bgft | ||
| Background File Transfer | | Background File Transfer | ||
| <code>/system/vsh/SceShellCore.elf</code> | |||
| | | | ||
* <code><nowiki>http://ps4-system.sec.np.dl.playstation.net/ps4-system/bgft/np/v00/bgft.env</nowiki></code> | * <code><nowiki>http://ps4-system.sec.np.dl.playstation.net/ps4-system/bgft/np/v00/bgft.env</nowiki></code> | ||
Line 148: | Line 172: | ||
| system_log_privacy | | system_log_privacy | ||
| | | | ||
| <code>/system/vsh/SceShellCore.elf</code> | |||
| | | | ||
* <code>/system/priv/system_log_ro/platform_privacy/*.env</code> | * <code>/system/priv/system_log_ro/platform_privacy/*.env</code> | ||
| Added 5.00 | | Added 5.00 | ||
|- | |||
| <code>18</code> | |||
| webbrowser_xutil | |||
| | |||
| <code>/system_ex/app/NPXS20001/eboot.bin</code> | |||
| | |||
* <code><nowiki>http://ps4-system.sec.np.dl.playstation.net/ps4-system/webbrowser/np/v00/webbrowser_features.env</nowiki></code> | |||
| | |||
* Added 5.00 | |||
* Exposed to C# shell via <code>sceXutilGetEnvelopeDataFromFile<code> / <code>sceXutilGetEnvelopeDataFromBuffer</code>. | |||
|- | |- | ||
| <code>19</code> | | <code>19</code> | ||
| entitlementmgr_config | | entitlementmgr_config | ||
| | | | ||
| <code>/system/vsh/SceShellCore.elf</code> | |||
| | | | ||
* <code><nowiki>https://ps4-system.sec.np.dl.playstation.net/ps4-system/entitlementmgr/np/v00/entitlementmgr_config.env</nowiki></code> | * <code><nowiki>https://ps4-system.sec.np.dl.playstation.net/ps4-system/entitlementmgr/np/v00/entitlementmgr_config.env</nowiki></code> | ||
| Added >5.05 <=7.00 | |||
|- | |||
| <code>21</code> | |||
| jsnex_netflixdeckeys | |||
| | |||
| <code>/system_ex/app/NPXS20001/eboot.bin</code> | |||
| Embedded data in <code>/system_ex/app/NPXS20001/eboot.bin</code> | |||
| Added >5.05 <=7.00 | |||
|- | |||
| <code>22</code> | |||
| party_config | |||
| | |||
| <code>/system/vsh/app/NPXS21002/eboot.bin</code> | |||
| | |||
* <code><nowiki>http://ps4-system.sec.np.dl.playstation.net/ps4-system/party/np/v00/party_config.env</nowiki></code> | |||
| Added >5.05 <=7.00 | | Added >5.05 <=7.00 | ||
|} | |} | ||
= Tools = | |||
* [https://github.com/SocraticBliss/ps4_env_decryptor ps4_env_decryptor by SocraticBliss (2020)] | |||
{{File Formats}} | {{File Formats}} | ||
<noinclude>[[Category:Main]]</noinclude> | <noinclude>[[Category:Main]]</noinclude> |
Latest revision as of 02:33, 15 December 2024
Envelope files are a general purpose container format for encrypting and signing a message. This format was likely introduced in FW 3.00 (>2.56 <=3.50).
Messages are encrypted using AES128 in CTS mode, and signed using a public key. For encryption keys or public keys, see Keys.
Structure[edit | edit source]
Format[edit | edit source]
Fields are little-endian.
Name | Offset | Size | Example | Remark |
---|---|---|---|---|
Signature | 0x000 |
4 | CC CB 73 51 |
Four bytes, not an int |
Version | 0x004 |
4 | 00 00 00 00 |
Only version 0 (zero) exists |
Content ID | 0x008 |
4 | 01 00 00 00 |
See Content |
Unknown | 0x00C |
4 | 00 00 00 00 |
Always 0 |
Message Size | 0x010 |
8 | 83 03 00 00 00 00 00 00 |
Size of the message in bytes. |
Unknown | 0x018 |
8 | 00 00 00 00 00 00 00 00 |
Always 0 |
Message IV | 0x020 |
16 | IV for encrypted message | |
Message Hash | 0x030 |
32 | SHA256 hash of unencrypted message bytes | |
File Signature | 0x050 |
256 | Verified using public key | |
Message Data | 0x150 |
Message Size | Encrypted message bytes. Encryption key and public key varies with content ID |
Content[edit | edit source]
The underlying unencrypted message format varies between different content.
ID | Name | Description | Process | Files/URLs | Remarks |
---|---|---|---|---|---|
1
|
beta_updatelist | Beta Update List | /system/vsh/SceShellCore.elf
|
|
Password "?" in URL varies with system version |
2
|
timezone | Timezone | /system/vsh/SceShellCore.elf
|
|
|
3
|
system_log_config | System Log Config | /system/vsh/SceShellCore.elf
|
|
Version in URL varies with system version |
4
|
system_log_unknown | /system/vsh/SceShellCore.elf
|
|||
5
|
bgdc_config | Background Daily Checker | /system/vsh/SceShellCore.elf
|
|
|
6
|
wctl_config | Title Workaround Control | /system/vsh/SceShellCore.elf
|
|
|
7
|
morpheus_updatelist | Morpheus (VR) Update List | /system/vsh/SceShellCore.elf
|
|
|
8
|
netev_config | /system/vsh/SceShellCore.elf
|
|
||
9
|
gls_config | /system/vsh/app/NPXS21000/eboot.bin
|
|
||
10
|
hid_config | /system/vsh/SceShellCore.elf
|
|
||
12
|
hidusbpower | /system/vsh/SceShellCore.elf
|
|
Added >3.70 <=4.05 | |
13
|
patch_hmac_key | /system/vsh/SceShellCore.elf
|
Embedded data in /system/vsh/SceShellCore.elf
|
||
14
|
bgft | Background File Transfer | /system/vsh/SceShellCore.elf
|
|
Version in URL varies with system version |
17
|
system_log_privacy | /system/vsh/SceShellCore.elf
|
|
Added 5.00 | |
18
|
webbrowser_xutil | /system_ex/app/NPXS20001/eboot.bin
|
|
| |
19
|
entitlementmgr_config | /system/vsh/SceShellCore.elf
|
|
Added >5.05 <=7.00 | |
21
|
jsnex_netflixdeckeys | /system_ex/app/NPXS20001/eboot.bin
|
Embedded data in /system_ex/app/NPXS20001/eboot.bin
|
Added >5.05 <=7.00 | |
22
|
party_config | /system/vsh/app/NPXS21002/eboot.bin
|
|
Added >5.05 <=7.00 |