Posted by zeitcontrol
(22.214.171.124) on June 15, 2004 at 09:48:57:
In Reply to: Reply chaining. posted by rishel on June 14, 2004 at 12:14:34:
This is normal behaviour for T=1 protocol as used by Enhanced BasicCard ZC3.9. This is described in detail in international standard ISO7816-3.
Some overview regarding this:
- Maximum block size is defined by IFS (Information Field Size).
- IFSC (Information Field Size for the Card) specifies the maximum allowed length of information field within T=1 blocks send to card.
- Typically a smart card signals the IFSC value within ATR TAi (i>2) byte. For Enhanced BasicCards this is done by use of TA3=20h=32.
- If no IFSC is indicated by a T=1 smart card within ATR, then the default value 32 does apply.
- IFSD (Information Field Size for the interface Device) specifies the maximum allowed length of information field within T=1 blocks send to the card reader (interface) device (from card).
- The initial value of IFSD is 32
- The card reader may ask the card to use a different IFSD by sending a special T=1 protocol block (S-Block, IFS request). The card may accept this or may not accept this.
In general you have to live with this block sizes and have to handle them in both directions. Chaining within T=1 is too complecated to describe here in detail. So please see ISO7816-3 chapter 9 "Protocol type T=1..." for detail. Or if you have no access to ISO7816-3 take a look at EMV (http://www.emvco.com/) Integrated Circuit Card Specification V3.1.1 chapter 126.96.36.199 chaining.
ZeitControl cardsystems GmbH