2017-06-15 49 views

回答

2

您首先需要選擇一個文件或在READ BINARY命令中指定一個文件,然後才能從這些卡中讀取數據。你目前得到一個異常,這意味着你還沒有選擇一個文件。存儲卡通常具有一個接口和一個默認的選定文件,因此您可以直接發送讀取命令。但是基於文件的智能卡實現(如SCOSTA)要求您首先選擇該文件,並且最有可能的是首先選擇DF(目錄)。

現在應用程序目錄是一個特殊的DF,也可以按名稱選擇。例如,護照申請的AID爲A0000002471001,其中A000000247是ICAO的RID(用於應用程序提供商)。所以在護照上你應該可以選擇這個目錄。然後你也需要選擇一個文件,例如EF.SOD,您可以通過將短文件標識符1D置於READ BINARY命令中進行選擇。

哪些文件存在取決於應用程序/個性化。一般來說,沒有普遍定義的方式來定義卡上的內容 - 從這個意義上講,智能卡就像通用計算機一樣。所以你需要先找到你想要使用的協議的規範。

尚未個性化的卡片可能尚未定義任何文件。