Jump to content
    1. Welcome to GTAForums!

    1. GTANet.com

    1. GTA Online

      1. Los Santos Drug Wars
      2. Updates
      3. Find Lobbies & Players
      4. Guides & Strategies
      5. Vehicles
      6. Content Creator
      7. Help & Support
    2. Red Dead Online

      1. Blood Money
      2. Frontier Pursuits
      3. Find Lobbies & Outlaws
      4. Help & Support
    3. Crews

    1. Grand Theft Auto Series

      1. Bugs*
      2. St. Andrews Cathedral
    2. GTA VI

    3. GTA V

      1. Guides & Strategies
      2. Help & Support
    4. GTA IV

      1. The Lost and Damned
      2. The Ballad of Gay Tony
      3. Guides & Strategies
      4. Help & Support
    5. GTA San Andreas

      1. Classic GTA SA
      2. Guides & Strategies
      3. Help & Support
    6. GTA Vice City

      1. Classic GTA VC
      2. Guides & Strategies
      3. Help & Support
    7. GTA III

      1. Classic GTA III
      2. Guides & Strategies
      3. Help & Support
    8. Portable Games

      1. GTA Chinatown Wars
      2. GTA Vice City Stories
      3. GTA Liberty City Stories
    9. Top-Down Games

      1. GTA Advance
      2. GTA 2
      3. GTA
    1. Red Dead Redemption 2

      1. PC
      2. Help & Support
    2. Red Dead Redemption

    1. GTA Mods

      1. GTA V
      2. GTA IV
      3. GTA III, VC & SA
      4. Tutorials
    2. Red Dead Mods

      1. Documentation
    3. Mod Showroom

      1. Scripts & Plugins
      2. Maps
      3. Total Conversions
      4. Vehicles
      5. Textures
      6. Characters
      7. Tools
      8. Other
      9. Workshop
    4. Featured Mods

      1. Design Your Own Mission
      2. OpenIV
      3. GTA: Underground
      4. GTA: Liberty City
      5. GTA: State of Liberty
    1. Rockstar Games

    2. Rockstar Collectors

    1. Off-Topic

      1. General Chat
      2. Gaming
      3. Technology
      4. Movies & TV
      5. Music
      6. Sports
      7. Vehicles
    2. Expression

      1. Graphics / Visual Arts
      2. GFX Requests & Tutorials
      3. Writers' Discussion
      4. Debates & Discussion
    1. Announcements

    2. Support

    3. Suggestions

How to decrypt RPF archives on PC?


nelabs
 Share

Recommended Posts

(Previous thread with a less specific question)

 

I'm interested in making a proper mod manager for GTA V on PC (inspired by KSP-CKAN), but the problem is decrypting the RPF files on PC; OpenIV currently doesn't support automation, and LibertyV doesn't support the PC version. My knowledge of crypto and reverse engineering is poor, so I've been stumped by this. One solution would be to wait for the OpenIV package support and base a tool around that, but it's unclear if it could be fully automated or when it's going to be released. Would anyone more knowledgeable be willing to help with this, or is there any chance of getting the info from the OpenIV team?

 

Stuff I've found so far:

Link to comment
Share on other sites

  • 1 month later...

In case that you are still interested, have a look at the source code of my gta-toolkit. Its a C# library that also supports decryption and encryption of GTAV RPF files.

 

Edit: And make sure to use an unencrypted exe (a memory dump of the running game for example) when trying to extract the key with the library. It won't work otherwise.

Edited by Neodymium
  • Like 3
Link to comment
Share on other sites

Hey so your tool allow to encrypt RPF ? :O

 

I know how to decrypt RPF thanks to the constants, but can you explain how you did to encrypt back ?

 

No problem if you want to keep this private ;)

Edited by sasuke78200
Link to comment
Share on other sites

There is nothing private. Everything is in the code that is necessary to do the encryption.

How exactly that works? Well, thats a bit tricky and not so easy to explain in a few sentences. But it's basically a mix of solving large systems of equations for getting encryption-constants and some bruteforcing where this doesnt work.

  • Like 2
Link to comment
Share on other sites

