test: added tests for GSM/UMTS auth algorithms

This commit is contained in:
James Prestwood 2017-10-11 16:22:18 -07:00 committed by Denis Kenzior
parent cd92f86ad4
commit 5556e2ac57
2 changed files with 74 additions and 0 deletions

38
test/run-isim-umts-auth Executable file
View File

@ -0,0 +1,38 @@
#!/usr/bin/python3
import dbus
import sys
bus = dbus.SystemBus()
if len(sys.argv) == 4:
path = sys.argv[1]
rand = sys.argv[2]
autn = sys.argv[3]
sim_auth = dbus.Interface(bus.get_object('org.ofono', path),
'org.ofono.SimAuthentication')
apps = sim_auth.GetApplications()
for i in apps:
if apps[i]['Type'] == 'Ims':
ims_path = i
if not ims_path:
print("No Ims application found")
quit()
isim_auth = dbus.Interface(bus.get_object('org.ofono', ims_path),
'org.ofono.ISimApplication')
ret = isim_auth.ImsAuthenticate(bytearray.fromhex(rand),
bytearray.fromhex(autn))
if 'auts' in ret:
print('Sync Failure')
print('AUTS: ' + ''.join('%02x' % x for x in ret['AUTS']))
else:
print('Success')
print('RES: ' + ''.join('%02x' % x for x in ret['RES']))
print('CK: ' + ''.join('%02x' % x for x in ret['CK']))
print('IK: ' + ''.join('%02x' % x for x in ret['IK']))
else:
print("./run-isim-umts-auth <modem> <rand> <autn>")

36
test/run-usim-gsm-auth Executable file
View File

@ -0,0 +1,36 @@
#!/usr/bin/python3
import dbus
import sys
bus = dbus.SystemBus()
if len(sys.argv) < 6 and len(sys.argv) > 2:
path = sys.argv[1]
rands = []
for i in sys.argv[2:]:
rands.append(bytearray.fromhex(i))
sim_auth = dbus.Interface(bus.get_object('org.ofono', path),
'org.ofono.SimAuthentication')
apps = sim_auth.GetApplications()
for i in apps:
if apps[i]['Type'] == 'Umts':
umts_path = i
if not umts_path:
print("No Umts application found")
quit()
umts = dbus.Interface(bus.get_object('org.ofono', umts_path),
'org.ofono.USimApplication')
av = umts.GsmAuthenticate(rands)
for i in av:
print('SRES: ' + ''.join('%02x' % x for x in i['SRES']))
print('KC: ' + ''.join('%02x' % x for x in i['Kc']))
else:
print("./run-usim-gsm-auth <modem> <rands>...[up to 3]")