2017-08-29 35 views
0

顧客のバッジコードのリストを古いソフトウェアから新しいものにインポートする必要があります。コードは、125Khzの読み取り専用のRFIDバッジを指します(おそらく100%ではありません)。保存されたmifareタグの16進数文字列を取得

私が指定したバッジを読むと、新しいソフトウェアの結果の16進文字列は "27000052B4"ですが、古いものは "30 30 30 30 30 32 31 31 37 32 0D 0A"として保存されます。

私は変換が適用され、格納されたものから "my"コードを取得する方法を理解できません。

コードに何らかの「暗号化」が適用されているか、または実際のmifareタグuidではなく、メモリに格納されている別の種類の値であることがありますが、可能であれば、古い値から「通常の」16進コードを得る方法を推測できます。

バッジN:参照として

は、私がここに古い/新しいペアのカップルを貼り付けます。 27000052B4、30 30 30 30 30 32 31 31 37 32 0D 0A

バッジn。 5B006E82AAとして保存されています。30 30 30 37 32 34 32 34 31 30 0D 0A

要約すると、バッジ番号を認識できるように、格納された値から始まる16進数の文字列でバッジ番号を取得する必要があります。私が新しいソフトウェアでそれを読むとき、顧客。

追加の注記として、末尾の部分「0D 0A」は単なるCRLFであるように見え、格納されたすべてのバッジで同じです。

答えて

0

バッジ番号の最初の2桁についてはわかりませんが、格納されている値は、バッジ番号の末尾4バイト(およびバイト)の10進表現を含むUS-ASCIIエンコード文字列ですキャリッジリターン+ラインフィード):小数で

 
30 30 30 30 30 32 31 31 37 32 0D 0A 

列である

 
"0000021172\r\n" 

21172 16進数で0x52B4(27000052B4のつまり最後の部分)です。同様に、小数点の7242410は16進数の0x6E82AA(すなわち5B006E82AAの最後の部分)です。

+0

マイケルありがとうございます。古いソフトウェアは、バッジの最後の部分だけを格納していたか、エクスポート操作中にそれらを「マスク」しています。 もう一度ありがとうございます、私は正しい答えとしてマークしています。 – Alberto

関連する問題