Disrupting password attack using compression
AssigneeCitrix Systems, Inc.
InventorRichard Hayton
Life of this patent
Estimating the term…
Abstract
Methods and systems for disrupting password attacks using compression are described. A user password may be stored on a mobile computing device. The password may be compressed, for example, using a Huffman compression algorithm, and may be subsequently encrypted using a short secret as a key. The user password may be stored as the compressed and encrypted key. The compressed and encrypted password may be stored such that a brute force password attack, for example, using every possible short secret, would reveal too may possible matches to allow an attacker to select the real password.
Claims14
A method comprising:
- receiving, at a mobile computing device, a short secret and a long password;
- compressing the long password with an entropy encoding algorithm, where the entropy encoding algorithm comprises a compression algorithm such that a different table is used for each character in the long password and each table recites a probability that specific characters appear in passwords;
- encrypting the compressed long password with the short secret as a key;
- and
- storing the compressed and encrypted long password.
A computing device comprising:
- a processor, and
- memory storing instructions that, when executed by the processor, configure the computing device to perform:
- receiving, at the computing device, a short secret and a long password;
- compressing the long password using an entropy encoding algorithm, where the entropy encoding algorithm comprises a compression algorithm such that a different table is used for each character in the long password and each table recites a probability that specific characters appear in passwords;
- encrypting the compressed long password with the short secret as a key;
- and
- storing the compressed and encrypted long password in the memory.
One or more non-transitory computer-readable storage media storing computer-executable instructions that, when executed by one or more processors of a data processing system, cause the system to perform:
- receiving a short secret and a long password;
- compressing the long password with an entropy encoding algorithm, wherein the entropy encoding algorithm comprises a compression algorithm such that a different table is used for each character in the long password and each table recites a probability that specific characters appear in passwords;
- encrypting the compressed long password with the short secret as a key;
- and
- storing the compressed and encrypted long password.
Dependencies are inferred from the claim text.