Você está na página 1de 16

Page 1 Page 1 SIM CARD PROTOCOLS SIM CARD PROTOCOLOS Though rarely thought about by most users their

mobile phone contains a remarkable Embora raramente pensado pela maioria dos seus usurios de telefone celular contm um notvel computing device that enables them to go about their business of making calls, text dispositivo de computao que permite que eles vo sobre seu neg cio de fa!er chamadas, texto messaging or playing online games" mensagens ou #ogar #ogos online" The $ubscriber %dentity &odule '$%&( inside the ) $ubscriber %dentity &odule '$%&( no interior do mobile phone is actually a fully fledged microcomputer *ith an operating and file telefone m vel realmente um microcomputador pleno funcionamento e com um arquivo system" sistema" The protocols used bet*een the mobile equipment or card accepting device and )s protocolos utili!ados entre os equipamentos m veis ou carto de dispositivo de aceitar e the $%& are a combination of protocol types that should be familiar to anyone *ho has $%& so uma combinao de tipos de protocolo que deve ser familiar para qualquer um que tenha studied the )pen $ystems %nterconnection ')$%( +eference &odel,that is to say the data estudou o )pen $ystems %nterconnection ')$%( &odelo de +efer-ncia, ou se#a, os dados link and application layers 'though the T./ model mixes layers(" ligao e as camadas de aplicao 'embora o modelo T . / misturas camadas(" This paper attempts in broad strokes to outline the construction of these protocols and Este papel tenta em traos largos para delinear a construo desses protocolos e ho* they are used" como eles so usados" Card Power-Up Carto Power-Up 0hen a smart card, or in our discussion $%& card, is inserted into a card reader or mobile 1uando um carto inteligente, ou em nosso carto de discusso $%&, inserido em um leitor de carto ou celular handset the card is not immediately po*ered up" monofone o carto no imediatamente acionado" 2oing so *ithout out at first testing if 3a!-,lo sem a primeira a testar se the card is properly inserted can destroy the card" o carto inserido corretamente pode destruir o carto" )nce the proper insertion of the card has been detected, the card accepting device '452( 6ma ve! que a insero correcta do carto foi detectado, a aceitar cart7es de dispositivo '254( or mobile equipment '&E( the 452 or &E first po*ers the card to a normal operating ou equipamento m vel '&E(, o 452 ou &E poderes primeiro o carto para um funcionamento normal voltage and the card is brought to an idle state" tenso eo carto tra!ido a um estado ocioso" Then a +$T command is sent over the Em seguida, um comando +$T enviado pela contact line '48( on the face of the $%& card" linha de contacto '48( na face do carto $%&" The +$T command remains in a lo* state ) comando +$T permanece em um estado de baixo for a set period of time and then is set to a high state" por um determinado per9odo de tempo e, em seguida, definida como um estado elevado" This is a signal to the $%& card to Este um sinal para o carto $%& para

begin its initiali!ation sequence" comear a sua seq:-ncia de iniciali!ao" The initiali!ation sequence ends *ith the $%& card sending an 5ns*er to +eset '5T+(" 5 sequ-ncia de iniciali!ao termina com o carto $%& do envio de uma resposta para +eset '5T+(" %ts primary purpose is to indicate the status of the smart card po*er,up sequence" $eu ob#etivo principal para indicar o status do poder de smart card,up seq:-ncia" %t also Tambm conveys information *hich the reader requires in order to optimi!e the speed of veicula informa7es que o leitor necessita para otimi!ar a velocidade de communication bet*een the reader and the card" comunicao entre o leitor eo carto" The total length of the 5T+ sequence is ) comprimento total da seq:-ncia de 5T+ limited to ;; bytes 'The 5T+ must adhere to the structure specified by %$) <=>?,;(" limitado a ;; bytes 'o 5T+ deve respeitar a estrutura especificada pela norma %$) <=>?,;(" The ) table sho*n belo* illustrates the 5T+ as outlined in %$) <=>?,;" tabela abaixo ilustra o 5T+, conforme descrito na norma %$) <=>?,;" Character ID Character ID Definition Definio Initial Character Section Seo carter inicial T$ T$ &andatory initial character )brigat rio carter inicial Format Character Section Formato Seo Character T/ T/ %ndicator for presence of interface characters %ndicador de presena de personagens interface Interface Character Section Interface Seo Character T5 T5 >> @lobal, codes 3> and 2> @lobal, os c digos de 3 rmula > e 2> TA TA >> @lobal, codes >> and Bl> @lobal, os c digos >> e BC> T4 T4 >> @lobal, code D @lobal, c digo D Page 2 Page 2 T2 T2 >> 4odes E 4 digos E 88 and T e T T5 T5 88 $pecific Espec9ficos TA TA 88 @lobal, code Bl8 @lobal, BC8 c digo T4 T4 88 $pecific Espec9ficos

T2 T2 88 4odes E 4 digos E ;; and T e T T5 T5 ;; T5 T5 ii , TA , TA ii and T4 e T4 ii are specific so espec9ficos """T2 """ T2 ii 4odes E 4 digos E iF> i F> and T e T Historical Character Section Seo Personagem histrica T> T> 4ard specific information 4arto de informao espec9fica """TG """ TG '&aximum of >H characters( '&ximo de >H caracteres( Check Character Section Verifique Seo Character T4G T4G 88 )ptional check character 4arcter de controlo opcionais Table >I 5T+ structure Tabela >I Estrutura 5T+ >> "" T$ and T/ are the only mandatory bytes in the 5T+ sequence" T$ e T/ so os bytes s obrigat ria na seq:-ncia 5T+" The initial character T$ is ) carter inicial T$ used to establish bit,signaling and bit,ordering conventions" usado para estabelecer bits de sinali!ao e,bit ordenao conven7es" T/ is used to indicate the T/ usado para indicar o presence or absence of subsequent interface or historical characters" presena ou aus-ncia de interface subsequente ou personagens hist ricas" The upper J bits or )s J bits ou superior nibble 'bits H , =( is designated E> and signals the presence of optional characters based mordidela 'bits H , =( designado E> e sinali!a a presena de caracteres opcional baseada on a logic > in the follo*ing bit positionsI numa l gica de > bit nas posi7es seguintesI Ait H indicates T5 Ait H indica T5 >> is present est presente Ait ? indicates TA Ait ? indica TA >> is present est presente Ait < indicates T4 Ait < indica T4

>> is present est presente Ait = indicates T2 = bits indica T2 >> is present est presente The lo*er nibble 'bits > , J( is designated G and is interpreted as a numeric value in the ) nibble inferior 'bits > , J( designado G e interpretada como um valor numrico na range / , >H" intervalo de / , >H" %t indicates the number of historical characters present" Ele indica o nKmero de personagens hist ricos presentes" The interface characters are used to select the protocol and parameters used for 5 interface de caracteres so utili!ados para selecionar o protocolo e os parLmetros utili!ados para subsequent higher,level communication bet*een the smart card and the reader" comunicao de alto n9vel subseq:ente entre o carto inteligente eo leitor" The T5 5 T5 >> interface character is the most significant to this paper as it provides the necessary interface o personagem mais importante para este trabalho, pois proporciona o necessrio information to achieve optimal communication speeds bet*een the reader and the card" informao para atingir velocidades de comunicao adequada entre o leitor eo carto" The value of E> indicates *hether T5 ) valor da E> indica se T5 >> , TA , TA >> , T4 , T4 >> or T2 ou T2 >> is present and the value of Ei est presente eo valor de Ei 'encoded in T2 'codificado em T2 i,> i,> ( determines the presence of T5 ( 2etermina a presena de T5 ii , TA , TA ii , T4 , T4 ii and T2 e T2 ii " " The purpose of a 5 finalidade de um fe* of the most relevant of these is explained belo*" alguns dos mais relevantes destes explicado a seguir" T5>I Encodes 3% in the upper nibble 'bits H , =( and 2% the lo*er nibble 'bits > , T5>I 4odifica 3% no nibble superior 'bits H , =( e 2%, o nibble inferior 'bits > ,, J(" J(" These are used to determine the clock conversion factor '3( and the bit rate Estes so utili!ados para determinar o fator de converso do rel gio '3( ea taxa de bits ad#ustment factor '2( and maximum supported clock rate according to the tables fator de a#uste '2( e mxima suportada clock de acordo com as tabelas

belo*" abaixo" The default values of 3 and 2 if unspecified areI 3 . ;<8 and 2 . >" )s valores padro de 3 e 2, se no especificadas soI 3 . ;<8 e 2 . >" Page 3 Pgina 3 FI FI //// //// ///> //>/ //>> />// />/> />>/ />>> ///> //>/ //>> />// />/> />>/ />>> FF %nternal %nterno clock rel gio ;<8 ;<8 HH= HH= <JJ <JJ >>>? >J== >=?/ +36 >>>? >J== >=?/ +36 f max f max (M !" (M !" , ,, HH ?? == >8 >8 >? >? 8/ 8/ , ,, Table8I Malues of the upper nibble of the T5> byte of the 5T+ Tabela 8I Malores do nibble superior do byte T5> do 5T+ >> "" DI DI //// //// ///> //>/ //>> />// />/> />>/ />>> ///> //>/ //>> />// />/> />>/ />>> DD +36 +36 >> 88 JJ == >? >? ;8 ;8 +36 +36 DI DI >/// >/// >//> >/>/ >/>> >>// >>/> >>>/ >>>> >//> >/>/ >/>> >>// >>/> >>>/ >>>> DD >8 >8 8/ 8/ >N8 > N 8 >NJ > N J >N= > N = >N>? > N >? >N;8 > N ;8

>N?J > N ?J Table ;I Malues of the lo*er nibble of the T5> byte of the 5T+ Tabela ;I Malores do nibble inferior do byte T5> do 5T+ >> "" TA TA >> , TA , TA 88 I 6sed to encode information concerning the programming voltage and I 6sado para codificar a informao sobre a tenso de programao e current" atual" T4 T4 >> I %nterpreted as an =,bit unsigned integer representing the extra guard time I %nterpretado como um =,bit inteiro sem sinal que representa a proteo extra tempo required bet*een characters 'D(" necessria entre os personagens 'D(" The default value of D is /" ) valor padro de n /" T2 T2 >> I Encodes E> in upper nibble and the protocol type in the lo*er nibble" I 4odifica E> em nibble superior eo tipo de protocolo no nibble inferior" %$) %$) <=>?,; defines t*o protocolsI the T./ protocol and the T.> protocol" <=>?,; define dois protocolosI o protocolo T . / eo protocolo T . >" T./ is an T . / um asynchronous character-oriented rotocol *here an ackno*ledgement must be carter ass9ncrono rotocolo orientado onde um aviso de recepo deve ser received for every byte that is sent" recebido por cada byte que enviado" %n contrast, T.> is an asynchronous !lock- Em contraste, T . > um !loco ass"ncrona oriented rotocol *here a number of bytes can be sent before an rotocolo orientado# onde um nKmero de bytes podem ser enviados antes de uma ackno*ledgement must be received " aviso de recepo deve ser recebido" %f T2 $e T2 >> is not present, then T./ is used no est presente, ento T . / usado implicitly" implicitamente" FI FI >/// >/// >//> >/>/ >/>> >>// >>/> >>>/ >>>> >//> >/>/ >/>> >>// >>/> >>>/ >>>> FF +36 +36 H>8 H>8 <?= <?= >/8J >H;? 8/J= +36 +36 >/8J >H;? 8/J= +36 +36 f max f max (M !" (M !" , ,, HH <"H <,H >/ >/ >H >H 8/ 8/

, ,, , ,, Page 4 Page 4 The historical characters are usually used to indicate the type, model and use of the )s personagens hist ricos so geralmente usado para indicar o tipo, modelo e uso do specific card" carto espec9fico" These are generally defined by the manufacturer or card issuer" Estes so geralmente definido pelo fabricante ou pelo emissor do carto" There is no Do h established standard for the data in these historical bits" padro estabelecido para os dados de estes bits hist rico" The check character 'T4G( is ) carter de seleo 'T4G(, used to determine *hether a transmission error occurred in sending the 5T+ from the usado para determinar se a transmisso ocorreu um erro no envio do 5T+ da card to the reader" carto para o leitor" T4G is a checksum calculated such that performing a bit,*ise T4G uma quantidade calculada de tal forma que executa um bit,*ise exclusive,or 'O)+( operation on all bytes in the 5T+ from T/ to T4G results in a operao ou,exclusivo 'O)+( de todos os bytes da 5T+ T/ para T4G resultados em um ans*er of !ero" resposta do !ero" Tran#$i##ion Protoco% Data Unit# Protoco%o de Tran#$i##o de Dado# Unidade# Transmission Brotocol 2ata 6nits 'TB26s( are the data structures passed back and forth Brotocolo de Transmisso de 2ados '6nidades TB26s( so as estruturas de dados passados para trs e para frente by the $%& and the 452 or &E" pelo $%& e do 452 ou &E" The t*o protocols commonly used for this )s dois protocolos comumente utili!ados para este communication are the T./ protocol and the T.> protocol" comunicao so o protocolo T . / eo protocolo T . >" T&' T & ' This protocol is a byte oriented protocol, meaning that the minimum unit of information Este protocolo um protocolo orientado a byte, o que significa que a unidade m9nima de informao transferred across the %N) channel is a byte" transferidos atravs do canal de E N $ um byte" Error handling for this protocol is the same" &anipulao de erro para este protocolo o mesmo" This protocol tends to mix elements from the link,level and application,level protocol Este protocolo tende a misturar elementos de ligao e em n9vel de aplicativo de n9vel de protocolo layers" camadas" The TB26 of the T./ protocol is comprised of t*o data structures,one sent from a reader ) TB26 do protocolo T . / composta de duas estruturas de dados, um enviado de um leitor or device to the card and one sent back from the card'similar to command and response(" ou dispositivo para o carto e um enviado de volta a partir do carto 'semelhante ao comando e resposta(" The command header of the T./ protocol includes the follo*ing five fields" ) cabealho do comando do protocolo T . / inclui os seguintes cinco campos" 4C5,this is a one byte field that is a collection of instructions 4C5,este um campo de um byte que uma coleo de instru7es

%D$,This is a one byte field that specifies a specific instruction to the card from *ithin %D$,Este um campo de um byte que especifica uma instruo espec9fica para o carto de dentro the set of instructions in the 4C5 o con#unto de instru7es do 4C5 B>,This is a one byte field that used to specify the addressing used by the %D$ and 4C5 B>,Este um campo de um byte que utili!ado para especificar o endereamento utili!ado pelo %D$ e 4C5 instruction instruo B8,this is a one byte field also used in addressing B8,este um campo de um byte usado tambm no tratamento B;,this is a one byte field that is used to specify the number of bytes transferred to or B;,este um campo de um byte que usado para especificar o nKmero de bytes transferidos ou from the card as part of the instruction execution do carto como parte da execuo da instruo 88 "" The belo* table lists some of the instructions that can be contained in the 4C5 byte" 5 tabela abaixo lista algumas das instru7es que podem ser inclu9das no byte 4C5" Page 5 Page 5 CLA CLA ()te ()te In#tr*ction Set In#tr*ction Set /O /O %$) <=>?,J instructions 'files and %$) <=>?,J 'instru7es de arquivos e security( segurana( >/ to <3 +eserved for future use >/ a <3 +eservado para uso futuro =O or PO %$) <=>?,J instructions %nstru7es =O ou PO %$) <=>?,J 5O 5O 5pplicationNvendor specific instructions %nstru7es de 5plicao N fornecedor espec9fico A/ to 43 %$) <=>?,J instructions A/ a 43 %$) <=>?,J instru7es 2/ to 3E 5pplicationNvendor specific instructions %nstru7es para 2/ 3E 5plicao N fornecedor espec9fico 33 33 +eserved for protocol type selection +eservado para seleo do tipo de protocolo Table JI 4C5 instruction set definitions Tabela JI instruo 4C5 definir defini7es 88 "" The next table sho*s the instructions set in the %D$ byte for security and file system 5 tabela a seguir mostra as instru7es constantes no byte %D$ para a segurana e sistema de arquivos access on the card" acesso no carto" I+S ,a%*e Co$$and +a$e I+S ,a%or Co$ando +o$e I+S ,a%*e Co$$and +a$e I+S ,a%or Co$ando +o$e /E /E Erase Ainary 5pagar Ainrio 4/ 4/ @et +esponse @et +esponse 8/ 8/ Merify Merificar

48 48 Envelope Envelope </ </ &anage 4hannel @erenciar 4anal 45 45 @et 2ata )bter dados =8 =8 External 5uthenticate External 5uthenticate 2/ 2/ 0rite Ainary Escreva Ainrio =J =J @et 4hallenge @et 4hallenge 28 28 0rite +ecord 0rite +ecord == == %nternal 5uthenticate %nternal 5uthenticate 2? 2? 6pdate Ainary 6pdate Ainary 5J 5J $elect 3ile $elecione 5rquivo 25 25 But 2ata 4olocar dados A/ A/ +ead Ainary +ead Ainary 24 24 6pdate +ecord 6pdate +ecord A8 A8 +ead +ecord's( Ceia +ecord 's( E8 E8 5ppend +ecord 5ppend +ecord Table HI %$) <=>?,J %D$ codes Tabela HI %$) <=>?,J c digos %D$ 88 "" 5s *as mentioned before the T./ protocol tends to mix elements from other levels in the 4omo foi mencionado antes do protocolo T . / tende a misturar elementos de outros n9veis da )$% model" &odelo )$%" The B> and B8 parameters, although defined at the link level protocol level 5 B> ea B8 parLmetros, embora definida no n9vel de protocolo de n9vel de ligao are in truth dependant on the instruction that is specified" so, na verdade, depende da instruo que est especificado" %n other *ords they are Em outras palavras, eles so dependant on the application protocol information" dependente do protocolo de pedido de informa7es" These t*o parameters provide control Estes dois parLmetros fornecem controle or addressing for application,specific instructions such as the Se%ect Fi%e instruction ou para a resoluo de aplicao instru7es espec9ficas, tais como a instruo Se%ect Fi%e *hich involves the selection of a specific file in the file system *hich then allo*s for que envolve a seleo de um arquivo espec9fico no sistema de arquivos que permite ento a

other operations such as *riting or reading" outras opera7es tais como a escrita ou leitura" Page 6 Page 6 B; is also an application,level parameter" B; tambm um parLmetro de n9vel de aplicativo" B; generally specifies the number of bytes to be B; geralmente especifica o nKmero de bytes a ser transmitted during the %D$ specified instruction execution" transmitidos durante a execuo da instruo especificada %D$" 2ata is either outgoing, 2ados ou est de sa9da moving from card to reader or incoming,from reader to card" movendo,se de carto de leitor ou de entrada de leitor de carto" 5fter each command TB26, a response TB26 is returned" 5p s cada comando TB26, uma resposta TB26 devolvido" This TB26 is made up of a Esta TB26 composta de um number of procedure bytes" nKmero de bytes procedimento" This TB26 contains three &andatory fields and one optional Esta TB26 contm tr-s campos obrigat rios e um opcional one" um" 54GI indicates that the card has received the Q4C5, %D$R command 54GI indica que o carto que recebeu o 4C5, Q%D$R comando D6CCI used for flo* control on the %N) channel by the card" D6CCI usado para controle de fluxo no canal de E N $ pelo carto" %t signals 'to the S sinal 'para o reader( that the card is still processing the command and so the reader must *ait leitor( que o carto ainda est a processar o comando e assim que o leitor deve esperar before sending another command antes de enviar outro comando $0>I status response of the current command $0>I resposta status do comando atual $08I 'optional( also conveys a status response to the reader $08I 'opcional( tambm transmite uma resposta de status para o leitor 88 The 54G byte is a repeat of the %D$ byte that *as sent by the command TB26" ) byte 54G uma repetio do byte %D$ que foi enviado pelo comando TB26" The ) second byte D6CC, is a *ay to mark the time period for processing the command" D6CC segundo byte, uma forma de marcar o per9odo de tempo para processar o comando" %f a $e um response is not received *ithin a timeout period the reader of device may send out a +$T resposta no for recebida dentro de um per9odo de tempo limite o leitor do dispositivo pode enviar um +$T sequence to reinitiali!e the protocol" seq:-ncia para reiniciali!ar o protocolo" 5 least one D6CC response received by the reader 5 pelo menos uma resposta nula recebida pelo leitor *ill prevent this from occurring" ir impedir que isto ocorra" The $0> is a status byte from the card to the reader that *ill tell the result of the sent ) $0> um byte de status do carto para o leitor que ir di!er o resultado da enviadas instructionT in certain instructions the card may return data bytes to the reader or instruo, em certas instru7es do carto pode retornar bytes de dados para o leitor ou equipment" equipamento" %f this is the case the $08 status byte is returned" $e este for o caso, o byte de status $08 devolvido" This is a trigger for the Este um gatilho para o reader to no* execute another command,the -etRe#pon#e command, *hich actually leitor a executar agora um outro comando, o comando -etRe#pon#e. que na verdade returns the data from the previous executed instruction" retorna os dados da instruo anterior executado"

Error checking occurs in the T./ protocol *ith a parity check" Merificao de erro ocorre no protocolo T . / com um cheque de paridade" 3or every byte transferred Bara cada byte transferido >> bits must be used" >> bits devem ser usados" The parity bit is cleared or set to make the total number of bits set ) bit de paridade se#a limpo ou con#unto para tornar o nKmero total de bits definidos be even" ser mesmo" The receiving side of the channel can look at the bits transferred prior to the ) lado da recepo do canal pode olhar para os bits transferidos antes da parity bit and determine *hat parity value to expect" bit de paridade e determinar o valor de paridade de esperar" %f the actual transmission does not $e a transmisso real no match *hat *as expected it can be assumed that an error has occurred and a recovery corresponder ao que era esperado que se pode presumir que ocorreu um erro e uma recuperao procedure must take place" procedimento deve ter lugar" This recovery is initiali!ed on the receiving side and involves Esta recuperao iniciali!ado no lado de recebimento e envolve the re,transmission of the byte received in error" a re,transmisso do byte recebido em erro" T&/ T & / This protocol is block,orientedT meaning that a defined collection of data or block is Este protocolo block,orientedT o que significa que um con#unto definido de dados ou de bloco moved as a *hole bet*een the card and reader" movido como um todo entre o carto eo leitor" This block of data may contain an Este bloco de dados pode conter um 5pplication Brotocol 2ata 6nit '5B26( defined for a specific application" 5pplication Brotocol 2ata 6nit '5B26(, definido para uma aplicao espec9fica" This sho*s a %sso mostra uma good example of the layering bet*een the link and application protocol layers" bom exemplo da ligao entre as camadas e camadas de protocolo de aplicao" &oving &oving the information as a single block calls for error free transmission and this error detection a informao como um bloco Knico para chamadas de transmisso livre de erro e esse erro de deteco and correction is much more complex for the T.> protocol than in the T./ protocol" e correo muito mais complexa para o protocolo T . > do que no protocolo T . /" Page 7 Page 7 This error detection is done using a longitudinal redundancy character 'C+4(,a slightly Esta deteco de erros feito usando um carter de redundLncia longitudinal 'C+4(,a ligeiramente more complex parity type check that exists in the T./ protocol or using a cyclical verificao de tipo mais complexo de paridade que existe no protocolo T . / ou usando um ciclo redundancy check '4+4(" verificao de redundLncia '4+4(" The specific 4+4 algorithm used is defined in %$) ;;/P" ) algoritmo 4+4 espec9fico utili!ado definido na norma %$) ;;/P" The T.> protocol uses three types of blocksI ) protocolo T . > usa tr-s tipos de blocosI >" >" %nformation blockI 6sed to exchange data bet*een application soft*are on the %nforma7es sobre o blocoI 6sado para troca de dados entre o soft*are aplicativo no card and application soft*are on the reader side of the channel" carto e soft*are de aplicao no lado do canal do leitor"

8" 8" +eceive ready blockI 6sed for positive and negative ackno*ledgements on either +eceber bloco prontoI 6tili!ado para reconhecimentos positivos e negativos de cada end of the channel" final do canal" 5 positive ackno*ledgement indicates that the block *as 5 confirmao positiva indica que o bloco foi correctly received" corretamente recebido" 4onversely a negative ackno*ledgement indicates that an %nversamente um reconhecimento negativo indica que um error *as detected in the block received" erro foi detectado no bloco recebido" ;" ;" $upervisory blockI 6sed to transfer control information bet*een the reader and 3iscali!ao blocoI 6tili!ado para transfer-ncia de informa7es de controle entre o leitor eo the card" o carto" Each of the data blocks has the same structure comprising of the follo*ing fields" 4ada um dos blocos de dados tem a mesma estrutura, compreendendo os seguintes campos" Brologue fieldI &andatory field *ith a si!e of three bytes including the follo*ing Brologue campoI 4ampo obrigat rio com um tamanho de tr-s bytes, incluindo o seguinte three elementsI tr-s elementosI oo D52I Dode 5ddress is used to identify the addresses of the source and the D52I Endereo de D usado para identificar os endereos de origem e os intended destination of the block" destino do bloco" oo B4AI Brotocol 4ontrol Ayte is used to indicate the type of block 'either B4AI Brotocolo de 4ontrole de byte usado para indicar o tipo de bloco 'ou information, receive ready or supervisory( informa7es, receber pronto ou de superviso( oo CEDI Cength of the block CEDI 4omprimento do bloco %nformation fieldI )ptional field that may be up to 8HJ bytes in length and may %nforma7es de campoI campo opcional que pode ser de at 8HJ bytes de comprimento e pode contain an 5B26 conter uma 5B26 Epilogue fieldI &andatory field that is either > or 8 bytes in length and is used for Ep9logo campoI 4ampo obrigat rio que > ou 8 bytes de comprimento e utili!ado para error detection deteco de erros 0hen used the D52 element also contains t*o subfieldsI $52,*hich is the source 1uando usado o elemento D52 tambm contm dois subcamposI $52,que a fonte address sho*n by the three lo* order bits of the D52 and 252, *hich is the destination endereo indicado pelos tr-s bits de baixa ordem do D52 e papai, que o destino address *hich is sho*n in bits five through seven of the D52" endereo que mostrado em pedaos de cinco a sete dos D52" %n the B4A, the t*o most significant bits 'high order( of the byte indicate of *hich type Do B4A, mais dois bits mais significativos 'de alta ordem( do byte de indicar qual o tipo the block isI o bloco I 5 high order set to !ero indicates and informational block 5 ordem elevada de !ero indica e informacional bloco

The t*o high order bits set to one indicate a supervisory block )s dois bits de alta ordem definida para um indicam um bloco de controlo The high order bit set to one and the other to !ero indicates a receive ready block ) bit de alta ordem definida para um e outro para receber !ero indica um bloco pronto App%ication Protoco% Data Unit# App%ication Protoco% Data Unit# The %$) <=>?,J standard addresses t*o areas of functionality for application soft*areI 5 norma %$) <=>?,J aborda duas reas de funcionalidade de soft*are de aplicaoI Page 8 Page 8 3ile systemI 5 set of functions is provided in the form of an 5B%" $istema de arquivosI um con#unto de fun7es fornecido sob a forma de uma 5B%" Ay using this 5o utili!ar este 5B% application soft*are on the reader side can access files in the file system" 5B% soft*are aplicativo no lado leitor pode acessar arquivos no sistema de arquivos" $ecurity functionsI These can be used to limit access to application soft*are or to 3un7es de seguranaI Estes podem ser utili!ados para limitar o acesso ao soft*are aplicativo ou para files on the card" ficheiros no carto" The T./ or T.> protocols are used to support application,level protocols bet*een the 5 T . / ou T . > protocolos so usados para apoiar a aplicao de protocolos entre o n9vel smart card application and the reader application" aplicao de smart card eo aplicativo leitor" These application protocols exchange Estes protocolos de pedido de troca data structures called application protocol data units '5B26s(" estruturas de dados chamados dados da aplicao do protocolo de unidades '5B26s(" The follo*ing diagram ) diagrama a seguir illustrates this architectureI ilustra esta arquiteturaI 3igure >I 5pplication communication architecture 3igura >I arquitetura de comunicao 5plicao 88 "" The 5B26 structure defined by %$) <=>?,J is very similar to the TB26 structure used in 5 estrutura 5B26 definido pela norma %$) <=>?,J muito semelhante U estrutura utili!ada na TB26 the T./ protocol" o protocolo T . /" %n fact, *hen an 5B26 is transported by the T./ protocol, the Da verdade, quando um 5B26 transportado pelo protocolo T . /, o elements of the 5B26 directly overlay the elements of the TB26" elementos da 5B26 sobreposio directamente os elementos da TB26" The 5B26 as defined by %$) <=>? is link,level protocol independent and also defined at ) 5B26 definido pela norma %$) <=>? a ligao de n9vel de protocolo independente e tambm definido na the application level" o n9vel de aplicao" APDU Str*ct*re APDU 0#tr*t*ra There are t*o types of messages used to support the %$) <=>?,J application protocolsI Existem dois tipos de mensagens usadas para apoiar a aplicao de protocolos %$) <=>?,JI the command $P%& 'sent from the reader to the card( and the res onse $P%& 'sent from o comando $P%& 'enviado pelo leitor de carto( e da res osta $P%& 'enviado de the card to the reader(" o carto para o leitor(" Page 9 Page 9 3igure 8I The command 5B26 structure 3igura 8I 5 estrutura de comando 5B26 88

"" The command 5B26 consists of a header and a body 'sho*n above(" ) comando 5B26 composto por um cabealho e um corpo 'acima(" The header ) cabealho includes 4C5, %D$, B> and B8 fields" %nclui 4C5, %D$, campos de B> e B8" 5s in the T./ protocol, 4C5 and %D$ specify an 4omo no protocolo T . /, 4C5 e %D$ especificar um application class and instruction" classe de aplica7es e de instruo" B> and B8 are used to qualify specific instructions and B> e B8 so usados para qualificar as instru7es espec9ficas e are given specific definitions by each Q4C5, %D$R instruction" so dadas defini7es espec9ficas de cada um Q4C5, %D$R instruo" The body of the 5B26 can ) corpo do 5B26 pode vary in si!e and is used to transmit data to the cardVs 5B26 processor as part of a variam em tamanho e utili!ado para transmitir dados ao processador do carto 5B26 como parte de um command or to convey a response from the card to the reader" comando ou de transmitir uma resposta do carto para o leitor" The Cc field specifies the ) campo Cc especifica o number of bytes to be transmitted to the card as part of the instruction,length of the data DKmero de bytes a serem transmitidos para o carto, como parte da instruo de comprimento dos dados field" campo" The data field contains information that must be sent to the card to allo* its 5B26 ) campo de dados contm informa7es que devem ser enviados para o carto para permitir a sua 5B26 processor to execute the command specified in the 5B26" processador para executar o comando especificado na 5B26" The Ce field specifies the ) campo Ce especifica o number of bytes that *ill be returned to the reader in the response 5B26" nKmero de bytes que ser retornado para o leitor na resposta 5B26" The body of the 5B26 can appear in four formsI ) corpo do 5B26 podem aparecer em quatro formasI >" >" Do data is transferred to or from the card, so the 5B26 only contains the header" $em dados so transferidos de ou para o carto, assim que o 5B26 contm apenas o cabealho" 8" 8" Do data is transferred to the card, but data is returned from the card" $em dados so transferidos para o carto, mas os dados so retornados a partir do carto" The body of ) corpo de the 5B26 only contains a non,null Ce field" o 5B26 contm apenas um campo no,Ce nulo" ;" ;" 2ata is transferred to the card, but none is returned from it" )s dados so transferidos para o carto, mas nenhuma retornada a partir dele" The body of the ) corpo do 5B26 includes the Cc and data fields" 5B26 inclui o C4 e campos de dados" J" J" 2ata is transferred to the card and is also returned from the card as a result of the )s dados so transferidos para o carto e tambm retornado a partir do carto como um resultado da command" comando" The body of the 5B26 includes the Cc, data and Ce fields" ) corpo do 5B26 inclui o C4, dados e campos de Ce" 3igure ;I The response 5B26 structure" 3igura ;I 5 resposta da estrutura 5B26"

