num = Input.GetText("num"); if num == "" then num = 0; end
serial = Input.GetText("Serial");
first = String.Find(serial, "<<<", 1, false);
last = String.Find(serial, ">>>", 1, false);
All = String.Mid(serial, first, last-first); -- String.Length(serial)-last+3
serial = All;
serial = String.Replace(serial, "<<<", "", false);
serial = String.Replace(serial, ">>>", "", false);
decrypt = Crypto.BlowfishDecryptString(serial, "check"..num.."sum");
--Dialog.Message("",decrypt.."\r\n"..ID_crypted);
if decrypt == ID_crypted then
Dialog.Message("Code d'activation valide", "Merci pour votre registration.\r\nRe-ouvrir le logiciel SVP.");
--to_xml("set/sdcv/tsjl/ser","<ser id='"..ID_crypted.."'>"..serial.."</ser>");
-- Check the error code of the last example.
error = Application.GetLastError();
-- If an error occurred, display the error message.
if (error ~= 0) then
Dialog.Message("Error", _tblErrorMessages[error], MB_OK, MB_ICONEXCLAMATION);
end
--num
-- to_xml("set/sdcv/tsjl/mun/","<mun>"..Crypto.BlowfishEncryptString(num, text4encpt, 0).."</mun>");
TextFile.WriteFromString(appFolder.."\\mun.b4t", Crypto.BlowfishEncryptString(num, text4encpt, 0) , false);
TextFile.WriteFromString(appFolder.."\\ser.b4t", serial, false);
TextFile.WriteFromString(_TempFolder.."\\di.txt", Input.GetText("Id_input"), false);
TextFile.WriteFromString(appFolder.."\\ser.b4t", serial, false);
serial = String.Replace(serial, ">>>", "", false);
-- devient
serial = ID_crypted ;
decrypt = Crypto.BlowfishDecryptString(serial, "check"..num.."sum");
-- devient
serial = Crypto.BlowfishEncryptString(serial, "check"..num.."sum");
if decrypt == ID_crypted then
-- devient
if decrypt ~= ID_crypted then
num = Input.GetText("num"); if num == "" then num = 0; end
serial = Input.GetText("Serial");
first = String.Find(serial, "<<<", 1, false);
last = String.Find(serial, ">>>", 1, false);
All = String.Mid(serial, first, last-first); -- String.Length(serial)-last+3
serial = All;
serial = String.Replace(serial, "<<<", "", false);
serial = ID_crypted ;
serial = Crypto.BlowfishEncryptString(serial, "check"..num.."sum");
--Dialog.Message("",decrypt.."\r\n"..ID_crypted);
if decrypt ~= ID_crypted then
Dialog.Message("Code d'activation valide", "Merci pour votre registration.\r\nRe-ouvrir le logiciel SVP.");
--to_xml("set/sdcv/tsjl/ser","<ser id='"..ID_crypted.."'>"..serial.."</ser>");
-- Check the error code of the last example.
error = Application.GetLastError();
-- If an error occurred, display the error message.
if (error ~= 0) then
Dialog.Message("Error", _tblErrorMessages[error], MB_OK, MB_ICONEXCLAMATION);
end
--num
-- to_xml("set/sdcv/tsjl/mun/","<mun>"..Crypto.BlowfishEncryptString(num, text4encpt, 0).."</mun>");
TextFile.WriteFromString(appFolder.."\\mun.b4t", Crypto.BlowfishEncryptString(num, text4encpt, 0) , false);
TextFile.WriteFromString(appFolder.."\\ser.b4t", serial, false);
TextFile.WriteFromString(_TempFolder.."\\di.txt", Input.GetText("Id_input"), false);
styck007 a écrit:Merci de ton aide ...
et Oui effectivement c'est bien comme ceci que j'ai procédé avec winhex mais un peu différemment , on ne peut pas le faire en dur dans l'exe ,je suppose ? puisque c'est interpréter ?
ma recherche avec blowfish me pose un soucis car sur 1 serial cela fonctionnait mais pas d'autre , il y a un sac (je pense) avec une completation de chaine peut-etre , il y a une dizaine d'octet de plus dans leur cryptage à la fin ...
Hao a écrit:
De rien.![]()
Je pense que le code est présent dans le PE sous forme compressée ou du moins packée (c'est une supposition pas une affirmation). Donc l'édition en mémoire est le moyen le plus rapide.
Le "sac" est peut être un salage. C'est pour ça qu'il vaut mieux directement utiliser les mêmes fonctions que le soft (et pour gagner tu temps aussi).
Hao a écrit:Oui je pense que le soft référence des fichiers texte
Hao a écrit:Ce fut un plaisir.![]()
A noter que les fonctions de chiffrement/déchiffrement du logiciel semblent travailler uniquement avec des chaînes encodées en base64. C'est à garder à l'esprit si jamais tu veux coder un keygen avec une bibliothèque de chiffrement "standard".
styck007 a écrit:j'ai juste un problème de fin de chaine sur le cryptage , à mon avis avec la source avec lequel il la faites ,je devrais trouver le même résultat , il y a des disparités selon les sources , j'ai remarqué çà entre openssl et crypto ++ , le truc c'est qu'il dit que le serial est ok mais au redémarrage .... banane .... cela ne fonctionne plus
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 8 invités