ABCDEFGHIJKLMNOPQRSTUVWXYZ

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019 - 7 sept. 2003 à 10:02
TheWhiteShadow Messages postés 135 Date d'inscription mercredi 15 janvier 2003 Statut Membre Dernière intervention 7 avril 2006 - 22 sept. 2003 à 09:32
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/11357-abcdefghijklmnopqrstuvwxyz

TheWhiteShadow Messages postés 135 Date d'inscription mercredi 15 janvier 2003 Statut Membre Dernière intervention 7 avril 2006
22 sept. 2003 à 09:32
ben le magic_buf tu le recup dans un debugger... :)

Evidemment pour faire un keygen, faut d'abord connaitre l'algo qui permet de crypter et donc en trouver un qui decrypte !!
En l'occurence, ce tableau c'est des octets que l'auteur a choisi au hasard, pour augmenter la qualité du cryptage.

... voilà, qu'est-ce que tu veux que je t'explique de plus ?

au fait, c'est vrai... on peut pas avoir une idée générale de comment ça marche en voyant la source. D'ailleurs cet algo je l'ai recup d'un autre keygen, y'avait un *.txt avec :). Tiens j'te copie l'expli, tu devrai mieux comprendre (je l'ai fait à partir de ça) :

"FlashFXP Password Decrypter 0.1
=============================

tested on FlashFXP 1.2 (build 475 beta)

get a SITE.DAT file and open it with any texteditor, and there you'll
find stuff like this:

[kz]
IP=ipip
User=klefz
Pass=034D3F4342097B
Port=21
Options=3003333000

so just copy 034D3F4342097B and paste it into the program and
press decrypt, p00f you'll get the decrypted password =]

The encryption routine
====================

magic buffer:

79 41 33 36 7A 41 34 38-64 45 68 66 72 76 67 68 yA36zA48dEhfrvgh
47 52 67 35 37 68 35 55-6C 44 76 33 00 00 00 00 GRg57h5UlDv3

example

[kz]
IP=ipip
User=klefz
Pass=034D3F4342097B <- encrypted pass
Port=21
Options=3003333000

Pass=034D3F4342097B <- encrypted pass
^^ = first magic number

Pass=034D3F4342097B <- encrypted pass
^^ = first encrypted char in pass

Pass=034D3F4342097B <- encrypted pass
^^ = second encrypted pass

etc

the calculations is simple.. first char in pass is calculated like this:

0x4D XOR 0x79 (first char in magic buffer) = 0x34
0x34-0x03 (magic number) = 0x31 (1)
that's the first char in our password

0x3F XOR 0x41 (second char in magic buffer) = 0x7E
0x73-0x4D (first encrypted char) = 0x31 (1)
second char of the pass

0x43 XOR 0x33 (third char in magic buffer, think you get it now ;) = 0x70
0x70-0x3F (second encrypted char) = 0x31 (1)

0x42 XOR 0x36 = 0x74
0x74-0x43=0x31 (1)

0x09 XOR 0x7A = 0x73
0x73-0x42=0x31 (1)

0x7B XOR 0x41 = 0x3A
0x3A-0x09=0x31 (1)

so the password is 111111 ... not that hard ;)

NOTE if password is longer than 28 the pointer to the magic buffer=1 again

and if a char is > 0xFF then do like this:

0x5B XOR 0x41 = 0x1A
0x1A-0xE8 = 0xFFFFFF32 (all wrong here :)
0xFFFFFF32-0xFFFFFF01 = 0x31 (1) right answer ;)
cs_Sioban Messages postés 6 Date d'inscription mercredi 13 février 2002 Statut Membre Dernière intervention 21 septembre 2003
21 sept. 2003 à 16:23
Ca fait longtemps que je cherche à faire des keygens, mais là ton code me parait un peu inutile sans explications (je parle pour moi).
Je suis désolé de te demander çà mais pourrais tu expliquer ta source?
Du type:
Pourquoi remplir magic_buf[] avec 0x79, 0x41... comment as tu c'est valeurs?
Et pour ce qui ce passe dans la boucle for?
Merci

Sinon je trouve cette source très pédagogique.
cs_Dean Messages postés 500 Date d'inscription mardi 16 avril 2002 Statut Membre Dernière intervention 2 août 2004
7 sept. 2003 à 20:06
À propos de ton source, je trouve que c'est pas mal du tout... D'autant que j'avais déjà essayer de m'attaquer à FlashFXP et je me suis cassé les dents dessus...

Bonne continuation ;-)
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
7 sept. 2003 à 12:23
Visual Studio possede tous les outils au top pour generer une interface graphique a la souris et il t'ecrit le *.rc + le resource.h, pour info le gros exe Delphi tourne.
La prog par API direct, je la trouve plus simple que d'apprendre des sabirs de surcouche comme MFC chez MS ou ta syntaxe chez Borland. Va voir mes sources pour t'en convaincre.
TheWhiteShadow Messages postés 135 Date d'inscription mercredi 15 janvier 2003 Statut Membre Dernière intervention 7 avril 2006
7 sept. 2003 à 12:11
voilà dans le zip j'ai rajouter "A_Tester.exe". Peux tu voir si celui ci marche ? j'ai simplement supprimé la ligne : #include <vcl.h> qui était la seule lib' incluse (apparemment). Au fait est-ce que la version delphi fonctionne chez toi ? En tout merci de m'avoir averti de ce détail très important :) Et ce taper la prog des fenetres avec les apis win faut être mega baleze... nan ?

sinon à propos du code y'aurai pas des améliorations à faire ?

En compilo y'a Visual C++ Visual Studio (et DevC++), le mieux c'est Visual Studio je pense ? Si j'apprends avec CBuilder je serai aussi programmer avec Visual C++/Studio ? pcq sinon ça m'emmerderai grave :) Visual Studio faut développer soit même l'interface graphique no ?

Bon vlàlala ça fait bcp de questions mais jss new alors :) merci de votre aide.

A+ Twis
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
7 sept. 2003 à 10:02
Salut, tant qu'a te mettre au C/C++, ce que je t'encourage vivement de poursuivre, a mon avis tu pourrais peut-etre te debarrasser de toute bibli additionnelle. Ton exe ne peut se lancer chez moi sans un setup, tu utilises les biblis Borland qui n'y sont pas, prog direct avec API win32 et exe sera independant.
Rejoignez-nous