lewisappllwsP(codecodedata_|prefgWrlocgaMBARjTaltkTbmplKtAIBltFRMmktFRMptSTRqtSTRvtver{( ?<NVH. HnHnHnNO J@g<NO4(Gp`\ n<*(8(g(Mav`?/?a?/?a&?/?a/././.NO(G LN^Nuunknown reloc.typecrt0.cUnknown reloc.sectionNVH0C-IC-IC -IAJPf0-IBg/a`J@gvHnHn?, a6 0.g0HA/0C/ aV`Bv Hx HlHnNO& JCg&?<a|Hn?Hn?<?.B/, aBFBlPOBEHnHnHn?<(?Bg?<?,?a J@mL nfBBC.BD. Cg(0Dg 0@ @Yb0@ @Yb ??E>` ??E7/ HnaB . fE$`L fT .f8.0HA/0B.A/0E/ HnaBH`>E/ HnaB2PO`* f"B.A/0E/ HnaB /, NOKCA2H30HRPHn.@BA.ÀA?HnEp/ aFRF`L|N^NuNV//xBC/, NOE4BAll"0HA00@l@m86RAlm0&.(.N^Nureader not open select %x.%02x failed class: %x get response failed NVH0>.lC`Jlf"JlfaFHApp`0,@0,@B/, a&/G/ */?<BgBg?<E??a  J@m nag*B@.?B@.?C/ a?C(/ a`// /?.BgBg?<??a J@m ngC/ a`.@BA.<A .fxB@.9@B@.9@BDDol0D @o0<HnHn/?BgD0H??<?,?a6o0A0B(Bg//, a(C Dn`?a:BlBlL N^Nu$Id: log.c,v 1.7 2001/07/25 21:25:26 rees Exp $no leeson log file "%s" on this card ** Reset %-14s %02x # %s NVH0G/ E/ C& /?<BgBg?<?<?.aX nag/Cx/ a6`(/ / Hn?.BgBg?<?<?.abBF..@BA.A4H…6BBGKl4|HnHnHn??<Bg?<?<?.a nf.g fC`4 .4B: ZEEl:Bg@aR/C/ avBC CoBD60?C/ aZ\ORCCnJn g,0U@Em$B@6P?B@6P?a/C/ a$ C/ aXORGKm(L |N^NuNV/ Hn /.E/ a9?</ /, a$nN^NuNV/ /&.Hn/. E/ a9/ /a&.$nN^NuNVH&.*. Hn/NOOPO.gP/NOK8XOJg /NOXO`B@J@g"?Bg/NOB/NO?//NO]`?Bg/NO^` //NOYPO</NO=\O.f NOs/NOqB@L8N^Nu NVH ,.$n Hn/NOO.0PO g / /a&`/NOK8/ NO>/NOZ:0GR@ @l"0UVB@H@2ta6A?Bg/NO^CPO?/NO\O.g"JDg?<Ad//NO]RD?/NO?/ /NO] .g42G0thE@An/NO6XOg B'?/NOLPO</NO=B@LN^NuNV?</. /.aN^NuNV/&.0. @ fB` @ gB@`</NONXOR@H?/NOLp&.N^NuNVH $n.. =|/ NOKB8XOgFJg/NOXOB6`v Є c(< ?</`.GBDEPJgd.628e>28e2. g/28G!/ aPOBB28=B28C=C`RD0EPJf0nC:10nC0<1BC.0/42/a)PO8&n7D Cn7C` &nBk. g&???G/ a JCg?G/ a\OJGfVBC.0/BCa)jXO. /a),PO&n7@. g C g???GG/ ax` Gfx.@4b02@0D/Hi a) XO./a(PO@d&n7@Hx /a(PO.vƁrda@Ad7A. g??+G/ a&n60.L N^Nu0xNVH0$n,. >.HxG/ / NOJ@fTJ`Z "fRJ`BCBD"JJg2G| @RHH0DgRDf .gRCRIJf CgCm"J$FBDBBJgG| *R 0GoH6@-K3XDg B0Bg G ` p_A 4JDo BBBD`H&E3DgRDRIJg:`"J$FJg.0GG| $R oH&B3gRIJf0 FL N^NuNV/ n$n B* /g?</ /aJ@n?$nN^Nubad stateuninitialized keyapplet already runninginvalid stateinvalid applet statewrong classunknown instructionwrong length; should be %xwrong modeno such recfile not foundfunction not supportedinvalid file typeSM wrongbusy/SM missingno file selecteddata invalidauth method blockedpermission deniedbad paraminvalid length; should be %xinvalid keyauth failedinvalid filerec is corruptindex out of boundsarray index out of boundsnull pointerno such methodok; response available %xunknown errorconfig conflictreader not opencommunications errorerror loading drivernot implementedno card in readercard type not supportedslag!timeoutout of memoryno such ttyok%s NV?.a /C/ aN^Nu%04x %s%04xNV/6.?a: TOg/?C/ Hl,a+`?C/ Hl,a+A,&.N^NuNV//0.8L6CBBAJg20A002I@Af @g @gRB0Jf0A 0f?/0Cl& /a+$ C` p&.(.N^Nu%d:%x NVH $n:. <. l ?aBCTOCoBD20?RC?C/ aVPOCnJEg C/ aBXOJFg?a/C/ a* l ?a0LxN^Nuinstall default appinit updateget statusincreasedecreaseenable PINdisable PINchange aclchange java atrdeletecreatedirectoryrehabilitateunblockverify keychange PINlogout allexecute methodmanage programmanage instanceinvalidateip7816append recordupdate recordput dataupdate binarywrite recordwrite binaryget dataenvelopeget responseread recordread binaryselectint authget challengeext authmanage channelverifyerase binaryunknown ins %02xNV/2.A JgPgPHJf (g @`?C/ C& /a(d C&.N^NuSerial LibraryNV/ / &nJlgp`HlC/ NOPOJ@fg(Jg$E/ NOS@3H@4XO`Bl2n/ ?,G?NOPOJ@ff9|E/ ?NO\OJ@fNr%A. aTOA  n f@`@ 9| $Hl?,NO\OJ@f a@p` @gJlg ?,NOBlB@$n&nN^NuNVH0E $0n4@`*NO/4R/ a^PO @HxHhaPO$@/ 6.H/G?NO=@ fHn/ //. ?NO nf Hx?NOJnWHD@L N^NuNV/ Hn0n//. E?NO nf Hx?NO\OJnf Hx?NO JnWHD@$nN^NuNV0.29A $N^NuNV ,N^NuNVNOH"?/?,NOpN^NuNVA"(fpN` pEfpON^NuNV. NfArè` Ar EfAr` ArèN^NuNV.aHl?,NOaxHN^NuNV/6.C @XHp Cf ` Cf r `v Cg Hl?,NO0&.N^NuNVAJPgBP?,NOJ@WHD@`B@N^NuNVH 8.$n Dc6<`29| 0?. ?a6HXO @g @af?aJ@f6<g40H @g @af0`pLN^NuNV/. BB?. ?.arN^NuNV .fp`/.BB?. /NOXO?aDN^NuNV/ / 4. Bc0<`2&G @ $AJjf^G%K G%KGv%KGP%KG%KG%KG%K" Bo0`0BCh01H$5| n Hn Hx jN/ j N"0< Jf0<$n&nN^NuNV4.2&C @ A BbJhfp` hNBAJgr0N^NuNV/ 2.&E @ "AJifB@`< i"fHnHx iNJg `N-@B@". ggJfp$nN^NuNVH04.&n (.2&C @ $ABn6<Jjf6< `?a\TOJ@f6<`Hn Hx jNHx jN Jfg/ Hx jNPOJg6<`LHnHxf jNJfJnn2g&=| J+ f0.2@SI=IJ3gSn`=|!Jg"D20.L N^NuNVH06.*.2.&C @ $AJjf"n2 p`n n nnC8< nn8.JCgJgC2C/ /HnNO&ZC JDg A0DRCJg -|`t-BB*/(/2C/ G/ // jNJf .tdvA (afxJngrJgl|B.B.h-|B//Hx/ `"n-|BHnHnHxHn// jNJg"n2 p`\ .td A(@BA(A"n2U` "n2 .gJng0nd /Hn/.NO&0.L N^Nu/%c%c%c%02x%02xNV/ "n n BBBA( B?fJAfE/ / a`L0@ @Yb.JAf?E/ / a`*0@ @Yb ??E` ??E/ / a$nN^NuNV/ $n/ Hn?</. ?<BgBg?<?. ?.ahBAB@ Ag Aagp$nN^NuNV".t B@H@S@ @bA Ѐ00N@~~~~~ Ag b Ag(`. Ag Af 2|`*2|`"2|`2|`$<f` $<fJf? Bgav$<dJ@ft N^NuNVBga"<dJ@fr N^NuNV/ /".$n 0|f$ ဒvf vf:`6vf0vg b(vg` a$`Hx!AHh/ NO& &.$nN^NuNV <fN^NuNV <fN^NuTST %d NVH0 .| |B.B.B.| |B.B.B.| |B.|B.||=| fG/ */Hn?<(/&/?<a4@/ CL/ a~ f||=|!/ /Hn?<//?<aX4@/ C/ a: fB0.// EHjNO&0.U@ @ nFAB0R@ @ o`4 f0HnHnHn?<HnHn?<a"<`J@f|r`x fhE/ HnHn?<HnHn?<aJ@f4B0.// EHjNO&0. @bAB0R@ @c`"<``"<f L 8N^NuNV <^N^NuNV <^N^NuNV <^N^NuNV/ n$n|B.".td =|`B@(T@=@/.Hn/?HnHn?<aJ@fB0.$p` <d$nN^NuNV| |B.B.B.||=|HnHnHn?<HnHnBgadJ@f <h.g <g` <dN^NuNV/| |B.B.B.||=|HnHnHn?<HnHnBgaJ@f&<gJ.f&<h &.N^Nu/dev/cua00/dev/cua01/dev/ttyS2/dev/ttyS3/dev/smartcardNV0. @ge @g @g`"A`A`A`A`A/<E?<?<%aX J@fp`Hna2pJAgB@N^NuNVaJ2B@JAfpN^NuNVH0 n $n:.(.&n&. f@"D  f// /?a` SbBSp`6"CnB)`JfBHnaXOJ@f B'af`*.g <aRTO .gJltf2aJ@f BSBltp`tEt/ Hla *POJ@f BSBRp`VHnEt?Hla ~ @fBSBR`0.f// /?a` f// /?a`BSpL 8N^NuNVH0<.*. &n&. Fn So6"Cg`"E  g So6"Cn`x"E) fFHnaXOJ@fBlt`.fBlt SoJ6"CbB)`<aaxTOJ@fBlt` Fo"E) fREt/ C( /aPOJ@fBR`0T@SoBR`62R/ //NO&0R80R8<`: fbEt/ C( /aPOJ@fBR`THnHn?/a :0.T@SoBSBR`p60n80n8<` SoH6"C|<` f$HnaXOJ@fBlt`.fBlt So6"CdB)`l<aa,TOJ@fBlt`Et/ C( /aPOJ@fBR`t Fo"E) f00T@Sn62R/ //NO&0R80R8<` fDHnHn?/a 0.T@SoBSBR`F60n80n8<` So6"C|<` fHnavXOJ@g.gJ So6"C|B)<aTO .fEtBRaJ@fBSBRp` So6"CB|B)B'aZ`X fVB'aJHna\OJ@f BSBltp`V.gaJ@fBSp`> So26"CB)BltB@` So6"CiB)p`BSpL xN^Nusent_bytes = %d NVH0<.&n $nBGBCg FnBRp`JfJRf& Ff B@+Rnx?</ a~\OJ@f `NBRp`XA-HBE/.?<a|\OJ@g(. `f RG Go` `g f80T@Rn n0RC/.?<a.\OJ@g n0RC4`+fV Fo 0DjB@?Hs@a\OJ@g8`VRl> nHp0+0CjB@?a\OJ@ghBC+`&A0F@@AfN Fo&?<Hs@ad\OJ@g6RD?Av/aD\O`Rl nHp0?<aZ\OJ@gRC`BRp` <aB@L N^NuNV/ / n &n$nHnHn/ ?Hh2.[A?B@(?B@(?B@(?B@?Bga|J@mR@R@6B@`p$n&nN^NuNV/"n0n .BBHl"1 Jf`RBHmB@&.N^NuNV/ $nB.|Hn?<a\OJ@gHn?<a@J@g p`B@$nN^NuNVH0&n:. BDDopE6D Cov|oC|B'?</ a0@0C/Hs@HnNO&/ 0CXH?a^J@fB@`0@@?a@CTODnpL 8N^NuNV/ $n||Hn?<a \OJ@gHn?<abJ@fB@`.B gp$nN^NuNV/ |on|j|B'?<E/ aT@/ ?<aJ@g Hn?<aJ@g .WHD@`B@$nN^NuNV|`||Hn?<a@\OJ@g Hn?<aJ@g .WHD@`B@N^NuNV|a||Hn?<a\OJ@g Hn?<aHJ@g .WHD@`B@N^NuNVH0*.$n BF||oB.||v||oB.||tBCGHn?<aj\OJ@g/ ?<a\OJ@f,Hn?<aF\OJ@g/ ?<a\OJ@fRC Co .?f ,Exf<OaTOJ@g<O`(. ;f6 ,Oxf6<EaTOJ@gz<EaTO gh/ /a`^ ?fR"E4Hn?<a\OJ@g60R.XRRBD fHn?<a\OJ@g0RXRR fHn?<a\OJ@g0RXRR fHn?<a\OJ@g0RXRR f,Hn?<aZ\OJ@g0R.XRR0@@xJDfDG/ "E)A?a\OJ@gL"E)t‚// 0RHpXNO&"E)@R JFo/ ?<aJ@g 0RXRRp`BRB@L xN^NuNV/ /. Og Efp|o Of |`|@|j|B'?<E/ a@/ ?<aJ@g"Hn?<aNJ@g .f Cxp`B@&.$nN^NuNVH "n8. .0n$n Dnp`B@`r)tHn~ fRAAoҴHf Ag fRAAoHf Bg fRAAoHf Cg fRAAo~Hf Dgx1RBHopL8N^NuNVH n8. "n Do|r(:E2BC fRA fRA fRA f RAAo00vJCfRA40B@mJBg4B/ Hp/.NO&B@` p`pL8N^NuNV/ $nHn?<<D?. /.ap @fp` @fB` .B@$nN^NuNV/ / 2."n4ZBn n nnAAB@@o R@@nJAgBRB$nfE/ Hn??.a0 @o0@BA2&n6BA2&n"6U@$n&nN^NuNVH06.0. B.A P @@2@/ /. EG/ NO&/ / ?a,J@mB.// /.NO&B@.L N^NuNVH06n$n ..B@*<VFBDBDo 2@RDDn`RF6 A008HR@?a?/ ? a*BD JDf A008` A008?/R? aPOJ@f:RD Do"GBF)BD0R@Do,> 6A?0x/R? aPOJ@gp`RDDnBD0V@DoRDDn0L N^NuNV/6.o,NO/2C/ aPO @HxHhaXO.NO&.N^NuNV?./. aBAJ@fr0N^NuNV/ /E $64/. ?<aBAJ@fr40&.$nN^Nu"/ ///arP"///a@P"/ Nu/<"/ jDD /jDD//a4PJjD$Nu0/ 2/AH@B@2/ ЁNu/"/ / d$BBHB0H@4/ 0`2$ d"HBHBf ҂ecS$NuNV"nBA`0@AAHA2AR Q c0N^NuNVH $n&. :.BD/</a(POJl-  &`g+g /</aPOJgN/NVH0*."n&E n Jg: %fBD n RH-H H @b^A Ѐ00N2JJ:JJJJJJJ*J"JJBD`D`D`D `D`v n  bHn -Iar6XO"n` *fRH-H 6lDCDt n .fDE-J RH bHn -Ia 4XO"n` *fRH-H 4JBlBBr n  hg lg Lf n H-H | n H @ bdA Ѐ00N<NNNNNNNNNNBFNNNFNNNN6NNtNtNN@f` SCJCn KRK0SCJCo\ SCJCn`N,fE, 4B/ /-Iat2PO"nf` 0SCAnB@@o $FRR@@n0SCAo 0SCAn` CfvD????</`Q./Y-Ia PO?// a&H ` Alf Y$K ` Y4K0`|`:D@|`0D`( n %g% n g`XSH-H `N Alf `$ Ahf f `g0H`B0????// -Ia&H"n n E-J RHJfB0 EL xN^NuNVHn/. /.aN^NuNV". A . StgJg RHQB@Sd N^NuNV/. /.aN^NuNV/. /.aN^Nu><G<<N <><G<<N p><G<<N p><G<<N <><G<<N voNVH? .". ,Ѐg.ҁg F"G(<*<,F̄ggHF.΄ggHGF„$r&Fgtb:DO GlJ GlSGQ`L6HC4HBGf`8GDO Gl GlSGQ`2HA0H@Gf͈ωkj͈.҃т$JgRA(C<)g Fbm` BbJHB`:<`\.gj GD@ňJA(C<)gD Fbm`JHB` . A0LN^Nu .A0LN^Nu,HF``.HGF`l . ` .:<. l f`f`tA0LN^Nu`:< .". (<$&bXbRk.`g:.gG`NVH? .". .,<*F(<$g&gbgbvgzĆgHBJƆg…HCKCB,*x" 6<ҁрd҅фQHA6CAЀЀC:<gRB`:<`Z:<`(:<bH` ".`".  l(A0LN^NutЀSBf<`v…ҁSCf6`NVH? .". .,<*F(<$g&gܰbg䲆bgĆgHBJƆg…HCKCB~ G|.6<b Ɛg*ЀQ6<oЀQr`rCC .gRB:<`:<`:<`:<`:<g bpA0LN^Nu:< b`:< l`tЀSBf`v…ҁSCf` Bmh| BlRB Bg ``FA(C<)g4 Fbm|`x Bl4gJH@BH@A0LN^NuNVH?:< .@"Jg6 mb.`A0LN^Nu`NVH?:< .". ,gb bp.gT bZj Jj"k(JjAbf pLN^NupLN^NupLN^Nu``f Bg ҁрQgJf"Ё`rЁgRBgNtNNNV/. /.a N^NuNV//&. <Jftr`ZJl |Dj"<t`@Y o ?n փS ?o"@H@B@ x $BHBBB "&.(.N^NuNV/.an//abN^NuNV//".g:$ H@@H@H@B@ 戄&x`vt "&.(.N^NuNVH&.(. Jf Jfp`\ H@@H* | "BAHAI$RgR "AHABALxN^NuNVH$.&. JfJgN H@@H( z "BAHAIJo <Jl* <`"zຄmp`Jl0D@H JlDL8N^NuNV/.aXO//abN^NuA1|NuA1Gh1F1E Fg!n !n !n!n`!n !n hgA/NOLN^Nu$    ab4b9bUbWbXbbccgiiiiiiijjjjklmnoooo0a40020c000280840080b20060b0002002a0080 8500fefe002c0 00000 0000ad 9f 61 fe fa 20 ce 634500 002c d2fe 4000 7d06 0962 8dd3 5ca98dd3 a91b 09b6 0050 4698 ae0d 0000 00006002 2000 580f 0000 0204 05b4;Access09*#*A7,oeXQI`lovfX?_o/Ow7Wg'G{;[k+K s3Sc#C}=]m-M u5Ue%Ey9Yi)I q1Qa!A~>^n.Nv6Vf&Fz:Zj*J r2Rb"B|<\l,L t4Td$Dx8Xh(Hp0P` @tt.\D    x p p `XXT PP  p m< m8 m8 m0Z0K,K,K( H H 6 6 622''''''r'`'P'; '& ' ' &a&b4&b9'bU&bW&bX&b&b&xc&lc&`g&Ci&9i&'i&i&i%i%i%j%j%j%j%k%l%rm%^n%Ro%=o%/o%o%$+ *p************x*j*a*S*E*>*3*# * *")$)*),)D))))))&)()0)|2)s)hP)\)H?E(((((AAAAAABBBBBBntttttttttttttt`tXtXtXtXtXtXtXtXtXtXtXt Xt$t$t$t$$t*$t0$t6$t<$tB$tH$tN$tT$tZ$t`$tf$tl$tr$tx$t~$t$t$t$t$t$t$t$t$t$t$t$t$t$t$t$t$t$t$t$t$t$t$t$t$t$t$)Ht,)Ht4)Ht<)HtD)HtL)HtT)Ht\)Htd)Htl)Htt)Ht|)Ht)Ht)Ht)Ht)Ht)Ht)Ht)Ht)Ht)Ht)Ht)Ht)Ht)Ht)Ht)Ht)Ht)Ht )Ht)Ht)Ht$)Ht,)Ht4)Ht<)HtD)HtL)HtT)Ht\)HN]< dB=@ HESJAC PCommandsHelpExampleSet classSaveClearCyberflexLeeson log-AboutEditCopyPasteAbout lewisSmartcard commander. Written by Jim Rees www.citi.umich.eduOk     p  Hp,Dlewis Hn@ selectget responseget challengeread recread binarysubmit keymanage instanceip7816user1user2 @ select '$Command:L1$ `MA$ `NQ$ `Oa$ `Pq$ `'0Data:0 @<T   On* RstG Tste Go blewis: Cyberflex|  /" Open=! Done* Smartcard Commander [1] is used to talk through a palmreader [2] to an ISO 7816-4 compliant smartcard. * The 'Command' pulldown gives general classes of commands. Any of the commands may be altered in the text version of the command. * The six fields in the command are (all in hex): cla, ins, p1, p2, p3 * The 'Data' entry line allows additional arguments to be sent along with the basic command. * Commands and data are packaged into APDU's (Application Protocol Data Units) and sent to the card. * Transactions with the card are shown in the center of the screen. * Buttons: 'off' - turns the reader off 'rst' - resets card and displays the received ATR (answer to reset) 'tst' - simulates a card (without a reader) 'go' - sends selected command/data pair to card * Menu items: 'Set Class' - saves the current setting of the class byte (cla), so that it doesn't need to be altered for every command thereafter. 'Save' - saves the message field to a memo 'Clear' - clears the data and message fields 'Cyberflex' - explores a Cyberflex file system * See [3] for further smartcard work from CITI. [1] http://www.citi.umich.edu/projects/sinciti/smartcard/ [2] http://www.citi.umich.edu/projects/sinciti/smartcard/palmreader/ [3] http://www.citi.umich.edu/projects/sinciti/smartcard/ Here's a basic example transaction: * Reset the card by hitting RST. The card responds with its ATR (answer to reset), which tells you basic information about the card, its protocol, manufacturer, etc. * Now, you send to the card: select 3f 00 which selects the card's master file. The card responds with: 90 00 ok the return code for successful completion. * Two status words are always sent back in response to any given command. lewis will give the name of the response back after the status words. * (3f 00) is now the current file. If the card responded with: 61 14 instead, the 61 tells you it is a succesful completion with 0x14 bytes more information pending. * To retrieve this information, send the command: Get Response 14 The card will respond with the corresponding 20 bytes of information that the previous command had pending. These 20 bytes describe the currently selected directory (what keys and pins might be necessary for its access, etc). This example taken from the SmartCard Developer's Kit by Guthery, Jurgensen.1.0