The response 5B26 consists of a body and a trailer, considerably simpler than that of a 5 resposta 5B26 consiste de um corpo e um reboque consideravelmente mais simples do que a de um command 5B26" comando 5B26" The body is either null or it includes a data field LWX this depends on the ) corpo nulo ou que inclui um campo de dados L W Yisso depende do specific command and its success or failure by the 5B26 processor" comando espec9fico e seu sucesso ou fracasso pelo processador de 5B26" %f the 5B26 $e o 5B26 contains a data field its length is determined by the Ce field in the corresponding contm um campo de dados seu tamanho determinado pelo campo Ce nos correspondentes command 5B26" comando 5B26" Page 10 Page 10 The trailer consists of up to t*o fields of status information called $0> and $08" ) reboque constitu9do por at dois campos de informa7es de status chamado $0> e $08" These Estes fields return a status code in *hich one byte is used to specify an error category and the campos de retorno um c digo de status em que um byte usado para especificar uma categoria de erro e os other is used to specify a command,specific status or error indication" outra usada para especificar um comando estatuto espec9fico ou indicao de erro" The error codes follo* the %$) <=>? numbering scheme in *hich one byte is used to )s c digos de erro siga as %$) <=>? esquema de numerao em que um byte usado para determine error category and the other sho*s the specific error" determinar a categoria de erro eo outro mostra o erro espec9fico" R0TUR+ COD0 C1di2o de retorno B+)4E$$ 4)&BCETE2 Brocesso conclu9do B+)4E$$ %DTE++6BTE2 Brocesso interrompido Dormal Dormal 0arning 5viso Execution Error 4hecking Error Erro de execuo de Merificao de Erro ?>OO or P/// ?>OO ou P/// ?8OO ?8OO ?;OO ?;OO ?JOO ?HOO ?Jxx ?Hxx ?<OO to ?3OO ?<xx para ?3OO Table ?I %$) <=>? Error +eturn 4odes Tabela ?I %$) <=>? retornar c digos de erro Castly, in the 52B6 the 4C5 byte has t*o additional note*orthy featuresI Bor Kltimo, na 52B6 o byte 4C5 tem duas caracter9sticas adicionais notveisI The t*o lo* order bits can indicate a logical communication channel bet*een the )s dois bits de baixa ordem pode indicar um canal de comunicao l gica entre os card 5B26 processor and the reader application" 5B26 processador do carto e da aplicao do leitor" The next t*o high order bits can indicate that secure messaging is being used )s pr ximos dois bits de alta ordem pode indicar que o seguro de mensagens est sendo usado bet*een the reader application and the card 5B26" entre a aplicao do leitor e do carto de 5B26"

