Smart Card Program Data Segmentation and Authentication
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing APDU protocol for communicating program data between a host computer and a smart card is inefficient, requiring significant memory and time for processing large data structures, and lacks secure mechanisms for detecting tampering.
Innovation Solution
The method involves disassembling program files into logical data units, partitioning them into protocol data units, and computing a fingerprint over the payload to ensure secure and efficient communication, using authentication codes and fingerprints to verify data integrity.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If program data is communicated using the existing APDU protocol between host computer and smart card, then data can be transmitted, but memory requirements and processing time increase significantly
Solution Approach 1:
The patent segments program data into multiple APDU messages with structured headers and bodies. Each APDU contains specific fields (CLA, INS, P1, P2, Lc, Data, Le) that enable efficient processing. The segmentation allows the smart card to process data in manageable chunks rather than requiring all data to be loaded into memory simultaneously, thus reducing memory requirements while maintaining communication productivity.
2Productivity
If program data is communicated using the existing APDU protocol between host computer and smart card, then data can be transmitted, but processing time increases significantly
Solution Approach 1:
The patent implements preliminary action by including verification data and authentication codes in the APDU structure before data transmission. The host computer prepares authentication codes (such as HMACs) and includes them in the APDU messages, allowing the smart card to verify data integrity immediately upon receipt without requiring separate verification steps. This preliminary preparation of authentication mechanisms reduces overall processing time by eliminating post-transmission verification delays.
3Reliability
If existing APDU protocol is used for program data communication, then data transmission is possible, but secure mechanisms for detecting tampering are lacking
Solution Approach 1:
The patent introduces authentication codes and verification data as intermediary elements between the host computer and smart card. These intermediaries (HMACs, verification fields) mediate the trust relationship by providing cryptographic proof of data integrity without requiring complex direct verification mechanisms. The authentication code acts as a mediator that simplifies the verification process while enhancing security, allowing the smart card to detect tampering through straightforward authentication checks rather than complex analysis.
Data Source
AI summary
Communicating program data between a first device and a second device comprises disassembling a first program file comprising program data into at least one logical data unit, partitioning each of the at least one logical data unit into at least one protocol data unit and computing a first fingerprint over the payload portion of the at least one protocol data unit of the at least one logical data unit. The format of the at least one protocol data unit is defined by a communication protocol and includes a payload portion.


