Efficient and secure method and apparatus for firmware update
US-2018145991-A1 · May 24, 2018 · US
US11516024B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11516024-B2 |
| Application number | US-201816955435-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jan 19, 2018 |
| Priority date | Jan 19, 2018 |
| Publication date | Nov 29, 2022 |
| Grant date | Nov 29, 2022 |
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.
A semiconductor device includes a memory, a random number generation circuit, and a control circuit. The memory stores key information, and the random number generation circuit generates first and second random number signals. The control circuit generates sixth and seventh random number signals from the first random number signal and the key information, generates encrypted update data from update data using the seventh random number signal, transmits the first and second random number signals as request signals to an external terminal device, receives, from the external device, first and second response signals as response signals in response to the request signals, generates an eighth random number signal using the first response signal, the second and the sixth random number signals as input signals, and provides the encrypted update data for the external terminal device when the second response signal coincides with the eighth random number signal.
Opening claim text (preview).
The invention claimed is: 1. A semiconductor device comprising a memory, a random number generation circuit, and a control circuit and providing update data for an external terminal device, wherein the memory stores key information, the random number generation circuit generates a first random number signal and a second random number signal, the control circuit generates a sixth random number signal and a seventh random number signal from the first random number signal and the key information, the control circuit generates encrypted update data from the update data using the seventh random number signal, the control circuit generates the first random number signal and the second random number signal as request signals to be transmitted to the external terminal device, the control circuit receives a first response signal and a second response signal from the external terminal device as response signals in response to the request signals, the control circuit generates an eighth random number signal using the first response signal, the second random number signal, and the sixth random number signal, and the control circuit provides the encrypted update data for the external terminal device when the second response signal coincides with the eighth random number signal. 2. The semiconductor device according to claim 1 , wherein the control circuit calculates each of the sixth random number signal, the seventh random number signal, and the eighth random number signal by inputting them into one predetermined pseudorandom function. 3. The semiconductor device according to claim 1 , wherein the control circuit provides, when the second response signal does not coincide with the eighth random number signal, a random number signal whose number of digits is the same as that of the encrypted update data for the external terminal device in place of the encrypted update data. 4. The semiconductor device according to claim 1 , wherein the control circuit determines, when the control circuit has received, from the external terminal device, a third response signal, which is a response signal in response to the encrypted update data that has been provided, whether the third response signal coincides with a tenth random number signal generated using the first response signal, the second random number signal, and the sixth random number signal, registers that data has been updated when they coincide with each other, and registers that the data has not been updated when they do not coincide with each other. 5. A semiconductor device comprising a memory and a control circuit and receiving encrypted update data from an external server device, wherein the memory stores pre-update data and key information, the control circuit receives, from the external server device, a first random number signal and a second random number signal as request signals, the control circuit generates a sixth random number signal and a seventh random number signal from the first random number signal and the key information, the control circuit generates a ninth random number signal and a tenth random number signal using the second random number signal and the sixth random number signal, the control circuit generates a challenge code including a predetermined signal, the control circuit outputs the ninth random number signal and the challenge code to the external server device as response signals in response to the request signals, the control circuit receives, from the external server device, an authentication signal and the encrypted update data that respond to the response signals, and the control circuit performs, when the received authentication signal coincides with the tenth random number signal, processing of decrypting the encrypted update data received from the external server device. 6. The semiconductor device according to claim 5 , wherein the control circuit calculates each of the sixth random number signal, the seventh random number signal, the ninth random number signal, and the tenth random number signal by inputting them into one predetermined pseudorandom function. 7. The semiconductor device according to claim 5 , wherein the control circuit does not perform, when the received authentication signal does not coincide with the tenth random number signal, processing of decrypting the encrypted update data received from the external server device. 8. The semiconductor device according to claim 5 , wherein the control circuit generates the challenge code by sequentially incrementing the numerical value of a predetermined number of digits. 9. The semiconductor device according to claim 5 , wherein the control circuit generates a twelfth random number signal using the second random number signal and the sixth random number signal, thereby generating the challenge code. 10. The semiconductor device according to claim 5 , further comprising a random number generation circuit that generates a third random number signal, wherein the control circuit receives, when it generates the ninth random number signal and the tenth random number signal, the third random number signal in addition to the second random number signal and the sixth random number signal, and the control circuit outputs the third random number signal to the external server device as the challenge code. 11. The semiconductor device according to claim 5 , wherein the control circuit generates a thirteenth random number signal as an output of a pseudorandom function at least including the second random number signal and the sixth random number signal, and the control circuit outputs the thirteenth random number signal to the external server device when the processing of decrypting the encrypted update data has been successfully performed. 12. The semiconductor device according to claim 11 , wherein the control circuit outputs a random number signal to the external server device in place of the thirteenth random number signal when the processing of decrypting the encrypted update data has not been successfully performed. 13. The semiconductor device according to claim 12 , further comprising a true random number generation circuit, wherein the random number signal is a true random number signal. 14. A method for providing update data for an external terminal device, the method comprising: storing key information; generating a first random number signal and a second random number signal; generating a sixth random number signal and a seventh random number signal from the first random number signal and the key information; generating encrypted update data from the update data using the seventh random number signal; generating the first random number signal and the second random number signal as request signals to be transmitted to the external terminal device; receiving a first response signal and a second response signal from the external terminal device as response signals in response to the request signals; generating an eighth random number signal using the first response signal, the second random number signal, and the sixth random number signal; and providing the encrypted update data for the external terminal device in response to determining that the second response signal coincides with the eighth random number signal. 15. A method of receiving encrypted update data from an external server device, the method comprising: storing pre-update data and key information; receiving, from the external server device, a first random number signal and a second random number signal as request signals; generating a sixth random number signal and a seventh random number s
using challenge-response · CPC title
wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption (cryptographic mechanisms or cryptographic arrangements for symmetric key encryption H04L9/06) · CPC title
using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates · CPC title
involving random numbers or seeds · CPC title
in semiconductor storage media, e.g. directly-addressable memories · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.