ACT.DAT: Difference between revisions
Jump to navigation
Jump to search
Cfwprophet (talk | contribs) |
CelesteBlue (talk | contribs) No edit summary |
||
Line 1: | Line 1: | ||
== Description == | == Description == | ||
=== | An activation file for a Sony Playstation console, based on an account email and password, the devices IDPS, the platform and activation type. | ||
It is used to decrypt NPDRM content license files (.rif) and [[EDAT files]], which themselves lead to content decryption (PFS layer, SELF layer). | |||
== Location == | |||
=== PSP === | |||
=== PS3 === | |||
"home/000000XX/exdata/act.dat" | "home/000000XX/exdata/act.dat" | ||
=== PSVita === | |||
[[Files_on_the_PS_Vita#tm0|tm0]]:npdrm/act.dat | |||
[[Files_on_the_PS_Vita#tm0|tm0]]:psmdrm/act.dat (only if PSM Is activated) | |||
== Structure == | |||
{| class="wikitable sortable" | |||
| style="background-color:#123EDA; color:#FFFFFF;" |'''Name''' | |||
| style="background-color:#123EDA; color:#FFFFFF;" |'''Offset''' | |||
| style="background-color:#123EDA; color:#FFFFFF;" |'''Size''' | |||
| style="background-color:#123EDA; color:#FFFFFF;" |'''Example''' | |||
| style="background-color:#123EDA; color:#FFFFFF;" |'''Remark''' | |||
|- | |||
| Activation Type || 0x0 || 0x4 || 0001 || 0 (acttype=0 or acttype=1), 1 (acttype=4) | |||
|- | |||
| Unknown || 0x0 || 0x4 || 0001 || Always 1 | |||
|- | |||
| Version || 0x4 || 0x4 || 00000002 || 1 or 2 (current) | |||
|- | |||
| Account ID || 0x8 || 0x8 || AB CD EF 01 02 34 78 91 || personal PSN account ID | |||
|- | |||
| Primary Key Table || 0x10 || 0x800 || N.A || Encrypted RIF keys | |||
|- | |||
| Unknown1 || 0x810 || 0x40 || N.A|| | |||
|- | |||
| OpenPsId|| 0x850 || 0x10 || N.A|| Result from _sceKernelGetOpenPsId() in the SceSblAimgr Module | |||
|- | |||
| Unknown3 || 0x860 || 0x10 || N.A|| Encrypted_data for v.1 / Padding for v.2 | |||
|- | |||
| Unknown4 || 0x870 || 0x10 || N.A|| Encrypted_data for v.1 / Time_Stamp for v.2 | |||
|- | |||
| Secondary Table || 0x880 || 0x650 || N.A || | |||
|- | |||
| RSA Signature|| 0xED0 || 0x100 || N.A|| RSA Public Key for RIF type 0 and 1 | |||
|- | |||
| Unknown Sig || 0xFD0 || 0x40 || N.A|| params are unknown | |||
|- | |||
| ECDSA Signature || 0x1010 || 0x28 || N.A|| pub=vsh_pub, ctype=0x02(vsh_curves) | |||
|} | |||
== Downloading == | |||
NOT WORKING ANYMORE. | |||
A PHP script is released to obtain the act.dat. See [[http://playstationhax.xyz/forums/topic/550-news-vita-hack/?page=4#comment-23519 playstationhax.xyz]] | |||
[[http://pastie.org/private/5koe6klxypv8dpbxkcmda pastie]] | |||
<source lang="PHP"> | |||
<?php | |||
$data = array( | |||
"loginid" => "", /* email */ | |||
"password" => "", /*pass */ | |||
"consoleid" => "", /* 000000000000000000000 */ | |||
"platform" => "psp2", /* for vita, don't modify, possible parameters psp,ps3,psp2.ps4 is unknown */ | |||
"acttype" => "4", /* for vita, don't modify */ | |||
); | |||
$custom_headers = array( | |||
"X-I-5-DRM-Version: 1.0", | |||
); | |||
$ch = curl_init(); | |||
curl_setopt($ch, CURLOPT_URL, "https://commerce.np.ac.playstation.net/cap.m"); | |||
curl_setopt($ch, CURLOPT_USERAGENT, "8888888"); | |||
curl_setopt($ch, CURLOPT_HTTPHEADER, $custom_headers); | |||
curl_setopt($ch, CURLOPT_POST, 1); | |||
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); | |||
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); | |||
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); | |||
//curl_setopt($ch, CURLOPT_HEADER, 1); | |||
//curl_setopt($ch, CURLOPT_CERTINFO, 1); | |||
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); | |||
curl_setopt($ch, CURLOPT_VERBOSE, 1); | |||
$response = curl_exec($ch); | |||
curl_close($ch); | |||
$fp = fopen("act.dat", "wb"); | |||
fwrite($fp, $response); | |||
fclose($fp); | |||
?> | |||
</source> | |||
=== Known Issues/bugs === | === Known Issues/bugs === | ||
* [[QA_Flagging#Act.dat_.28PSN_activation.29_gets_deleted|Act.dat (PSN activation) gets deleted]] | * [[QA_Flagging#Act.dat_.28PSN_activation.29_gets_deleted|Act.dat (PSN activation) gets deleted]] | ||
{{File Formats}}<noinclude>[[Category:Main]]</noinclude> | {{File Formats}}<noinclude>[[Category:Main]]</noinclude> |
Revision as of 00:03, 25 December 2019
Description
An activation file for a Sony Playstation console, based on an account email and password, the devices IDPS, the platform and activation type.
It is used to decrypt NPDRM content license files (.rif) and EDAT files, which themselves lead to content decryption (PFS layer, SELF layer).
Location
PSP
PS3
"home/000000XX/exdata/act.dat"
PSVita
tm0:npdrm/act.dat tm0:psmdrm/act.dat (only if PSM Is activated)
Structure
Name | Offset | Size | Example | Remark |
Activation Type | 0x0 | 0x4 | 0001 | 0 (acttype=0 or acttype=1), 1 (acttype=4) |
Unknown | 0x0 | 0x4 | 0001 | Always 1 |
Version | 0x4 | 0x4 | 00000002 | 1 or 2 (current) |
Account ID | 0x8 | 0x8 | AB CD EF 01 02 34 78 91 | personal PSN account ID |
Primary Key Table | 0x10 | 0x800 | N.A | Encrypted RIF keys |
Unknown1 | 0x810 | 0x40 | N.A | |
OpenPsId | 0x850 | 0x10 | N.A | Result from _sceKernelGetOpenPsId() in the SceSblAimgr Module |
Unknown3 | 0x860 | 0x10 | N.A | Encrypted_data for v.1 / Padding for v.2 |
Unknown4 | 0x870 | 0x10 | N.A | Encrypted_data for v.1 / Time_Stamp for v.2 |
Secondary Table | 0x880 | 0x650 | N.A | |
RSA Signature | 0xED0 | 0x100 | N.A | RSA Public Key for RIF type 0 and 1 |
Unknown Sig | 0xFD0 | 0x40 | N.A | params are unknown |
ECDSA Signature | 0x1010 | 0x28 | N.A | pub=vsh_pub, ctype=0x02(vsh_curves) |
Downloading
NOT WORKING ANYMORE.
A PHP script is released to obtain the act.dat. See [playstationhax.xyz]
[pastie]
<?php
$data = array(
"loginid" => "", /* email */
"password" => "", /*pass */
"consoleid" => "", /* 000000000000000000000 */
"platform" => "psp2", /* for vita, don't modify, possible parameters psp,ps3,psp2.ps4 is unknown */
"acttype" => "4", /* for vita, don't modify */
);
$custom_headers = array(
"X-I-5-DRM-Version: 1.0",
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://commerce.np.ac.playstation.net/cap.m");
curl_setopt($ch, CURLOPT_USERAGENT, "8888888");
curl_setopt($ch, CURLOPT_HTTPHEADER, $custom_headers);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
//curl_setopt($ch, CURLOPT_HEADER, 1);
//curl_setopt($ch, CURLOPT_CERTINFO, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_VERBOSE, 1);
$response = curl_exec($ch);
curl_close($ch);
$fp = fopen("act.dat", "wb");
fwrite($fp, $response);
fclose($fp);
?>
Known Issues/bugs
|