Aller au contenu
  • Pas encore inscrit ?

    Pourquoi ne pas vous inscrire ? C'est simple, rapide et gratuit.
    Pour en savoir plus, lisez Les avantages de l'inscription... et la Charte de Zébulon.
    De plus, les messages que vous postez en tant qu'invité restent invisibles tant qu'un modérateur ne les a pas validés. Inscrivez-vous, ce sera un gain de temps pour tout le monde, vous, les helpeurs et les modérateurs ! :wink:

[résolu] codage hexa et base64


krys75

Messages recommandés

Bonjour,

 

Quelqu'un peut me dire comment on passe de ça: 00-14-C2-56-4F-15 à ça ABTCVk8VAA== ?

 

En fait l'adresse mac est codée dans un fichier et j'aimerai pouvoir ajouter des nouveaux postes en modifiant le fichier mais impossible de savoir en quoi l'adresse MAC est codée.

Le logiciel qui donne ce fichier est WakeUp de Damien LEVEUGLE.

 

<?xml version="1.0" encoding="utf-8"?>

<ArrayOfMachine xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">

<Machine>

<Nom>xxxxxxxxxxxxxxx</Nom>

<AdresseMAC>ABTCVk8VAA==</AdresseMAC>

<Description />

</Machine>

 

Merci d'avance !

 

Krys.

Modifié par krys75
Lien vers le commentaire
Partager sur d’autres sites

Qui mieux que l'auteur du logiciel pourrait répondre à cette question ?

Ca pourrait être du binaire codé en base64, mais comment savoir sans les sources du logiciel ?

 

-- edit --

Il suffisait de tester : c'est bien du binaire codé en base64 :-P

Lien vers le commentaire
Partager sur d’autres sites

Je suis sous Linux donc pour vérifier j'ai juste passé un coup de base64 -d pour décoder le contenu et utilisé un éditeur hexadécimal pour visualiser le résultat...

% echo ABTCVk8VAA== | base64 -d | hexdump -C
00000000  00 14 c2 56 4f 15 00							  |..ÂVO..|
00000007

On retrouve "00:14:c2:56:4f:15"

 

L'opération inverse, en revanche, je n'ai pas trop d'idée pour la réaliser mais comme tu n'as pas précisé de quelle manière tu comptes procéder ni sur quelle plate-forme tu vas programmer, c'est un peu tôt pour te donner des explications précises ;-)

Lien vers le commentaire
Partager sur d’autres sites

Je suis sous Linux donc pour vérifier j'ai juste passé un coup de base64 -d pour décoder le contenu et utilisé un éditeur hexadécimal pour visualiser le résultat...

% echo ABTCVk8VAA== | base64 -d | hexdump -C
00000000  00 14 c2 56 4f 15 00							  |..ÂVO..|
00000007

On retrouve "00:14:c2:56:4f:15"

 

L'opération inverse, en revanche, je n'ai pas trop d'idée pour la réaliser mais comme tu n'as pas précisé de quelle manière tu comptes procéder ni sur quelle plate-forme tu vas programmer, c'est un peu tôt pour te donner des explications précises :P

 

En effet j'ai pas été très précis :P

Alors en fait j'ai toute une liste de machines que je veux intégrer à l'application sans avoir à les rentrer une par une dans le soft.

J'ai fait une extraction d'une machine que j'ai entrer dans le soft et j'ai obtenu le fichier ci-dessous.

 

<?xml version="1.0" encoding="utf-8"?>

<ArrayOfMachine xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">

<Machine>

<Nom>xxxxxxxxxxxxxxx</Nom>

<AdresseMAC>ABTCVk8VAA==</AdresseMAC>

<Description />

</Machine>

 

Maintenant je souhaite pouvoir ajouter toutes mes machines directement dans ce fichier mais l'adresse mac est codée en binaire base64 comme tu me l'as gentiment expliqué :P

Pour pouvoir rajouter toutes mes machines il faudrait que je sache comment coder mes adresses MAC en binaire base64 afin de les rajouter dans le fichier.

Je suis sous windows XP.

Lien vers le commentaire
Partager sur d’autres sites

L'algo pour coder / décoder en base64 est relativement simple : http://en.wikipedia.org/wiki/Base64

Après, il s'agit juste de convertir les données "texte" (les "00 14 c2 56 4f 15") en binaire et le tour est joué ! :-P

Tu comptes faire ça à la main (avec des outils en ligne, pourquoi pas - la page Wikipedia a quelques liens sympa) ou tu as préparé tes adresses MAC dans un fichier et comptes utiliser une moulinette pour tout convertir d'un coup ?

 

-- edit --

L'algo existe même en version JavaScript ! :-D

Lien vers le commentaire
Partager sur d’autres sites

Il manque l'étape "conversion en hexadécimal"

 

Pardon d'avance mais je suis ultra novice :P

 

Ce que je ne comprends pas c'est que je dois convertir ABTCVk8VAA== en hexa alors que pour moi ça ressemble plus à du base64 (d'après ce que j'ai pu voir sur les differents sites qui traite le sujet)

 

Peux-tu m'expliquer la chose en détail en me montrant un exemple de codage étape par étape ? (please !!! :P )

Lien vers le commentaire
Partager sur d’autres sites

Euh... C'est pas "ABTCVk8VAA==" que tu dois convertir en hexa, c'est "��VO�". L'étape qui manque vient après...

Ou plutôt, quand tu fais l'opération inverse (injecter des adresses MAC dans le logiciel), elle intervient avant : tu vas chercher à traduire "00 14 c2 56 4f 15" en binaire (donc le transformer en "��VO�") puis l'encoder en base64 pour obtenir ce que tu mettras entre balises <AdresseMAC></AdresseMAC>

 

Donc, ce que doit faire la moulinette :

- prendre une chaine en entrée (vérifier qu'elle ne contient que [0-9][a-f], ignorer le reste)

- calculer les octets correspondant à la valeur hexa saisie (les 96bits == 24 octets)

- fournir cette suite d'octets en entrée à l'algo de codage base64

- afficher le résultat de ce codage

Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.
Remarque : votre message nécessitera l’approbation d’un modérateur avant de pouvoir être visible.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

  • En ligne récemment   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
×
×
  • Créer...