Speculative cryptographic processing for out of order data
US-2015363334-A1 · Dec 17, 2015 · US
US10560260B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10560260-B2 |
| Application number | US-201916283574-A |
| Country | US |
| Kind code | B2 |
| Filing date | Feb 22, 2019 |
| Priority date | Aug 4, 2014 |
| Publication date | Feb 11, 2020 |
| Grant date | Feb 11, 2020 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Values and a sequence of operations associated with generating a key may be received. A determination may be made as to whether the sequence of operations associated with the key matches an authorized sequence of operations. The key may be outputted when the received sequence of operations matches the authorized sequence of operations and the key may not be outputted when the received sequence of operations does not match the authorized sequence of operations.
Opening claim text (preview).
What is claimed is: 1. A method comprising: receiving a plurality of values associated with generating a key; receiving a sequence of operations associated with generating the key using the plurality of values; determining, by a processing device, whether the received sequence of operations corresponds to an authorized sequence of operations associated with generating the key, wherein the received sequence of operations corresponds to the authorized sequence of operations responsive to one or more sources of the received plurality of values matching one or more sources of values specified by the authorized sequence of operations; and in response to determining that the received sequence of operations corresponds to the authorized sequence of operations, providing the key based on the received sequence of operations and the plurality of values. 2. The method of claim 1 , wherein determining whether the received sequence of operations corresponds to the authorized sequence of operations comprises: generating a first hash value based on the received sequence of operations; receiving a second hash value based on the authorized sequence of operations; and determining whether the first hash value matches the second hash value, wherein the received sequence of operations corresponds to the authorized sequence of operations responsive to the first hash value matching the second hash value. 3. The method of claim 1 , wherein the received sequence of operations specifies an order of operations that are performed to generate the key. 4. The method of claim 1 , wherein the received sequence of operations specifies an order of the received values that are inputs to respective operations in the received sequence of operations. 5. The method of claim 1 , further comprising: in response to determining that the received sequence of operations does not correspond to the authorized sequence of operations, determining to not provide the key based on the received sequence of operations and the plurality of values. 6. The method of claim 1 , further comprising: decrypting data with the provided key in response to determining that the received sequence of operations corresponds to the authorized sequence of operations. 7. A system comprising: a memory; and a processing device, operatively coupled with the memory, to: receive a plurality of values associated with generating a key; receive a sequence of operations associated with generating the key using the plurality of values; determine whether the received sequence of operations corresponds to an authorized sequence of operations associated with generating the key, wherein the received sequence of operations corresponds to the authorized sequence of operations responsive to one or more sources of the received plurality of values matching one or more sources of values specified by the authorized sequence of operations; and in response to determining that the received sequence of operations corresponds to the authorized sequence of operations, provide the key based on the received sequence of operations and the plurality of values. 8. The system of claim 7 , wherein to determine whether the received sequence of operations corresponds to the authorized sequence of operations, the processing device is further to: generate a first hash value based on the received sequence of operations; receive a second hash value based on the authorized sequence of operations; and determine whether the first hash value matches the second hash value, wherein the received sequence of operations corresponds to the authorized sequence of operations responsive to the first hash value matching the second hash value. 9. The system of claim 7 , wherein the received sequence of operations specifies an order of operations that are performed to generate the key. 10. The system of claim 7 , wherein the received sequence of operations specifies an order of the received values that are inputs to respective operations in the received sequence of operations. 11. The system of claim 7 , wherein the processing device is further to: in response to determining that the received sequence of operations does not correspond to the authorized sequence of operations, determine to not provide the key based on the received sequence of operations and the plurality of values. 12. The system of claim 7 , wherein the processing device is further to: decrypt data with the provided key in response to determining that the received sequence of operations corresponds to the authorized sequence of operations. 13. A non-transitory computer readable medium comprising instructions, which when executed by a processing device, cause the processing device to perform operations comprising: receiving a plurality of values associated with generating a key; receiving a sequence of operations associated with generating the key using the plurality of values; determining whether the received sequence of operations corresponds to an authorized sequence of operations associated with generating the key, wherein the received sequence of operations corresponds to the authorized sequence of operations responsive to one or more sources of the received plurality of values matching one or more sources of values specified by the authorized sequence of operations; and in response to determining that the received sequence of operations corresponds to the authorized sequence of operations, providing the key based on the received sequence of operations and the plurality of values. 14. The non-transitory computer readable medium of claim 13 , wherein to determine whether the received sequence of operations corresponds to the authorized sequence of operations, the operations further comprise: generating a first hash value based on the received sequence of operations; receiving a second hash value based on the authorized sequence of operations; and determining whether the first hash value matches the second hash value, wherein the received sequence of operations corresponds to the authorized sequence of operations responsive to the first hash value matching the second hash value. 15. The non-transitory computer readable medium of claim 13 , wherein the received sequence of operations specifies an order of operations that are performed to generate the key. 16. The non-transitory computer readable medium of claim 13 , wherein the received sequence of operations specifies an order of the received values that are inputs to respective operations in the received sequence of operations. 17. The non-transitory computer readable medium of claim 13 , the operations further comprising: in response to determining that the received sequence of operations does not correspond to the authorized sequence of operations, determining to not provide the key based on the received sequence of operations and the plurality of values. 18. The non-transitory computer readable medium of claim 13 , the operations further comprising: decrypting data with the provided key in response to determining that the received sequence of operations corresponds to the authorized sequence of operations.
Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms · CPC title
Hash functions, e.g. MD5, SHA, HMAC or f9 MAC · CPC title
for supporting key management in a packet data network (cryptographic mechanisms or cryptographic arrangements for key management H04L9/08) · CPC title
Generation of secret information including derivation or calculation of cryptographic keys or passwords · CPC title
using cryptographic hash functions · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.