← Back to Patent Explorer
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
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

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)

US5623548A Cited
US5838796A Cited
US6061449A Cited

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

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag