IP Library Granted Patent US 10,175,963
Granted Patent B2
US 10,175,963 · App. 15/303,364 · Granted Jan 8, 2019

Method for executing a code sequence on a security module

Inventors: Deepen Mantri (München, DE); Jörn Treger (Rosenheim, DE); Christian Dönges (Freising, DE)
Assignee: GIESECKE+DEVRIENT MOBILE SECURITY GMBH
G06F8/443G06F8/4434G06F8/65G06F9/45508
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,175,963
App. No.
15/303,364
Granted
Jan 8, 2019
Kind
B2
Abstract

A method is provided for executing a code sequence on a security module. The code sequence comprises codes to be replaced and codes to be interpreted. A temporary replacement takes place of a respective code to be replaced by a partial code sequence that comprises at least one code having an interpretable code value. The replacement taking place is dependent on the code value of the code to be replaced. An interpretation of the codes to be interpreted in the code sequence and in the partial code sequence takes place with the aid of interpretation information for code values. During the replacement step, the partial code sequence for the code value of the code to be replaced is additionally produced in dependence on a piece of selection information.

Claims (50)

1. A method for executing a code sequence on a security module, the code sequence comprising codes to be replaced and codes to be interpreted, having the following steps:

a) temporarily replacing a respective code to be replaced by a partial code sequence that comprises at least one code having an interpretable code value, the replacement taking place in dependence on the code value of the code to be replaced, and

b) interpreting the codes to be interpreted in the code sequence and in the partial code sequence with the aid of interpretation information for code values;

wherein in the replacement step, the partial code sequence for the code value of the code to be replaced is additionally produced in dependence on a piece of selection information,

wherein, for the same code value, different partial code sequences are producible in dependence on the piece of selection information,

wherein the piece of selection information is associated with the code sequence and is dependent on:

which code type the code sequence belongs to; and/or

which memory location in the security module the code sequence is stored at and/or

which application and/or which packet and/or which method the code sequence belongs to; and/or

which code publisher the code sequence originates from; and/or

which security level the code sequence is associated with.

2. The method according to claim 1 , wherein the piece of selection information selects one of multiple replacement rules for codes to be replaced.

3. The method according to claim 1 , wherein the code sequence comprises parameters and/or the piece of selection information.

4. The method according to claim 3 , wherein the piece of selection information comprises a piece of position selection information that indicates at which position in the partial code sequence a respective parameter of the code sequence is to be inserted.

5. The method according to claim 4 , wherein the piece of position selection information is included in the replacement rule or the interpretation information.

6. The method according to claim 1 , wherein codes to be interpreted comprise code values that are specified in a code specification, and codes to be replaced comprise code values unused in the code specification.

7. The method according to claim 1 , wherein codes to be interpreted in the code sequence and/or codes in the partial code sequence comprise proprietary code values that are not used in a code specification and that are interpreted by means of the interpretation information.

8. An apparatus having a code sequence stored thereon, the code sequence comprising codes to be replaced and codes to be interpreted, the security module comprising:

one or more processors; and

one or more non-transitory computer-readable media having thereon computer-executable instructions that are structured such that, when executed by the one or more processors, cause the security module to:

a) temporarily replacing a respective code to be replaced by a partial code sequence that comprises at least one code having an interpretable code value, the replacement taking place in dependence on the code value of the code to be replaced, and

b) interpreting the codes to be interpreted in the code sequence and in the partial code sequence with the aid of interpretation information for code values;

wherein in the replacement step, the partial code sequence for the code value of the code to be replaced is additionally produced in dependence on a piece of selection information,

wherein, for the same code value, different partial code sequences are producible in dependence on the piece of selection information,

wherein the piece of selection information is associated with the code sequence and is dependent on:

which code type the code sequence belongs to; and/or

which memory location in the security module the code sequence is stored at and/or

which application and/or which packet and/or which method the code sequence belongs to; and/or

which code publisher the code sequence originates from; and/or

which security level the code sequence is associated with.

9. A method for producing a code sequence on a security module, the code sequence comprising codes to be replaced and codes to be interpreted, and the code sequence being generated from partial code sequences having, in each case, at least one code having an interpretable code value, and from the codes to be interpreted, and being stored on the security module,

wherein a piece of selection information is defined such that, in executing the code sequence on the security module, the codes to be replaced are temporarily replaced by respective partial code sequences in dependence on the piece of selection information,

wherein, for the same code value, different partial code sequences are producible in dependence on the piece of selection information,

wherein the piece of selection information is associated with the code sequence and is dependent on:

which code type the code sequence belongs to; and/or

which memory location in the security module the code sequence is stored at and/or

which application and/or which packet and/or which method the code sequence belongs to; and/or

which code publisher the code sequence originates from; and/or

which security level the code sequence is associated with.

10. A device for producing a code sequence on a security module, the code sequence comprising codes to be replaced and codes to be interpreted, the device being configured for carrying out a method in which the code sequence is generated from partial code sequences having, in each case, at least one code having an interpretable code value, and from the codes to be interpreted, and is stored on the security module, the device comprising:

one or more processors; and

one or more non-transitory computer-readable media having thereon computer-executable instructions that are structured such that, when executed by the one or more processors, cause the device to:

define a piece of selection information such that, in executing the code sequence on the security module, the codes to be replaced are temporarily replaced by respective partial code sequences in dependence on the piece of selection information,

wherein, for the same code value, different partial code sequences are producible in dependence on the piece of selection information,

wherein the piece of selection information is associated with the code sequence and is dependent on:

which code type the code sequence belongs to; and/or

which memory location in the security module the code sequence is stored at and/or

which application and/or which packet and/or which method the code sequence belongs to; and/or

which code publisher the code sequence originates from; and/or

which security level the code sequence is associated with.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 18, 2017
From: GIESECKE & DEVRIENT GMBH
To: GIESECKE+DEVRIENT MOBILE SECURITY GMBH
Reel/Frame 043230/0485 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 11, 2016
From: MANTRI, DEEPEN; TREGER, JÖRN; DÖNGES, CHRISTIAN
To: GIESECKE & DEVRIENT GMBH
Reel/Frame 039986/0518 →
Priority Claims (1)
DE 10 2014 005 605 · Apr 15, 2014 · national
Continuity (1)
Related Publication 20170031665A1 · Feb 2, 2017