laforge has uploaded this change for review.

View Change

saip-tool: Dump information about security domains from "info" command

output looks like this:

Number of security domains: 1
Security domain Instance AID: a000000151000000
KVN=0x01, KID=0x01, [SdKeyComp(type=aes, mac_len=8, data=00000000000000000000000000000000)]
KVN=0x01, KID=0x02, [SdKeyComp(type=aes, mac_len=8, data=00000000000000000000000000000000)]
KVN=0x01, KID=0x03, [SdKeyComp(type=aes, mac_len=8, data=00000000000000000000000000000000)]

Change-Id: Ia25f5ca6d7e888f7032301dd2561d066a3870010
---
M contrib/saip-tool.py
1 file changed, 27 insertions(+), 1 deletion(-)

git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/28/37428/1
diff --git a/contrib/saip-tool.py b/contrib/saip-tool.py
index 6f2a2a4..4a9bec9 100755
--- a/contrib/saip-tool.py
+++ b/contrib/saip-tool.py
@@ -180,7 +180,16 @@
print("\tLoad Block Size: %s" % len(app_pe.decoded['loadBlock']['loadBlockObject']))
for inst in app_pe.decoded.get('instanceList', []):
print("\tInstance AID: %s" % b2h(inst['instanceAID']))
- pass
+
+ # security domains
+ print()
+ sds = pes.pe_by_type.get('securityDomain', [])
+ print("Number of security domains: %u" % len(sds))
+ for sd in sds:
+ print("Security domain Instance AID: %s" % b2h(sd.decoded['instance']['instanceAID']))
+ # FIXME: 'applicationSpecificParametersC9' parsing to figure out enabled SCP
+ for key in sd.keys:
+ print("\tKVN=0x%02x, KID=0x%02x, %s" % (key.key_version_number, key.key_identifier, key.key_components))

def do_extract_apps(pes:ProfileElementSequence, opts):
apps = pes.pe_by_type.get('application', [])

To view, visit change 37428. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: pysim
Gerrit-Branch: master
Gerrit-Change-Id: Ia25f5ca6d7e888f7032301dd2561d066a3870010
Gerrit-Change-Number: 37428
Gerrit-PatchSet: 1
Gerrit-Owner: laforge <laforge@osmocom.org>
Gerrit-MessageType: newchange