EMVカードをサポートするPOSアプリケーションを開発中です。私はTLVのVerifone MXカードリーダーからカードデータを読み取ることができますが、私はTLVデータを読み取り可能なデータにデコードする際に問題に直面しています。デコードEMV TLVデータ
データをTLVタグとその値に分割できます。結果の値は、デコードされたテキストの代わりに16進数で表示されます。
例:
これは(私はTLVUtilでこのTLVをチェックすると、私のような(読みやすい形式で特定のタグ内のデータを取得し、このサンプルTLVデータにhere
6F2F840E325041592E5359532E4444463031A51DBF0C1A61184F07A0000000031010500A564953412044454249548701019000
を得たサンプルTLVデータであり、 。
Tag Value
50 56495341204445424954
4F A0000000031010
61 4F07A0000000031010500A56495341204445424954870101
6F 840E325041592E5359532E4444463031A51DBF0C1A61184F07A0000000031010500A56495341204445424954870101
84 325041592E5359532E4444463031
87 1
90
A5 BF0C1A61184F07A0000000031010500A56495341204445424954870101
BF0C 61184F07A0000000031010500A56495341204445424954870101
0:タグ50こちら)
私は自分のアプリケーションで得ることができる最も近いこのです
16進数から文字列に変換する必要がある特定のタグを特定する方法があるか、TLVUtilツールを複製できる.Netで利用可能なTLVパーサーとデコーダがあるかどうかを知りたいと思います。
その簡単にあなたのデータが暗号化TRACK1されていませんか?たとえば、4186 0000 0000 1234のようなカードを実行した場合、その番号をデータで見つけることができますか?そうでなければ、ペイロードはおそらく暗号化され、データはうまく解析されません。 – tgolisch
カード番号とは別に、カード所有者名、発行者銀行などの情報が返されます。この情報は16進コードで返されます。これらのタグを特定し、それらを選択的に変換したいと思います。 – Rahul