Как установить соединение TLS в режиме TLS-PSK между сим-картой USIM в качестве клиента и сервером?

Я хочу установить tls-соединение между моей сим-картой и сервером в режиме TLS-PSK. чтобы добиться этого, насколько я понял, сначала я должен отправить команду push, чтобы открыть канал BIP, затем установить ссылку CAT_TP, отправив другую команду push, а затем сим-карта запустит рукопожатие TLS. Итак, сначала я хочу отправить push-команду на свою сим-карту, чтобы открыть канал BIP. Для этого команда push будет командой OPEN CHANNEL. Но сначала я тестирую этот процесс, отправляя команду 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

в примере файла он шифрует вышеуказанное содержимое ключами сим-карты и значением 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

Затем он получает push-смс с помощью команды FETCH и после этого получает ответ терминала с помощью команды TERMINAL RESPONSE, чтобы убедиться, что все прошло нормально. и, наконец, выбирает открытый канал с помощью команды FETCH, и он говорит, что после выполнения OPEN CHANNEL карта отправляет CLIENT HELLO на сервер, чтобы начать рукопожатие TLS. Теперь я хочу реализовать это, но на первом этапе, куда я должен отправить конверт, я ожидаю получить 9146 в качестве слова состояния, что означает, что все было в порядке. но я получаю 6200, что означает, что состояние энергонезависимой памяти не изменилось. Почему я получаю этот ответ? И как правильно открыть канал BIP, а затем установить канал CAT-TP?


person amir    schedule 11.04.2021    source источник


Ответы (1)


Сначала вы должны отправить команду TERMINAL PROFILE. С помощью этой команды вы сообщите UICC, на что способен терминал. В этой команде вы должны указать, что терминал может обрабатывать ПРОАКТИВНЫЕ команды. Подробнее об этом можно прочитать в ETSI TS 102223

person Alireza Azhdari    schedule 14.05.2021