日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

SIM通信协议-传输协议

發布時間:2024/2/2 综合教程 43 生活家
生活随笔 收集整理的這篇文章主要介紹了 SIM通信协议-传输协议 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

概述

1.SIM卡傳輸協議架構類似與TCP/IP的OSI模型。分為5層

物理層
數據鏈路層
傳輸層
USAT層
應用層

1.1物理層

通過IO口傳輸二進制數據。

1.2數據鏈路層

定義字符交換的時序和差錯處理。數據鏈路層定義了T=0和T=1兩種傳輸方式。他們都是半雙工傳輸,T=0是基于字節傳輸。T=1是基于塊傳輸。

1.21 T=0傳輸方式(面向字節)

傳輸從一個命令頭開始,該命令頭由CLA,INS,P1,P2,P3組成。終端向UICC(智能卡)發送字節頭,UICC就會響應一個字節的結果給終端。該結果有以下幾種定義。

如果該字節等于命令頭的INS,那么終端從UICC獲取剩余的數據,或者UICC從終端獲取剩余的數據。
如果該字節等于命令頭的補碼,那么終端從UICC讀取另一次數據,或者UICC從終端讀取另一次數據。
如果該字節等于‘60’,沒有額外的數據需要傳輸,終端只能等待傳輸過程字節。
如果該字節等于‘61’,終端要等待第二個過程字節,并且發送P3為最大長度的GET RESPONSE 頭給UICC。
如果該字節等于‘6C’,終端需要等待第二個過程字節,并且發送P3位最大長度的與之前相同的頭給UICC。

命令結束過,UICC返回給終端一個2個字節的狀態SW1和SW2.(詳細常考GSM手冊。)

1.22 T=1傳輸方式(面向塊)

一個塊的架構如下圖所示。

NAD:塊地址字節(必須)

PCB:控制協議字節(必須)

INF: 0~256bit的信息字節(可選)

T=0協議定義了三種類型的塊

I-Bolck:在應用層傳輸數據,還包含該數據是否需要響應的標志。
R-Block:用于傳輸響應。
S-Block:用于傳輸控制信息。

1.3 傳輸層

該層協議協定了APDU到TPDU的映射關系,以及TPDU與卡如何完成數據交互。終端要與UICC進行通信,那么必須將應用協議數據單元APDU映射為傳輸協議數據單元TPDU。

1.31 APDU COMMAND

APDUCOMMAND由Command header 和 Command body兩部分組成。其中CLA INS P1 P2 和之前介紹的一樣。只是P3變為了可變長度的Command body,Command 的Lc(期望發送的數據長度)和Le(期望接收的數據長度)兩個域是可選的,于是乎我們的APDU COMMAND就有以下幾種組合方式。

1.32 APDU COMMAND的編碼

以上為APDU的編碼。我們根據Case 1-Case 4來分別分析這四種組合的編碼。

Case 1 編碼:包括Command header。
Case 2 編碼:包括Command header 和Le,這里Le編碼可以為一個字節和三個字節

  當Le為一個字節時,所希望接收字節是 1到256
當Le為三個字節時,那么第一個字節為‘00’,后面兩個字節所指示的所希望接收字節范圍是1-65536

Case 3 編碼:包括Command header Lc data,Lc和上面的Le編碼和意義差不多表示期望發送的字節。
Case 4 編碼:包括Command header Lc data Le。

1.33 APDU COMMAND 到TPDU COMMAND映射

這里映射也分為4種情況

Case 1:

Case 2:

Case 3:

Case 4:

1.4 USAT層

USAT層使用應用狀態字來指示

終端主動命令的可用性‘91XX’。
用于響應終端Envelope命令的可用數據(‘9000’,‘62XX’,‘63XX’)。
暫時無法使用USAT去處理Envelope(‘9300’)。

1.41 主動命令

當狀態字SW1-SW2 為‘9000’,這卡可以通過回復‘91XX’來指示接下來有主動命令要發送。終端通過FETCH-APDU來獲取卡的主動命令。終端通過TERMINAL RESPONSE來回復卡。

1.42 ENVELOPE 命令

該命令用于傳輸數據到USAT。

1.5 應用層

應用層則包括UICC的文件系統,以及UICC的安全機制,應用交互機制。

1.51 應用層文件系統下有三類文件 EF DF MF

Dedicated files :DF針對功能對文件進行分組。ADF是包含特定應用相關的所有DF 和 EF。
Elementary files : EF 分三類,Transparent EF ,Linear fixed EF,Cyclic EF.

Transparent EF 由一系列字節組成。當對文件進行修改操作時,由文件起始位置加上相對偏移的方式對文件相關內容進行修改。
Linear fixed EF 具有線性固定的結構的文件由一系列具有相同長度記錄構成。第一條記錄為1,SELECT命令會返回記錄的總數量。
Cyclic EF 一系列具有相同長度的記錄首尾循環組成。

1.52 選擇文件的方法

當ATR過程結束,MF文件被自動選擇成為當成路徑。所有文件可以通過SELECT命令來選擇,選擇的文件需在當前目錄下,可以選擇以下幾種文件

當前路徑下的子文件
當前目錄下的子目錄
當前目錄下的父親目錄
當前目錄
當前應用下的應用目錄ADF(默認可以用’777F‘選擇)
主目錄MF

以下為相對目錄下可選擇的文件的表

我們也可以通過絕對路徑來選擇相應文件。

不過這有以下幾條限制

如果選擇的文件在MF下,我們路徑中不需要加MF。
如果選擇路徑從當前DF,終端不該使用‘777F’作為起始路徑。
如果從MF開始或者從當前的DF開始為路徑選擇,終端命令的data字段不該為空。
如果從MF或當前DF開始時,終端不該用當前的DF標識。

1.53 短文件標識

一些在DF目錄下的EF文件不需要通過SELECT來選擇,以下的一些命令配合SFI(短文件標示)參數可以被默認選擇。

READ BINARY
UPDATA RECORD
UPDATA RECORD
INCREASE;or
SEARCH RECORD

1.54 應用會話激活

應用會話會在終端發送附帶特定參數SELECT命令選擇AID后,被激活。UICC需要一定的程序來激活應用會話。該應用程序用于使終端和UICC處于對話狀態。終端可以通過發送STATUS命令來獲知UICC是否初始化成功。

1.55 應用會話停止

一個應用會話終止前應該執行一段終止程序。當終止程序執行開始,UICC會發送給終端一個STATUS命令來通知終端會話將被終止。

當以下其中一個時間發生,應用會話將被終止。

隱性停止:當SELECT命令選擇另一個AID時候,并且命令參數指明新應用將被執行。
直接停止:如果重新用SELECT命令選擇當前的AID的DF文件,并且命令參數中指示應用會話停止。

1.56 應用會話停止

終端通過SELECT重新選擇當前的AID的DF,并且參數指示重啟。重啟之后,該應用的安全狀態也會改變。

  

總結

以上是生活随笔為你收集整理的SIM通信协议-传输协议的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。