MIFARE 是恩智浦半導體公司（NXP Semiconductors）擁有的一系列非接觸式智慧卡和近傍型卡技術的註冊商標。 MIFARE 包括一系列依循 ISOIEC 14443A 規格，利用無線射頻識別（頻率為 1356MHz）的多種非接觸式智慧卡專有解決方案。這項技術是最早是 1994 年由集團（Mikron Group）開發，在 1998 年轉售給飛利浦電子公司（2006 年拆分成為恩智浦半導體公司）。近年來 MIFARE 已經普遍在日常生活當中使用，如大眾運輸系統付費、商店小額消費、門禁安全系統、借書證等。 發展歷史 1994 MIFARE Classic 1K，非接觸式讀取技術開發成功。 1996 韓國首爾市地鐵成為首個採用 MIFARE 的商轉系統。 1997 MIFARE Pro，相容接觸與非接觸式的智慧卡，並採用了 3DES 的協同處理器（coprocessor）機制。 1999 MIFARE Pro X，開發完成公開金鑰基礎建設（PKI）機制。 2001 MIFARE UltraLight 規格開發成功。 2002 MIFARE DESFire，開發以微處理器（microprocessor）為基礎的產品。 2004 MIFARE DESFire SAM，增強了 MIFARE DESFire 的安全基礎架構連線。 2006 MIFARE DESFire EV1，第一個支援 128bit 進階加密標準（AES）的產品。 2008 MIFARE Plus，替換 MIFARE Classic 使用的 128bit AES。 2008 MIFARE Ultralight C，內建有三重資料加密演演算法驗證的紙質票證 IC（Paperticket IC）。 2010 MIFARE SAM AV2，加入可讀取進階加密標準（AES）、三重資料加密演演算法（3DS）、公開金鑰基礎架構（PKI）等安全金鑰的驗證機制。 2012 MIFARE Ultralight EV1，與 MIFARE Ultralight 相同的規格但是取消了加密功能。 2013 MIFARE DESFire EV2，更好的效能、保密性並且支援多種加密程式。 2016 MIFARE SDK 改名為 TapLinx，並改進產品支援。 2020 MIFARE DESFire EV3 推出 2022 MIFARE Ultralight AES 推出 MIFARE 的名字由來是米克朗車資收費系統（ MIkron FAREcollection System）組合而來，飛利浦電子公司在 1998 年收購了這項技術。 1994 年，米克朗公司授權英飛凌 科技在 MIFARE 現有的基礎上開發新的機制。。當時英飛凌取得的樣本規格是 1K 的記憶體容量 ，8、16、32 位元的虛擬微處理器和 USIM 用的 NFC 裝置。 摩托羅拉公司曾經嘗試開發與 MIFARE 功能類似的接觸式晶片，原本該公司預估每個月有 1 百萬次的使用量，但是最後只有 10 萬次。以致最後放棄了這個產品 。 1998 年飛利浦將 MIFARE Classic 技術授權給了日立製作所，該公司在 1999 年至 2006 為日本電信電話（NTT）開發了非接觸式智慧卡的解決方案。另外為 NTT 開發的電話卡專案有 3 個合作伙伴（分別是：TokinTamuraSiemens、日立製作所、電裝公司），原本規劃以 MIFARE Classic 授權為基礎進而開發出兩種大小不同容量的接觸式產品，但是最後只有完成大容量的產品。 2008 年，NXP 為日立製作所提供了包含 MIFARE Plus 及 MIFARE DESFire2 項技術，日立製作所的半導體部門也更名為瑞薩電子 。 2010 年，NXP 把 MIFARE 授權給金雅拓公司（Gemalto），2011 年 NPX 授權法國歐貝特科技使用在 SIM 卡上。這些授權都是用來開發 NFC 領域的產品。 硬體架構及工作原理 MIFARE Ultralight MIFARE Ultralight MIFARE Classic MIFARE Plus MIFARE Plus MIFARE DESFire MIFARE DESFire MIFARE DESFire MIFARE Ultralight EV1 MIFARE Ultralight C MIFARE Classic EV1 MIFARE Plus SX MIFARE Plus SE MIFARE DESFire EV1 MIFARE DESFire EV2 MIFARE DESFire EV3 射頻介面 ISOIEC 144432，TYPE A ISOIEC 144432，TYPE A ISOIEC 144432，TYPE A ISOIEC 144432，TYPE A ISOIEC 144432，TYPE A ISOIEC 144432，TYPE A ISOIEC 144432，TYPE A ISOIEC 144432，TYPE A 通訊協定 ISOIEC 144433 ISOIEC 144433 ISOIEC 144433 ISOIEC 1444334 ISOIEC 1444334 ISOIEC 144434 ISOIEC 144434 ISOIEC 144434 UID 碼 UID：7 位元組 UID：7 位元組 UID：7 位元組，RID：4 位元組（無 UID） UID：7 位元組，RID：4 位元組（無 UID） UID：7 位元組，RID：4 位元組（無 UID） UID：7 位元組，RID：4 位元組（無 UID） UID：7 位元組，RID：4 位元組（無 UID） UID：7 位元組，RID：4 位元組（無 UID） 通訊速度 106Kbps 106Kbps 106Kbps 106Kbps848Kbps 106Kbps848Kbps 106Kbps848Kbps 106Kbps848Kbps 106Kbps848Kbps 資料儲存容量 48bytes 128bytes 144bytes 1K、4Kbytes 2K、4Kbytes 256、2K、4K、8Kbytes 2K、4K、8Kbytes 2K、4K、8Kbytes 驗證金鑰種類 無 TDES Crypto1 Crypto1、AES Crypto1、AES TDES、AES TDES、AES TDES、AES 機卡驗證型別 密碼 三重認證 三重認證 三重認證 三重認證 三重認證 三重認證 三重認證 機卡通訊加密型別 無 無 Encrypted Plain，Encrypted 以及 CMACed Plain，Encrypted 以及 CMACed Plain，Encrypted 以及 CMACed Plain，Encrypted 以及 CMACed Plain，Encrypted 以及 CMACed Plain，Encrypted 以及 CMACed 共同準則認證型別（Common Criteria Certification） 無 無 無 EAL4 無 EAL4 EAL5 EAL5 UID：唯一識別碼（Unique Identifier）， RID：安全隨機識別碼（Random Security Identifier） 資料儲存區塊示意圖 區段 區塊 0 區塊 1 區塊 2 區塊 3 0 製造商程式碼 資料區 資料區 金鑰、存取許可權 1 資料區 資料區 資料區 金鑰、存取許可權 2 資料區 資料區 資料區 金鑰、存取許可權 14 資料區 資料區 資料區 金鑰、存取許可權 15 資料區 資料區 資料區 金鑰、存取許可權 卡片架構：卡片上面有一組唯一識別碼、通訊介面（包含天線及調變解調器）以及一個 ASIC 裡麵包含了通訊邏輯電路、加密控制邏輯電路與資料儲存區（ EEPROM），可以作為電子錢包或其它門禁、差勤考核、借書證等用途。 資料儲存區塊：可分 16 個區段（sector 015）， 每個區段由 4 個區塊（block 03）組成，而每個區塊都是獨立的單元，每 1 個區塊的容量有 16Byte。而每個區段的最後一個區塊則用來存放 2 組金鑰（KeyA、KeyB），以及金鑰對應各自的存取許可權（Access bit）。 每張卡片第一區段的第一區塊（sector 0，block 0）只能讀取無法寫入資料，稱為製造商程式碼（Manufacturer Code） 第 1－4byte 為 UID。第 5byte 為位元計數檢查碼（bit count check，其餘的存放卡片製造商的資料。所以每張卡片實際能使用的只有 15 個區段，即便如此也可用於 15 個不同的應用。 讀寫卡機架構：讀卡機包含 CPU、電源模組、讀（寫）模組、記憶模組、控制模組等，有些還有顯示模組、定時模組等其他模組。 工作流程：當卡片接近讀寫卡機進入通訊天線的感應範圍（約 25 公分至 10 公分）之後，讀寫卡機便會提供微量電力（約達 2 伏特之後）驅動卡片上的電路。此時卡、機各以曼徹斯特編碼及加密通訊內容後再以振幅偏移調變（Amplitude Shift Keying，ASK）透過調變解調器收發無線電波訊號互相驗證是否為正確卡片，如果驗證結果正確讀寫卡機就會確認要存取的資料儲存區塊，並對該區塊進行密碼校驗，在卡、 機三重認證無誤之後，就可以透過加密進行實際工作通訊。這個過程大約只需要 01 秒就可以完成。如果同時有多張卡片進入讀寫卡機感應範圍，讀寫卡機會將卡 片編號並選定 1 張卡片進行驗證直到完成所有卡片驗證（稱為防碰撞機制）或是離開感應範圍為止。 卡 機三重認證步驟：1 卡片產生一個亂數 RB 傳送到讀卡機。2 讀卡機會將接收到的亂數 RB 依公式加密編碼後的 TokenAB 數值並傳送回卡片。3 卡片接 收到 TokenAB 後，會把加密部份解譯出來然後比對引數 B、亂數 RB。同時並依據收到的亂數 RA，參照公式編碼後產生 TokenBA 傳送回讀卡機。4 讀卡機接收到 TokenBA 後，又把加密過的部份解譯，比較亂數 RB，RA 與 TokenBA 中解出之 RB、RA 是否相符，正確的就可以完成指令（扣款、打 開門鎖或是登記其他事項）。 攻擊事件 2007 年 12 月，在騷亂交流大會上 Henryk Plötz 和 Karsten Nohl 發表了部分用於 MIFARE 晶片演演算法上的反向工程技術。 2008 年 3 月，在荷蘭的奈梅亨大學（Radboud University Nijmegen）數位安全研究群裡發表了利用反向工程複製並且修改採用 MIFARE Classic 技術的電子票證 OV 卡（ovchipkaart）上的餘額。 奈梅亨大學發表了下列三篇關於 MIFARE Classic 的檔案： A Practical Attack on the MIFARE Classic Dismantling MIFARE Classic Wirelessly Pickpocketing a MIFARE Classic Card 恩智浦半導體曾經嘗試在荷蘭的法庭提出訴訟以阻止這些檔案發表，但是法官認為這屬於言論自由，便否決 NXP 公司所提 2008 年 8 月在第 17 屆高等計算系統協會（USENIX）中有另外一份講述如何利用反向工程的程式發表 臺大電機教授示範竄改悠遊卡：2010 年 7 月，臺灣大學電機系教授鄭振牟團隊使用改進過的監聽封包（SnifferBased）的攻擊手法攻擊 Mifare 卡。將 1 張正常使用中的悠遊卡，將餘額從正 100 多元，更改成為負五百多元。 資安顧問竄改悠遊卡：2011 年 7 月，某科技公司一名 24 歲資安顧問，宣稱在美國網站購買讀寫卡機，再下載美國學生破解波士頓地鐵查理卡（Charlie Card）的文章後花了四個月的時間撰寫程式，破解悠遊卡防護系統，以自製讀寫卡機為悠遊卡竄改加值成功並盜刷六次。 相關條目 RFID NFC FeliCa 智慧卡 悠遊卡 臺灣 iPASS 一卡通 臺灣 參考 外部連結 MIFARE 官網 臺灣恩智浦半導體公司官網 Category 智慧卡 Category 近場通訊