US6725374B1
Expired / Lapsed
US
⏱️ 0.0 years remaining
Method for the execution of an encryption program for the encryption of data in a microprocessor-based portable data carrier
Assignee: Idemia Germany GmbH
•
Filing: 1999-08-20
•
Granted: 2004-04-20
•
Expires: 2019-08-20
Abstract
Abstract A method for the execution of an encryption program for the encryption of data in a microprocessor-based portable data carrier is described, with the encryption program comprising several parallelisationable subprograms. According to the invention the serial order of execution of at least two subprograms is randomly permuted in the execution of the encryption program under the consideration of at least one random number.
Inventors
- 👤 Michael Jahnich
- 👤 Guido Wueppenhorst
- 👤 Werner Doppmeler
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-05 01:01
CPC Classifications
H; H04; H04L; H04L9/00; H04L9/06; H04L9/0618; H04L9/0625; G; G06; G06F; G06F21/00; G06F21/50; G06F21/51; G06F21/52; G06F21/54; G06F21/70; G06F21/71; G06F21/72; G06F21/75; G06F21/755; G06F21/77; G06Q; G06Q20/00; G06Q20/30; G06Q20/34; G06Q20/341; G07; G07F; G07F7/00; G07F7/08; G07F7/0806; G07F7/0813; G07F7/082; G07F7/10; G07F7/1008; H04L9/002; H04L9/003; G06F2207/00; G06F2207/72; G06F2207/7219; G06F2211/00; G06F2211/007; G06F2221/00; G06F2221/21; G06F2221/2153; H04L2209/00; H04L2209/08; H04L2209/80; H04L2209/805
Claims Analysis
Total Claims: 23
Claim 1
Independent Claim
71 words
A method for encryption or decryption of data in a portable data carrier comprising the steps of: disposing said portable data carrier for data communication; randomly permuting a serial order of execution of at least two of a plurality of parallelisationable subprograms of an encryption or decryption program; and executing said encryption program with parallelisationable subprograms in a serial order controlled, at least in part, by said step of randomly permuting.
Claim 2
Independent Claim
71 words
A method for encryption or decryption of data in a portable data carrier comprising the steps of: disposing said portable data carrier for data communication; randomly permuting a serial order of execution of at least two of a plurality of parallelisationable subprograms of an encryption or decryption program; and executing said encryption program with parallelisationable subprograms in a serial order controlled, at least in part, by said step of randomly permuting.
Claim 3
Dependent Claim
35 words
The method according to claim 1 , wherein said randomly permuting step comprises generating at least one random number in a random number generator of the portable data carrier to randomly permute said serial order.
Claim 4
Dependent Claim
23 words
The method according to claim 2 , wherein said generating step comprises operating a random number generator program in the portable data carrier.
Claim 5
Dependent Claim
28 words
The method according to claim 1 , wherein said randomly permuting step comprises transmitting a random number to the portable data carrier to randomly permute said serial order.
Claim 6
Dependent Claim
47 words
The method according to claim 1 , wherein said step of randomly permuting comprises randomly permuting a serial order of execution of at least two of a plurality of parallelisationable subprograms in at least two of a plurality of successive program sequence levels within said encryption program.
Claim 7
Dependent Claim
27 words
The method according to claim 5 , wherein the serial order of a program sequence level is randomly permuted immediately prior to entering said program sequence level.
Claim 8
Dependent Claim
106 words
The method according to claim 5 , wherein said step of randomly permuting, for at least two of said plurality of successive program sequence levels, comprises the steps of: storing said serial order of execution in a table provided in said portable data carrier; generating a first random number and a second random number, said first and second random numbers corresponding to positions of said parallelisationable subprograms in said serial order; and permuting said positions of said parallelisationable subprograms, a position of a first subprogram corresponding to said first random number being exchanged with a position of a second subprogram corresponding to said second random number.
Claim 9
Dependent Claim
23 words
The method according to claim 7 , wherein said step of randomly permuting is executed at least twice during performance of said method.
Claim 10
Dependent Claim
68 words
The method according to claim 5 , further comprising the step of: prior to said step of randomly permuting, supplementing at least one of said plurality of said successive program levels of said encryption program with at least one dummy subprogram, said dummy program not influencing an encryption or decryption result, wherein said dummy subprogram is included in said serial order subjected to said step of randomly permuting.
Claim 11
Dependent Claim
21 words
The method according to claim 9 , wherein execution of at least one dummy subprogram is omitted from said encryption program.
Claim 12
Dependent Claim
42 words
The method according to claim 9 , wherein said step of supplementing supplements said program sequence levels with dummy subprograms in a manner that results in at least two of said plurality of program sequence levels having an equal number of subprograms.
Claim 13
Dependent Claim
47 words
The method according to claim 1 , wherein said step of randomly permuting comprises randomly permuting a serial order of execution of at least two of a plurality of parallelisationable subprograms in at least one of a plurality of successive program sequence levels within said encryption program.
Claim 14
Dependent Claim
27 words
The method according to claim 12 , wherein the serial order of a program sequence level is randomly permuted immediately prior to entering said program sequence level.
Claim 15
Dependent Claim
94 words
The method according to claim 1 , wherein said step of randomly permuting comprises the steps of: storing said serial order of execution in a table provided in said portable data carrier; generating a first random number and a second random number, said first and second random numbers corresponding to positions of said parallelisationable subprograms in said serial order; and permuting said positions of said parallelisationable subprograms, a position of a first subprogram corresponding to said first random number being exchanged with a position of a second subprogram corresponding to said second random number.
Claim 16
Dependent Claim
23 words
The method according to claim 14 , wherein said step of randomly permuting is executed at least twice during performance of said method.
Claim 17
Dependent Claim
56 words
The method according to claim 1 , further comprising the step of: prior to said step of randomly permuting, supplementing said encryption program with at least one dummy subprogram, said dummy program not influencing an encryption or decryption result, wherein said dummy subprogram is included in said serial order subjected to said step of randomly permuting.
Claim 18
Dependent Claim
21 words
The method according to claim 16 , wherein execution of at least one dummy subprogram is omitted from said encryption program.
Claim 19
Dependent Claim
53 words
A portable data carrier, comprising: a card; and a microprocessor-usable storage medium having a microprocessor-readable program code embodied therein for causing encryption or decryption or data, including program code for randomly permuting a serial order of execution of at least two of a plurality of parallelisationable subprograms of said encryption or decryption program.
Claim 20
Dependent Claim
53 words
A portable data carrier, comprising: a card; and a microprocessor-usable storage medium having a microprocessor-readable program code embodied therein for causing encryption or decryption or data, including program code for randomly permuting a serial order of execution of at least two of a plurality of parallelisationable subprograms of said encryption or decryption program.
Claim 21
Dependent Claim
35 words
The portable data carrier according to claim 18 , wherein said program code generates at least one random number in a random number generator of the portable data carrier to randomly permute said serial order.
Claim 22
Dependent Claim
48 words
The portable data carrier according to claim 18 , wherein said program code randomly permutes a serial order of execution of at least two of a plurality of parallelisationable subprograms in at least one of a plurality of successive program sequence levels within said encryption or decryption program.
Claim 23
Dependent Claim
97 words
The portable d data carrier according to claim 18 , wherein said program code is a program code for: storing a serial order of execution in a table provided in said portable data carrier; generating a first random number and a second random number, said first and second random numbers corresponding to positions of said parallelisationable subprograms in said serial order; and permuting said p positions of said parallelisationable subprograms, a position of a first subprogram corresponding to said first random number being exchanged with a position of a second subprogram corresponding to said second random number.
References Cited (Backward Citations)
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2007-04-20 | 2007-10-20 | 2008-04-20 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2011-04-20 | 2011-10-20 | 2012-04-20 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2015-04-20 | 2015-10-20 | 2016-04-20 | $7700.00 | Window Closed / Lapsed |