如何在作为客户端的 USIM 卡与服务器之间建立 TLS-PSK 模式的 TLS 连接?

How to establish a TLS coonection in TLS-PSK mode between a USIM sim card as client and a server?

我想在我的 SIM 卡和服务器之间建立 TLS-PSK 模式的 tls 连接。为了实现这一点,据我所知,首先我必须发送一个推送命令来打开一个 BIP 通道,然后通过发送另一个推送命令建立一个 CAT_TP link 然后 sim 卡将启动 TLS握手。所以首先我想向我的 sim 卡发送一个推送命令以打开一个 BIP 通道。为此,推送命令将是 OPEN CHANNEL 命令。但首先我通过 sim 卡 reader 向 sim 卡发送 OPEN CHANNEL 命令来测试这个过程,看看它是如何工作的。我有一个我正在关注的示例文件,它首先发送一个包含以下内容的信封 SMS-PP:

81488346 \
    84 44\ ;Connection parameter tag
    81 03 014001\ ;Command details TLV
    82 02 8182\ ;Device identities TLV
    35 01 03\ ;Bearer description TLV: default
    39 02 0514\ ;Buffer size TLV
    47 14 13696E7465726E65742D656E7472657072697365\ ;Network Access Name
    0D 07 xxxxxxxxxxxxxx\ ;login name 
    0D 07 xxxxxxxxxxxxxx\ ;password
    3C 03 021964\ ; UICC/terminal interface port number
    3E 05 xxxxxxxxxx ;IP address

在示例文件中,它通过 sim 卡的密钥和它的 RAM TAR 值对上述内容进行加密,并通过这样的信封命令发送加密数据:

Command     : 80 C2 00 00  8A 
  Input Data   : D1 81 87 02  02 82 81 06  02 80 01 8B  7D 40 05 81  
               : 12 50 F3 96  F6 22 22 22  22 22 22 22  6D 02 70 00  
               : 00 68 15 16  39 12 12 00  00 01 F0 BD  C0 49 B4 0C  
               : EB A9 7C 4B  04 32 17 BE  A7 2F DA AC  70 93 36 73  
               : 83 FD AC 64  CA 9B 34 9C  2B E6 31 24  A0 D5 11 09  
               : 00 3E E3 F5  43 4B 55 77  98 E5 08 40  A4 CE A9 52  
               : 3E E1 38 6B  44 AC 73 1E  3B CD 49 32  92 B2 C3 22  
               : 25 02 68 90  FD F5 06 23  97 0D BD 5B  1D DE 25 F1  
               : FD 4C 75 C8  37 AC B0 15  05 25

然后它通过 FETCH 命令获取推送短信,然后使用 TERMINAL RESPONSE 命令获取终端响应以查看是否一切正常。最后使用 FETCH 命令获取打开的通道,它说一旦打开通道完成,卡就会向服务器发送 CLIENT HELLO 以启动 TLS 握手。 现在我想实现这个,但在第一步,我应该发送信封的地方,我希望得到 9146 作为状态字,这意味着一切正常。但我得到 6200,这意味着“非易失性存储器的状态未改变”。 为什么我会收到此回复?基本上打开 BIP 通道然后建立 CAT-TP 的正确方法是什么 link?

您应该先发送 TERMINAL PROFILE 命令。使用此命令,您将让 UICC 知道终端的功能。在此命令中,您应该指示终端能够处理 PROACTIVE 命令。您可以在 ETSI TS 102223

中阅读更多相关信息