IP Library Granted Patent US 10,235,139
Granted Patent B2
US 10,235,139 · App. 15/567,238 · Granted Mar 19, 2019

Method for modifying the execution of a platform-independent method of an integrated circuit card

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,235,139
App. No.
15/567,238
Granted
Mar 19, 2019
Kind
B2
Abstract

Modification of the execution of a platform-independent first method of an application within an integrated circuit card having a first non-volatile memory, a second rewritable non-volatile memory, a virtual machine and a processor unit, wherein said platform-independent first method includes a first operations sequence and a second operations sequence. Checking if there is a call within said platform-independent first method to a specific second method, having one parameter; —if there is such a call and if said specific second method is not platform-independent, checking if there is an alternate function associated to said platform-independent first method stored in a memory of said integrated circuit card; if there is an associated alternate function: executing said alternate function to replace said first operations sequence; executing the second operations sequence of said platform-independent first method; otherwise executing by the first operations sequence and the second operations sequence of said platform-independent first method.

Claims (38)

1. A method for modifying the execution of a platform-independent first method of an application within an integrated circuit card, said integrated circuit card comprising a first nonvolatile memory, a second rewritable non-volatile memory, a virtual machine and a processor unit, wherein said platform-independent first method comprises a first operations sequence and a second operations sequence, and wherein said method is carried out by execution of program instructions coupled within a computer configured to implement the method, the execution comprising:

checking by means of said virtual machine if there is a call within said platform-independent first method to a specific second method, wherein said specific second method, stored in a memory of said integrated circuit card, comprises one parameter;

if there is such a call, executing by means of said processor unit or said virtual machine said specific second method; the execution thereof comprising

said processor unit or said virtual machine checking if there is an alternate function associated to said platform-independent first method, said alternate function being stored in a memory of said integrated circuit card; said processor unit or said virtual machine using said parameter to locate the alternate function within said integrated circuit card memory; and

if there is an associated alternate function:

executing by means of said processor unit or by means of said virtual machine said alternate function, said alternate function replacing said first operations sequence; and

upon completion of said alternate function, skipping said first operations sequence and executing by means of said virtual machine the second operations sequence of said platform-independent first method.

2. The method according to claim 1 , wherein if there is no call to said specific second method, said virtual machine executing the first operations sequence and the second operations sequence of said platform-independent first method.

3. The method according to claim 1 , wherein said platform-independent first method comprises at least one argument and wherein said method further comprises:

if there is an associated alternate function, recovering by means of said virtual machine said at least one argument of said platform-independent first method for use and modification by said alternate function.

4. The method according to claim 1 , wherein said platform-independent first method comprises at least one local variable and wherein said method further comprises:

if there is an associated alternate function, recovering by means of said virtual machine said at least one local variable of said platform-independent first method for use and modification by said alternate function.

5. The method according to claim 1 , wherein said alternate function is a platform-independent function or a native function.

6. The method according to claim 1 , wherein said specific second method is a platform-independent method or a native method or is a set of specific instructions of said virtual machine.

7. The method according to claim 6 , wherein said specific second method is comprised in a first package, said platform-independent first method is comprised in a second package, and said alternate function is comprised in a third package, all the three packages being different from each other.

8. The method according to claim 1 , wherein said specific second method returns a Boolean type, and wherein:

upon completion of said alternate function, said specific second method returns a false value;

when there is no alternate function associated to said platform-independent first method corresponding to said parameter, said specific second method returns a true value;

when said specific second method is platform-independent, said specific second method returns a true value.

9. The method according to claim 1 , wherein said second non-volatile memory comprises at least one table, said at least one table comprising an associated reference of said alternate function indicating where said alternate function associated to said platform-independent first method is stored in memory within said integrated circuit card.

10. The method according to claim 1 , wherein said virtual machine is a Java™ virtual machine.

11. The method according to claim 1 , wherein said integrated circuit card is a secure element.

12. The method according to claim 1 , wherein said method further comprises downloading said alternate function in a memory of said integrated circuit card, said download comprising:

a first information to identify said application where the platform-independent first method is defined;

a second information to associate a parameter to a reference corresponding to the alternate function;

a third information comprising the implementation of said alternate function as a replacing operations sequence for said first operations sequence.

13. An integrated circuit card comprising a virtual machine, a processor unit, a first non-volatile memory and a second rewritable non-volatile memory, wherein said integrated circuit card is adapted to modify the execution of a platform-independent first method of an application within said integrated circuit card, said platform-independent first method comprises a first operations sequence and a second operations sequence, and wherein:

said virtual machine is adapted to check if there is a call within said platform-independent first method to a specific second method, said specific second method, stored in a memory of said integrated circuit card, comprises one parameter;

if there is such a call, said processor unit or said virtual machine executes said specific second method;

said processor unit or said virtual machine checking if there is an alternate function associated to said platform-independent first method, said alternate function being stored in a memory of said integrated circuit card; said processor unit or said virtual machine using said parameter to locate the alternate function within said integrated circuit card memory; and

if there is an associated alternate function:

executing by means of said processor unit or by means of said virtual machine said alternate function, said alternate function replacing said first operations sequence; and

upon completion of said alternate function, skipping said first operations sequence and executing by means of said virtual machine the second operations sequence of said platform-independent first method.

14. The integrated circuit card according to claim 13 , wherein if there is no call to said specific second method, said virtual machine executing the first operations sequence and the second operations sequence of said platform-independent first method.

15. The integrated circuit card according to claim 13 , wherein said integrated circuit card comprises:

a first package comprising said second specific method (F 1 );

a second package comprising said platform-independent first method; and

a third package comprising said alternate function, said first, second and third packages being different from each other.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 1, 2023
From: THALES DIS FRANCE SA
To: THALES DIS FRANCE SAS
Reel/Frame 064792/0714 →
CHANGE OF NAME Recorded Aug 25, 2023
From: GEMALTO SA
To: THALES DIS FRANCE SA
Reel/Frame 064716/0634 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 21, 2018
From: CHAFER, SYLVAIN; DURAND, STEPHANE
To: GEMALTO SA
Reel/Frame 045304/0806 →