Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
This is in response to Application filed 01/19/26. Claims 1 – 20 are pending.
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
Claim(s)1 – 20 is/are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Campagna et al. US 20180054309 A1.
Regarding claims 1 and 20, Campagna anticipates a method/system for online updating a program of a network power supply, the method comprising:
receiving cipher text of a to-be-updated program sent from a system side, wherein the cipher text of the to-be-updated program is generated by encrypting the to-be-updated program with a preset key [0015, see Ciphertext encryption and cryptographic Key];
performing verification, according to a key pre-stored in the network power supply, on the cipher text of the to-be-updated program, to obtain a verification result; and decrypting the cipher text of the to-be-updated program and updating the to-be-updated program according to a decrypted program, if the verification result shows that the verification is passed [0015, see verify Authenticity and Decryption].
Regarding claim 2, the method according to claim 1, wherein the performing verification, according to a key pre-stored in the network power supply, on the cipher text of the to-be-updated program, to obtain a verification result, comprises:
acquiring the key pre-stored in the network power supply when the network power supply leaves factory; performing calculation on the cipher text of the to-be-updated program, according to the key pre-stored in the network power supply and based on a preset first encryption algorithm, to obtain a first verification value; and performing verification on authenticity and integrity of the cipher text of the to-be-updated program according to the first verification value, to obtain the verification result [0015, see Key, encryption, verifying, encryption algorithm].
Regarding claim 3, the method according to claim 2, wherein the performing calculation on the cipher text of the to-be-updated program, according to the key pre-stored in the network power supply and based on a preset first encryption algorithm, to obtain a first verification value, comprises:
acquiring a string located at a preset first position in the cipher text of the to-be-updated program, as a to-be-verified string; and performing calculation on the to-be-verified string, according to the key pre-stored in the network power supply and based on the preset first encryption algorithm, to obtain the first verification value [0015, “…an encryption algorithm to obtain the encrypted data file…”]
Regarding claim 4, the method according to claim 3, wherein the performing verification on authenticity and integrity of the cipher text of the to-be-updated program according to the first verification value, to obtain the verification result, comprises:
acquiring a string located at a preset second position in the cipher text of the to-be-updated program, as a first target value, wherein the first target value represents a string obtained by performing calculation on the string located at the preset first position based on the preset first encryption algorithm when generating the cipher text of the to-be-updated program; and comparing the first verification value with the first target value, and if the first verification value is consistent with the first target value, determining that the verification on the authenticity and integrity of the cipher text of the to-be-updated program is passed [0024, see authorization tag, also refer back to 0015 for encryption and decryption and cipher text].
Regarding claim 5, the method according to claim 4, wherein after the first verification value is compared with the first target value, the method further comprises: sending, to the system side, prompt information to prompt the system side to resend the cipher text of the to-be-updated program, if the first verification value is inconsistent with the first target value [0042, see verification and decryption as well as authentication].
Regarding claim 6, the method according to claim 1, wherein after the cipher text of the to-be-updated program sent from the system side is received, the method further comprises: storing the cipher text of the to-be-updated program into a preset storage location in the network power supply [0038m see storing].
Regarding claim 7, the method according to claim 1, wherein after the cipher text of the to-be-updated program sent from the system side is received, the method further comprises: storing the cipher text of the to-be-updated program into an external memory [0038].
Regarding claim 8, the method according to claim 1, wherein the updating the to-be-updated program according to a decrypted program comprises: erasing a current program of to-be-updated program, and making the decrypted program serve as a target program to update to-be-updated program; and running the target program [0015, see data file and algorithm].
Regarding claim 9, the method according to claim 8, wherein before the target program is run, the method further comprises: acquiring a string located at a preset third position in the target program; performing calculation, according to a preset second algorithm, on the string located at the third position, to obtain a second verification value; acquiring a string located at a preset fourth position in the target program, as a second target value, wherein the second target value represents a string obtained by performing calculation, based on the preset second algorithm, on the string located at the preset third position when generating the target program; and comparing the second verification value with the second target value, and if the second verification value is consistent with the second target value, determining that verification on the target program is passed, and proceeding to the running the target program [0023 – 0025, see authentication tag and using one or more strings as well as decryption and key].
Regarding claim 10, the method according to claim 1, wherein the cipher text of the to-be-updated program is generated by a software developer through encrypting the to-be-updated program with the preset key [0073 see obtain update].
Regarding claim 11, a network power supply, comprising: a receiver, configured to receive cipher text of a to-be-updated program sent from a system side, wherein the cipher text of the to-be-updated program is generated by encrypting a to-be-updated program with a preset key; and a processor, configured to: perform verification, according to a key pre-stored in the network power supply, on the cipher text of the to-be-updated program, to obtain a verification result; and decrypt the cipher text of the to-be-updated program and update the to-be-updated program according to a decrypted program, if the verification result shows that the verification is passed [0015 – 0024].
Regarding claim 12, the network power supply according to claim 11, wherein the processor is specifically configured to: acquire the key pre-stored in the network power supply when the network power supply leaves factory; perform calculation on the cipher text of the to-be-updated program, according to the key pre-stored in the network power supply and based on a preset first encryption algorithm, to obtain a first verification value; and perform verification on authenticity and integrity of the cipher text of the to-be-updated program according to the first verification value, to obtain the verification result [0015 – 0024].
Regarding claim 13, the network power supply according to claim 12, wherein the processor is specifically configured to: acquire a string located at a preset first position in the cipher text of the to-be-updated program, as a to-be-verified string; and perform calculation on the to-be-verified string, according to the key pre-stored in the network power supply and based on the preset first encryption algorithm, to obtain the first verification value[0015 – 0026].
Claim 14, the network power supply according to claim 13, wherein the processor is specifically configured to: acquire a string located at a preset second position in the cipher text of the to-be-updated program, as a first target value, wherein the first target value represents a string obtained by performing calculation, based on the preset first encryption algorithm, on the string located at the preset first position when generating the cipher text of the to-be-updated program; and compare the first verification value with the first target value, and if the first verification value is consistent with the first target value, determine that the verification on the authenticity and integrity of the cipher text of the to-be-updated program is passed [0015 – 0026].
Claim 15, the network power supply according to claim 14, wherein the processor is further configured to: send, to the system side, prompt information to prompt the system side to resend the cipher text of the to-be-updated program, if the first verification value is inconsistent with the first target value [0015 – 0026].
Claim 16, the network power supply according to claim 11, further comprising a memory configured to store the cipher text of the to-be-updated program into a preset storage location [0015 – 0026].
Claim 17, the network power supply according to claim 11, wherein the processor is specifically configured to: erase a current program of the to-be-updated program, and make the decrypted program serve as a target program, to update the to-be-updated program; and run the target program [0015 – 0026].
Claim 18, the network power supply according to claim 17, wherein the processor is specifically configured to: acquire a string located at a preset third position in the target program; perform calculation, according to a preset second algorithm, on the string located at the third position, to obtain a second verification value; acquire a string located at a preset fourth position in the target program, as a second target value, wherein the second target value represents a string obtained by performing calculation, based on the preset second algorithm, on the string located at the preset third position when generating the target program; and compare the second verification value with the second target value, and if the second verification value is consistent with the second target value, determine that verification on the target program is passed, and proceed to the running of the target program[0015 – 0026].
Claim 19, the network power supply according to claim 11, wherein the cipher text of the to-be-updated program is generated by a software developer through encrypting the to-be-updated program with the preset key [0015 – 0026].
Response to Arguments
Applicant's arguments filed 01/19/26 have been fully considered but they are not persuasive.
Applicant argues on page 7 of his response that, Campagna fails to teach or suggest at least the following features of pending claim 1:
“…receiving cipher text of a to-be-updated program sent from a system side, wherein the cipher text of the to-be-updated program is generated by encrypting the to-be-updated program with a preset key; b) performing verification, according to a key pre-stored in the network power supply, on the cipher text of the to-be-updated program, to obtain a verification result…”.
Examiner disagrees. Campagna in discloses in [0015, cipher used for encryption as well as discloses an encrypt a data key, and a, ciphertext produced by the encryption includes an authentication tag usable to verify authenticity and integrity of the AAD.
Applicants’ plain language of claims discloses receiving cipher text, encrypting and utilizing a preset key for performing verification. This is clearly taught by prior art and Applicants claims or limitations doesn’t preclude any other interpretation of claims as presented.
Correspondence Information
THIS ACTION IS MADE FINAL. Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Chuck Kendall whose telephone number is 571-272-3698. The examiner can normally be reached on 10:00 am - 6:30pm.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Hyung Sough can be reached on 571-272-6799. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only [0060 – 0080].
For more information about the PAIR system, see http://pair-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free).
/CHUCK O KENDALL/
Primary Examiner, Art Unit 2192