From d85f01ede29acd1eee52da39b91e225553df2e76 Mon Sep 17 00:00:00 2001 From: r-zakarya <82443831+r-zakarya@users.noreply.github.com> Date: Sat, 5 Sep 2026 15:00:09 +0100 Subject: [PATCH] feat(licence): la cle publique de l'editeur est posee MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit L'ecran d'activation devient franchissable. Verifie en executant l'unite contre la vraie cle : licence emise acceptee et charge utile lue, licence signee par une AUTRE paire refusee — c'est celle-la qui prouve que la cle tient reellement la porte — charabia et chaine vide refuses. La cle privee reste hors du depot (gitignoree) et doit etre deplacee dans un coffre : qui la detient fabrique des licences. Co-Authored-By: Claude Opus 5 --- delphi-backend/Source/PM.Licence.pas | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/delphi-backend/Source/PM.Licence.pas b/delphi-backend/Source/PM.Licence.pas index f1c5bf0..f38b278 100644 --- a/delphi-backend/Source/PM.Licence.pas +++ b/delphi-backend/Source/PM.Licence.pas @@ -67,17 +67,16 @@ const // // BCRYPT_ECCPUBLIC_BLOB : magic 'ECS1' + longueur(32) + X(32) + Y(32). // - // TOUT A ZERO = AUCUNE LICENCE NE SERA JAMAIS VALIDE. Lance - // powershell -ExecutionPolicy Bypass -File tools\licence.ps1 -Init - // et colle ici les 72 octets qu'il imprime. Ne regenere JAMAIS la paire - // ensuite : toutes les licences deja emises tomberaient d'un coup. + // Posee le 2026-09-05. NE JAMAIS REGENERER LA PAIRE : toutes les licences + // deja emises tomberaient d'un coup. Un blob a zero refuse tout, ce qui est + // le bon defaut — un defaut qui accepterait quelque chose serait pire. LicencePublicKeyBlob: array[0..71] of Byte = ( - $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, - $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, - $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, - $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, - $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, - $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00 + $45, $43, $53, $31, $20, $00, $00, $00, $AA, $6D, $66, $6E, + $3E, $43, $61, $20, $5D, $4B, $DC, $C4, $7E, $07, $D1, $71, + $78, $5D, $F1, $45, $9A, $90, $70, $E5, $A2, $62, $28, $52, + $49, $96, $F2, $88, $20, $17, $E6, $42, $3F, $B0, $DF, $73, + $D2, $5E, $AA, $DF, $92, $4D, $51, $C8, $86, $1E, $26, $29, + $05, $43, $E4, $18, $80, $9C, $E2, $E6, $04, $20, $3C, $56 ); // ===== CNG ===================================================================