Changes

Jump to navigation Jump to search
78 bytes added ,  14:54, 6 April 2024
no edit summary
Line 1: Line 1:  
{{DISPLAYTITLE:packlist.dat}}
 
{{DISPLAYTITLE:packlist.dat}}
'''{{c|packlist.dat}}''' is a file in the "Packs" folder in the TrackMania installation directory. It contains the encryption keys for the [[PAK|.pak files]] there.
+
'''{{c|packlist.dat}}''' is a file in the "Packs" folder in the TrackMania installation directory. It contains the encryption keys for the [[PAK|.pak files]].
    
There is no equivalent file for ManiaPlanet.
 
There is no equivalent file for ManiaPlanet.
Line 20: Line 20:  
The name and the key of each entry are decrypted as follows.
 
The name and the key of each entry are decrypted as follows.
    +
// md5() is a function that returns the MD5 hash of the input string
 
  nameKey = md5("6611992868945B0B59536FC3226F3FD0" + sprintf("%u", salt));
 
  nameKey = md5("6611992868945B0B59536FC3226F3FD0" + sprintf("%u", salt));
 
  for (int i = 0; i < nameLength; i++)
 
  for (int i = 0; i < nameLength; i++)
Line 30: Line 31:  
  key = md5(keyString + "NadeoPak")
 
  key = md5(keyString + "NadeoPak")
   −
{{c|name}} corresponds to the name of a .pak file, minus the extension. {{c|key}} is the 16-byte key used during Blowfish decryption of the .pak file.
+
{{c|name}} corresponds to the name of a .pak file, without the extension. {{c|key}} is the 16-byte key used during Blowfish decryption of the .pak file.
    
== Signature verification ==
 
== Signature verification ==
   −
{{c|packlist.dat}} has a 16-byte signature at the end for integrity checking. It is verified as follows:
+
{{c|packlist.dat}} has a 16-byte signature/checksum at the end for integrity checking. It is verified as follows:
    
  md5In = md5("E3554B5828AF14F11AA42A5EAF0AEFC8" + sprintf("%u", salt));
 
  md5In = md5("E3554B5828AF14F11AA42A5EAF0AEFC8" + sprintf("%u", salt));
Line 48: Line 49:  
The calculated signature must match the signature in the file, or TrackMania will not accept the file.
 
The calculated signature must match the signature in the file, or TrackMania will not accept the file.
   −
[[Category:Internals]]
+
[[Category:File formats]]
5

edits

Navigation menu