CPU 卡操作系統(tǒng)--FMCOS

2017-10-31 09:58:08 重慶諾塔斯智能科技有限公司 970

FMCOS 特點

支持 Single DES、Triple DES 算法:可自動根據(jù)密鑰的長度選擇 Single DES、Triple DES 算法 

支持線路加密、線路保護功能:防止通信數(shù)據(jù)被非法竊取或篡改 

    支持在一張卡上實現(xiàn)多個不同的應(yīng)用:可建立三級目錄 z 支持電子錢包功能:錢包大小可由用戶自行設(shè)定 

    支持多種文件類型:包括二進制文件、定長記錄文件、變長記錄文件、循環(huán)文件、錢包文件 z 支持 ISO14443-4T=CL 通訊協(xié)議 

    滿足銀行標準:符合《中國金融集成電路(IC)卡規(guī)范》電子錢包/存折規(guī)范。 

    防插拔功能:交易處理過程中非正常拔出的卡片自動恢復(fù) 

 

功能模塊 

 

FMCOS 由傳輸管理、文件管理、安全體系、命令解釋四個功能模塊組成。 

傳輸管理:按 ISO7816-3ISO14443-4 標準監(jiān)督卡與終端之間的通信,保證數(shù)據(jù)正確地傳輸,防止卡與終端之間通訊數(shù)據(jù)被非法竊取和篡改。 

文件管理:將用戶數(shù)據(jù)以文件形式存儲在 EEPROM 中,保證訪問文件時快速性和數(shù)據(jù)安全性。 z 安全體系:安全體系是 FMCOS 的核心部分,它涉及到卡的鑒別與核實,對文件訪問時的權(quán)限控制機制。 

命令解釋:根據(jù)接收到的命令檢查各項參數(shù)是否正確,執(zhí)行相應(yīng)的操作。 


防沖突和選擇

每個串聯(lián)級別范圍內(nèi)地防沖突環(huán) 

下面算法應(yīng)適用于防沖突環(huán): 

步驟 1:PCD 為選擇的防沖突類型和串聯(lián)級別分配了帶有編碼的 SEL。 

步驟 2:PCD 分配了帶有值為‘20’的 NVB。 

注:該值定義了該 PCD 將不發(fā)送 UID CLn 的任何部分。因此該命令迫使工作場內(nèi)的所有 PICC 以其完整的 UID CLn 表示響應(yīng)。 

步驟 3:PCD 發(fā)送 SEL 和 NVB

步驟 4:工作場內(nèi)的所有 PICC 擁有唯一序列號,那么,如果一個以上的 PICC 響應(yīng),則沖突發(fā)生。

如果沒有沖突發(fā)生,則步驟 6 到步驟 10 可被跳過。 

步驟 6:PCD 應(yīng)識別除第一個沖突的位置。 

步驟 7:PCD 分配了帶有值的 NVB,該值規(guī)定了 UID CLn 有效比特數(shù)。這些有效位應(yīng)是 PCD 所決定的沖突發(fā)生之前的被接受到的 UID CLn 的一部分再加上(0)b 或(1)b。典型的是實現(xiàn)是增加

1b。 

步驟 8:PCD 發(fā)送 SEL 和 NVB,后隨有效位本身。 

步驟 9:只有 PICC 的 UID CLn 中的一部分等于 PCD 所發(fā)送的有效位時,PICC 才應(yīng)發(fā)送其 UID CLn

的其余部分。 

步驟 10:如果出現(xiàn)進一步?jīng)_突,則重復(fù)步驟 6~9。最大環(huán)數(shù)是 32。 

步驟 11:如果不出現(xiàn)進一步?jīng)_突,則 PCD 分配帶有值為“70”的 NVB。 

步驟 12:PCD 發(fā)送 SEL 和 NVB,后隨 UID CLn 的所有 40 個位,后面有緊跟 CRC_A 校驗和。 

步驟 13:它的 UID CLn 與 40 個比特匹配,則該 PICC 以其 SAK 表示響應(yīng)。 

步驟 14:如果 UID 完整,則 PICC 應(yīng)發(fā)送帶有清空的串聯(lián)級別位的 SAK,并從 READY 狀態(tài)轉(zhuǎn)換到 ACTIVE 狀態(tài)。 

步驟 15:PCD 應(yīng)校驗 SAK 的串聯(lián)比特是否被設(shè)置,以決定帶有遞增串聯(lián)級別的進一步防沖突環(huán)時候應(yīng)繼續(xù)進行。 

如果 PICC 的 UID 是已知的,則 PCD 可以跳過步驟 2~10 來選擇該 PICC,而無需執(zhí)行防沖突環(huán)。

圖片1.png

2-9 PCD 防沖突環(huán)流程圖 

 

 NVB 的編碼長度:1 字節(jié) 

較高 4 位稱為字節(jié)計數(shù),規(guī)定所有被 8 分開的有效數(shù)據(jù)位的數(shù),包括被 PCD 發(fā)送的 NVB SEL。

這樣,字節(jié)奇數(shù)的最小值是 2 而最大值是 7。 

較低 4 位稱為比特計數(shù),規(guī)定由 PCD 發(fā)送的模 8 所有有效數(shù)據(jù)位的數(shù)。 

 

b8

b7

b6

b5

b4

b3

b2

b1

含義 

0

0

1

0

-

-

-

-

字節(jié)計數(shù)=2

0

0

1

1

-

-

-

