feat(assets): brouiller les blocs embarques dans l'exe

Le frontend etait lisible dans l'onglet Image de Process Explorer, avec
les commentaires. BuildAssets.ps1 brouille chaque fichier avant brcc32,
PM.EmbeddedAssets le debrouille au moment de servir.

C'est de l'opacite, pas du secret : la cle est dans l'exe. Ca supprime
strings et l'onglet Image ; la memoire, un debogueur et la reponse HTTP
rendent toujours le texte. D'ou XOR plutot qu'AES — a securite egale
(nulle contre qui a l'exe), dix lignes, et aucune force affichee qu'on
n'a pas.

Une magie PMA1 prefixe le clair : sans elle, deux constantes qui derivent
serviraient du binaire au navigateur, ecran blanc sans trace.

Verifie en comparant les flux des deux cotes bloc par bloc, puis par
aller-retour sur app.js, index.html et style.css. Le frontend ne se
trouve plus dans le binaire.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
r-zakarya
2026-09-05 17:17:15 +01:00
parent 8f0bbb580f
commit 427d294b22
4 changed files with 195 additions and 13 deletions
+4
View File
@@ -99,3 +99,7 @@ android-client/web/*.res
# Cle privee des licences. Qui la detient fabrique des licences valables :
# elle vit dans un gestionnaire de mots de passe, pas dans un depot.
tools/licence-private.key
# Blocs brouilles intermediaires (BuildAssets.ps1). Regeneres a chaque build,
# comme assets.res : jetables, pas versionnes.
delphi-backend/assets/obf/