如何在作为客户端的 USIM sim 卡和服务器之间以 TLS-PSK 模式建立 TLS 连接?
Posted
技术标签:
【中文标题】如何在作为客户端的 USIM sim 卡和服务器之间以 TLS-PSK 模式建立 TLS 连接?【英文标题】:How to establish a TLS coonection in TLS-PSK mode between a USIM sim card as client and a server? 【发布时间】:2021-04-11 14:12:18 【问题描述】:我想在我的 sim 卡和 TLS-PSK 模式下的服务器之间建立 tls 连接。为了实现这一点,据我所知,首先我必须发送一个推送命令来打开一个 BIP 通道,然后通过发送另一个推送命令建立一个 CAT_TP 链接,然后 sim 卡将开始 TLS 握手。所以首先我想向我的 sim 卡发送一个推送命令来打开一个 BIP 通道。为此,推送命令将是 OPEN CHANNEL 命令。但首先我通过 sim 卡读卡器向 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 命令获取开放通道,它说一旦 OPEN CHANNEL 完成,卡将 CLIENT HELLO 发送到服务器以启动 TLS 握手。 现在我想实现这个,但在第一步,我应该发送信封,我希望得到 9146 作为状态字,这意味着一切正常。但我得到 6200,这意味着“非易失性存储器的状态没有改变”。 为什么我会得到这个响应?基本上打开 BIP 通道然后建立 CAT-TP 链接的正确方法是什么?
【问题讨论】:
【参考方案1】:您应该首先发送 TERMINAL PROFILE 命令。使用此命令,您将让 UICC 知道终端的功能。在此命令中,您应该指出终端能够处理 PROACTIVE 命令。您可以在ETSI TS 102223中阅读更多相关信息
【讨论】:
以上是关于如何在作为客户端的 USIM sim 卡和服务器之间以 TLS-PSK 模式建立 TLS 连接?的主要内容,如果未能解决你的问题,请参考以下文章