1. A method comprising:
in an electronic device:
storing a test profile in a secure memory;
reading the test profile with a secure element, thereby determining:
tested functionality in the electronic device; and
test parameters for the tested functionality;
determining when the tested functionality provides an expected test response according to the test parameters; and
executing a result action when the tested functionality does not provide the expected test response.
2. The method of claim 1, where executing comprises:
terminating execution of a program running in the electronic device.
3. The method of claim 1, where executing comprises:
communicating an integrity check failure message to a remote monitoring system.
4. The method of claim 1, where executing comprises:
preventing an input function, an output function, a processing function, or any combination thereof in the electronic device.
5. The method of claim 1, where executing comprises:
displaying an integrity check failure message on a user interface of the electronic device.
6. The method of claim 1, further comprising:
receiving the test profile from an external provider.
7. The method of claim 6, where receiving comprises:
decrypting the test profile received from the external provider; and
verifying the test profile prior to storing the test profile in the secure memory.
8. A device comprising:
a memory comprising:
a test profile; and
integrity checking instructions; and
logic operable to, when it executes the integrity checking instructions:
read the test profile to determine:
tested functionality in the device; and
test parameters for the tested functionality;
perform an integrity check on the tested functionality according to the test parameters;
obtain a received test response from the tested functionality; and
execute a result action when the received test response does not match an expected test response.
9. The device of claim 8, where the test parameters comprise:
a test type parameter specifying a test type of the integrity check.
10. The device of claim 9, where the logic is operable to implement the test type by ignoring the received test response.
11. The device of claim 9, where the logic is operable to implement the test type by determining whether the received test response matches the expected test response.
12. The device of claim 8, where the test parameters comprise an integrity checking timing parameter, where the integrity checking timing parameter specifies when the logic performs the integrity check on the tested functionality.
13. The device of claim 12, where the integrity checking timing parameter specifies that the logic perform the integrity check when the logic would otherwise be idle, at a predetermined frequency, at a rate to keep the logic above a predetermined utilization percentage, or any combination thereof.
14. The device of claim 8, where the test parameters comprise a test action parameter that specifies an action for the logic to take to perform the integrity check.
15. A device comprising:
a memory comprising:
a first test profile;
integrity checking instructions; and
a processor operable to, when it executes the integrity checking instructions:
read the first test profile to determine:
first tested functionality in the device; and
first test parameters for the first tested functionality;
perform an integrity check on the first tested functionality according to the first test parameters;
obtain a test response to the integrity check;
select between ignoring the test response and executing a result action when the received test response does not match an expected test response.
16. The device of claim 15, where:
the memory further comprises a second test profile; and
the processor is further operable to, when it executes the integrity checking logic:
switch from the first test profile to the second test profile by:
reading the second test profile to determine:
second tested functionality in the device; and
second test parameters for the second tested functionality; and
performing the integrity check on the second tested functionality according to the second test parameters.
17. The device of claim 15, where the integrity check comprises an obfuscating integrity check.
18. The device of claim 17, where the obfuscating integrity check causes the processor to ignore the test response.
19. The device of claim 16, where the logic is operable to switch to the second test profile based on a time, a date, user input, an external command, or any combination thereof.
20. The device of claim 15, where the result action comprises locking the device to prevent input, output, processing functions, or any combination thereof.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.
1. A method of optical character recognition (OCR) of a character image the method comprising the steps of:
receiving the character image represented at a first spatial resolution;
creating a reduced-resolution version of the character image received in said receiving step, the reduced-resolution version of the character image being represented at a second spatial resolution lower than the first spatial resolution;
executing OCR processing on the reduced resolution version of the character image represented at the second spatial resolution so as to identify an optimal OCR parameter for OCR processing of the character image represented at the first spatial resolution; and
OCR processing the character image represented at the first spatial resolution utilizing the optimal OCR parameter identified in said executing step so as to acquire a character code corresponding to the character image.
2. The method according to claim 1, wherein said executing step identifies the optimal OCR parameter according to steps comprising:
providing a plurality of sets of at least one parameter;
executing OCR processing on the reduced-resolution version of the character image with each set of the at least one parameter so as to identify each confidence level of character-recognition; and
selecting the optimal OCR parameter based on the confidence levels identified.
3. The method according to claim 2, wherein said selecting step comprises selecting the optimal OCR parameter corresponding to a highest confidence level from a plurality of the confidence levels identified.
4. The method according to claim 2, wherein said selecting step comprises selecting the optimal OCR parameter corresponding to a confidence level exceeding a threshold.
5. The method according to claim 1, wherein said creating step creates the reduced-resolution version of the character image by calculating an average of at least one value of a plurality of pixels of the character image represented at the first spatial resolution.
6. The method according to claim 1, further comprising the steps of:
judging whether a confidence level of character recognition by said OCR processing step is acceptable; and
repeating said executing step and said OCR processing step if the confidence level is not acceptable.
7. A computer program product comprising a computer usable medium having computer executable program code embodied therein for optical character recognition (OCR) for a character image, the computer program product comprising computer executable program code configured to:
receive the character image represented at a first spatial resolution;
create a reduced-resolution version of the character image received in said receiving step, the reduced-resolution version of the character image being represented at a second spatial resolution lower than the first spatial resolution;
execute OCR processing on the reduced resolution version of the character image represented at the second spatial resolution so as to identify an optimal OCR parameter for OCR processing of the character image represented at the first spatial resolution; and
OCR process the character image represented at the first spatial resolution utilizing the optimal OCR parameter identified in said execution step so as to acquire a character code corresponding to the character image.
8. The computer program product according to claim 7, wherein said computer executable program code configured to execute OCR processing so as to identify an optimal OCR parameter is further configured to:
provide a plurality of sets of values of at least one parameter;
execute OCR processing on the reduced-resolution version of the character image with each set of the at least one parameter so as to identify each confidence level of character-recognition; and
select the optimal OCR parameter based on the confidence levels identified.
9. The computer program product according to claim 8, wherein said computer executable program code configured to select is further configured to select the optimal OCR parameter corresponding to a highest confidence level from a plurality of the confidence levels identified.
10. The computer program product according to claim 8, wherein said computer executable program code configured to select is further configured to select the optimal OCR parameter corresponding to a confidence level exceeding a threshold.
11. The computer program product according to claim 7, wherein said computer executable program code configured to create is further configured to create the reduced-resolution version of the character image by calculating an average of at least one value of a plurality of pixels of the character image represented at the first spatial resolution.
12. The computer program product according to claim 7, further comprising computer executable program code configured to:
judge whether a confidence level of character recognition is acceptable; and
repeat said execution step and said OCR processing step if the confidence level is not acceptable.
13. A system for optical character recognition (OCR) for a character image, the system comprising:
a downsampler having an input for receiving the character image represented at a first spatial resolution, the downsampler for producing and providing at an output thereof a reduced-resolution version of the character image responsive to the first spatial resolution representation of the character image received at the downsampler input, the reduced resolution version of the character image being represented at a second spatial resolution lower than the first spatial resolution; and
a character-recognition engine for optical character recognition (OCR) processing of an image, said character-recognition engine having a first input coupled to the downsampler output for receiving the reduced-resolution version of the character image and a second input for receiving the character image represented at the first spatial resolution, the character-recognition engine being constructed to:
execute OCR processing on the reduced resolution version of the character image represented at the second spatial resolution received at the first input so as to identify an optimal OCR parameter for OCR processing of the character image represented at the first spatial resolution;
OCR process the character image received at the second input utilizing the optimal OCR parameter identified in said execution step so as to acquire a character code corresponding to the character image, and
provide the acquired character code at a first output coupled to a system output.
14. The system according to claim 13, wherein the character-recognition engine identifies the optimal OCR parameter by executing OCR processing on the reduced resolution version of the character image with each set in a plurality of sets of parameters.
15. The system according to claim 14,
wherein the character-recognition engine performs character-recognition responsive to each set in the plurality of sets of parameters and provides a corresponding recognition confidence level for each of the sets; and
wherein the system further comprises a parameter identifier having a first input for receiving the recognition confidence level for each of the sets, and a second input for receiving each set in the plurality of sets of parameters, the parameter identifier for selecting and providing at an output thereof each set of parameters and its corresponding recognition confidence level.
16. The system according to claim 15, wherein the parameter identifier selects an additional set or parameters responsive to a threshold confidence level.