|
@@ -5,23 +5,31 @@ Compiling with PCK encryption key
|
|
|
|
|
|
.. highlight:: shell
|
|
|
|
|
|
-The export dialog gives you the option to encrypt your PCK file with an 256bit
|
|
|
-AES key, when releasing your game. This will make sure your scenes, scripts
|
|
|
+The export dialog gives you the option to encrypt your PCK file with a 256-bit
|
|
|
+AES key when releasing your project. This will make sure your scenes, scripts
|
|
|
and other resources are not stored in plain text and can not easily be ripped
|
|
|
by some script kiddie.
|
|
|
-Of course the key needs to be stored in the binary, but if it's compiled,
|
|
|
+
|
|
|
+Of course, the key needs to be stored in the binary, but if it's compiled,
|
|
|
optimized and without symbols, it would take some effort to find it.
|
|
|
|
|
|
For this to work, you need to build the export templates from source,
|
|
|
with that same key.
|
|
|
|
|
|
+.. warning::
|
|
|
+
|
|
|
+ This will **not** work if you use official, precompiled export templates.
|
|
|
+ It is absolutely **required** to compile your own export templates to use
|
|
|
+ PCK encryption.
|
|
|
+
|
|
|
Step by step
|
|
|
------------
|
|
|
|
|
|
-1. Generate a 256bit AES key in HEX. You can use the aes-256-cbc variant from
|
|
|
+1. Generate a 256-bit AES key in hexadecimal format. You can use the aes-256-cbc variant from
|
|
|
`this service <https://asecuritysite.com/encryption/keygen>`_.
|
|
|
|
|
|
- Alternatively, you can generate it yourself by using OpenSSL:
|
|
|
+ Alternatively, you can generate it yourself using
|
|
|
+ `OpenSSL <https://www.openssl.org/>`__ command-line tools:
|
|
|
|
|
|
::
|
|
|
|
|
@@ -31,6 +39,7 @@ Step by step
|
|
|
|
|
|
::
|
|
|
|
|
|
+ # NOTE: Do not use the key below! Generate your own key instead.
|
|
|
aeb1bc56aaf580cc31784e9c41551e9ed976ecba10d315db591e749f3f64890f
|
|
|
|
|
|
You can generate the key without redirecting the output to a file, but
|
|
@@ -55,16 +64,16 @@ Step by step
|
|
|
3. Compile Godot export templates and set them as custom export templates
|
|
|
in the export preset options.
|
|
|
|
|
|
-4. Set the encryption key in the ``Encryption`` tab of the export preset:
|
|
|
+4. Set the encryption key in the **Encryption** tab of the export preset:
|
|
|
|
|
|
.. image:: img/encryption_key.png
|
|
|
|
|
|
-5. Add filters for the files/folders to encrypt. By default, include filters
|
|
|
- are empty and nothing will be encrypted.
|
|
|
+5. Add filters for the files/folders to encrypt. **By default**, include filters
|
|
|
+ are empty and **nothing will be encrypted**.
|
|
|
|
|
|
-6. Export the project. The game should run with the files encrypted now.
|
|
|
+6. Export the project. The project should run with the files encrypted now.
|
|
|
|
|
|
-Possible Errors
|
|
|
+Troubleshooting
|
|
|
---------------
|
|
|
|
|
|
If you get an error like below, it means the key wasn't properly included in
|