MIFARE 感應門禁卡應用
Last updated
Last updated
感應卡(Proximity card)適用於ISO/IEC 14443標準與ISO/IEC 15693標準。它也可以用來指那些使用125 kHz或13.56 MHz的非接觸型RFID感應卡,這些技術通常被使用於非接觸型智慧卡之上。
Standard | Frequency | Common Name | Example |
---|---|---|---|
每張卡片第一區段的第一區塊(sector 0,block 0)只能讀取無法寫入資料,稱為製造商代碼(Manufacturer Code)
Classic with 4 UID:
Byte | Length | Content |
---|---|---|
卡機三重認證步驟:
卡片產生一個亂數RB傳送到讀卡機。
讀卡機會將接收到的亂數RB依公式加密編碼後的TokenAB數值並傳送回卡片。
卡片接 收到TokenAB後,會把加密部份解譯出來然後比對參數B、亂數RB。同時並依據收到的亂數RA,參照公式編碼後產生TokenBA傳送回讀卡機。
讀卡機接收到TokenBA後,又把加密過的部份解譯,比較亂數RB,RA與TokenBA中解出之RB、RA是否相符,正確的就可以完成指令(扣款、打 開門鎖或是登記其他事項)。
加解密驗證原理建立在讀卡機使用的Key與卡片的Key相同
Standard Keys (如MifareClassicTool中的std.keys list):
讀取部分只需要裝置晶片支援,手機app可使用如MifareClassicTool利用Key Brute attack掃出Sector內容。
寫入部分一般晶片會禁止對Sector 0 - Block 0
寫入,支援該需寫入的如ACR122U讀寫器
現行 global 手機的 NFC Tag UID 都是每次讀取動態改變,只能透過 root 才能使用 Emulator,而中國出廠的手機則支援自家 Wallet App 複製模擬 UID。 不 root 情況下的門禁應用,目前 Samsung Pay 的悠遊卡服務創建卡片後其手機 NFC Tag UID 就會固定跟隨該卡。
Key | Purpose | Description |
---|---|---|
125kHz
Proximity card/EM卡/ID卡
簡易門禁感應卡磁扣
13.56MHZ
MIFARE卡/IC卡
悠遊卡/銀行卡
0
4
UID
4
1
bit count check
5
1
SAK (08:一般加密卡, 28:特殊加密卡如銀行卡)
FF:FF:FF:FF:FF:FF
Factory default key
No NDEF data for Key A
& Key B
A0:A1:A2:A3:A4:A5
Public NDEF key
NDEF message for key A
with MAD sector (sector 0
)
D3:F7:D3:F7:D3:F7
Public NDEF key
NDEF message for key A
with sectors 1~15