2016-03-01 113 views
2

我有一個Felica卡。第一個問題是這張卡片究竟是什麼?是智能卡還是簡單的存儲卡?它是一種Java卡,我可以加載.cap文件,或者它有專有的固定內容,我無法加載任何小程序?是否GlobalPlatform標準投訴?如何與Felica記憶/智能卡通信?

我讀here說:

索尼專有的FeliCa是智能卡技術,類似於 ISO/IEC 14443的FeliCa具有類似於德網絡ISO/IEC 7816-4定義一個文件系統。文件系統和訪問文件系統的命令是在JIS X 6319-4 [28]中標準化的 。此外,FeliCa系統還擁有專有的加密和安全功能。

之後,我試着向它發送一些APDU命令。第一步是對讀者進行一些配置更改。因爲我的閱讀器配置爲讀取ISO14443 Type A和Type B卡而非Felica卡。由於Felica和ISO/IEC 14443卡對載波使用13.56 MHz頻率,我認爲這些類型之間的差別僅在協議層。我對嗎?如果是這樣,Felica卡片傳輸協議的名稱是什麼? (對於ISO/IEC 14443卡,我們有T = 1和T = CL協議)。

配置讀卡器後,我試圖將命令發送到卡:

Connect successful. 
Send: 00 A4 04 00 00 
Recv: 6A 81 
Time used: 31.000 ms 

Send: 00 C0 00 00 00 
Recv: 6A 81 
Time used: 28.000 ms 

Send: 00 CA 00 00 00 
Recv: 6A 81 
Time used: 35.000 ms 

正如你看到的上面,我只接收0x6A81狀態字。

我還搜索了很多ACS讀卡器數據表,一些恩智浦應用筆記,以及肯定JIS X 6319-4標準的這種卡類型的命令列表。但我沒有發現任何適用的。

所以,問題是:

  1. 實際上是什麼的Felica? (Smart?Memory?)
  2. Felica卡和ISO/IEC14443卡有什麼區別?它與NFC有關嗎?
  3. 如何與此卡通信並傳輸數據?

更新:

我的卡的ATR是:3b 8f 80 01 80 4f 0c a0 00 00 03 06 11 00 3b 00 00 00 00 42

+2

FeliCa不是Java卡。它是一款數據存儲卡,基本上是恩智浦Mifare卡的替代品。它與NFC有關,因爲它符合ISO 18092標準。看看[這篇文章](http://www.secureidnews.com/news-item/the-different-contactless-smart-card-flavors-many-types-but-do-they-play-together/) 。 – vojta

+0

你可以請你的卡的ATR? – vojta

+0

@vojta感謝文章親愛的Vojta。 ATR添加到問題中。 – Abraham

回答

5

實際上是什麼的Felica? (智能內存?)

它更像是存儲卡而不是智能卡的功能。以塊爲單位讀取數據通常用於存儲卡,除了基於對稱密碼術的基本認證之外,該卡的功能非常有限。

您可能會認爲這是一個智能卡,因爲實施似乎帶有multi-purpose CPU(參見附錄B)。

似乎無法改變智能卡的行爲,就像你所做的一樣。在全球平臺Java卡中。所以我會將它歸類爲具有專有協議的存儲卡。

Felica卡和ISO/IEC14443卡有什麼區別?它與NFC有關嗎?

它使用專有的通信協議,其中包括數據鏈接層(你在這裏問的)和命令/響應層。

如何與此卡進行通信並傳輸數據?

您發送APDU而不是FeliCa專有命令/響應對的事實表明您正在使用轉換層。這個翻譯層可能在閱讀器/閱讀器驅動程序中。該轉換層的API可能在PCSC 2.01 specifications(第3.2.2.1節存儲卡功能支持,使用CLA字節0xFF)中指定。

您可能還需要閱讀器的用戶手冊,以便弄清楚在哪個位置存儲所需的密鑰。

+0

只是添加到這個答案,你需要有索尼Rc-s500或任何其他索尼SAM卡與SAM R/W來操作該卡。 –