This commit adds support for using different `keybox.xml` files for different applications. This allows for greater flexibility, enabling the use of distinct cryptographic identities for specific groups of apps.
The `target.txt` configuration now supports a new syntax. A line with a filename in brackets, like `[demo_keybox.xml]`, sets the active keybox for all subsequent packages in the file.
The implementation refactors the configuration and keybox loading logic:
- PkgConfig now parses the new syntax and maps packages to their designated keybox files.
- KeyBoxUtils is updated to dynamically load and cache multiple keybox files on demand, instead of relying on a single global state.
- Certificate generation and hacking functions now use this new configuration to select the correct keybox for each operation based on the application's UID.