Hi.
Anyone here who is keen in the T=1 protocol? I´ve a
problem understanding the documentation (which is not
the official ISO/IEC-specification) regarding the
"block chaining" mechanism, especially in case of an
error.
As it is very difficult for me to describe the
problem in english in a way that other persons could
understand without having to be able to read my minds, I´ll give an
example:
A new communication sequence starts between terminal
and card. Terminal wants to send a command with an APDU
larger than the ifsc, so block chaining is used for
this. Terminal sends the first i-block, send sequence
counter is 0, so N(S) in the PCB of the i-block is
0, too.
The card tells the terminal, that the checksum
indicates an error in the received block (it returnes a
r-block with bit 1 set in its PCB), so the Terminal has
to resend the first block.
First question: is bit 5 of r-block´s PCB set
(indicating the sequence counter of the next expected
block) or not (indicating the number of the last block
that was by the terminal)?
Second question: does the terminal increase its send
sequence counter while resending the last block or not?
The next problem concerns the answers to some s-blocks.
For example, the card requests a change of the ifsc and
tells the new size in the information field (1 byte).
What structure must the answer to this request have?
Is it ok, if the terminal just returns a s-block with
the "answer to ifsc request" bits set and without
repeating the new size of the ifsc? And what about
the answer to wtx-requests?
Maybe anyone could give me some hints? Thanks a lot in
advance.
Bye, Mike
***************************************************************
Linux Smart Card Developers - M.U.S.C.L.E.
(Movement for the Use of Smart Cards in a Linux Environment)
http://www.linuxnet.com/smartcard/index.html
***************************************************************