× Ceci est une en-tête optionnelle pour la Boîte à idée.

Question Carte lavage impossible de trouver le crc

Plus d'informations
09 Jan 2021 23:01 #1680 par krupt
Bonjour
J ai acheté une carte de lavage prépayée avec une somme de 20 euros.

J ai réussi à récupérer les clefs qui vont bien via mon lecteur ACR122U

J arrive à dumper le badge et le lire totalement dans MCT avec les bonnes clefs.

Quand je l'utilise je vois bien la somme changer ansi que le nombre de lavage s"inscrémenter mais il semble y avoir un crc en fin de ligne que je n arrive pas à calculer !
Je n'ai mis que la ligne qui change entre 2 dumps, mais si vous avez besoin de plus, dites moi

Voici un dump à 20 euros, la carte toute neuve, 0 lavages
Je ne met que le secteur 2 qui contient la somme

0100004678B83A0100004678B83A0000
000001000001000007D000004678A165
000001000001000007D000004678A165

33014877406078778800458ABF418295

détail du bloc 2 ou 3 (identiques)
000001000001000007D000004678A165
Le 1 correspond au nombre d utilisation, initialisé à 1 à la création.
Le 7D nous donnes 07D0 soit 20.
Le 4678 reste fixe. Id de la station peut être ?
Et le A165 semble être un crc

Voici d"autres dump après utilisaiton:
Après 2 lavages; il reste 4 euros
0000030000030000019000004678FD61

Après 1 lavage; il reste 8 euros
0000020000020000032000004678B049

Après 2 lavages; il reste 16 euros

0000020000020000064000004678EA94

Bref vous l'aurez compris le calcul de fin de ligne reste un mystère ! Si quelqu un veut bien m'aider.
J ai cherché à calculer le crc16 mais je ne tombe jamais sur la bonne valeur !

Pour info, la carte possède son UID, j'ai essayé en clonant vers une carte qui a un UID différent, la carte n'est pas reconnue.
Les dumps proviennent bien de la même carte.

Merci pour votre aide

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
11 Jan 2021 08:49 #1684 par bartolomiew
salut,
CRC16 init: 0x2585 poly: 0x1021, pour exemple un CRC16 ARC j'ai un init à 0x0000 et un poly à 0x8005.
Sinon je ne comprends pas très bien ta conversion 07 D0 = 20€, après je pense aussi que c'est le stockage de la somme.
Pour le nombre d'utilisations c'est obscure aussi:

000001000001000007D000004678A165
init à 1 : ok

Après 2 lavages; il reste 4 euros
0000030000030000019000004678FD61
1 + 2 lavage : ok

Après 1 lavage; il reste 8 euros
0000020000020000032000004678B049
1 + 1 lavage : ok

Après 2 lavages; il reste 16 euros
0000020000020000064000004678EA94
ça colle pas ici... on devrait avoir 3

C'est quoi comme enseigne de lavage?
tu as essayé sur un badge chinois avec un UID modifiable? (clone complet)
A+

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
11 Jan 2021 10:25 - 11 Jan 2021 10:34 #1685 par krupt
Salut ! Merci beaucoup pour ton retour !!!
Alors oui, c'est une carte de lavage que l'on peut créditer.
Donc quand je 20€ = 07D0, c'est le hex 2 dec qui nous donne 20.
Et cela se vérifie à chaque fois, c'est bien la valeur du porte monnaie .

Concernant, le nombre de lavage, je me suis trompé!
Normal que tu n'y arrive pas, désolé !!
0000020000020000064000004678EA94
=> Ici, il y avait 20euros, un lavage effectué à 4€, donc il me reste 16 euros et la valeur est bien 2 !!! (un seul lavage fait !)

Pour le CRC par contre, je n'arrive pas à reproduire les CRC malgré tes explications

Peux tu me détailler un exemple ? Comment as tu trouver les variables d'initl & poly ?.
J'utilise ce site
www.sunshine2k.de/coding/javascript/crc/crc_js.html
Quand je tente de refaire le CRC de ça
CRC Input Data : bytes
0000020000020000064000004678