-

字節(jié)計數(shù)=3

0

1

0

0

-

-

-

-

字節(jié)計數(shù)=4

0

1

0

1

-

-

-

-

字節(jié)計數(shù)=5

0

1

1

0

-

-

-

-

字節(jié)計數(shù)=6

0

1

1

1

-

-

-

-

字節(jié)計數(shù)=7

-

-

-

-

0

0

0

0

比特計數(shù)=0

-

-

-

-

0

0

0

1

比特計數(shù)=1

-

-

-

-

0

0

1

0

比特計數(shù)=2

-

-

-

-

0

0

1

1

比特計數(shù)=3

-

-

-

-

0

1

0

0

比特計數(shù)=4

-

-

-

-

0

1

0

1

比特計數(shù)=5

-

-

-

-

0

1

1

0

比特計數(shù)=6

-

-

-

-

0

1

1

1

比特計數(shù)=7

 

 2.7 NVB 的編碼 

 

SAK 的編碼(選擇確認) 

當(dāng) NVB 規(guī)定 40 個有效位并且當(dāng)所有這么數(shù)據(jù)位與 UID CLn 相配時,SAK PICC 來發(fā)送。 

 

第一字節(jié)


第二、第三字節(jié)

SAK


CRC_A

1字節(jié))


(兩字節(jié))

 

2-10 選擇確認(SAK

 

b3(串聯(lián)位)和 b6 的編碼在表 2.8 中給出。 

 

 2.8 SAK 的編碼 

 

b8

b7

b6

b5

b4

b3

b2

b1

含義 

X

X

X

X

X

1

X

X

串聯(lián)比特設(shè)置,UID 不完整 

X

X

1

X

X

0

X

X

UID 完整,PICC 遵循 ISO/IEC 14443-4

X

X

0

X

X

0

X

X

UID 完整,PICC 不遵循 ISO/IEC 14443-4

 

 

UID 內(nèi)容和串聯(lián)級別

UID 4、7 10 UID 字母組成。因此,PICC 最多處理 3 個串聯(lián)級別,以得到所有 UID 字節(jié)。在每個串聯(lián)級別內(nèi),由 5 個數(shù)據(jù)字節(jié)組成的 UID 的一部分應(yīng)被發(fā)送到 PCD。根據(jù)最大串聯(lián)級別,定義了 UID 長度的三個類型。該 UID 長度應(yīng)與表 2.9 一致 2.9 UID 長度 

UID0

描述 

 “08”

UID1 UID3 為動態(tài)生成的隨機數(shù) 

“x0”-“x7”

專有固定數(shù) 

“x9”-“xE”


“18”-“F8”

RFU

“xF”


UID 是一個固定的唯一數(shù)或由 PICC 動態(tài)生成的隨機數(shù)。UID 的第一個字節(jié)(uid0)分配后隨 UID 字節(jié)的內(nèi)容。 

 2.10 單個長度的 UID

UID0

描述 

制造商 ID 根據(jù) ISO/IEC

7816-6/AM1*

每個制造商對唯一編號的其他字節(jié)的值得唯一性負責(zé)。 

”81””FE”ISO/IEC 7816-6/AM1 中定義為私用,在這里不允許出現(xiàn) 

串聯(lián)標記 CT 的值“88”因不用于單個長度 UID 中的 uid0。 

2.10 兩個和三個長度的 UID

ISO/IEC 7816-6/AM1 中為私用標出的值“81”“FE”在本上下文中應(yīng)不予允許。 

圖片.png


2-11 串聯(lián)級別的使用

注:串聯(lián)標記的途是迫使造成與具育較小 UID 長度的 PICC 沖究.下列算法應(yīng)適用于 PCD 以獲得完整 UID;步驟 lPCD 選擇串聯(lián)級別 1 步驟 2:應(yīng)執(zhí)行防沖突環(huán) 

步驟 3PCD 應(yīng)檢驗 SAK 的串聯(lián)比特 

步驟 4:如果設(shè)置了串聯(lián)比特,PCD 應(yīng)增加串聯(lián)綴別并初始化一個新的防沖突環(huán)

傳輸協(xié)議

類型 A PICC 的協(xié)議激活

圖片.png

3-1 PCD 角度來看的類型 A PICC 激活 

 

選擇應(yīng)答請求

圖片.png

3-2 選擇應(yīng)答請求

參數(shù)字節(jié)由兩部分組成(見下圖): 

——最高有效半字節(jié) b8 b5 稱為 FSDI.它用于編碼 FSDFSD 定義了 PCD 能收到的幀的最大長度。FSD 的編碼在 25 中給出。 

——最低有效半字節(jié) b4 bl 命名為 CID。它定義編址了的 PICC 的邏輯號在 0 14 范圍內(nèi)。值

15 RFU。CID PCD 規(guī)定,并且對同一時刻處在 ACTIVE 狀態(tài)中的所有 PICC,它應(yīng)是唯一的。

CID PICC 被激活期間是固定的.并且 PICC 應(yīng)使用 CID 作為其邏輯標識符,它包含在接收到的第一個無差錯的 RATS。 

3-3 RATS 參數(shù)字節(jié)的編碼 

圖片.png

女人被c软件漫画,jmcomic.2.mic传送门,大象回家永久不迷路2023,罗宾被小麋鹿,日本porono,内衣柜办公室,打扑克生猴子图片,黄色软件,黄金仓库星空传媒,w98动漫