私はスマート カードとリーダー (Gemalto) を持っています。C# を使用してカードのシリアル番号を読み取りたい。Gemalto サポート サイトでドキュメントやライブラリを読みましたが、役立つ情報がありません。
誰かがジェムアルトについて経験を積んでいて、いくつかの例を手伝ってくれることを願っています!
本当にありがとう !
私はスマート カードとリーダー (Gemalto) を持っています。C# を使用してカードのシリアル番号を読み取りたい。Gemalto サポート サイトでドキュメントやライブラリを読みましたが、役立つ情報がありません。
誰かがジェムアルトについて経験を積んでいて、いくつかの例を手伝ってくれることを願っています!
本当にありがとう !
APDU をスマート カードに送信して、カード製品のライフ サイクル データ (CPLC データ) を要求する必要があります。
一部の特定の種類のカードには、Card Production Life Cycle (CPLC) データがあります。たとえば、JCOP カードでは、0x9F7F タグまたは 0x0101 タグの GET DATA または GETCPLCDATA にこれがあります。これはグローバル プラットフォーム固有のタグだと思います。カードがサポートする仕様を見つけます。Gemalto カードの場合、うまくいくことを願っています。CPLCデータをクエリしてgemaltoカードから得たデータは次のとおりです。
0x9F7F の場合:
IC Fabricator :2 Bytes
IC Type : 2 Bytes
Operating System ID : 2 Bytes
Operating System release date : 2 Bytes
Operating System release level : 2 Bytes
IC Fabrication Date : 2 Bytes (Y DDD) date in that year
IC Serial Number : 4 Bytes
IC Batch Identifier : 2 Bytes
IC Module Fabricator : 2 Bytes
IC Module Packaging Date : 2 Bytes
ICC Manufacturer : 2 Bytes
IC Embedding Date :2 Bytes
IC Pre-Personalizer : 2 Bytes
IC Pre-Perso. Equipment Date : 2 Bytes
IC Pre-Perso. Equipment ID : 4 Bytes
IC Personalizer : 4 Bytes
IC Personalization Date : 2 Bytes
IC Perso. Equipment ID : 4 Bytes
0x0101 の場合:
Card serial number: 8 bytes
Reserved bytes: 3 bytes 0
Flow identification: 1 byte
Reserved bytes: 4 bytes
申し訳ありませんが、正確なバイト数を提供することはできません。ケースによって異なる場合があります。カードがサポートするタグを確認してください。Global Platform のドキュメントと ISO 7816 標準 ( http://www.ttfn.net/techno/smartcards/iso7816_4.html ) を参照してください。これがあなたが探しているものであることを願っています。
カードのシリアル番号を意味する場合は、次のことができます。
Gemalto SDK で Off card dll を参照する必要があります。SmartCard.Runtime.dll SmartCard_Stub.dll
SmartCard.Transport.PCSC.SelectDialog dialog = new SmartCard.Transport.PCSC.SelectDialog();
CardAccessor ca = new CardAccessor(dialog.SelectedReader);
if(ca.Logon())
{
ca.GetSerialNumber();
}
証明書のシリアル番号を意味する場合は、まったく異なるアプローチです。
この投稿を参照してください。お使いのカード (特に CLA バイト) では若干異なる場合があります。
基本的に、カード ファイル システムのルート (MF、別名 3F00) を選択し、次にカードの EFiccid (2FE2) を選択して内容を読み取る必要があります。理論的にはかなり単純です。
各ステップには、専用の APDU コマンドがあります。Gemalto ライブラリで APDU を送信できる場合は、問題ありません。