Concernant la marque, c est L*A*V*A*N*C*E
Dernière édition: 11 Jan 2021 10:34 par krupt.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
11 Jan 2021 10:51 #1686 par bartolomiew
Ok pour la somme, j'ai fait mon boulet sur la convertion :)
Sinon pour le CRC:
tu prends la chaine 0000020000020000032000004678B049, le CRC doit être B049
WIDTH: tu choisis CRC16
parametrization: custom
detailed parameters: tu decoches les 2 "reflected", Polynomial: 0x1021, Initial Value: 0x2585, Final Xor Value: 0x0
CRC input data: coches Bytes, 0x00 0x00 0x02 0x00 0x00 0x02 0x00 0x00 0x03 0x20 0x00 0x00 0x46 0x78

et calculate!
ça te donne 0xB049
Les utilisateur(s) suivant ont remercié: abou

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
11 Jan 2021 11:44 #1687 par cyberman1
salut bartolomiew comment a tu calculer le init et le poly stp merci pour ton aide

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
11 Jan 2021 13:17 #1688 par bartolomiew
J'ai pris quelques minutes pour me coder un petit "brut force" à l'arrache après avoir testé les valeurs connues (ARC, CCITT,...).
Pour tester toutes les valeurs init + poly, sans aucune optimisation c'est max 2h, si il y avait eu un XOR à trouver ça aurait été plus long et j'aurais dut faire une vraie optimisation (on passe de 4294836225 possibilités à 281462092005375) et passer en calcul parallèle pour charger tous les cœurs du processeur.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
11 Jan 2021 13:49 #1689 par krupt
Whaou, impressionnant et efficace !! merci

Pour répondre à ta question, le dump sur une autre carte ne marche pas, il me renvoie identifiant invalide. J'ai donc via mon ACR122U changer l'uid d'une carte chinoise pour coller sur le le dump.
Mais malgré cela, dans le secteur 1 bloc 1, je vois quand même des différences!

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
11 Jan 2021 14:16 #1690 par bartolomiew
@krupt : je t'ai envoyé un MP, penses à le lire (les notifications de nouveau message ne sont pas très visibles...)

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
11 Jan 2021 14:23 #1691 par krupt
ok vu et répondu :)

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
11 Jan 2021 14:26 - 11 Jan 2021 14:26 #1692 par cyberman1
j'ai pris quelques minutes pour me coder un petit "brut force" à l'arrache après avoir testé les valeurs connues (ARC, CCITT,...).
Pour tester toutes les valeurs init + poly, sans aucune optimisation c'est max 2h, si il y avait eu un XOR à trouver ça aurait été plus long et j'aurais dut faire une vraie optimisation (on passe de 4294836225 possibilités à 281462092005375) et passer en calcul parallèle pour charger tous les cœurs du processeur.




Pourrais tu nous en dire un peux plus pour que j 'essaie de faire le calcul pour cette exemple merci
Dernière édition: 11 Jan 2021 14:26 par cyberman1.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
11 Jan 2021 14:42 #1693 par krupt
tu peux le refaire via ce site
www.sunshine2k.de/coding/javascript/crc/crc_js.html

j'ai testé et validé :)

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
11 Jan 2021 15:12 #1695 par cyberman1
Merci pour ton site krupt mais pour trouver le poly et initial value comment a t-il fait ?

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
28 Jan 2021 19:51 - 28 Jan 2021 20:11 #1809 par abou
Je suis exactement dans le même cas !
J'ai rien compris aux explications du calcul du chks. Et il possible d'appliquer ton calcul sur mon dump pour vérif?

Sur ton dump aussi l'ancien soldes est sur la ligne du dessous?

Moi j'ai par exemple s est 3 lignes avec CRC
Celle avec le montant non pas de crc
00007A11000001000100000000000083
0000000000000000000000000000000B
9C8B362A0000000000000000010000CF

Jai ouvert un sujet la dessus également

Sur le mien je pense du 8bits pour le coup.

badge-vigik-selecta-copie.fr/index.php/b...aide-decryptage-dump
Dernière édition: 28 Jan 2021 20:11 par abou.

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.083 secondes
Propulsé par Kunena