IP Library Granted Patent US 8,938,067
Granted Patent B2
US 8,938,067 · App. 12/610,221 · Granted Jan 20, 2015

Format preserving encryption methods for data strings with constraints

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 8,938,067
App. No.
12/610,221
Granted
Jan 20, 2015
Kind
B2
Abstract

Format preserving encryption (FPE) cryptographic engines are provided for performing encryption and decryption on strings. A plaintext string may be converted to ciphertext by repeated application of a format preserving encryption cryptographic algorithm. Following each application of the format preserving cryptographic algorithm, the resulting version of the string may be analyzed to determine whether desired string constraints have been satisfied. If the string constraints have not been satisfied, further applications of the format preserving cryptographic algorithm may be performed. If the string constraints have been satisfied, the current version of the string may be used as an output for the cryptographic engine.

Claims (16)

1. A method for performing cryptographic operations using computing equipment, comprising:

with the computing equipment, obtaining a plaintext version of a string of characters that have a given format, wherein the plaintext version of the string includes a first checksum value computed using a given checksum algorithm;

with the computing equipment, applying a format preserving encryption algorithm to the string to produce an encrypted version of the string that complies with the given format, wherein the encrypted version of the string includes a second checksum value;

with the computing equipment, applying the given checksum algorithm to the encrypted version of the string, not including the second checksum value, to produce a third checksum value;

with the computing equipment, determining that the second checksum value is a valid checksum value for the encrypted version of the string by determining that the second checksum value matches the third checksum value;

when the second checksum value is a valid checksum value for the encrypted version of the string, halting further application of the format preserving encryption algorithm with the computing equipment and using the encrypted string as ciphertext corresponding to the plaintext version of the string; and

when the second checksum value is not a valid checksum value for the encrypted version of the string, applying the format preserving encryption algorithm to the encrypted version of the string with the computing equipment at least one additional time to alter the encrypted version of the string until the second checksum value is a valid checksum value for the encrypted version of the string and the encrypted version of the string serves as ciphertext corresponding to the plaintext version of the string.

2. The method defined in claim 1 wherein applying the format preserving encryption operation to the string to produce the encrypted version of the string involves multiple applications of a block cipher to an encoded binary value that represents the plaintext version of the string.

3. A method for performing cryptographic operations using computing equipment, comprising:

with the computing equipment, obtaining a plaintext version of a string of characters that have a given format, wherein the plaintext version of the string includes a first checksum value computed using a given checksum algorithm;

with the computing equipment, applying a format preserving encryption algorithm to the string to produce an encrypted version of the string that complies with the given format, wherein the encrypted version of the string includes a second checksum value;

with the computing equipment, applying the given checksum algorithm to the encrypted version of the string, not including the second checksum value, to produce a third checksum value;

with the computing equipment, determining that the second checksum value is a valid checksum value for the encrypted version of the string by determining that the second checksum value matches the third checksum value;

when the second checksum value is an invalid checksum value for the encrypted version of the string, halting further application of the format preserving encryption algorithm with the computing equipment and using the encrypted string as ciphertext corresponding to the plaintext version of the string; and

when the second checksum value is a valid checksum value for the encrypted version of the string, applying the format preserving encryption algorithm to the encrypted version of the string with the computing equipment at least one additional time to alter the encrypted version of the string until the second checksum value is an invalid checksum value for the encrypted version of the string and the encrypted version of the string serves as ciphertext corresponding to the plaintext version of the string.

4. The method defined in claim 3 wherein applying the format preserving encryption operation to the string to produce the encrypted version of the string involves multiple applications of a block cipher to an encoded binary value that represents the plaintext version of the string.

Assignments (14)
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 063546/0181) Recorded Jun 21, 2024
From: BARCLAYS BANK PLC
To: MICRO FOCUS LLC
Reel/Frame 067807/0076 →
SECURITY INTEREST Recorded Aug 30, 2023
From: MICRO FOCUS LLC
To: THE BANK OF NEW YORK MELLON
Reel/Frame 064760/0862 →
SECURITY INTEREST Recorded May 4, 2023
From: MICRO FOCUS LLC
To: BARCLAYS BANK PLC
Reel/Frame 063546/0181 →
SECURITY INTEREST Recorded May 4, 2023
From: MICRO FOCUS LLC
To: BARCLAYS BANK PLC
Reel/Frame 063546/0190 →
SECURITY INTEREST Recorded May 4, 2023
From: MICRO FOCUS LLC
To: BARCLAYS BANK PLC
Reel/Frame 063546/0230 →
RELEASE OF SECURITY INTEREST REEL/FRAME 044183/0718 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC (F/K/A ENTIT SOFTWARE LLC); BORLAND SOFTWARE CORPORATION; MICRO FOCUS (US), INC.; SERENA SOFTWARE, INC; ATTACHMATE CORPORATION; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.); NETIQ CORPORATION
Reel/Frame 062746/0399 →
RELEASE OF SECURITY INTEREST REEL/FRAME 044183/0577 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC (F/K/A ENTIT SOFTWARE LLC)
Reel/Frame 063560/0001 →
CHANGE OF NAME Recorded Dec 17, 2018
From: VOLTAGE SECURITY, INC.
To: VOLTAGE SECURITY, LLC
Reel/Frame 051198/0611 →
MERGER AND CHANGE OF NAME Recorded Dec 17, 2018
From: VOLTAGE SECURITY, LLC; ENTIT SOFTWARE LLC
To: ENTIT SOFTWARE LLC
Reel/Frame 051199/0074 →
SECURITY INTEREST Recorded Oct 11, 2017
From: ENTIT SOFTWARE LLC; ARCSIGHT, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044183/0577 →
SECURITY INTEREST Recorded Oct 11, 2017
From: ATTACHMATE CORPORATION; BORLAND SOFTWARE CORPORATION; NETIQ CORPORATION; MICRO FOCUS (US), INC.; MICRO FOCUS SOFTWARE, INC.; ENTIT SOFTWARE LLC; ARCSIGHT, LLC; SERENA SOFTWARE, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044183/0718 →
RELEASE OF SECURITY INTEREST Recorded Feb 27, 2015
From: VENTURE LENDING & LEASING VI, INC.; VENTURE LENDING & LEASING VII, INC.
To: VOLTAGE SECURITY, INC.
Reel/Frame 035110/0726 →
SECURITY AGREEMENT Recorded Feb 7, 2014
From: VOLTAGE SECURITY, INC.
To: VENTURE LENDING & LEASING VI, INC.; VENTURE LENDING & LEASING VII, INC.
Reel/Frame 032170/0273 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 30, 2009
From: MARTIN, LUTHER W.; SPIES, TERENCE; PAUKER, MATTHEW J.
To: VOLTAGE SECURITY, INC.
Reel/Frame 023452/0762 →