mirror of https://gerrit.osmocom.org/pysim
ts_31_102: Add shell command for GET IDENTITY
GET IDENTITY is used in the "SUCI computation on USIM" feature. Change-Id: I619d397900dbd6565f8f46acdabcee511903830c
This commit is contained in:
parent
621f78c943
commit
7ec822373e
|
@ -566,6 +566,12 @@ envelope_sms
|
|||
:module: pySim.ts_31_102
|
||||
:func: ADF_USIM.AddlShellCommands.envelope_sms_parser
|
||||
|
||||
get_identity
|
||||
~~~~~~~~~~~~
|
||||
.. argparse::
|
||||
:module: pySim.ts_31_102
|
||||
:func: ADF_USIM.AddlShellCommands.get_id_parser
|
||||
|
||||
|
||||
File-specific commands
|
||||
----------------------
|
||||
|
|
|
@ -641,3 +641,8 @@ class SimCardCommands:
|
|||
def get_data(self, tag: int, cla: int = 0x00):
|
||||
data, sw = self._tp.send_apdu('%02xca%04x00' % (cla, tag))
|
||||
return (data, sw)
|
||||
|
||||
# TS 31.102 Section 7.5.2
|
||||
def get_identity(self, context: int):
|
||||
data, sw = self._tp.send_apdu_checksw('807800%02x00' % (context))
|
||||
return (data, sw)
|
||||
|
|
|
@ -1664,6 +1664,23 @@ class ADF_USIM(CardADF):
|
|||
(data, sw) = self._cmd.card._scc.envelope(b2h(sms_dl.to_tlv()))
|
||||
self._cmd.poutput('SW: %s, data: %s' % (sw, data))
|
||||
|
||||
get_id_parser = argparse.ArgumentParser()
|
||||
get_id_parser.add_argument("--nswo-context", action='store_true')
|
||||
|
||||
@cmd2.with_argparser(get_id_parser)
|
||||
def do_get_identity(self, opts):
|
||||
"""Send a GET IDENTITY command to the card. This is part of the
|
||||
procedure for "SUCI calculation performed on USIM" supported
|
||||
by USIM with support for both EF.UST service 124 and 125."""
|
||||
context = 0x01 # SUCI
|
||||
if opts.nswo_context:
|
||||
context = 0x02 # SUCI 5G NSWO
|
||||
(data, sw) = self._cmd.card._scc.get_identity(context)
|
||||
do = SUCI_TlvDataObject()
|
||||
do.from_tlv(h2b(data))
|
||||
do_d = do.to_dict()
|
||||
self._cmd.poutput('SUCI TLV Data Object: %s' % do_d['suci__tlv_data_object'])
|
||||
|
||||
|
||||
# TS 31.102 Section 7.3
|
||||
sw_usim = {
|
||||
|
|
Loading…
Reference in New Issue