Retrouver/Génerer un checksum à partir de trames reçus?

Retrouver/Génerer un checksum à partir de trames reçus? - Algo - Programmation

Marsh Posté le 15-01-2007 à 21:12:19    


Bonjour,
 
Je suis confronté à un petit problème, qui m'empèche d'avancer...
Je suis chargé de développer un logiciel qui communique via liaison série, avec une machine outils industrielle, de marque Fagor.  
 
J'ai tenté d'analyser les trames qui transitent entre la machine et le pc (je dispose du logiciel fournit avec la machine),  
j'arrive a en comprendre à peu prés le sens, cependant à la fin de chaque trame contenant des données il y a une sorte de "checksum".
 
En voici un exemple :
 01 53 2C 50 52 47 2C 54 52 4E 2C 30 30 35 30 30   .S,PRG,TRN,00500
 30 2C 44 2C 45 74 72 69 65 72 20 33 30 2C 4D 58   0,D,Etrier 30,MX
 2C 17 30 3A 34 33                                             ,.0:43    
 
Voila les 4 caractères de fin : 30 3A 34 33
Le texte à envoyer à la base était : "Etrier 30,MX,"
Les autres caractères ont était rajouté par le logiciel de transfert.
Les 4 derniers sont differents pour toutes les trames, cependant, en analysant un peu plus de trames, je me suis aperçu que ce "checksum"
n'était composé que de caractères imprimables compris entre 0x30 et 0x3F (Il peut y avoir deux fois le même).
 
voici les caractère compris entre 0x30 et 0x3F :
http://krakine01.free.fr/ascii.jpg
 
Je met encore quelques exemples récupéré en envoyant un seul caractère  
(le logiciel ajoute deux caractère d'encapsulation 0x02 et 0x03) :  
 
http://krakine01.free.fr/trames.jpg
 
Donc je pense que vous l'aurrez compris, je cherche un moyen de retrouver/générer ces 4 caractères à partir de la trame envoyée.
j'ai effectué pas mal de recherche, notament vers du CRC32 mais en essayant de calculer le CRC du texte de départ à envoyer celà n'a rien donner...
 
En espérant que quelqu'un pourra m'aider, c'est mon BTS qui est en jeu! lol
Si vous avez des pistes, des idées vers où regarder etc n'hesitez pas!
Merci d'avance!

Reply

Marsh Posté le 15-01-2007 à 21:12:19   

Reply

Marsh Posté le 03-02-2007 à 10:48:16    

tu as regardé si les 4 groupes de 4 bit (en ne considérant que les derniers 4 bits des caractères allant de 0x30 à 0x3f) ne formait pas une vraie somme ou un vrai MD5 ou autre?
genre MD5("Message" )=0xABCD
et tu as donc 0x3A, 0x3B, 0x3C, 0x3D
 
ou un truc dans le genre? le fait que les caractères soient imprimables, ca aussi, c'est peut etre une piste à creuser, mais pour te dire dans quelle direction, ça...désolé lol
 


Message édité par pfuitt le 03-02-2007 à 10:49:31

---------------
Fight with the best, die with the rest ...
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed