else: # Serial reader is default print("Using serial reader (port=%s, baudrate=%d) interface" % (opts.device, opts.baudrate)) from pySim.transport.serial import SerialSimLink sl = SerialSimLink(device=opts.device, baudrate=opts.baudrate) # Create command layer scc = SimCardCommands(transport=sl) # Wait for SIM card sl.wait_for_card() # Program the card print("Reading ...") scc.send_apdu(ins='a4', p1='00', p2='04', data='3F00') #mf mf_list = ['2F00', '2F05', '2F06', '2FE2', '2F08'] mf_dir, error_mf = lsdf(mf_list) print(mf_dir) print(error_mf) #adf scc.send_apdu(ins='a4', p1='00', p2='04', data='2F00') scc.send_apdu_without_length(ins='b2', p1='01', p2='04', data='26') scc.send_apdu(ins='a4', p1='04', p2='04', data='a0000000871002ffffffff8907090000')
print(ef) scc.send_apdu(ins = 'a4',p1 = '00', p2 = '00', data = '3F00') scc.send_apdu(ins = 'a4',p1 = '00', p2 = '00', data = parent) scc.send_apdu(ins='e0', p1='00', p2='00', data= ef.fci) scc.send_apdu(ins = 'a4',p1 = '00', p2 = '00', data = ef.name) if ef.tp == "transparent": scc.send_apdu(ins = 'd6',p1 = '00', p2 = '00', data = ef.data) scc.send_apdu(ins = 'a4',p1 = '00', p2 = '00', data = ef.name) sw, data = scc.send_apdu_without_length(ins = 'b0',p1 = '00', p2 = '00', data = '0a') print(sw, data) mf, adf, gsm, telecom = load_profile() #print(mf) #master file for ef in mf: write_EF(ef, '3F00') scc.send_apdu(ins= '20', p1 = '00', p2 = '01', data = '1234') scc.send_apdu(ins='e0', p1='00', p2='00', data= "62308202782183027f20a51683027fffcb0d00000000000000000000000000ca01828a01058b032f0601c606900100830101") for ef in gsm: write_EF(ef, '7F20') scc.send_apdu(ins='e0', p1='00', p2='00', data= '62308202782183027f10a51683027fffcb0d00000000000000000000000000ca01828a01058b032f0601c606900100830101') for ef in telecom: write_EF(ef, '7F10')