The goal of this paper *as to outline the general communication protocols that the mobile ) ob#etivo deste trabalho foi descrever os protocolos de comunicao em geral que o m vel phone $%& card,*hich inherits these from smart cards,uses to communicate *ith card telefone carto $%& que herda estes a partir de cart7es inteligentes usa para se comunicar com carto reader or the mobile equipment" leitor ou o equipamento m vel" The TB26 protocols T./ and T.> *ere discussed as )s protocolos TB26 T . / e T . >, foram discutidas as *ell as the 5B26 structure" bem como a estrutura 5B26" The examiner is encouraged to examine the cited *orks ) examinador incentivado a examinar os trabalhos citados further for more in depth information regarding $%& card protocols and commands" adicional para obter informao mais aprofundada sobre os protocolos do carto $%& e comandos" CITATIO+S CITA340S >" >" $hillington Dicole, 0aker Travers, 'he %esign of a Smart Card Interface , $hillington Dicole, 0aker Travers, o Pro(eto de um Smart Card Interface# httpINN***"cs"uct"ac"!aN+esearchN2D5N$)4$Npro#ectpage"html httpINN***"cs"uct"ac"!aN+esearchN2D5N$)4$Npro#ectpage"html 8" 8" @uthery $cott A", Zurgensen Timothy &", Smart Cards) 'he %e*elo ers 'oolkit , @uthery A" $cott, Timothy &" Zurgensen, Smart Cards) 'he %e*elo ers 'oolkit# Brentice [all 8//8, <=,>>; Brentice [all 8//8, <=,>>;

Você também pode gostar