Cryptography using varying sized symbol sets
AssigneeMicrosoft Technology Licensing, LLC
InventorsAmer Aref Hassan, Whitney J Giaimo, Roy D. Kuntz
Life of this patent
Estimating the term…
Abstract
Disclosed are systems, methods, and non-transitory computer-readable media for cryptography using different sized symbol sets. To protect against a brute force or other similar type of attack, multiple symbol sets having different sizes can be used for encrypting/decrypting data. For example, different portions of the data (e.g., data blocks representing multiple symbols, set of bits representing a single symbol) may be encrypted/decrypted using different symbol sets that include different numbers of unique symbols. Using different sized symbol sets adds additional complexity to the encryption process, thereby greatly increasing the difficulty in decrypting the encrypted data with a brute force attack.
Claims20
A method for cryptography, comprising:
- accessing, by a transmitting device, first and second symbol sets corresponding to a cryptographic key, the first symbol set having a first number of unique symbols, and the second symbol set, different than the first symbol set, having a second number of unique symbols;
- dividing a data block of a data item into subblocks, including dividing the data block into first and second subblocks having different sizes, the first subblock corresponding to the first symbol set and having a size corresponding to the first number of unique symbols, and the second subblock corresponding to the second symbol set and having a size corresponding to the second number of unique symbols, wherein the first number is different than the second number;
- encrypting the data block, comprising encrypting the first subblock based on the first symbol set and encrypting the second subblock based on the second symbol set;
- and
- transmitting the encrypted data block to a first receiving device.
A method for cryptography, comprising:
- accessing, by a transmitting device, a number of different symbol sets corresponding to a cryptographic key, each respective symbol set having a different number of unique symbols;
- dividing, by the transmitting device, a data block of a data item into a number of subblocks corresponding to the number of different symbol sets and having sizes corresponding to the number of unique symbols of the different symbol sets;
- encrypting the data block, by the transmitting device, comprising encrypting each subblock based on a corresponding symbol set;
- and
- transmitting, by the transmitting device, the encrypted data block to a first receiving device.
A system for cryptography, comprising:
- a transmitting device comprising one or more processors and a communication component, wherein the one or more processors of the transmitting device are configured to perform operations comprising:
- accessing, from a memory of the transmitting device, a number of different symbol sets corresponding to a cryptographic key, each respective symbol set having a different number of unique symbols,
- dividing a data block of a data item into a number of subblocks corresponding to the number of different symbol sets and having sizes corresponding to the number of unique symbols of the different symbol sets;
- encrypting the data block comprising encrypting each subblock based on a corresponding symbol set;
- and
- transmitting the encrypted data block to a first receiving device.
Dependencies are inferred from the claim text.