Card Interface Module for Dynamic Memory Card Driver Recognition
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing method of supporting multiple smart card vendors with common middleware applications requires writing separate client applications and drivers for each accessing device, leading to time-consuming and costly software updates when new card vendors are introduced, as each card needs to be hardcoded with unique historical bytes in its Answer To Reset (ATR).
Innovation Solution
A method and system for determining support for a memory card by transmitting specific test commands to the card, allowing the accessing device to identify if the card type is recognized by any of the stored card drivers, even if the initial ATR recognition is not supported, through a card interface module that facilitates communication and determines support based on responses to test commands.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If separate client applications and drivers are written for each smart card vendor, then each card type can be supported with hardcoded ATR recognition, but software updates become time-consuming and costly when new card vendors are introduced
Solution Approach 1:
The patent introduces a card type identification module as an intermediary between the card reader and existing card drivers. This module acts as a mediator that intercepts cards unrecognized by standard drivers, identifies their types through testing, and routes them to appropriate handlers, thus eliminating the need for hardcoded ATR support in every driver while maintaining reliable card recognition.
Solution Approach 2:
The card type identification module serves multiple functions: it identifies unknown card types, determines supported card types through testing, and routes cards to appropriate drivers. This universal module handles diverse card vendors without requiring separate hardcoded support for each, reducing software update requirements while maintaining broad compatibility.
2Adaptability or versatility
If hardcoded ATR support is implemented for each card vendor, then client software can recognize and support specific card types, but the system lacks flexibility when new card vendors are introduced
Solution Approach 1:
The patent segments the card recognition system into distinct functional components: a card type identification module that handles unknown cards, multiple specialized card drivers for specific vendors, and a routing mechanism. This segmentation allows the system to maintain a core universal identifier while adding vendor-specific support through modular drivers, reducing overall system complexity.
Solution Approach 2:
The system dynamically adapts to new card vendors through the card type identification module, which can identify and route new card types without requiring static hardcoded support in all drivers. The system's behavior changes based on the encountered card type, allowing flexible adaptation while maintaining a structured architecture.
3Measurement precision
If the accessing device asks each card driver if it recognizes the ATR, then card support can be determined, but the process becomes inefficient when no drivers recognize the card initially
Solution Approach 1:
The card type identification module performs preliminary identification and routing before cards are passed to individual drivers. By pre-processing cards to determine their types and routing them to appropriate drivers upfront, the system avoids the inefficiency of having every driver check every unrecognized card, thus maintaining accurate identification while improving recognition speed.
Solution Approach 2:
The system implements a feedback mechanism where the card type identification module tests cards against supported types and uses the results to determine routing. This feedback loop allows the system to efficiently identify card types through targeted testing rather than exhaustive driver-by-driver checking, balancing accuracy with productivity.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Embodiments related to methods and systems for determining support for a memory card, where the memory card is accessible to a card reader and the card reader is in communication with an accessing device. One embodiment relates to a method comprising: a) transmitting a session request from the accessing device to the memory card via the card reader; b) receiving a first response to the session request from the memory card, the first response comprising first data related to a type of the memory card; c) determining at the accessing device that the memory card type is not recognized by any of a plurality of card drivers on the accessing device, based on the first data; d) for a selected one of the plurality of card drivers, transmitting a test command to the memory card, the test command being specific to a selected card type; e) receiving at the selected card driver a second response to the test command; and f) determining from the second response whether the selected card type corresponds to the memory card type and is supported by the selected card driver.