Editing Envelope Files

Jump to navigation Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

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 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 File ==
 
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 ==


Fields are little-endian.
Fields are little-endian.
Line 32: Line 26:
| Message Hash || <code>0x030</code> || 32 || || SHA256 hash of unencrypted message bytes
| Message Hash || <code>0x030</code> || 32 || || SHA256 hash of unencrypted message bytes
|-
|-
| File Signature || <code>0x050</code> || 256 || || Verified using public key
| File Signature || <code>0x050</code> || 128 || || Verified using public key
|-
|-
| Message Data || <code>0x150</code> || Message Size || || Encrypted message bytes. Encryption key and public key varies with content ID
| Message Data || <code>0x150</code> || Message Size || || Encrypted message bytes
|}
|}


== Content ==
==== Content ====
 
The underlying unencrypted message format varies between different content.


{| class="wikitable sortable"
{| class="wikitable sortable"
! style="width: 5%" | ID
! style="width: 5%" | ID
! style="width: 15%" | Name
! style="width: 15%" | Name
! style="width: 15%" | Description
! style="width: 20%" | Description
! style="width: 15%" | Process
! style="width: 40%" | Files/URLs
! style="width: 30%" | Files/URLs
! style="width: 20%" | Remarks
! style="width: 20%" | Remarks
|-
|-
Line 52: Line 43:
| 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 60: Line 50:
| 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 69: Line 58:
| 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 81: Line 69:
| system_log_unknown
| system_log_unknown
|  
|  
| <code>/system/vsh/SceShellCore.elf</code>
|  
|  
|-
|-
| <code>5</code>
| <code>5</code>
| bgdc_config
| bgdc
| 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 93: Line 79:
|-
|-
| <code>6</code>
| <code>6</code>
| wctl_config
| wctl
| 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 105: Line 90:
| 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 111: Line 95:
|-
|-
| <code>8</code>
| <code>8</code>
| netev_config
| netev
|  
|  
| <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 131: Line 105:
| 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 141: Line 114:
| 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 149: Line 121:
|-
|-
| <code>13</code>
| <code>13</code>
| patch_hmac_key
| patch
|
|  
|  
| <code>/system/vsh/SceShellCore.elf</code>
| Embedded data in <code>/system/vsh/SceShellCore.elf</code>
|  
|  
|-
|-
| <code>14</code>
| <code>14</code>
| bgft
| bgft
| 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 172: Line 142:
| 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
| Added >6.50 <=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
|}
|}
= Tools =
* [https://github.com/SocraticBliss/ps4_env_decryptor ps4_env_decryptor by SocraticBliss (2020)]
{{File Formats}}
<noinclude>[[Category:Main]]</noinclude>
Please note that all contributions to PS4 Developer wiki are considered to be released under the GNU Free Documentation License 1.2 (see PS4 Developer wiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To protect the wiki against automated edit spam, we kindly ask you to solve the following hCaptcha:

Cancel Editing help (opens in new window)