Format preserving encryption with padding
AssigneeMicro Focus LLC
InventorsRichard Minner, Terence Spies
Life of this patent
Estimating the term…
Abstract
Techniques for using padding in format preserving encryption are provided. In one aspect, it may be determined if padding of a plaintext undergoing format preserving encryption is needed. A pseudo random padding length may be calculated when it is determined that padding is needed. The calculated length of padding may be added to the plaintext when it is determined that padding is needed. The plaintext and added padding may be encrypted using format preserving encryption to create a cipher text.
Claims20
A method comprising:
- determining if padding of a plaintext undergoing format preserving encryption is needed in response to a length of the plaintext being less than a threshold length;
- in response to determining that the padding is needed, calculating a pseudo-random padding length based on a nonzero minimum padding length and a maximum allowable length of padding and adding the padding having the pseudo-random padding length to the plaintext to provide a padded plaintext, wherein the adding comprises:
- including in the padding, a first character having an invalid data type for the padded plaintext and corresponding to a beginning of the padding and a second character having an invalid data type for the padded plaintext and corresponding to an end of the padding,
- wherein the first and second characters are provided for each padded plaintext;
- and
- in response to determining that the padding is needed, encrypting the padded plaintext using format preserving encryption to create cipher text.
A non-transitory processor readable medium containing a set of instructions thereon that, when executed by a processor, cause the processor to:
- determine if padding of a plaintext undergoing format preserving encryption is needed in response to a length of the plaintext being less than a threshold length;
- in response to determining that the padding is needed, calculate a pseudo-random padding length based on a nonzero minimum padding length and a maximum allowable length of padding and add the padding having the pseudo-random padding length to the plaintext to provide a padded plaintext, wherein adding the padding comprises:
- include in the padding a first character having an invalid data type for the padded plaintext and corresponding to a beginning of the padding and a second character having an invalid data type for the padded plaintext and corresponding to an end of the padding, wherein the first and second characters are provided for each padded plaintext;
- and in response to determining that the padding is needed, encrypt the padded plaintext using format preserving encryption to create cipher text.
A system comprising:
- a processor;
- and a memory to store instructions that, when executed by the processor, cause the processor to:
- determine if padding of a plaintext undergoing format preserving encryption is needed in response to a length of the plaintext being less than a threshold length;
- in response to determining that the padding is needed, calculate a pseudo-random padding length based on a nonzero minimum padding length and a maximum allowable length of padding and add the padding having the pseudo-random padding length to the plaintext to provide a padded plaintext, wherein adding the padding comprises:
- include in the padding a first character having an invalid data type for the padded plaintext and corresponding to a beginning of the padding and a second character having an invalid data type for the padded plaintext and corresponding to an end of the padding, wherein the first and second characters are provided for each padded plaintext;
- and in response to determining that the padding is needed, encrypt the padded plaintext using format preserving encryption to create cipher text.
Dependencies are inferred from the claim text.