A method of performing a keyed cryptographic operation by a cryptographic system mapping an encoded input message to an output message, including: receiving an encoding selection parameter p; receiving the encoded input message, wherein the encoding on the input message corresponds to the encoding selection parameter p; decoding the input message using an inverse of a default input encoding; computing a first portion of the cryptographic operation on the decoded input message to produce a first portion output; and compensating the first portion output based upon the encoding selection parameter p.
Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.
1. A non-transitory machine-readable storage medium encoded with instructions for execution by a keyed cryptographic operation by a cryptographic system mapping an encoded input message to an output message, comprising: instructions for receiving an encoding selection parameter p; instructions for receiving the encoded input message, wherein the encoding on the input message corresponds to the encoding selection parameter p; instructions for decoding the input message using an inverse of a default input encoding, wherein the default encoding is different from the encoding on the input message and wherein the default input encoding is determined based upon the encoding on the input message and a randomly selected bijective linear function associated with the encoding selection parameter p; instructions for computing a first portion of the keyed cryptographic operation on the decoded input message to produce a first portion output; and instructions for compensating the first portion output based upon the encoding selection parameter p.
A non-transitory computer storage medium stores instructions to perform cryptographic operations where an encoded input message becomes an output message. The process involves receiving an encoding selection parameter, p, and a corresponding encoded input message. The input message is decoded using an inverse of a default input encoding. This default encoding differs from the input message's encoding and is based on the input message's encoding and a random linear function tied to the parameter p. A portion of the cryptographic operation is computed on the decoded message, creating a first portion output. This output is then adjusted based on the encoding selection parameter, p.
2. The non-transitory machine-readable storage medium of claim 1 , wherein the encoding parameter p is received as part of the encoded input message.
The computer storage medium described above receives the encoding parameter, p, as part of the encoded input message itself. Specifically, the system parses the encoded input message to extract the encoding selection parameter "p" directly from within the message data.
3. The non-transitory machine-readable storage medium of claim 1 , wherein the first portion output is encoded by a function A p and wherein compensating the first portion output includes applying the inverse of the function A p .
In the computer storage medium described in the first claim, the initial portion of the cryptographic operation results in an output that is encoded by a function Ap. The compensation step then involves applying the inverse of this function Ap to the first portion output to undo this encoding.
5. The non-transitory machine-readable storage medium of claim 1 , wherein, the keyed cryptographic operation is an AES encryption operation.
In the computer storage medium described in the first claim, the cryptographic operation is an AES (Advanced Encryption Standard) encryption. The white-box implementation performs AES encryption with added encoding and decoding steps as described previously.
6. The non-transitory machine-readable storage medium of claim 1 , wherein lookup tables implement the keyed cryptographic operation.
In the computer storage medium described in the first claim, the cryptographic operation uses lookup tables. These tables pre-compute portions of the cryptographic algorithm, improving speed and efficiency, while still incorporating the encoding and decoding logic for white-box security.
7. The non-transitory machine-readable storage medium of claim 1 , wherein finite state machines implement keyed cryptographic operation.
In the computer storage medium described in the first claim, the cryptographic operation uses finite state machines. These state machines control the flow of data and processing steps within the cryptographic algorithm, implementing the encoding, decoding and core cryptographic functions.
8. A non-transitory machine-readable storage medium encoded with instructions for execution by a keyed cryptographic operation by a cryptographic system mapping an input message to an encoded output message, comprising: instructions for receiving a encoding selection parameter p; instructions for receiving the input message; instructions for computing a first portion of the keyed cryptographic operation on the input message to produce a first portion output; instructions for compensating the first portion output based upon the encoding selection parameter p; instructions for performing a second portion of the keyed cryptographic operation on the compensated first portion output to produce a second portion output; and instructions for encoding the second portion output using a default output encoding, wherein the default output encoding is different from a resulting encoding on the output message and wherein the default output encoding is determined based upon the encoding on the output message and a randomly selected bijective linear function associated with the encoding selection parameter p.
A non-transitory computer storage medium stores instructions to perform cryptographic operations where an input message becomes an encoded output message. The process involves receiving an encoding selection parameter, p, and an input message. A portion of the cryptographic operation is computed on the input message, creating a first portion output. This output is then adjusted based on the encoding selection parameter, p. A second portion of the cryptographic operation is performed on the compensated first portion output, creating a second portion output. Finally, the second portion output is encoded using a default output encoding. This default output encoding differs from the final encoding of the output message and depends on the output message's encoding and a random linear function associated with parameter p.
9. The non-transitory machine-readable storage medium of claim 8 , wherein the encoding parameter p is received as part of the input message.
The computer storage medium described above receives the encoding parameter, p, as part of the input message itself. Specifically, the system parses the input message to extract the encoding selection parameter "p" directly from within the message data.
10. The non-transitory machine-readable storage medium of claim 8 , wherein compensating the first portion output includes applying a function A p to the first output.
In the computer storage medium described in the eighth claim, compensating the first portion output involves applying a function Ap to the first portion output to modify it based on the encoding parameter.
12. The non-transitory machine-readable storage medium of claim 8 , wherein, the keyed cryptographic operation is an AES cryptographic operation.
In the computer storage medium described in the eighth claim, the cryptographic operation is an AES (Advanced Encryption Standard) cryptographic operation. The white-box implementation performs AES encryption with added encoding as described previously.
13. The non-transitory machine-readable storage medium of claim 8 , wherein lookup tables implement the keyed cryptographic operation.
In the computer storage medium described in the eighth claim, the cryptographic operation uses lookup tables. These tables pre-compute portions of the cryptographic algorithm, improving speed and efficiency, while still incorporating the encoding logic for white-box security.
14. The non-transitory machine-readable storage medium of claim 8 , wherein finite state machines implement keyed cryptographic operation.
In the computer storage medium described in the eighth claim, the cryptographic operation uses finite state machines. These state machines control the flow of data and processing steps within the cryptographic algorithm, implementing the encoding and core cryptographic functions.
15. A method of performing a keyed cryptographic operation by a cryptographic system mapping an encoded input message to an output message, comprising: receiving an encoding selection parameter p; receiving the encoded input message, wherein the encoding on the input message corresponds to the encoding selection parameter p; decoding the input message using an inverse of a default input encoding, wherein the default encoding is different from the encoding on the input message and wherein the default input encoding is determined based upon the encoding on the input message and a randomly selected bijective linear function associated with the encoding selection parameter p; computing a first portion of the keyed cryptographic operation on the decoded input message to produce a first portion output; and compensating the first portion output based upon the encoding selection parameter p.
A method performs cryptographic operations where an encoded input message becomes an output message. It involves receiving an encoding selection parameter, p, and a corresponding encoded input message. The input message is decoded using an inverse of a default input encoding. This default encoding differs from the input message's encoding and is based on the input message's encoding and a random linear function tied to the parameter p. A portion of the cryptographic operation is computed on the decoded message, creating a first portion output. This output is then adjusted based on the encoding selection parameter, p.
16. The method of claim 15 , wherein the encoding parameter p is received as part of the encoded input message.
The method described above receives the encoding parameter, p, as part of the encoded input message itself. Specifically, the system parses the encoded input message to extract the encoding selection parameter "p" directly from within the message data.
17. The method of claim 15 , wherein the first portion output is encoded by a function A p and wherein compensating the first portion output includes applying the inverse of the function A p .
In the method described in the fifteenth claim, the initial portion of the cryptographic operation results in an output that is encoded by a function Ap. The compensation step then involves applying the inverse of this function Ap to the first portion output to undo this encoding.
19. The method of claim 15 , wherein, the keyed cryptographic operation is an AES encryption operation.
In the method described in the fifteenth claim, the cryptographic operation is an AES (Advanced Encryption Standard) encryption. The white-box implementation performs AES encryption with added encoding and decoding steps as described previously.
20. The method of claim 15 , wherein lookup tables implement the keyed cryptographic operation.
In the method described in the fifteenth claim, the cryptographic operation uses lookup tables. These tables pre-compute portions of the cryptographic algorithm, improving speed and efficiency, while still incorporating the encoding and decoding logic for white-box security.
21. The method of claim 15 , wherein finite state machines implement keyed cryptographic operation.
In the method described in the fifteenth claim, the cryptographic operation uses finite state machines. These state machines control the flow of data and processing steps within the cryptographic algorithm, implementing the encoding, decoding and core cryptographic functions.
22. A method of performing a keyed cryptographic operation by a cryptographic system mapping an input message to an encoded output message, comprising: receiving a encoding selection parameter p; receiving the input message; computing a first portion of the keyed cryptographic operation on the input message to produce a first portion output; compensating the first portion output based upon the encoding selection parameter p; performing a second portion of the keyed cryptographic operation on the compensated first portion output to produce a second portion output; and encoding the second portion output using a default output encoding, wherein the default output encoding is different from a resulting encoding on the output message and wherein the default output encoding is determined based upon the encoding on the output message and a randomly selected bijective linear function associated with the encoding selection parameter p.
A method performs cryptographic operations where an input message becomes an encoded output message. The process involves receiving an encoding selection parameter, p, and an input message. A portion of the cryptographic operation is computed on the input message, creating a first portion output. This output is then adjusted based on the encoding selection parameter, p. A second portion of the cryptographic operation is performed on the compensated first portion output, creating a second portion output. Finally, the second portion output is encoded using a default output encoding. This default output encoding differs from the final encoding of the output message and depends on the output message's encoding and a random linear function associated with parameter p.
23. The method of claim 22 , wherein the encoding parameter p is received as part of the input message.
The method described above receives the encoding parameter, p, as part of the input message itself. Specifically, the system parses the input message to extract the encoding selection parameter "p" directly from within the message data.
24. The method of claim 23 , wherein compensating the first portion output includes applying a function A p to the first output.
The method described in the twenty-second claim, compensating the first portion output involves applying a function Ap to the first portion output to modify it based on the encoding parameter.
26. The method of claim 22 , wherein, the keyed cryptographic operation is an AES cryptographic operation.
In the method described in the twenty-second claim, the cryptographic operation is an AES (Advanced Encryption Standard) cryptographic operation. The white-box implementation performs AES encryption with added encoding as described previously.
27. The method of claim 22 , wherein lookup tables implement the keyed cryptographic operation.
In the method described in the twenty-second claim, the cryptographic operation uses lookup tables. These tables pre-compute portions of the cryptographic algorithm, improving speed and efficiency, while still incorporating the encoding logic for white-box security.
28. The method of claim 22 , wherein finite state machines implement keyed cryptographic operation.
In the method described in the twenty-second claim, the cryptographic operation uses finite state machines. These state machines control the flow of data and processing steps within the cryptographic algorithm, implementing the encoding and core cryptographic functions.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
December 18, 2014
May 2, 2017
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.