Legal claims defining the scope of protection, as filed with the USPTO.
1. A method of programming a programmable device comprising: acquiring configuration data; decrypting the configuration data; loading the configuration data onto the programmable device; processing at least a portion of the configuration data, after decryption, through a oneway function to form processed configuration data; configuring at least one of a plurality of configurable modules of the programmable device using the processed configuration data from the processing step, the plurality of configurable modules being arranged in an interconnected matrix and being interconnected by a plurality of connections; and initializing at least the plurality of connections of the interconnected matrix by at least establishing a portion of the plurality of connections and removing another portion of the plurality of connections, wherein at least one of the plurality of configurable modules of the programmable device is configured by data that, after decryption, is not processed through the oneway function.
2. The method according to claim 1 , wherein the loading step further comprises verifying authenticity and/or integrity of the configuration data by way of a symmetric or an asymmetric key.
3. The method according to claim 2 , wherein verifying authenticity of the configuration data is carried out by the at least one configuration module.
4. The method according to claim 1 , wherein the loading step comprises loading the configuration data onto a configuration module of the programmable device.
5. The method according to claim 1 , wherein the configuring step comprises at least one of: initializing the programmable device; configuring the at least one configurable module of the programmable device; and configuring an interconnection between modules of the programmable device wherein the modules may be configurable or non-configurable.
6. The method according to claim 1 , wherein a power consumption while executing the method adheres to smartcard operating parameters.
7. A programmable device, comprising: circuitry configured to: acquire configuration data; load the configuration data onto the programmable device; decrypt the configuration data; process at least a portion of the configuration data, after decryption, through a oneway function to form processed configuration data; and configure at least one of a plurality of configurable modules of the programmable device using the processed configuration data, the plurality of configurable modules being arranged in an interconnected matrix and being interconnected by a plurality of connections; and initialize at least the plurality of connections of the interconnected matrix by at least establishing a portion of the plurality of connections and removing another portion of the plurality of connections, wherein at least one of the plurality of configurable modules of the programmable device is configured by data that, after decryption, is not processed through the oneway function.
8. The programmable device according to claim 7 , wherein the programmable device comprises a one way function and the at least one configuration module.
9. The programmable device according to claim 7 , wherein the at least one configuration module comprises a cryptographic module.
10. The programmable device according to claim 9 , wherein the cryptographic module comprises at least one of a substitution box module, a substitution table module, a bit permutation module, a byte permutation module, or a matrix multiplication module.
11. The programmable device according to claim 9 , wherein the cryptographic module comprises a hardener for a true random number generator or a physically unclonable function (PUF).
12. The programmable device according to claim 7 , wherein the at least one configurable module comprises a programmable state-machine.
13. The programmable device according to claim 7 , wherein the programmable device is positioned in a smartcard.
14. The programmable device according to claim wherein the form factor of the programmable device adheres to smartcard parameters.
15. A system for programming a programmable device comprising: circuitry configured to: acquire configuration data; decrypt the configuration data; load the configuration data onto the programmable device; process at least a portion of the configuration data, after decryption, through a oneway function to form processed configuration data; configure at least one of a plurality of configurable modules of the programmable device using the processed configuration data from the processing step, the plurality of configurable modules being arranged in an interconnected matrix and being interconnected by a plurality of connections; and initialize at least the plurality of connections of the interconnected matrix by at least establishing a portion of the plurality of connections and removing another portion of the plurality of connections, wherein at least one of the plurality of configurable modules of the programmable device is configured by data that, after decryption, is not processed through the oneway function.
Unknown
June 21, 2022
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.