WIP: Full TUAK support + refactoring
This renovates/fixes the following: - rafactor/cleanup code - add unit tests for sysmo-isim-sja5 - add full read/write support for TUAK parameters - Allow setting algorims for 4g5g individually - Generalize commandline setting "Ki" to "Key" (Risk of incompatibility if customers use --set-ki in scripts!) - Add a class for each algo specific header nibble - Add a class for each algo specific parameter body - Display settings for each generation individually (SIM/2g, USIM/3g, ISIM/4g5g) - Check algorithm before programming (e.g. do not allow to program OP/c when COMP128v1 is selected) - Update key (Ki) and OPc read write functions, so that they can also program TUAK keys and TOPc Todo: - Add TUAK specific testcases - rename testcase "05_ki.sh "to "05_key.sh"
This commit is contained in:
parent
513de41913
commit
8958268fc3
39
common.py
39
common.py
|
@ -28,8 +28,8 @@ import sys, getopt
|
||||||
|
|
||||||
COMMON_GETOPTS = "hfa:J:nN:lL:kK:tT:oO:C:sSip"
|
COMMON_GETOPTS = "hfa:J:nN:lL:kK:tT:oO:C:sSip"
|
||||||
COMMON_GETOPTS_LONG = ["help", "force", "adm1=", "set-imsi=", "mnclen",
|
COMMON_GETOPTS_LONG = ["help", "force", "adm1=", "set-imsi=", "mnclen",
|
||||||
"set-mnclen=", "milenage", "set-milenage=", "ki",
|
"set-mnclen=", "milenage", "set-milenage=", "key",
|
||||||
"set-ki=", "auth", "set-auth=", "opc", "set-op=",
|
"set-key=", "auth", "set-auth=", "opc", "set-op=",
|
||||||
"set-opc=", "seq-parameters", "reset-seq-parameters"
|
"set-opc=", "seq-parameters", "reset-seq-parameters"
|
||||||
"iccid", "aid"]
|
"iccid", "aid"]
|
||||||
|
|
||||||
|
@ -46,8 +46,8 @@ class Common():
|
||||||
show_mnclen = None
|
show_mnclen = None
|
||||||
show_milenage = False
|
show_milenage = False
|
||||||
write_milenage = None
|
write_milenage = None
|
||||||
show_ki = None
|
show_key = None
|
||||||
write_ki = None
|
write_key = None
|
||||||
show_auth = False
|
show_auth = False
|
||||||
write_auth = None
|
write_auth = None
|
||||||
show_opc = False
|
show_opc = False
|
||||||
|
@ -91,14 +91,14 @@ class Common():
|
||||||
self.show_milenage = True
|
self.show_milenage = True
|
||||||
elif opt in ("-L", "--set-milenage"):
|
elif opt in ("-L", "--set-milenage"):
|
||||||
self.write_milenage = asciihex_to_list(arg)
|
self.write_milenage = asciihex_to_list(arg)
|
||||||
elif opt in ("-k", "--ki"):
|
elif opt in ("-k", "--key"):
|
||||||
self.show_ki = True
|
self.show_key = True
|
||||||
elif opt in ("-K", "--set-ki"):
|
elif opt in ("-K", "--set-key"):
|
||||||
self.write_ki = asciihex_to_list(arg)
|
self.write_key = asciihex_to_list(arg)
|
||||||
elif opt in ("-t", "--auth"):
|
elif opt in ("-t", "--auth"):
|
||||||
self.show_auth = True
|
self.show_auth = True
|
||||||
elif opt in ("-T", "--set-auth"):
|
elif opt in ("-T", "--set-auth"):
|
||||||
self.write_auth = arg.split(':',1)
|
self.write_auth = arg.split(':', 2)
|
||||||
elif opt in ("-o", "--opc"):
|
elif opt in ("-o", "--opc"):
|
||||||
self.show_opc = True
|
self.show_opc = True
|
||||||
elif opt in ("-O", "--set-op"):
|
elif opt in ("-O", "--set-op"):
|
||||||
|
@ -141,10 +141,10 @@ class Common():
|
||||||
print(" -N, --set-mnclen ............... Set MNC length value")
|
print(" -N, --set-mnclen ............... Set MNC length value")
|
||||||
print(" -l, --milenage ................. Show milenage parameters")
|
print(" -l, --milenage ................. Show milenage parameters")
|
||||||
print(" -L, --set-milenage HEXSTRING ... Set milenage parameters")
|
print(" -L, --set-milenage HEXSTRING ... Set milenage parameters")
|
||||||
print(" -k, --ki ....................... Show KI value")
|
print(" -k, --key ...................... Show auth key value")
|
||||||
print(" -K, --set-ki ................... Set KI value")
|
print(" -K, --set-key .................. Set auth key value")
|
||||||
print(" -t, --auth ..................... Show Authentication algorithms")
|
print(" -t, --auth ..................... Show authentication algorithms")
|
||||||
print(" -T, --set-auth 2G:3G ........... Set 2G/3G Auth algo (e.g. COMP128v1:COMP128v1)")
|
print(" -T, --set-auth 2g:3g[:4g5g] .... Set 2G/3G auth algo (e.g. COMP128v1:COMP128v1)")
|
||||||
print(" -o, --opc ...................... Show OP/c configuration")
|
print(" -o, --opc ...................... Show OP/c configuration")
|
||||||
print(" -O, --set-op HEXSTRING ......... Set OP value")
|
print(" -O, --set-op HEXSTRING ......... Set OP value")
|
||||||
print(" -C, --set-opc HEXSTRING ........ Set OPc value")
|
print(" -C, --set-opc HEXSTRING ........ Set OPc value")
|
||||||
|
@ -182,17 +182,20 @@ class Common():
|
||||||
if self.show_milenage:
|
if self.show_milenage:
|
||||||
self.sim.show_milenage_params()
|
self.sim.show_milenage_params()
|
||||||
|
|
||||||
if self.write_ki:
|
if self.write_key:
|
||||||
self.sim.write_ki_params(self.write_ki)
|
self.sim.write_key_params(self.write_key)
|
||||||
|
|
||||||
if self.show_ki:
|
if self.show_key:
|
||||||
self.sim.show_ki_params()
|
self.sim.show_key_params()
|
||||||
|
|
||||||
if self.show_auth:
|
if self.show_auth:
|
||||||
self.sim.show_auth_params()
|
self.sim.show_auth_params()
|
||||||
|
|
||||||
if self.write_auth:
|
if self.write_auth:
|
||||||
self.sim.write_auth_params(self.write_auth[0], self.write_auth[1])
|
if len(self.write_auth) > 2:
|
||||||
|
self.sim.write_auth_params(self.write_auth[0], self.write_auth[1], self.write_auth[2])
|
||||||
|
else:
|
||||||
|
self.sim.write_auth_params(self.write_auth[0], self.write_auth[1])
|
||||||
|
|
||||||
if self.show_opc:
|
if self.show_opc:
|
||||||
self.sim.show_opc_params()
|
self.sim.show_opc_params()
|
||||||
|
|
|
@ -32,7 +32,8 @@ from common import *
|
||||||
class Application(Common):
|
class Application(Common):
|
||||||
|
|
||||||
getopt_dump = False
|
getopt_dump = False
|
||||||
|
getopt_show_tuak_cfg = False
|
||||||
|
getopt_write_tuak_cfg = None
|
||||||
|
|
||||||
# Automatically executed by superclass
|
# Automatically executed by superclass
|
||||||
def _banner(self):
|
def _banner(self):
|
||||||
|
@ -46,16 +47,27 @@ class Application(Common):
|
||||||
for opt, arg in opts:
|
for opt, arg in opts:
|
||||||
if opt in ("-d", "--dump"):
|
if opt in ("-d", "--dump"):
|
||||||
self.getopt_dump = True
|
self.getopt_dump = True
|
||||||
|
elif opt in ("-w", "--tuak-cfg"):
|
||||||
|
self.getopt_show_tuak_cfg = True
|
||||||
|
elif opt in ("-W", "--set-tuak-cfg"):
|
||||||
|
self.getopt_write_tuak_cfg = arg.split(':', 3)
|
||||||
|
|
||||||
# Automatically executed by superclass when -h or --help is supplied as option
|
# Automatically executed by superclass when -h or --help is supplied as option
|
||||||
def _helptext(self):
|
def _helptext(self):
|
||||||
print(" -d, --dump ..................... Dump propritary file contents")
|
print(" -d, --dump ..................... Dump propritary file contents")
|
||||||
|
#TODO: add a help screen to explain what RMCK means
|
||||||
|
print(" -w, --tuak-cfg ................. Show TUAK configuration")
|
||||||
|
print(" -W, --set-tuak-cfg R:M:C:K ..... Set TUAK configuration")
|
||||||
print("")
|
print("")
|
||||||
print(" For Option -T, the following algorithms are valid:")
|
print(" For Option -T, the following algorithms are valid:")
|
||||||
print('\n'.join([' %d %s' % entry for entry in sysmo_isimsja5_algorithms]))
|
print('\n'.join([' %d %s' % entry for entry in sysmo_isimsja5_algorithms]))
|
||||||
print("")
|
print("")
|
||||||
|
print(" For Option -W, the following values are applicable:")
|
||||||
|
print(" R = RES-Size in bits: 32, 64, 128 or 256")
|
||||||
|
print(" M = MAC-A and MAC-S size in bits: 64, 128 or 256")
|
||||||
|
print(" C = CK and IK size in bits: 128 or 256")
|
||||||
|
print(" K = Number of Keccak iterations: 1-255")
|
||||||
|
print("")
|
||||||
|
|
||||||
# Automatically executed by superclass before _execute() is called
|
# Automatically executed by superclass before _execute() is called
|
||||||
def _init(self):
|
def _init(self):
|
||||||
|
@ -67,11 +79,15 @@ class Application(Common):
|
||||||
|
|
||||||
if self.getopt_dump:
|
if self.getopt_dump:
|
||||||
self.sim.dump()
|
self.sim.dump()
|
||||||
|
elif self.getopt_show_tuak_cfg:
|
||||||
|
self.sim.show_tuak_cfg()
|
||||||
|
elif self.getopt_write_tuak_cfg:
|
||||||
|
self.sim.write_tuak_cfg(self.getopt_write_tuak_cfg[0], self.getopt_write_tuak_cfg[1], \
|
||||||
|
self.getopt_write_tuak_cfg[2], self.getopt_write_tuak_cfg[3])
|
||||||
|
|
||||||
def main(argv):
|
def main(argv):
|
||||||
|
|
||||||
Application(argv, "d", ["dump"])
|
Application(argv, "dwW:", ["dump"])
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -471,7 +471,7 @@ class Sysmo_usim_sjs1(Sysmo_usim):
|
||||||
|
|
||||||
|
|
||||||
# Show current KI value
|
# Show current KI value
|
||||||
def show_ki_params(self):
|
def show_key_params(self):
|
||||||
print("Reading KI value...")
|
print("Reading KI value...")
|
||||||
print(" * Reading...")
|
print(" * Reading...")
|
||||||
self.sim.select(GSM_SIM_DF_GSM)
|
self.sim.select(GSM_SIM_DF_GSM)
|
||||||
|
@ -484,7 +484,7 @@ class Sysmo_usim_sjs1(Sysmo_usim):
|
||||||
|
|
||||||
|
|
||||||
# Program new KI value
|
# Program new KI value
|
||||||
def write_ki_params(self, ki):
|
def write_key_params(self, ki):
|
||||||
print("Writing KI value...")
|
print("Writing KI value...")
|
||||||
self._init()
|
self._init()
|
||||||
|
|
||||||
|
|
|
@ -32,3 +32,20 @@ echo ""
|
||||||
echo ""
|
echo ""
|
||||||
echo ""
|
echo ""
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
|
echo "=========================================================="
|
||||||
|
echo " EXECUTING TESTS FOR SYSMO-USIM-SJA5"
|
||||||
|
echo "=========================================================="
|
||||||
|
echo ""
|
||||||
|
cd ./sja5
|
||||||
|
echo "Location $PWD"
|
||||||
|
echo ""
|
||||||
|
sh ./run-tests
|
||||||
|
if [ ! $? -eq 0 ]; then
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
cd ..
|
||||||
|
echo ""
|
||||||
|
echo ""
|
||||||
|
echo ""
|
||||||
|
echo ""
|
||||||
|
|
|
@ -16,8 +16,9 @@ Authenticating...
|
||||||
Programming Authentication parameters...
|
Programming Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* New algorithm setting:
|
* New algorithm setting:
|
||||||
2G: 1=COMP128v1
|
2g: 1=COMP128v1
|
||||||
3G: 1=COMP128v1
|
3g: 1=COMP128v1
|
||||||
|
4g5g: 1=COMP128v1
|
||||||
* Programming...
|
* Programming...
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
|
@ -40,8 +41,9 @@ Reading Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* Reading...
|
* Reading...
|
||||||
* Current algorithm setting:
|
* Current algorithm setting:
|
||||||
2G: 1=COMP128v1
|
2g: 1=COMP128v1
|
||||||
3G: 1=COMP128v1
|
3g: 1=COMP128v1
|
||||||
|
4g5g: 1=COMP128v1
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
sysmoISIM-SJA2 parameterization tool
|
sysmoISIM-SJA2 parameterization tool
|
||||||
|
@ -62,8 +64,9 @@ Authenticating...
|
||||||
Programming Authentication parameters...
|
Programming Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* New algorithm setting:
|
* New algorithm setting:
|
||||||
2G: 3=COMP128v3
|
2g: 3=COMP128v3
|
||||||
3G: 1=COMP128v1
|
3g: 1=COMP128v1
|
||||||
|
4g5g: 1=COMP128v1
|
||||||
* Programming...
|
* Programming...
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
|
@ -86,8 +89,9 @@ Reading Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* Reading...
|
* Reading...
|
||||||
* Current algorithm setting:
|
* Current algorithm setting:
|
||||||
2G: 3=COMP128v3
|
2g: 3=COMP128v3
|
||||||
3G: 1=COMP128v1
|
3g: 1=COMP128v1
|
||||||
|
4g5g: 1=COMP128v1
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
sysmoISIM-SJA2 parameterization tool
|
sysmoISIM-SJA2 parameterization tool
|
||||||
|
@ -108,8 +112,9 @@ Authenticating...
|
||||||
Programming Authentication parameters...
|
Programming Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* New algorithm setting:
|
* New algorithm setting:
|
||||||
2G: 4=MILENAGE
|
2g: 4=MILENAGE
|
||||||
3G: 1=COMP128v1
|
3g: 1=COMP128v1
|
||||||
|
4g5g: 1=COMP128v1
|
||||||
* Programming...
|
* Programming...
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
|
@ -132,8 +137,9 @@ Reading Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* Reading...
|
* Reading...
|
||||||
* Current algorithm setting:
|
* Current algorithm setting:
|
||||||
2G: 4=MILENAGE
|
2g: 4=MILENAGE
|
||||||
3G: 1=COMP128v1
|
3g: 1=COMP128v1
|
||||||
|
4g5g: 1=COMP128v1
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
sysmoISIM-SJA2 parameterization tool
|
sysmoISIM-SJA2 parameterization tool
|
||||||
|
@ -154,8 +160,9 @@ Authenticating...
|
||||||
Programming Authentication parameters...
|
Programming Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* New algorithm setting:
|
* New algorithm setting:
|
||||||
2G: 5=SHA1-AKA
|
2g: 5=SHA1-AKA
|
||||||
3G: 1=COMP128v1
|
3g: 1=COMP128v1
|
||||||
|
4g5g: 1=COMP128v1
|
||||||
* Programming...
|
* Programming...
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
|
@ -178,8 +185,9 @@ Reading Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* Reading...
|
* Reading...
|
||||||
* Current algorithm setting:
|
* Current algorithm setting:
|
||||||
2G: 5=SHA1-AKA
|
2g: 5=SHA1-AKA
|
||||||
3G: 1=COMP128v1
|
3g: 1=COMP128v1
|
||||||
|
4g5g: 1=COMP128v1
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
sysmoISIM-SJA2 parameterization tool
|
sysmoISIM-SJA2 parameterization tool
|
||||||
|
@ -200,8 +208,9 @@ Authenticating...
|
||||||
Programming Authentication parameters...
|
Programming Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* New algorithm setting:
|
* New algorithm setting:
|
||||||
2G: 15=XOR
|
2g: 15=XOR
|
||||||
3G: 1=COMP128v1
|
3g: 1=COMP128v1
|
||||||
|
4g5g: 1=COMP128v1
|
||||||
* Programming...
|
* Programming...
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
|
@ -224,8 +233,9 @@ Reading Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* Reading...
|
* Reading...
|
||||||
* Current algorithm setting:
|
* Current algorithm setting:
|
||||||
2G: 15=XOR
|
2g: 15=XOR
|
||||||
3G: 1=COMP128v1
|
3g: 1=COMP128v1
|
||||||
|
4g5g: 1=COMP128v1
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
sysmoISIM-SJA2 parameterization tool
|
sysmoISIM-SJA2 parameterization tool
|
||||||
|
@ -246,8 +256,9 @@ Authenticating...
|
||||||
Programming Authentication parameters...
|
Programming Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* New algorithm setting:
|
* New algorithm setting:
|
||||||
2G: 1=COMP128v1
|
2g: 1=COMP128v1
|
||||||
3G: 4=MILENAGE
|
3g: 4=MILENAGE
|
||||||
|
4g5g: 4=MILENAGE
|
||||||
* Programming...
|
* Programming...
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
|
@ -270,8 +281,9 @@ Reading Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* Reading...
|
* Reading...
|
||||||
* Current algorithm setting:
|
* Current algorithm setting:
|
||||||
2G: 1=COMP128v1
|
2g: 1=COMP128v1
|
||||||
3G: 4=MILENAGE
|
3g: 4=MILENAGE
|
||||||
|
4g5g: 4=MILENAGE
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
sysmoISIM-SJA2 parameterization tool
|
sysmoISIM-SJA2 parameterization tool
|
||||||
|
@ -292,8 +304,9 @@ Authenticating...
|
||||||
Programming Authentication parameters...
|
Programming Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* New algorithm setting:
|
* New algorithm setting:
|
||||||
2G: 3=COMP128v3
|
2g: 3=COMP128v3
|
||||||
3G: 15=XOR
|
3g: 15=XOR
|
||||||
|
4g5g: 15=XOR
|
||||||
* Programming...
|
* Programming...
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
|
@ -316,8 +329,9 @@ Reading Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* Reading...
|
* Reading...
|
||||||
* Current algorithm setting:
|
* Current algorithm setting:
|
||||||
2G: 3=COMP128v3
|
2g: 3=COMP128v3
|
||||||
3G: 15=XOR
|
3g: 15=XOR
|
||||||
|
4g5g: 15=XOR
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
sysmoISIM-SJA2 parameterization tool
|
sysmoISIM-SJA2 parameterization tool
|
||||||
|
@ -338,8 +352,9 @@ Authenticating...
|
||||||
Programming Authentication parameters...
|
Programming Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* New algorithm setting:
|
* New algorithm setting:
|
||||||
2G: 2=COMP128v2
|
2g: 2=COMP128v2
|
||||||
3G: 2=COMP128v2
|
3g: 2=COMP128v2
|
||||||
|
4g5g: 2=COMP128v2
|
||||||
* Programming...
|
* Programming...
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
|
@ -362,8 +377,9 @@ Reading Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* Reading...
|
* Reading...
|
||||||
* Current algorithm setting:
|
* Current algorithm setting:
|
||||||
2G: 2=COMP128v2
|
2g: 2=COMP128v2
|
||||||
3G: 2=COMP128v2
|
3g: 2=COMP128v2
|
||||||
|
4g5g: 2=COMP128v2
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
sysmoISIM-SJA2 parameterization tool
|
sysmoISIM-SJA2 parameterization tool
|
||||||
|
@ -384,8 +400,9 @@ Authenticating...
|
||||||
Programming Authentication parameters...
|
Programming Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* New algorithm setting:
|
* New algorithm setting:
|
||||||
2G: 1=COMP128v1
|
2g: 1=COMP128v1
|
||||||
3G: 3=COMP128v3
|
3g: 3=COMP128v3
|
||||||
|
4g5g: 3=COMP128v3
|
||||||
* Programming...
|
* Programming...
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
|
@ -408,8 +425,9 @@ Reading Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* Reading...
|
* Reading...
|
||||||
* Current algorithm setting:
|
* Current algorithm setting:
|
||||||
2G: 1=COMP128v1
|
2g: 1=COMP128v1
|
||||||
3G: 3=COMP128v3
|
3g: 3=COMP128v3
|
||||||
|
4g5g: 3=COMP128v3
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
sysmoISIM-SJA2 parameterization tool
|
sysmoISIM-SJA2 parameterization tool
|
||||||
|
@ -430,8 +448,9 @@ Authenticating...
|
||||||
Programming Authentication parameters...
|
Programming Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* New algorithm setting:
|
* New algorithm setting:
|
||||||
2G: 4=MILENAGE
|
2g: 4=MILENAGE
|
||||||
3G: 4=MILENAGE
|
3g: 4=MILENAGE
|
||||||
|
4g5g: 4=MILENAGE
|
||||||
* Programming...
|
* Programming...
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
|
@ -454,8 +473,9 @@ Reading Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* Reading...
|
* Reading...
|
||||||
* Current algorithm setting:
|
* Current algorithm setting:
|
||||||
2G: 4=MILENAGE
|
2g: 4=MILENAGE
|
||||||
3G: 4=MILENAGE
|
3g: 4=MILENAGE
|
||||||
|
4g5g: 4=MILENAGE
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
sysmoISIM-SJA2 parameterization tool
|
sysmoISIM-SJA2 parameterization tool
|
||||||
|
@ -476,8 +496,9 @@ Authenticating...
|
||||||
Programming Authentication parameters...
|
Programming Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* New algorithm setting:
|
* New algorithm setting:
|
||||||
2G: 1=COMP128v1
|
2g: 1=COMP128v1
|
||||||
3G: 4=MILENAGE
|
3g: 4=MILENAGE
|
||||||
|
4g5g: 4=MILENAGE
|
||||||
* Programming...
|
* Programming...
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
|
@ -500,8 +521,9 @@ Reading Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* Reading...
|
* Reading...
|
||||||
* Current algorithm setting:
|
* Current algorithm setting:
|
||||||
2G: 1=COMP128v1
|
2g: 1=COMP128v1
|
||||||
3G: 4=MILENAGE
|
3g: 4=MILENAGE
|
||||||
|
4g5g: 4=MILENAGE
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
sysmoISIM-SJA2 parameterization tool
|
sysmoISIM-SJA2 parameterization tool
|
||||||
|
@ -522,8 +544,9 @@ Authenticating...
|
||||||
Programming Authentication parameters...
|
Programming Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* New algorithm setting:
|
* New algorithm setting:
|
||||||
2G: 3=COMP128v3
|
2g: 3=COMP128v3
|
||||||
3G: 4=MILENAGE
|
3g: 4=MILENAGE
|
||||||
|
4g5g: 4=MILENAGE
|
||||||
* Programming...
|
* Programming...
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
|
@ -546,8 +569,9 @@ Reading Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* Reading...
|
* Reading...
|
||||||
* Current algorithm setting:
|
* Current algorithm setting:
|
||||||
2G: 3=COMP128v3
|
2g: 3=COMP128v3
|
||||||
3G: 4=MILENAGE
|
3g: 4=MILENAGE
|
||||||
|
4g5g: 4=MILENAGE
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
sysmoISIM-SJA2 parameterization tool
|
sysmoISIM-SJA2 parameterization tool
|
||||||
|
@ -568,8 +592,9 @@ Authenticating...
|
||||||
Programming Authentication parameters...
|
Programming Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* New algorithm setting:
|
* New algorithm setting:
|
||||||
2G: 2=COMP128v2
|
2g: 2=COMP128v2
|
||||||
3G: 4=MILENAGE
|
3g: 4=MILENAGE
|
||||||
|
4g5g: 4=MILENAGE
|
||||||
* Programming...
|
* Programming...
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
|
@ -592,8 +617,9 @@ Reading Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* Reading...
|
* Reading...
|
||||||
* Current algorithm setting:
|
* Current algorithm setting:
|
||||||
2G: 2=COMP128v2
|
2g: 2=COMP128v2
|
||||||
3G: 4=MILENAGE
|
3g: 4=MILENAGE
|
||||||
|
4g5g: 4=MILENAGE
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
sysmoISIM-SJA2 parameterization tool
|
sysmoISIM-SJA2 parameterization tool
|
||||||
|
@ -614,8 +640,9 @@ Authenticating...
|
||||||
Programming Authentication parameters...
|
Programming Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* New algorithm setting:
|
* New algorithm setting:
|
||||||
2G: 5=SHA1-AKA
|
2g: 5=SHA1-AKA
|
||||||
3G: 15=XOR
|
3g: 15=XOR
|
||||||
|
4g5g: 15=XOR
|
||||||
* Programming...
|
* Programming...
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
|
@ -638,8 +665,9 @@ Reading Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* Reading...
|
* Reading...
|
||||||
* Current algorithm setting:
|
* Current algorithm setting:
|
||||||
2G: 5=SHA1-AKA
|
2g: 5=SHA1-AKA
|
||||||
3G: 15=XOR
|
3g: 15=XOR
|
||||||
|
4g5g: 15=XOR
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
sysmoISIM-SJA2 parameterization tool
|
sysmoISIM-SJA2 parameterization tool
|
||||||
|
@ -660,8 +688,9 @@ Authenticating...
|
||||||
Programming Authentication parameters...
|
Programming Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* New algorithm setting:
|
* New algorithm setting:
|
||||||
2G: 1=COMP128v1
|
2g: 1=COMP128v1
|
||||||
3G: 4=MILENAGE
|
3g: 4=MILENAGE
|
||||||
|
4g5g: 4=MILENAGE
|
||||||
* Programming...
|
* Programming...
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
|
@ -684,7 +713,8 @@ Reading Authentication parameters...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* Reading...
|
* Reading...
|
||||||
* Current algorithm setting:
|
* Current algorithm setting:
|
||||||
2G: 1=COMP128v1
|
2g: 1=COMP128v1
|
||||||
3G: 4=MILENAGE
|
3g: 4=MILENAGE
|
||||||
|
4g5g: 4=MILENAGE
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
|
|
|
@ -1,6 +1,30 @@
|
||||||
sysmoISIM-SJA2 parameterization tool
|
sysmoISIM-SJA2 parameterization tool
|
||||||
Copyright (c) 2019-2022 sysmocom - s.f.m.c. GmbH
|
Copyright (c) 2019-2022 sysmocom - s.f.m.c. GmbH
|
||||||
|
|
||||||
|
Trying to find card with ATR: 3B 9F 96 80 1F 87 80 31 E0 73 FE 21 1B 67 4A 4C 75 30 34 05 4B A9
|
||||||
|
Initializing smartcard terminal...
|
||||||
|
* Detected Card IMSI: 901700000046734
|
||||||
|
ISIM Application installed
|
||||||
|
USIM Application installed
|
||||||
|
|
||||||
|
Authenticating...
|
||||||
|
* Remaining attempts: 3
|
||||||
|
* Authenticating...
|
||||||
|
* Authentication successful
|
||||||
|
* Remaining attempts: 3
|
||||||
|
|
||||||
|
Programming Authentication parameters...
|
||||||
|
* Initalizing...
|
||||||
|
* New algorithm setting:
|
||||||
|
2g: 4=MILENAGE
|
||||||
|
3g: 4=MILENAGE
|
||||||
|
4g5g: 4=MILENAGE
|
||||||
|
* Programming...
|
||||||
|
|
||||||
|
Done!
|
||||||
|
sysmoISIM-SJA2 parameterization tool
|
||||||
|
Copyright (c) 2019-2022 sysmocom - s.f.m.c. GmbH
|
||||||
|
|
||||||
Trying to find card with ATR: 3B 9F 96 80 1F 87 80 31 E0 73 FE 21 1B 67 4A 4C 75 30 34 05 4B A9
|
Trying to find card with ATR: 3B 9F 96 80 1F 87 80 31 E0 73 FE 21 1B 67 4A 4C 75 30 34 05 4B A9
|
||||||
Initializing smartcard terminal...
|
Initializing smartcard terminal...
|
||||||
* Detected Card IMSI: 901700000046734
|
* Detected Card IMSI: 901700000046734
|
||||||
|
@ -18,6 +42,9 @@ Writing OPc value...
|
||||||
* New OPc setting:
|
* New OPc setting:
|
||||||
OPc: 000102030405060708090a0b0c0d0e0f
|
OPc: 000102030405060708090a0b0c0d0e0f
|
||||||
* Programming...
|
* Programming...
|
||||||
|
2g OPc programmed.
|
||||||
|
3g OPc programmed.
|
||||||
|
4g5g OPc programmed.
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
sysmoISIM-SJA2 parameterization tool
|
sysmoISIM-SJA2 parameterization tool
|
||||||
|
@ -39,7 +66,9 @@ Reading OP/c value...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* Reading...
|
* Reading...
|
||||||
* Current OP/OPc setting:
|
* Current OP/OPc setting:
|
||||||
OPc: 000102030405060708090a0b0c0d0e0f
|
2g: OPc: 000102030405060708090a0b0c0d0e0f
|
||||||
|
3g: OPc: 000102030405060708090a0b0c0d0e0f
|
||||||
|
4g5g: OPc: 000102030405060708090a0b0c0d0e0f
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
sysmoISIM-SJA2 parameterization tool
|
sysmoISIM-SJA2 parameterization tool
|
||||||
|
@ -62,6 +91,9 @@ Writing OP value...
|
||||||
* New OPc setting:
|
* New OPc setting:
|
||||||
OP: 840337c3d45397ce8ea8609ffdc47224
|
OP: 840337c3d45397ce8ea8609ffdc47224
|
||||||
* Programming...
|
* Programming...
|
||||||
|
2g OP programmed.
|
||||||
|
3g OP programmed.
|
||||||
|
4g5g OP programmed.
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
sysmoISIM-SJA2 parameterization tool
|
sysmoISIM-SJA2 parameterization tool
|
||||||
|
@ -83,6 +115,8 @@ Reading OP/c value...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* Reading...
|
* Reading...
|
||||||
* Current OP/OPc setting:
|
* Current OP/OPc setting:
|
||||||
OP: 840337c3d45397ce8ea8609ffdc47224
|
2g: OP: 840337c3d45397ce8ea8609ffdc47224
|
||||||
|
3g: OP: 840337c3d45397ce8ea8609ffdc47224
|
||||||
|
4g5g: OP: 840337c3d45397ce8ea8609ffdc47224
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
. ./test-data
|
. ./test-data
|
||||||
|
|
||||||
|
$TOOL -a $ADMPIN -T "MILENAGE:MILENAGE"
|
||||||
|
|
||||||
$TOOL -a $ADMPIN -C 000102030405060708090a0b0c0d0e0f
|
$TOOL -a $ADMPIN -C 000102030405060708090a0b0c0d0e0f
|
||||||
$TOOL -a $ADMPIN -o
|
$TOOL -a $ADMPIN -o
|
||||||
|
|
||||||
|
|
|
@ -13,11 +13,14 @@ Authenticating...
|
||||||
* Authentication successful
|
* Authentication successful
|
||||||
* Remaining attempts: 3
|
* Remaining attempts: 3
|
||||||
|
|
||||||
Writing KI value...
|
Writing Key value...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* New KI setting:
|
* New Key setting:
|
||||||
KI: a0b1c2d3e4f5061728394a5b6c7d8e9f
|
Key: a0b1c2d3e4f5061728394a5b6c7d8e9f
|
||||||
* Programming...
|
* Programming...
|
||||||
|
* 2g: Key programmed.
|
||||||
|
* 3g: Key programmed.
|
||||||
|
* 4g5g: Key programmed.
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
sysmoISIM-SJA2 parameterization tool
|
sysmoISIM-SJA2 parameterization tool
|
||||||
|
@ -35,11 +38,13 @@ Authenticating...
|
||||||
* Authentication successful
|
* Authentication successful
|
||||||
* Remaining attempts: 3
|
* Remaining attempts: 3
|
||||||
|
|
||||||
Reading KI value...
|
Reading Key value...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* Reading...
|
* Reading...
|
||||||
* Current KI setting:
|
* Current Key setting:
|
||||||
KI: a0b1c2d3e4f5061728394a5b6c7d8e9f
|
2g: Key: a0b1c2d3e4f5061728394a5b6c7d8e9f
|
||||||
|
3g: Key: a0b1c2d3e4f5061728394a5b6c7d8e9f
|
||||||
|
4g5g: Key: a0b1c2d3e4f5061728394a5b6c7d8e9f
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
sysmoISIM-SJA2 parameterization tool
|
sysmoISIM-SJA2 parameterization tool
|
||||||
|
@ -57,11 +62,14 @@ Authenticating...
|
||||||
* Authentication successful
|
* Authentication successful
|
||||||
* Remaining attempts: 3
|
* Remaining attempts: 3
|
||||||
|
|
||||||
Writing KI value...
|
Writing Key value...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* New KI setting:
|
* New Key setting:
|
||||||
KI: d7882eae7cd14f06108c55f8e5cffe93
|
Key: d7882eae7cd14f06108c55f8e5cffe93
|
||||||
* Programming...
|
* Programming...
|
||||||
|
* 2g: Key programmed.
|
||||||
|
* 3g: Key programmed.
|
||||||
|
* 4g5g: Key programmed.
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
sysmoISIM-SJA2 parameterization tool
|
sysmoISIM-SJA2 parameterization tool
|
||||||
|
@ -79,10 +87,12 @@ Authenticating...
|
||||||
* Authentication successful
|
* Authentication successful
|
||||||
* Remaining attempts: 3
|
* Remaining attempts: 3
|
||||||
|
|
||||||
Reading KI value...
|
Reading Key value...
|
||||||
* Initalizing...
|
* Initalizing...
|
||||||
* Reading...
|
* Reading...
|
||||||
* Current KI setting:
|
* Current Key setting:
|
||||||
KI: d7882eae7cd14f06108c55f8e5cffe93
|
2g: Key: d7882eae7cd14f06108c55f8e5cffe93
|
||||||
|
3g: Key: d7882eae7cd14f06108c55f8e5cffe93
|
||||||
|
4g5g: Key: d7882eae7cd14f06108c55f8e5cffe93
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
|
|
|
@ -0,0 +1,16 @@
|
||||||
|
sysmoISIM-SJA5 parameterization tool
|
||||||
|
Copyright (c) 2023 sysmocom - s.f.m.c. GmbH
|
||||||
|
|
||||||
|
Trying to find card with ATR: 3B 9F 96 80 1F 87 80 31 E0 73 FE 21 1B 67 4A 35 75 30 35 02 59 C4
|
||||||
|
Initializing smartcard terminal...
|
||||||
|
* Detected Card IMSI: 901700000046734
|
||||||
|
ISIM Application installed
|
||||||
|
USIM Application installed
|
||||||
|
|
||||||
|
Authenticating...
|
||||||
|
* Remaining attempts: 3
|
||||||
|
* Authenticating...
|
||||||
|
* Authentication successful
|
||||||
|
* Remaining attempts: 3
|
||||||
|
|
||||||
|
Done!
|
|
@ -0,0 +1,4 @@
|
||||||
|
#!/bin/sh
|
||||||
|
. ./test-data
|
||||||
|
|
||||||
|
$TOOL -a $ADMPIN
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,9 @@
|
||||||
|
#!/bin/sh
|
||||||
|
. ./test-data
|
||||||
|
|
||||||
|
ALGOS="1:1 3:1 4:1 5:1 15:1 1:4 3:15 2:2 1:3 14:4 2:6 6:4 14:6 "
|
||||||
|
ALGOS=$ALGOS"MILENAGE:MILENAGE TUAK:TUAK COMP128v1:MILENAGE COMP128v3:MILENAGE COMP128v2:MILENAGE COMP128v2:TUAK COMP128v2:XOR-2G SHA1-AKA:XOR COMP128v1:MILENAGE XOR-2G:TUAK"
|
||||||
|
for algo in $ALGOS; do
|
||||||
|
$TOOL -a $ADMPIN -T $algo
|
||||||
|
$TOOL -a $ADMPIN -t
|
||||||
|
done
|
|
@ -0,0 +1,124 @@
|
||||||
|
sysmoISIM-SJA5 parameterization tool
|
||||||
|
Copyright (c) 2023 sysmocom - s.f.m.c. GmbH
|
||||||
|
|
||||||
|
Trying to find card with ATR: 3B 9F 96 80 1F 87 80 31 E0 73 FE 21 1B 67 4A 35 75 30 35 02 59 C4
|
||||||
|
Initializing smartcard terminal...
|
||||||
|
* Detected Card IMSI: 901700000046734
|
||||||
|
ISIM Application installed
|
||||||
|
USIM Application installed
|
||||||
|
|
||||||
|
Authenticating...
|
||||||
|
* Remaining attempts: 3
|
||||||
|
* Authenticating...
|
||||||
|
* Authentication successful
|
||||||
|
* Remaining attempts: 3
|
||||||
|
|
||||||
|
Programming Milenage parameters...
|
||||||
|
* Initalizing...
|
||||||
|
* New Milenage Parameters for (EF.MILENAGE_CFG):
|
||||||
|
R1: 0xaa
|
||||||
|
R2: 0xbb
|
||||||
|
R3: 0xcc
|
||||||
|
R4: 0xdd
|
||||||
|
R5: 0xee
|
||||||
|
C1: 1234567890abcdef1234567890abcdef
|
||||||
|
C2: f1234567890abcdef1234567890abcde
|
||||||
|
C3: ef1234567890abcdef1234567890abcd
|
||||||
|
C4: def1234567890abcdef1234567890abc
|
||||||
|
C5: cdef1234567890abcdef1234567890ab
|
||||||
|
* Programming...
|
||||||
|
|
||||||
|
Done!
|
||||||
|
sysmoISIM-SJA5 parameterization tool
|
||||||
|
Copyright (c) 2023 sysmocom - s.f.m.c. GmbH
|
||||||
|
|
||||||
|
Trying to find card with ATR: 3B 9F 96 80 1F 87 80 31 E0 73 FE 21 1B 67 4A 35 75 30 35 02 59 C4
|
||||||
|
Initializing smartcard terminal...
|
||||||
|
* Detected Card IMSI: 901700000046734
|
||||||
|
ISIM Application installed
|
||||||
|
USIM Application installed
|
||||||
|
|
||||||
|
Authenticating...
|
||||||
|
* Remaining attempts: 3
|
||||||
|
* Authenticating...
|
||||||
|
* Authentication successful
|
||||||
|
* Remaining attempts: 3
|
||||||
|
|
||||||
|
Reading Milenage parameters...
|
||||||
|
* Initalizing...
|
||||||
|
* Reading...
|
||||||
|
* Current Milenage Parameters:
|
||||||
|
R1: 0xaa
|
||||||
|
R2: 0xbb
|
||||||
|
R3: 0xcc
|
||||||
|
R4: 0xdd
|
||||||
|
R5: 0xee
|
||||||
|
C1: 1234567890abcdef1234567890abcdef
|
||||||
|
C2: f1234567890abcdef1234567890abcde
|
||||||
|
C3: ef1234567890abcdef1234567890abcd
|
||||||
|
C4: def1234567890abcdef1234567890abc
|
||||||
|
C5: cdef1234567890abcdef1234567890ab
|
||||||
|
|
||||||
|
Done!
|
||||||
|
sysmoISIM-SJA5 parameterization tool
|
||||||
|
Copyright (c) 2023 sysmocom - s.f.m.c. GmbH
|
||||||
|
|
||||||
|
Trying to find card with ATR: 3B 9F 96 80 1F 87 80 31 E0 73 FE 21 1B 67 4A 35 75 30 35 02 59 C4
|
||||||
|
Initializing smartcard terminal...
|
||||||
|
* Detected Card IMSI: 901700000046734
|
||||||
|
ISIM Application installed
|
||||||
|
USIM Application installed
|
||||||
|
|
||||||
|
Authenticating...
|
||||||
|
* Remaining attempts: 3
|
||||||
|
* Authenticating...
|
||||||
|
* Authentication successful
|
||||||
|
* Remaining attempts: 3
|
||||||
|
|
||||||
|
Programming Milenage parameters...
|
||||||
|
* Initalizing...
|
||||||
|
* New Milenage Parameters for (EF.MILENAGE_CFG):
|
||||||
|
R1: 0x40
|
||||||
|
R2: 0x0
|
||||||
|
R3: 0x20
|
||||||
|
R4: 0x40
|
||||||
|
R5: 0x60
|
||||||
|
C1: 00000000000000000000000000000000
|
||||||
|
C2: 00000000000000000000000000000001
|
||||||
|
C3: 00000000000000000000000000000002
|
||||||
|
C4: 00000000000000000000000000000004
|
||||||
|
C5: 00000000000000000000000000000008
|
||||||
|
* Programming...
|
||||||
|
|
||||||
|
Done!
|
||||||
|
sysmoISIM-SJA5 parameterization tool
|
||||||
|
Copyright (c) 2023 sysmocom - s.f.m.c. GmbH
|
||||||
|
|
||||||
|
Trying to find card with ATR: 3B 9F 96 80 1F 87 80 31 E0 73 FE 21 1B 67 4A 35 75 30 35 02 59 C4
|
||||||
|
Initializing smartcard terminal...
|
||||||
|
* Detected Card IMSI: 901700000046734
|
||||||
|
ISIM Application installed
|
||||||
|
USIM Application installed
|
||||||
|
|
||||||
|
Authenticating...
|
||||||
|
* Remaining attempts: 3
|
||||||
|
* Authenticating...
|
||||||
|
* Authentication successful
|
||||||
|
* Remaining attempts: 3
|
||||||
|
|
||||||
|
Reading Milenage parameters...
|
||||||
|
* Initalizing...
|
||||||
|
* Reading...
|
||||||
|
* Current Milenage Parameters:
|
||||||
|
R1: 0x40
|
||||||
|
R2: 0x0
|
||||||
|
R3: 0x20
|
||||||
|
R4: 0x40
|
||||||
|
R5: 0x60
|
||||||
|
C1: 00000000000000000000000000000000
|
||||||
|
C2: 00000000000000000000000000000001
|
||||||
|
C3: 00000000000000000000000000000002
|
||||||
|
C4: 00000000000000000000000000000004
|
||||||
|
C5: 00000000000000000000000000000008
|
||||||
|
|
||||||
|
Done!
|
|
@ -0,0 +1,24 @@
|
||||||
|
#!/bin/sh
|
||||||
|
. ./test-data
|
||||||
|
|
||||||
|
# Write and reread with test data
|
||||||
|
C1="1234567890ABCDEF1234567890ABCDEF"
|
||||||
|
C2="F1234567890ABCDEF1234567890ABCDE"
|
||||||
|
C3="EF1234567890ABCDEF1234567890ABCD"
|
||||||
|
C4="DEF1234567890ABCDEF1234567890ABC"
|
||||||
|
C5="CDEF1234567890ABCDEF1234567890AB"
|
||||||
|
R12345="AA:BB:CC:DD:EE"
|
||||||
|
PARAMS=$C1$C2$C3$C4$C5$R12345
|
||||||
|
$TOOL -a $ADMPIN -L $PARAMS
|
||||||
|
$TOOL -a $ADMPIN -l
|
||||||
|
|
||||||
|
# Write and reread with factory defaults
|
||||||
|
C1="00000000000000000000000000000000"
|
||||||
|
C2="00000000000000000000000000000001"
|
||||||
|
C3="00000000000000000000000000000002"
|
||||||
|
C4="00000000000000000000000000000004"
|
||||||
|
C5="00000000000000000000000000000008"
|
||||||
|
R12345="40:00:20:40:60"
|
||||||
|
PARAMS=$C1$C2$C3$C4$C5$R12345
|
||||||
|
$TOOL -a $ADMPIN -L $PARAMS
|
||||||
|
$TOOL -a $ADMPIN -l
|
|
@ -0,0 +1,122 @@
|
||||||
|
sysmoISIM-SJA5 parameterization tool
|
||||||
|
Copyright (c) 2023 sysmocom - s.f.m.c. GmbH
|
||||||
|
|
||||||
|
Trying to find card with ATR: 3B 9F 96 80 1F 87 80 31 E0 73 FE 21 1B 67 4A 35 75 30 35 02 59 C4
|
||||||
|
Initializing smartcard terminal...
|
||||||
|
* Detected Card IMSI: 901700000046734
|
||||||
|
ISIM Application installed
|
||||||
|
USIM Application installed
|
||||||
|
|
||||||
|
Authenticating...
|
||||||
|
* Remaining attempts: 3
|
||||||
|
* Authenticating...
|
||||||
|
* Authentication successful
|
||||||
|
* Remaining attempts: 3
|
||||||
|
|
||||||
|
Programming Authentication parameters...
|
||||||
|
* Initalizing...
|
||||||
|
* New algorithm setting:
|
||||||
|
2g: 4=MILENAGE
|
||||||
|
3g: 4=MILENAGE
|
||||||
|
4g5g: 4=MILENAGE
|
||||||
|
* Programming...
|
||||||
|
|
||||||
|
Done!
|
||||||
|
sysmoISIM-SJA5 parameterization tool
|
||||||
|
Copyright (c) 2023 sysmocom - s.f.m.c. GmbH
|
||||||
|
|
||||||
|
Trying to find card with ATR: 3B 9F 96 80 1F 87 80 31 E0 73 FE 21 1B 67 4A 35 75 30 35 02 59 C4
|
||||||
|
Initializing smartcard terminal...
|
||||||
|
* Detected Card IMSI: 901700000046734
|
||||||
|
ISIM Application installed
|
||||||
|
USIM Application installed
|
||||||
|
|
||||||
|
Authenticating...
|
||||||
|
* Remaining attempts: 3
|
||||||
|
* Authenticating...
|
||||||
|
* Authentication successful
|
||||||
|
* Remaining attempts: 3
|
||||||
|
|
||||||
|
Writing OPc value...
|
||||||
|
* Initalizing...
|
||||||
|
* New OPc setting:
|
||||||
|
OPc: 000102030405060708090a0b0c0d0e0f
|
||||||
|
* Programming...
|
||||||
|
2g OPc programmed.
|
||||||
|
3g OPc programmed.
|
||||||
|
4g5g OPc programmed.
|
||||||
|
|
||||||
|
Done!
|
||||||
|
sysmoISIM-SJA5 parameterization tool
|
||||||
|
Copyright (c) 2023 sysmocom - s.f.m.c. GmbH
|
||||||
|
|
||||||
|
Trying to find card with ATR: 3B 9F 96 80 1F 87 80 31 E0 73 FE 21 1B 67 4A 35 75 30 35 02 59 C4
|
||||||
|
Initializing smartcard terminal...
|
||||||
|
* Detected Card IMSI: 901700000046734
|
||||||
|
ISIM Application installed
|
||||||
|
USIM Application installed
|
||||||
|
|
||||||
|
Authenticating...
|
||||||
|
* Remaining attempts: 3
|
||||||
|
* Authenticating...
|
||||||
|
* Authentication successful
|
||||||
|
* Remaining attempts: 3
|
||||||
|
|
||||||
|
Reading OP/c value...
|
||||||
|
* Initalizing...
|
||||||
|
* Reading...
|
||||||
|
* Current OP/OPc setting:
|
||||||
|
2g: OPc: 000102030405060708090a0b0c0d0e0f
|
||||||
|
3g: OPc: 000102030405060708090a0b0c0d0e0f
|
||||||
|
4g5g: OPc: 000102030405060708090a0b0c0d0e0f
|
||||||
|
|
||||||
|
Done!
|
||||||
|
sysmoISIM-SJA5 parameterization tool
|
||||||
|
Copyright (c) 2023 sysmocom - s.f.m.c. GmbH
|
||||||
|
|
||||||
|
Trying to find card with ATR: 3B 9F 96 80 1F 87 80 31 E0 73 FE 21 1B 67 4A 35 75 30 35 02 59 C4
|
||||||
|
Initializing smartcard terminal...
|
||||||
|
* Detected Card IMSI: 901700000046734
|
||||||
|
ISIM Application installed
|
||||||
|
USIM Application installed
|
||||||
|
|
||||||
|
Authenticating...
|
||||||
|
* Remaining attempts: 3
|
||||||
|
* Authenticating...
|
||||||
|
* Authentication successful
|
||||||
|
* Remaining attempts: 3
|
||||||
|
|
||||||
|
Writing OP value...
|
||||||
|
* Initalizing...
|
||||||
|
* New OPc setting:
|
||||||
|
OP: 840337c3d45397ce8ea8609ffdc47224
|
||||||
|
* Programming...
|
||||||
|
2g OP programmed.
|
||||||
|
3g OP programmed.
|
||||||
|
4g5g OP programmed.
|
||||||
|
|
||||||
|
Done!
|
||||||
|
sysmoISIM-SJA5 parameterization tool
|
||||||
|
Copyright (c) 2023 sysmocom - s.f.m.c. GmbH
|
||||||
|
|
||||||
|
Trying to find card with ATR: 3B 9F 96 80 1F 87 80 31 E0 73 FE 21 1B 67 4A 35 75 30 35 02 59 C4
|
||||||
|
Initializing smartcard terminal...
|
||||||
|
* Detected Card IMSI: 901700000046734
|
||||||
|
ISIM Application installed
|
||||||
|
USIM Application installed
|
||||||
|
|
||||||
|
Authenticating...
|
||||||
|
* Remaining attempts: 3
|
||||||
|
* Authenticating...
|
||||||
|
* Authentication successful
|
||||||
|
* Remaining attempts: 3
|
||||||
|
|
||||||
|
Reading OP/c value...
|
||||||
|
* Initalizing...
|
||||||
|
* Reading...
|
||||||
|
* Current OP/OPc setting:
|
||||||
|
2g: OP: 840337c3d45397ce8ea8609ffdc47224
|
||||||
|
3g: OP: 840337c3d45397ce8ea8609ffdc47224
|
||||||
|
4g5g: OP: 840337c3d45397ce8ea8609ffdc47224
|
||||||
|
|
||||||
|
Done!
|
|
@ -0,0 +1,11 @@
|
||||||
|
#!/bin/sh
|
||||||
|
. ./test-data
|
||||||
|
|
||||||
|
$TOOL -a $ADMPIN -T "MILENAGE:MILENAGE"
|
||||||
|
|
||||||
|
$TOOL -a $ADMPIN -C 000102030405060708090a0b0c0d0e0f
|
||||||
|
$TOOL -a $ADMPIN -o
|
||||||
|
|
||||||
|
$TOOL -a $ADMPIN -O 840337c3d45397ce8ea8609ffdc47224
|
||||||
|
$TOOL -a $ADMPIN -o
|
||||||
|
|
|
@ -0,0 +1,98 @@
|
||||||
|
sysmoISIM-SJA5 parameterization tool
|
||||||
|
Copyright (c) 2023 sysmocom - s.f.m.c. GmbH
|
||||||
|
|
||||||
|
Trying to find card with ATR: 3B 9F 96 80 1F 87 80 31 E0 73 FE 21 1B 67 4A 35 75 30 35 02 59 C4
|
||||||
|
Initializing smartcard terminal...
|
||||||
|
* Detected Card IMSI: 901700000046734
|
||||||
|
ISIM Application installed
|
||||||
|
USIM Application installed
|
||||||
|
|
||||||
|
Authenticating...
|
||||||
|
* Remaining attempts: 3
|
||||||
|
* Authenticating...
|
||||||
|
* Authentication successful
|
||||||
|
* Remaining attempts: 3
|
||||||
|
|
||||||
|
Writing Key value...
|
||||||
|
* Initalizing...
|
||||||
|
* New Key setting:
|
||||||
|
Key: a0b1c2d3e4f5061728394a5b6c7d8e9f
|
||||||
|
* Programming...
|
||||||
|
* 2g: Key programmed.
|
||||||
|
* 3g: Key programmed.
|
||||||
|
* 4g5g: Key programmed.
|
||||||
|
|
||||||
|
Done!
|
||||||
|
sysmoISIM-SJA5 parameterization tool
|
||||||
|
Copyright (c) 2023 sysmocom - s.f.m.c. GmbH
|
||||||
|
|
||||||
|
Trying to find card with ATR: 3B 9F 96 80 1F 87 80 31 E0 73 FE 21 1B 67 4A 35 75 30 35 02 59 C4
|
||||||
|
Initializing smartcard terminal...
|
||||||
|
* Detected Card IMSI: 901700000046734
|
||||||
|
ISIM Application installed
|
||||||
|
USIM Application installed
|
||||||
|
|
||||||
|
Authenticating...
|
||||||
|
* Remaining attempts: 3
|
||||||
|
* Authenticating...
|
||||||
|
* Authentication successful
|
||||||
|
* Remaining attempts: 3
|
||||||
|
|
||||||
|
Reading Key value...
|
||||||
|
* Initalizing...
|
||||||
|
* Reading...
|
||||||
|
* Current Key setting:
|
||||||
|
2g: Key: a0b1c2d3e4f5061728394a5b6c7d8e9f
|
||||||
|
3g: Key: a0b1c2d3e4f5061728394a5b6c7d8e9f
|
||||||
|
4g5g: Key: a0b1c2d3e4f5061728394a5b6c7d8e9f
|
||||||
|
|
||||||
|
Done!
|
||||||
|
sysmoISIM-SJA5 parameterization tool
|
||||||
|
Copyright (c) 2023 sysmocom - s.f.m.c. GmbH
|
||||||
|
|
||||||
|
Trying to find card with ATR: 3B 9F 96 80 1F 87 80 31 E0 73 FE 21 1B 67 4A 35 75 30 35 02 59 C4
|
||||||
|
Initializing smartcard terminal...
|
||||||
|
* Detected Card IMSI: 901700000046734
|
||||||
|
ISIM Application installed
|
||||||
|
USIM Application installed
|
||||||
|
|
||||||
|
Authenticating...
|
||||||
|
* Remaining attempts: 3
|
||||||
|
* Authenticating...
|
||||||
|
* Authentication successful
|
||||||
|
* Remaining attempts: 3
|
||||||
|
|
||||||
|
Writing Key value...
|
||||||
|
* Initalizing...
|
||||||
|
* New Key setting:
|
||||||
|
Key: d7882eae7cd14f06108c55f8e5cffe93
|
||||||
|
* Programming...
|
||||||
|
* 2g: Key programmed.
|
||||||
|
* 3g: Key programmed.
|
||||||
|
* 4g5g: Key programmed.
|
||||||
|
|
||||||
|
Done!
|
||||||
|
sysmoISIM-SJA5 parameterization tool
|
||||||
|
Copyright (c) 2023 sysmocom - s.f.m.c. GmbH
|
||||||
|
|
||||||
|
Trying to find card with ATR: 3B 9F 96 80 1F 87 80 31 E0 73 FE 21 1B 67 4A 35 75 30 35 02 59 C4
|
||||||
|
Initializing smartcard terminal...
|
||||||
|
* Detected Card IMSI: 901700000046734
|
||||||
|
ISIM Application installed
|
||||||
|
USIM Application installed
|
||||||
|
|
||||||
|
Authenticating...
|
||||||
|
* Remaining attempts: 3
|
||||||
|
* Authenticating...
|
||||||
|
* Authentication successful
|
||||||
|
* Remaining attempts: 3
|
||||||
|
|
||||||
|
Reading Key value...
|
||||||
|
* Initalizing...
|
||||||
|
* Reading...
|
||||||
|
* Current Key setting:
|
||||||
|
2g: Key: d7882eae7cd14f06108c55f8e5cffe93
|
||||||
|
3g: Key: d7882eae7cd14f06108c55f8e5cffe93
|
||||||
|
4g5g: Key: d7882eae7cd14f06108c55f8e5cffe93
|
||||||
|
|
||||||
|
Done!
|
|
@ -0,0 +1,11 @@
|
||||||
|
#!/bin/sh
|
||||||
|
. ./test-data
|
||||||
|
|
||||||
|
# set to arbitrary value + read back
|
||||||
|
$TOOL -a $ADMPIN -K a0b1c2d3e4f5061728394a5b6c7d8e9f
|
||||||
|
$TOOL -a $ADMPIN -k
|
||||||
|
|
||||||
|
# set to original value + read back
|
||||||
|
$TOOL -a $ADMPIN -K $KI
|
||||||
|
$TOOL -a $ADMPIN -k
|
||||||
|
|
|
@ -0,0 +1,75 @@
|
||||||
|
sysmoISIM-SJA5 parameterization tool
|
||||||
|
Copyright (c) 2023 sysmocom - s.f.m.c. GmbH
|
||||||
|
|
||||||
|
Trying to find card with ATR: 3B 9F 96 80 1F 87 80 31 E0 73 FE 21 1B 67 4A 35 75 30 35 02 59 C4
|
||||||
|
Initializing smartcard terminal...
|
||||||
|
* Detected Card IMSI: 901700000046734
|
||||||
|
ISIM Application installed
|
||||||
|
USIM Application installed
|
||||||
|
|
||||||
|
Authenticating...
|
||||||
|
* Remaining attempts: 3
|
||||||
|
* Authenticating...
|
||||||
|
* Authentication successful
|
||||||
|
* Remaining attempts: 3
|
||||||
|
|
||||||
|
Reading Milenage Sequence parameters...
|
||||||
|
* Initalizing...
|
||||||
|
* Current SQN Configuration for ADF_USIM:
|
||||||
|
IND (bits): 5
|
||||||
|
SQN Check enabled
|
||||||
|
SQN Age Limit disabled
|
||||||
|
SQN Max Delta enabled
|
||||||
|
SQN Skip first enabled
|
||||||
|
SQN Conceal AUTN enabled
|
||||||
|
SQN Conceal AUTS enabled
|
||||||
|
SQN No AMF clear disabled
|
||||||
|
Max Delta: 8589934592
|
||||||
|
Age Limit: 8589934592
|
||||||
|
Freshness Data:
|
||||||
|
000000000000000000000000000000000000000000000000000000000000
|
||||||
|
000000000000000000000000000000000000000000000000000000000000
|
||||||
|
000000000000000000000000000000000000000000000000000000000000
|
||||||
|
000000000000000000000000000000000000000000000000000000000000
|
||||||
|
000000000000000000000000000000000000000000000000000000000000
|
||||||
|
000000000000000000000000000000000000000000000000000000
|
||||||
|
* Current SQN Configuration for ADF_ISIM:
|
||||||
|
IND (bits): 5
|
||||||
|
SQN Check enabled
|
||||||
|
SQN Age Limit disabled
|
||||||
|
SQN Max Delta enabled
|
||||||
|
SQN Skip first enabled
|
||||||
|
SQN Conceal AUTN enabled
|
||||||
|
SQN Conceal AUTS enabled
|
||||||
|
SQN No AMF clear disabled
|
||||||
|
Max Delta: 8589934592
|
||||||
|
Age Limit: 8589934592
|
||||||
|
Freshness Data:
|
||||||
|
000000000000000000000000000000000000000000000000000000000000
|
||||||
|
000000000000000000000000000000000000000000000000000000000000
|
||||||
|
000000000000000000000000000000000000000000000000000000000000
|
||||||
|
000000000000000000000000000000000000000000000000000000000000
|
||||||
|
000000000000000000000000000000000000000000000000000000000000
|
||||||
|
000000000000000000000000000000000000000000000000000000
|
||||||
|
|
||||||
|
Done!
|
||||||
|
sysmoISIM-SJA5 parameterization tool
|
||||||
|
Copyright (c) 2023 sysmocom - s.f.m.c. GmbH
|
||||||
|
|
||||||
|
Trying to find card with ATR: 3B 9F 96 80 1F 87 80 31 E0 73 FE 21 1B 67 4A 35 75 30 35 02 59 C4
|
||||||
|
Initializing smartcard terminal...
|
||||||
|
* Detected Card IMSI: 901700000046734
|
||||||
|
ISIM Application installed
|
||||||
|
USIM Application installed
|
||||||
|
|
||||||
|
Authenticating...
|
||||||
|
* Remaining attempts: 3
|
||||||
|
* Authenticating...
|
||||||
|
* Authentication successful
|
||||||
|
* Remaining attempts: 3
|
||||||
|
|
||||||
|
* Resetting SQN Configuration to defaults...
|
||||||
|
* Initalizing...
|
||||||
|
* Resetting...
|
||||||
|
|
||||||
|
Done!
|
|
@ -0,0 +1,8 @@
|
||||||
|
#!/bin/sh
|
||||||
|
. ./test-data
|
||||||
|
|
||||||
|
# we can only read them for now, which will of course change once we perform auth against it
|
||||||
|
$TOOL -a $ADMPIN -s
|
||||||
|
|
||||||
|
# test if resetting SQN parameters works
|
||||||
|
$TOOL -a $ADMPIN -S
|
|
@ -0,0 +1,132 @@
|
||||||
|
sysmoISIM-SJA5 parameterization tool
|
||||||
|
Copyright (c) 2023 sysmocom - s.f.m.c. GmbH
|
||||||
|
|
||||||
|
Trying to find card with ATR: 3B 9F 96 80 1F 87 80 31 E0 73 FE 21 1B 67 4A 35 75 30 35 02 59 C4
|
||||||
|
Initializing smartcard terminal...
|
||||||
|
* Detected Card IMSI: 901700000046734
|
||||||
|
ISIM Application installed
|
||||||
|
USIM Application installed
|
||||||
|
|
||||||
|
Authenticating...
|
||||||
|
* Remaining attempts: 3
|
||||||
|
* Authenticating...
|
||||||
|
* Authentication successful
|
||||||
|
* Remaining attempts: 3
|
||||||
|
|
||||||
|
Writing MNCLEN value...
|
||||||
|
* Initalizing...
|
||||||
|
* New MNCLEN setting:
|
||||||
|
MNCLEN: 0x02
|
||||||
|
* Programming...
|
||||||
|
|
||||||
|
Done!
|
||||||
|
sysmoISIM-SJA5 parameterization tool
|
||||||
|
Copyright (c) 2023 sysmocom - s.f.m.c. GmbH
|
||||||
|
|
||||||
|
Trying to find card with ATR: 3B 9F 96 80 1F 87 80 31 E0 73 FE 21 1B 67 4A 35 75 30 35 02 59 C4
|
||||||
|
Initializing smartcard terminal...
|
||||||
|
* Detected Card IMSI: 901700000046734
|
||||||
|
ISIM Application installed
|
||||||
|
USIM Application installed
|
||||||
|
|
||||||
|
Authenticating...
|
||||||
|
* Remaining attempts: 3
|
||||||
|
* Authenticating...
|
||||||
|
* Authentication successful
|
||||||
|
* Remaining attempts: 3
|
||||||
|
|
||||||
|
Reading MNCLEN value...
|
||||||
|
* Initalizing...
|
||||||
|
* Reading...
|
||||||
|
* Current MNCLEN setting:
|
||||||
|
MNCLEN: 0x02
|
||||||
|
|
||||||
|
Done!
|
||||||
|
sysmoISIM-SJA5 parameterization tool
|
||||||
|
Copyright (c) 2023 sysmocom - s.f.m.c. GmbH
|
||||||
|
|
||||||
|
Trying to find card with ATR: 3B 9F 96 80 1F 87 80 31 E0 73 FE 21 1B 67 4A 35 75 30 35 02 59 C4
|
||||||
|
Initializing smartcard terminal...
|
||||||
|
* Detected Card IMSI: 901700000046734
|
||||||
|
ISIM Application installed
|
||||||
|
USIM Application installed
|
||||||
|
|
||||||
|
Authenticating...
|
||||||
|
* Remaining attempts: 3
|
||||||
|
* Authenticating...
|
||||||
|
* Authentication successful
|
||||||
|
* Remaining attempts: 3
|
||||||
|
|
||||||
|
Writing MNCLEN value...
|
||||||
|
* Initalizing...
|
||||||
|
* New MNCLEN setting:
|
||||||
|
MNCLEN: 0x03
|
||||||
|
* Programming...
|
||||||
|
|
||||||
|
Done!
|
||||||
|
sysmoISIM-SJA5 parameterization tool
|
||||||
|
Copyright (c) 2023 sysmocom - s.f.m.c. GmbH
|
||||||
|
|
||||||
|
Trying to find card with ATR: 3B 9F 96 80 1F 87 80 31 E0 73 FE 21 1B 67 4A 35 75 30 35 02 59 C4
|
||||||
|
Initializing smartcard terminal...
|
||||||
|
* Detected Card IMSI: 901700000046734
|
||||||
|
ISIM Application installed
|
||||||
|
USIM Application installed
|
||||||
|
|
||||||
|
Authenticating...
|
||||||
|
* Remaining attempts: 3
|
||||||
|
* Authenticating...
|
||||||
|
* Authentication successful
|
||||||
|
* Remaining attempts: 3
|
||||||
|
|
||||||
|
Reading MNCLEN value...
|
||||||
|
* Initalizing...
|
||||||
|
* Reading...
|
||||||
|
* Current MNCLEN setting:
|
||||||
|
MNCLEN: 0x03
|
||||||
|
|
||||||
|
Done!
|
||||||
|
sysmoISIM-SJA5 parameterization tool
|
||||||
|
Copyright (c) 2023 sysmocom - s.f.m.c. GmbH
|
||||||
|
|
||||||
|
Trying to find card with ATR: 3B 9F 96 80 1F 87 80 31 E0 73 FE 21 1B 67 4A 35 75 30 35 02 59 C4
|
||||||
|
Initializing smartcard terminal...
|
||||||
|
* Detected Card IMSI: 901700000046734
|
||||||
|
ISIM Application installed
|
||||||
|
USIM Application installed
|
||||||
|
|
||||||
|
Authenticating...
|
||||||
|
* Remaining attempts: 3
|
||||||
|
* Authenticating...
|
||||||
|
* Authentication successful
|
||||||
|
* Remaining attempts: 3
|
||||||
|
|
||||||
|
Writing MNCLEN value...
|
||||||
|
* Initalizing...
|
||||||
|
* New MNCLEN setting:
|
||||||
|
MNCLEN: 0x02
|
||||||
|
* Programming...
|
||||||
|
|
||||||
|
Done!
|
||||||
|
sysmoISIM-SJA5 parameterization tool
|
||||||
|
Copyright (c) 2023 sysmocom - s.f.m.c. GmbH
|
||||||
|
|
||||||
|
Trying to find card with ATR: 3B 9F 96 80 1F 87 80 31 E0 73 FE 21 1B 67 4A 35 75 30 35 02 59 C4
|
||||||
|
Initializing smartcard terminal...
|
||||||
|
* Detected Card IMSI: 901700000046734
|
||||||
|
ISIM Application installed
|
||||||
|
USIM Application installed
|
||||||
|
|
||||||
|
Authenticating...
|
||||||
|
* Remaining attempts: 3
|
||||||
|
* Authenticating...
|
||||||
|
* Authentication successful
|
||||||
|
* Remaining attempts: 3
|
||||||
|
|
||||||
|
Reading MNCLEN value...
|
||||||
|
* Initalizing...
|
||||||
|
* Reading...
|
||||||
|
* Current MNCLEN setting:
|
||||||
|
MNCLEN: 0x02
|
||||||
|
|
||||||
|
Done!
|
|
@ -0,0 +1,15 @@
|
||||||
|
#!/bin/sh
|
||||||
|
. ./test-data
|
||||||
|
|
||||||
|
# set to 2 (default) + read back
|
||||||
|
$TOOL -a $ADMPIN -N 02
|
||||||
|
$TOOL -a $ADMPIN -n
|
||||||
|
|
||||||
|
# set to 3 + read back
|
||||||
|
$TOOL -a $ADMPIN -N 03
|
||||||
|
$TOOL -a $ADMPIN -n
|
||||||
|
|
||||||
|
# set to 2 (default) + read back
|
||||||
|
$TOOL -a $ADMPIN -N 02
|
||||||
|
$TOOL -a $ADMPIN -n
|
||||||
|
|
|
@ -0,0 +1,9 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
. ./test-data
|
||||||
|
|
||||||
|
echo "================ PREPARING TEST CARD ================"
|
||||||
|
$TOOL -a $ADMPIN -J $IMSI
|
||||||
|
$TOOL -a $ADMPIN -S
|
||||||
|
echo "================ TEST CARD PREPARED ================="
|
||||||
|
echo ""
|
|
@ -0,0 +1,14 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
echo "Regenerating test output..."
|
||||||
|
./prepare
|
||||||
|
./01_auth.sh > ./01_auth.out
|
||||||
|
./02_algo.sh > ./02_algo.out
|
||||||
|
./03_milenage_par.sh > ./03_milenage_par.out
|
||||||
|
./04_op_opc.sh > ./04_op_opc.out
|
||||||
|
./05_ki.sh > ./05_ki.out
|
||||||
|
./06_seq.sh > ./06_seq.out
|
||||||
|
./07_mnclen.sh > ./07_mnclen.out
|
||||||
|
|
||||||
|
echo "Reference output regenerated!"
|
||||||
|
echo ""
|
|
@ -0,0 +1,39 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# default: execute all tests
|
||||||
|
TESTS="01_auth.sh 02_algo.sh 03_milenage_par.sh 04_op_opc.sh 05_ki.sh 06_seq.sh 07_mnclen.sh"
|
||||||
|
|
||||||
|
# if command line specifies some specific tests, execute only those
|
||||||
|
if [ $# -ge 1 ]; then
|
||||||
|
TESTS=$*
|
||||||
|
fi
|
||||||
|
|
||||||
|
TMP=`tempfile`
|
||||||
|
NUM_FAIL=0
|
||||||
|
|
||||||
|
# prepare test card
|
||||||
|
./prepare
|
||||||
|
|
||||||
|
for T in $TESTS; do
|
||||||
|
echo "==> Executing Testcase $T"
|
||||||
|
EXPOUT=${T%%.sh}.out
|
||||||
|
rm $TMP
|
||||||
|
./$T > $TMP
|
||||||
|
diff -u $EXPOUT $TMP
|
||||||
|
if [ $? -eq 0 ]; then
|
||||||
|
echo "Test $T passed"
|
||||||
|
else
|
||||||
|
echo "Test $T FAILED!"
|
||||||
|
NUM_FAIL=$((NUM_FAIL+1))
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo "Summary: $NUM_FAIL Tests failed"
|
||||||
|
|
||||||
|
if [ $NUM_FAIL -gt 0 ]; then
|
||||||
|
exit 1
|
||||||
|
else
|
||||||
|
exit 0
|
||||||
|
fi
|
|
@ -0,0 +1,5 @@
|
||||||
|
TOOL=../../sysmo-isim-tool.sja5.py
|
||||||
|
# data for the test scripts. The values have to match the SIM card inserted while executing the test
|
||||||
|
IMSI=901700000046734
|
||||||
|
ADMPIN=11111111 # <==== CHANGE THIS TO THE ADM1 KEY OF YOUR TEST CARD!
|
||||||
|
KI=D7882EAE7CD14F06108C55F8E5CFFE93
|
7
utils.py
7
utils.py
|
@ -100,10 +100,13 @@ def id_to_str(table, nr):
|
||||||
|
|
||||||
|
|
||||||
# Convert a string back to its ID by looking it up in a given table
|
# Convert a string back to its ID by looking it up in a given table
|
||||||
def str_to_id(table, string):
|
def str_to_id(table, string, safe_default = None):
|
||||||
dict_by_name = dict([(name.upper(), nr) for nr, name in table])
|
dict_by_name = dict([(name.upper(), nr) for nr, name in table])
|
||||||
id = dict_by_name.get(string.upper())
|
id = dict_by_name.get(string.upper())
|
||||||
|
|
||||||
if id is None:
|
if id is None:
|
||||||
raise ValueError('identifier (\"%s\") not in table %s' % (string, str(table)))
|
if safe_default != None:
|
||||||
|
return safe_default
|
||||||
|
else:
|
||||||
|
raise ValueError('identifier (\"%s\") not in table %s' % (string, str(table)))
|
||||||
return id
|
return id
|
||||||
|
|
Loading…
Reference in New Issue