Edit: And make sure to use an unencrypted exe (a memory dump of the running game for example) when trying to extract the key with the library. It won't work otherwise.

 

Is there some way to do this without having to make a dump?

Link to comment
Share on other sites

In case that you are still interested, have a look at the source code of my gta-toolkit. Its a C# library that also supports decryption and encryption of GTAV RPF files.

 

Edit: And make sure to use an unencrypted exe (a memory dump of the running game for example) when trying to extract the key with the library. It won't work otherwise.

Amazing work!

Do you have a degree in cryptography perhaps?

  • Like 1
Link to comment
Share on other sites

 

Edit: And make sure to use an unencrypted exe (a memory dump of the running game for example) when trying to extract the key with the library. It won't work otherwise.

 

Is there some way to do this without having to make a dump?

 

 

You have to, because we need the constants to decrypt.

Link to comment
Share on other sites

 

 

Edit: And make sure to use an unencrypted exe (a memory dump of the running game for example) when trying to extract the key with the library. It won't work otherwise.

 

Is there some way to do this without having to make a dump?

 

 

You have to, because we need the constants to decrypt.

 

The other way would be to change a source code and include the constants instead of reading them from GTA5.exe

Link to comment
Share on other sites

 

 

 

Edit: And make sure to use an unencrypted exe (a memory dump of the running game for example) when trying to extract the key with the library. It won't work otherwise.

 

Is there some way to do this without having to make a dump?

 

 

You have to, because we need the constants to decrypt.

 

The other way would be to change a source code and include the constants instead of reading them from GTA5.exe

 

 

Well he doesn't really have to bother himself, because there's already two functions to avoid dumping each launch.

 

 

https://github.com/Neodymium146/gta-toolkit/blob/master/RageLib.GTA5/Cryptography/GTA5Constants.cs#L529

 

 

https://github.com/Neodymium146/gta-toolkit/blob/master/RageLib.GTA5/Cryptography/GTA5Constants.cs#L519

Link to comment
Share on other sites

You have to, because we need the constants to decrypt.

 

I meant to ask if there's a way to get the constants without making a dump, because it'd be impracticable to ask it from normal users.

Link to comment
Share on other sites

You could ask the user to start the game once and then read the unencrypted exe automatically from the memory using the windows API. The constants can then, as mentioned above, saved to the harddisk.

The other way is to find a way to decrypt the exe file. OpenIV seems to do it that way since there is no need to start the game.

It's just a guess, but if I remember correctly, the AES key was also found in the encrypted exe. This is probably a good starting point.

 

Another thing: An alternative to edit RPF files on the harddisk is to virtualize them such that mods dont need an installation at all. If you know some C++, it's maybe worth to improve or rewrite my mod-loader.

Link to comment
Share on other sites

 

Neodymium, do you have a degree in cryptography perhaps?

Edited by fastman92
  • Like 1
Link to comment
Share on other sites

 

You have to, because we need the constants to decrypt.

 

I meant to ask if there's a way to get the constants without making a dump, because it'd be impracticable to ask it from normal users.

 

 

 

Use x64dbg ;)

Link to comment
Share on other sites

Neodymium, do you have a degree in cryptography perhaps?

I have an academic degree but not in cryptography or computer science.

Link to comment
Share on other sites

  • 2 months later...

In case that you are still interested, have a look at the source code of my gta-toolkit. Its a C# library that also supports decryption and encryption of GTAV RPF files.

 

Edit: And make sure to use an unencrypted exe (a memory dump of the running game for example) when trying to extract the key with the library. It won't work otherwise.

 

 

This project is incredible! I'm humbled. Only works with uncracked game .exe

Edited by roundy72
Link to comment
Share on other sites

  • 4 years later...

HI Neodymium,

 

You mentioned above that you were able to decrypt RPF file using gta-toolkit ... Could you please explain how to use it? I read the documentation and didn´t find info about that. Thanks in advance dude!

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • 1 User Currently Viewing
    0 members, 0 Anonymous, 1 Guest

×
×
  • Create New...

Important Information

By using GTAForums.com, you agree to our Terms of Use and Privacy Policy.