Smart Card Reader Self Testing Program
Jul 20, 2011 - I want to implement BIST in Smart cards. Please have a look on this Please tell if any.
Test Results All test cases passed. Some tests cases passed.
The Card Monitor Test checks for correct detection of the smart card insertion state, and the correct handling of operations interrupted by an unexpected removal of a smart card. The tests verify that IOCTL_SMARTCARD_IS_PRESENT and IOCTL_SMARTCARD_IS_ABSENT produce valid results. • Test detects any empty readers by using IOCTL_SMARTCARD_IS_PRESENT.
• Test detects an inserted smart card by using IOCTL_SMARTCARD_IS_PRESENT. • Test detects the removal of an inserted smart card by using IOCTL_SMARTCARD_IS_ABSENT. • Test detects any empty readers by using IOCTL_SMARTCARD_IS_ABSENT. • Tests the correct handling of a randomly timed card insertion and removal event over 15 seconds. The test ends after a maximum of ten insertion and removal cycles. The Card Reader Interface Test checks that the property and state information in the card reader driver are handled correctly.
• Test verifies whether the device name reported by the driver is Windows Embedded CE-compliant. • Test verifies whether the driver correctly handles attribute read requests with NULL return buffer. • Test reads the smart card reader attributes when no smart card is inserted in the card reader: • SCARD_ATTR_VENDOR_Name Nonzero length string. Pes 2008 Compressed Rar 304mb there. • SCARD_ATTR_VENDOR_IFD_TYPE Nonzero length string. • SCARD_ATTR_DEVICE_UNIT Value. The Resource Manger Simulation Test verifies whether the state-change operations normally commanded by the Smart Card Resource Manager complete successfully.
• Test verifies whether IOCTL_SMARTCARD_GET_STATE succeeds without a card inserted. • Test verifies whether the returned state is SCARD_ABSENT. • Test verifies whether a call to IOCTL_SMARTCARD_IS_PRESENT is canceled correctly by using IOCTL_SMARTCARD_CANCEL_BLOCKING. • Test verifies whether IOCTL_SMARTCARD_GET_STATE succeeds without a card inserted.
• Test operator inserts a smart card. • Test verifies whether IOCTL_SMARTCARD_GET_STATE succeeds with smart card inserted. • Test verifies whether the returned state is valid (>SCARD_ABSENT). • Test verifies whether a call to IOCTL_SMARTCARD_IS_ABSENT is canceled correctly by using IOCTL_SMARTCARD_CANCEL_BLOCKING. • Test performs a cold-reset of the smart card. • Test verifies whether the smart card state is SCARD_NEGOTIABLE.
• Test sets the Smart Card Protocol to T0 or T1. • Test verifies whether the smart card state is SCARD_SPECIFIC. • Test verifies whether the IOCTL_SMARTCARD_POWER to turn off the smart card succeeds. • Test operator removes the smart card. • Test verifies whether the return value from IOCTL_SMARTCARD_IS_ABSENT is correct.
• Test verifies whether IOCTL_SMARTCARD_GET_STATE succeeds without a card inserted. • Test verifies whether the card state is SCARD_ABSENT.
Answer to Reset (ATR) Values 3B EF 00 00 81 31 20 49 00 5C 50 43 54 10 27 F8 D2 76 00 00 38 33 00 4D • Test tries to read when the buffer is too small. • Test checks the waiting-time extension request, and routes the request figure to file 001. Then it reads it back and verifies it. • Test verifies block-chaining resynchronization on file 0002 and verifies whether the card accepts first block. The card then repeatedly requests retransmission of block two, and the host re-synchronizes. Expect ERROR_IO_DEVICE. • Test verifies block-chaining resynchronization on file 0002.