Movatterモバイル変換


[0]ホーム

URL:


CN114296756A - Solid state disk updating method, solid state disk and background server - Google Patents

Solid state disk updating method, solid state disk and background server
Download PDF

Info

Publication number
CN114296756A
CN114296756ACN202111544457.5ACN202111544457ACN114296756ACN 114296756 ACN114296756 ACN 114296756ACN 202111544457 ACN202111544457 ACN 202111544457ACN 114296756 ACN114296756 ACN 114296756A
Authority
CN
China
Prior art keywords
firmware
solid state
state disk
key
public key
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202111544457.5A
Other languages
Chinese (zh)
Other versions
CN114296756B (en
Inventor
吴海成
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hefei Datang Storage Technology Co ltd
Original Assignee
Hefei Datang Storage Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hefei Datang Storage Technology Co ltdfiledCriticalHefei Datang Storage Technology Co ltd
Priority to CN202111544457.5ApriorityCriticalpatent/CN114296756B/en
Publication of CN114296756ApublicationCriticalpatent/CN114296756A/en
Application grantedgrantedCritical
Publication of CN114296756BpublicationCriticalpatent/CN114296756B/en
Activelegal-statusCriticalCurrent
Anticipated expirationlegal-statusCritical

Links

Images

Landscapes

Abstract

The embodiment of the application discloses a solid state disk updating method, a solid state disk and a background server, wherein the method comprises the following steps: sending the equipment information of the solid state disk to a firmware upgrading tool; the firmware upgrading tool sends the equipment information to the background server, the background server generates ciphertext firmware according to the equipment information, and a root private key is adopted to sign the firmware; the device information includes: the device public key, the device serial number, the device public key signature and the device random number; acquiring return information sent by a firmware upgrading tool; the return information comprises ciphertext firmware, firmware signature and equipment digital envelope; verifying the validity of the firmware signature by adopting the root public key, and decrypting the ciphertext firmware according to the equipment digital envelope when the verification is successful to obtain a plaintext firmware; and upgrading the firmware according to the plaintext firmware. By the scheme of the embodiment, the defect that the security risk caused by key leakage cannot be prevented due to the fact that the key is fixed in the existing firmware upgrading method is overcome.

Description

Solid state disk updating method, solid state disk and background server
Technical Field
The embodiment of the application relates to a solid state disk technology, and in particular relates to a solid state disk updating method, a solid state disk and a background server.
Background
The solid state disk firmware upgrade comprises two types: firstly, the function or performance of the solid state disk is changed, so that the firmware needs to be upgraded, the overall performance of the hard disk is improved or other newly added functions are provided; secondly, if the old version has functional bugs (hidden errors, defects or problems) or security bugs, firmware upgrading is needed to repair the bugs.
At present, the firmware upgrading mode in the field of solid state disks is mainly to perform off-line upgrading through an upgrading tool and a firmware upgrading package provided by a manufacturer. The firmware upgrade package generally adopts a signature mechanism to ensure integrity, and partial upgrade packages with high security use a ciphertext + signature mechanism to ensure confidentiality and integrity of the firmware. However, in this method, the symmetric key and the signature key pair used for firmware protection are fixed, and all the solid state disks use the same key, so that once the key is leaked, all the devices face an attack risk.
In addition, in the firmware upgrading in the field of the solid state disk, a firmware anti-rollback mechanism is not available, so that the problem that an attacker carries out upgrading by using a firmware upgrading package with security holes so that the solid state disk has security risks exists.
Disclosure of Invention
The embodiment of the application provides a solid state disk updating method, a solid state disk and a background server, and can overcome the defect that a secret key is fixed in the existing firmware updating method and cannot prevent security risks caused by secret key leakage.
The embodiment of the application provides a solid state disk updating method, which can be applied to a solid state disk side, and the method can comprise the following steps:
sending the device information about the solid state disk stored by the solid state disk to a firmware upgrading tool; the firmware upgrading tool sends the equipment information to a background server, the background server generates ciphertext firmware according to the equipment information, and a root private key generated according to the ciphertext firmware is adopted to carry out a firmware signature which is uniquely corresponding to the current solid state disk on the firmware; the device information includes any one or more of: the device public key, the device serial number, the device public key signature and the device random number generated by updating the solid state disk at the time;
acquiring return information sent by the firmware upgrading tool; the return information is returned to the firmware upgrading tool by the background server; the return information includes: the cipher text firmware, the firmware signature and an equipment digital envelope obtained according to the equipment public key;
carrying out validity verification on the firmware signature by adopting a prestored root public key, and decrypting the ciphertext firmware according to the equipment digital envelope when the verification is successful to obtain a plaintext firmware;
and upgrading the firmware according to the acquired plaintext firmware.
In an exemplary embodiment of the present application, the ciphertext firmware may be obtained by the background server generating a server random number after the device public key is validated through validity verification, combining the device random number and the server random number to generate a firmware encryption key, and encrypting a firmware by using the firmware encryption key;
the firmware signature may be obtained by the background server encrypting data generated by combining the firmware encryption key and the latest security revision number of the queried current firmware version by using the device public key to obtain the device digital envelope, and signing data generated by combining the ciphertext firmware and the device digital envelope by using a root private key.
In an exemplary embodiment of the present application, the decrypting the ciphertext firmware according to the device digital envelope to obtain a plaintext firmware may include:
decrypting the equipment digital envelope by adopting an equipment private key stored in the solid state disk to obtain the firmware encryption key and the latest security revision number; wherein the firmware encryption key is used as a firmware decryption key;
judging the validity of the obtained firmware decryption key through the pre-stored equipment random number, and comparing the latest security revision number with the current security revision number;
and when the firmware decryption key is valid and the latest security revision number is larger than the current security revision number, decrypting the ciphertext firmware by using the firmware decryption key to obtain the plaintext firmware.
In an exemplary embodiment of the present application, the method may further include:
rejecting a firmware upgrade when the firmware decryption key is invalid and/or the latest security revision number is less than or equal to the current security revision number.
In an exemplary embodiment of the present application, the method may further include: and after the updating of the solid state disk is finished, clearing the equipment random number generated by the updating of the solid state disk at the current time.
In an exemplary embodiment of the present application, the method may further include:
after the solid state disk is electrified for the first time, generating a solid state disk device signature key pair and storing the solid state disk device signature key pair in the solid state disk; the solid state disk device signature key pair comprises: the device public key and the device private key.
In an exemplary embodiment of the present application, the method may further include:
sending the device public key and a first hard disk serial number stored in the solid state disk to a preset card opening tool, so that the card opening tool sends the device public key and the first hard disk serial number to a preset server, and signing the device public key and the first hard disk serial number by adopting a root private key stored in the server to obtain a device public key signature;
receiving initial updating data returned by the card opening tool; the initial update data includes: the device public key signature.
The embodiment of the present application further provides a solid state disk, which may include a first processor and a first computer-readable storage medium, where instructions are stored in the first computer-readable storage medium, and when the instructions are executed by the first processor, the method for updating a solid state disk applied to a solid state disk side in any one of the above-mentioned items is implemented.
The embodiment of the application further provides a method for updating a solid state disk, which is applied to a background server side, and the method can include the following steps:
acquiring equipment information of the solid state disk from a firmware upgrading tool; the device information is obtained from the solid state disk by the firmware upgrade tool, and the device information includes any one or more of the following: the device public key, the device serial number, the device public key signature and the device random number;
generating ciphertext firmware according to the equipment information, and performing firmware signature which is only corresponding to the current solid state disk on the firmware by adopting a root private key generated according to the ciphertext firmware;
sending return information to the solid state disk through the firmware upgrading tool, wherein the return information comprises: the cipher text firmware, the firmware signature and an equipment digital envelope obtained according to the equipment public key; and after the validity of the firmware signature is successfully verified by the solid state disk by adopting the prestored root public key, the ciphertext firmware is decrypted according to the equipment digital envelope, a plaintext firmware is obtained, and firmware upgrading is carried out according to the obtained plaintext firmware.
In an exemplary embodiment of the present application, the generating of the ciphertext firmware according to the device information may include:
carrying out validity verification on the equipment public key;
after the validity of the equipment public key passes, generating a server random number;
combining the device random number and the server random number to generate a firmware encryption key;
and the cipher text firmware is obtained by encrypting the firmware by adopting the firmware encryption key.
In an exemplary embodiment of the present application, the signing, by using the root private key generated according to the ciphertext firmware, of the firmware that is uniquely corresponding to the current solid state disk may include:
encrypting data generated by combining the firmware encryption key and the inquired latest security revision number of the current firmware version by using the equipment public key to obtain the equipment digital envelope;
and signing data generated by combining the ciphertext firmware and the equipment digital envelope by adopting a root private key to obtain the firmware signature.
The embodiment of the present application further provides a backend server, which may include a second processor and a second computer-readable storage medium, where instructions are stored in the second computer-readable storage medium, and when the instructions are executed by the second processor, the method for updating a solid state disk applied to the backend server side described in any one of the above is implemented.
Compared with the related art, the embodiment of the application can comprise the following steps: sending the device information about the solid state disk stored by the solid state disk to a firmware upgrading tool; the firmware upgrading tool sends the equipment information to a background server, the background server generates ciphertext firmware according to the equipment information, and a root private key generated according to the ciphertext firmware is adopted to carry out a firmware signature which is uniquely corresponding to the current solid state disk on the firmware; the device information includes any one or more of: the device public key, the device serial number, the device public key signature and the device random number generated by updating the solid state disk at the time; acquiring return information sent by the firmware upgrading tool; the return information is returned to the firmware upgrading tool by the background server; the return information includes: the cipher text firmware, the firmware signature and an equipment digital envelope obtained according to the equipment public key; carrying out validity verification on the firmware signature by adopting a prestored root public key, and decrypting the ciphertext firmware according to the equipment digital envelope when the verification is successful to obtain a plaintext firmware; and upgrading the firmware according to the acquired plaintext firmware. By the scheme of the embodiment, the defect that the security risk caused by key leakage cannot be prevented due to the fact that the key is fixed in the existing firmware upgrading method is overcome.
Additional features and advantages of embodiments of the present application will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by the practice of the present application. Other advantages of the present application may be realized and attained by the instrumentalities and combinations particularly pointed out in the specification and the drawings.
Drawings
The accompanying drawings are included to provide an understanding of the present disclosure and are incorporated in and constitute a part of this specification, illustrate embodiments of the disclosure and together with the examples serve to explain the principles of the disclosure and not to limit the disclosure.
Fig. 1 is a solid state disk updating method applied to a background server side according to an embodiment of the present application;
fig. 2 is a block diagram illustrating a solid state disk according to an embodiment of the present application;
fig. 3 is a solid state disk updating method applied to a solid state disk side according to an embodiment of the present application;
fig. 4 is a block diagram of a background server according to an embodiment of the present application.
Detailed Description
The present application describes embodiments, but the description is illustrative rather than limiting and it will be apparent to those of ordinary skill in the art that many more embodiments and implementations are possible within the scope of the embodiments described herein. Although many possible combinations of features are shown in the drawings and discussed in the detailed description, many other combinations of the disclosed features are possible. Any feature or element of any embodiment may be used in combination with or instead of any other feature or element in any other embodiment, unless expressly limited otherwise.
The present application includes and contemplates combinations of features and elements known to those of ordinary skill in the art. The embodiments, features and elements disclosed in this application may also be combined with any conventional features or elements to form a unique inventive concept as defined by the claims. Any feature or element of any embodiment may also be combined with features or elements from other inventive aspects to form yet another unique inventive aspect, as defined by the claims. Thus, it should be understood that any of the features shown and/or discussed in this application may be implemented alone or in any suitable combination. Accordingly, the embodiments are not limited except as by the appended claims and their equivalents. Furthermore, various modifications and changes may be made within the scope of the appended claims.
Further, in describing representative embodiments, the specification may have presented the method and/or process as a particular sequence of steps. However, to the extent that the method or process does not rely on the particular order of steps set forth herein, the method or process should not be limited to the particular sequence of steps described. Other orders of steps are possible as will be understood by those of ordinary skill in the art. Therefore, the particular order of the steps set forth in the specification should not be construed as limitations on the claims. Further, the claims directed to the method and/or process should not be limited to the performance of their steps in the order written, and one skilled in the art can readily appreciate that the sequences may be varied and still remain within the spirit and scope of the embodiments of the present application.
The embodiment of the present application provides a method for updating a solid state disk, which may be applied to a solid state disk side, as shown in fig. 1, where the method may include steps S101 to S104:
s101, sending equipment information about the solid state disk stored in the solid state disk to a firmware upgrading tool; the firmware upgrading tool sends the equipment information to a background server, the background server generates ciphertext firmware according to the equipment information, and a root private key generated according to the ciphertext firmware is adopted to carry out a firmware signature which is uniquely corresponding to the current solid state disk on the firmware; the device information includes any one or more of: the device public key, the device serial number, the device public key signature and the device random number generated by updating the solid state disk at the time;
s102, acquiring return information sent by the firmware upgrading tool; the return information is returned to the firmware upgrading tool by the background server; the return information includes: the cipher text firmware, the firmware signature and an equipment digital envelope obtained according to the equipment public key;
s103, verifying the validity of the firmware signature by adopting a prestored root public key, and decrypting the ciphertext firmware according to the equipment digital envelope to obtain a plaintext firmware when the verification is successful;
and S104, upgrading the firmware according to the acquired plaintext firmware.
In an exemplary embodiment of the present application, the method may further include:
after the solid state disk is electrified for the first time, generating a solid state disk device signature key pair and storing the solid state disk device signature key pair in the solid state disk; the solid state disk device signature key pair comprises: the device public key and the device private key.
In an exemplary embodiment of the present application, the solid state disk needs to be opened when shipped from a factory, and after the solid state disk is powered on for the first time, a pair of solid state disk device signature key pairs (which may include a device public key and a device private key), such as an SM2 key pair, is generated and stored in the solid state disk.
In an exemplary embodiment of the present application, the method may further include:
sending the device public key and a first hard disk serial number stored in the solid state disk to a preset card opening tool, so that the card opening tool sends the device public key and the first hard disk serial number to a preset server, and signing the device public key and the first hard disk serial number by adopting a root private key stored in the server to obtain a device public key signature;
receiving initial updating data returned by the card opening tool; the initial update data includes: the device public key signature.
In an exemplary embodiment of the application, a card opening tool obtains a device public key and a solid state disk serial number (i.e., a first disk serial number) from a solid state disk, and sends the device public key and the first disk serial number to a preset server, so that the server signs the device public key and the first disk serial number by using a root private key (the root private key is generally stored in the server, and the card opening tool stores both the root public key). The root key pair is a key pair of a company or a product, and the management and the use of the key can be realized by adopting the prior art.
In the exemplary embodiment of the present application, generally, in the signing, the device public key and the first hard disk serial number may be subjected to a hash operation to obtain a hash value, and then the hash value is signed. And the card opening tool guides the device public key signature of the solid state disk into the solid state disk for storage, and the card opening stage is ended.
In an exemplary embodiment of the present application, the ciphertext firmware may be obtained by the background server generating a server random number after the device public key is validated through validity verification, combining the device random number and the server random number to generate a firmware encryption key, and encrypting a firmware by using the firmware encryption key;
the firmware signature may be obtained by the background server encrypting data generated by combining the firmware encryption key and the latest security revision number of the queried current firmware version by using the device public key to obtain the device digital envelope, and signing data generated by combining the ciphertext firmware and the device digital envelope by using a root private key.
In an exemplary embodiment of the present application, the ciphertext firmware, the firmware signature, and the device digital envelope may be generated by a background server before online upgrade during use of the solid state drive.
In an exemplary embodiment of the application, in a use stage of a solid state disk, a firmware upgrade tool acquires device information about the solid state disk, such as a device public key, a device serial number, a device public key signature, a device random number, and the like, from the solid state disk; the random number of the equipment is temporarily generated and is valid at one time. The firmware upgrade tool sends the device information to the background server.
In an exemplary embodiment of the present application, the backend server will generate ciphertext firmware, firmware signature and device digital envelope according to the device information: the background server carries out validity verification on the acquired device public key, and when the verification is passed, the device (namely the current solid state disk) is proved to be legal; a background generates a server random number, and uses the equipment random number and the server random number as a firmware encryption key; inquiring the latest security revision number of the current firmware version, and encrypting the latest security revision number by the background server by using an equipment public key to obtain an equipment digital envelope; and the background server encrypts the firmware by using the firmware encryption key to obtain ciphertext firmware, and signs the (ciphertext firmware + equipment digital envelope) by using the root private key to obtain a firmware signature.
In an exemplary embodiment of the present application, the decrypting the ciphertext firmware according to the device digital envelope to obtain a plaintext firmware may include:
decrypting the equipment digital envelope by adopting an equipment private key stored in the solid state disk to obtain the firmware encryption key and the latest security revision number; wherein the firmware encryption key is used as a firmware decryption key;
judging the validity of the obtained firmware decryption key through the pre-stored equipment random number, and comparing the latest security revision number with the current security revision number;
and when the firmware decryption key is valid and the latest security revision number is larger than the current security revision number, decrypting the ciphertext firmware by using the firmware decryption key to obtain the plaintext firmware.
In an exemplary embodiment of the present application, the firmware upgrade tool may send the return information (ciphertext firmware + device digital envelope + firmware signature) returned by the background server to the solid state disk; the solid state disk can firstly use the pre-stored root public key to check the signature (namely, validity verification is carried out on the firmware signature), and when the signature passes, the returned information is proved to come from a legal background server.
In an exemplary embodiment of the present application, the solid state disk may decrypt, by using the device private key, data corresponding to the device digital envelope to obtain the firmware decryption key + the security revision number. The solid state disk can judge whether the obtained firmware decryption key is valid through the stored device random number (the judgment method can be that whether the firmware decryption key contains the device random number is checked, when the device random number is contained, the firmware decryption key is determined to be valid, and when the device random number is not contained, the firmware decryption key is determined to be invalid), and whether the latest security revision number is larger than the current security revision number can be compared; and if the firmware decryption key is valid and the latest security revision number is larger than the current security revision number, the solid state disk decrypts by using the firmware decryption key to obtain a plaintext firmware, and executes firmware upgrading work according to the plaintext firmware.
In an exemplary embodiment of the present application, the method may further include:
rejecting a firmware upgrade when the firmware decryption key is invalid and/or the latest security revision number is less than or equal to the current security revision number.
In an exemplary embodiment of the present application, if the latest security revision number is less than or equal to the current security revision number, indicating that old security version firmware is used, the upgrade may be rejected; wherein, the initial value of the security revision number may be 0.
In an exemplary embodiment of the present application, the security revision number is updated in time if there is a modification to the security revision number.
In an exemplary embodiment of the present application, the method may further include: and after the updating of the solid state disk is finished, clearing the equipment random number generated by the updating of the solid state disk at the current time.
The embodiment of the present application further provides a solid state disk 1, as shown in fig. 2, which may include a first processor 11 and a first computer-readable storage medium 12, where the first computer-readable storage medium 12 stores instructions, and when the instructions are executed by the first processor 11, the method for updating a solid state disk applied to a solid state disk side as described in any one of the above items is implemented.
In the exemplary embodiment of the present application, any of the foregoing embodiments of the method for updating a solid state disk applied to the solid state disk side may be applied to the solid state disk 1, and details are not repeated here.
The embodiment of the present application further provides a method for updating a solid state disk, which is applied to a background server side, and as shown in fig. 3, the method may include steps S201 to S203:
s201, acquiring equipment information of the solid state disk from a firmware upgrading tool; the device information is obtained from the solid state disk by the firmware upgrade tool, and the device information includes any one or more of the following: the device public key, the device serial number, the device public key signature and the device random number;
s202, generating ciphertext firmware according to the equipment information, and signing the firmware uniquely corresponding to the current solid state disk by adopting a root private key generated according to the ciphertext firmware;
s203, sending return information to the solid state disk through the firmware upgrading tool, wherein the return information comprises: the cipher text firmware, the firmware signature and an equipment digital envelope obtained according to the equipment public key; and after the validity of the firmware signature is successfully verified by the solid state disk by adopting the prestored root public key, the ciphertext firmware is decrypted according to the equipment digital envelope, a plaintext firmware is obtained, and firmware upgrading is carried out according to the obtained plaintext firmware.
In an exemplary embodiment of the application, in a use stage of a solid state disk, a firmware upgrade tool acquires device information about the solid state disk, such as a device public key, a device serial number, a device public key signature, a device random number, and the like, from the solid state disk; the random number of the equipment is temporarily generated and is valid at one time. The firmware upgrade tool sends the device information to the background server.
In an exemplary embodiment of the present application, the generating of the ciphertext firmware according to the device information may include:
carrying out validity verification on the equipment public key;
after the validity of the equipment public key passes, generating a server random number;
combining the device random number and the server random number to generate a firmware encryption key;
and the cipher text firmware is obtained by encrypting the firmware by adopting the firmware encryption key.
In an exemplary embodiment of the present application, the signing, by using the root private key generated according to the ciphertext firmware, of the firmware that is uniquely corresponding to the current solid state disk may include:
encrypting data generated by combining the firmware encryption key and the inquired latest security revision number of the current firmware version by using the equipment public key to obtain the equipment digital envelope;
and signing data generated by combining the ciphertext firmware and the equipment digital envelope by adopting a root private key to obtain the firmware signature.
In an exemplary embodiment of the present application, the backend server may generate a ciphertext firmware, a firmware signature, and a device digital envelope according to the obtained device information: the background server carries out validity verification on the acquired device public key, and when the verification is passed, the device (namely the current solid state disk) is proved to be legal; a background generates a server random number, and uses the equipment random number and the server random number as a firmware encryption key; inquiring the latest security revision number of the current firmware version, and encrypting the latest security revision number by the background server by using an equipment public key to obtain an equipment digital envelope; and the background server encrypts the firmware by using the firmware encryption key to obtain ciphertext firmware, and signs the (ciphertext firmware + equipment digital envelope) by using the root private key to obtain a firmware signature.
In an exemplary embodiment of the present application, the firmware upgrade tool may send the return information (ciphertext firmware + device digital envelope + firmware signature) returned by the background server to the solid state disk; the solid state disk can firstly use the pre-stored root public key to check the signature (namely, validity verification is carried out on the firmware signature), and when the signature passes, the returned information is proved to come from a legal background server.
In an exemplary embodiment of the present application, the solid state disk may decrypt, by using the device private key, data corresponding to the device digital envelope to obtain the firmware decryption key + the security revision number. The solid state disk can judge whether the obtained firmware decryption key is valid through the stored device random number (the judgment method can be that whether the firmware decryption key contains the device random number is checked, when the device random number is contained, the firmware decryption key is determined to be valid, and when the device random number is not contained, the firmware decryption key is determined to be invalid), and whether the latest security revision number is larger than the current security revision number can be compared; and if the firmware decryption key is valid and the latest security revision number is larger than the current security revision number, the solid state disk decrypts by using the firmware decryption key to obtain a plaintext firmware, and executes firmware upgrading work according to the plaintext firmware.
In an exemplary embodiment of the present application, if the latest security revision number is less than or equal to the current security revision number, indicating that an old security version firmware is used, a firmware upgrade may be rejected; wherein, the initial value of the security revision number may be 0.
In an exemplary embodiment of the present application, the security revision number is updated in time if there is a modification to the security revision number.
In an exemplary embodiment of the present application, after the update of the solid state disk is completed, the device random number generated by the current update of the solid state disk may be cleared.
In an exemplary embodiment of the present application, detailed flows of the card opening stage and the trial stage of the solid state disk in the update scheme of the solid state disk are respectively given below.
The card opening stage can comprise steps 1-1-1-4:
1-1, generating a pair of solid state disk device signature key pairs, such as an SM2 key pair, after the solid state disk is powered on for the first time, and storing the pair in the solid state disk;
1-2, the card opening tool acquires an equipment public key and a solid state disk serial number (a first disk serial number) from the solid state disk, and signs the equipment public key and the first disk serial number by using a root private key;
and 1-3, importing the public key signature of the solid state disk device and the serial number signature of the first hard disk into the solid state disk for storage by a card opening tool.
1-4, ending the card opening stage.
The use stage may include steps 2-1-2-16:
2-1, the firmware upgrading tool acquires equipment information from the solid-state disk; the device information may include: the device public key, the device serial number, the device public key signature and the device random number; the device random number is generated temporarily and is valid once.
2-2, the firmware upgrading tool sends the related equipment information to the background server;
2-3, carrying out validity verification on the public key of the background server equipment, and when the public key of the equipment passes the verification, proving that the equipment (namely the solid state disk) is legal;
2-4, the background server generates a server random number, and the device random number and the server random number are used as a firmware encryption key; inquiring the latest security revision number of the current firmware version;
2-5, the background server encrypts (the firmware encryption key and the security revision number) by using the equipment public key to obtain an equipment digital envelope;
2-6, the background server encrypts the firmware by adopting a firmware encryption key to obtain a ciphertext firmware;
2-7, the background server signs a signature on the ciphertext firmware and the equipment digital envelope by adopting a root private key to obtain a firmware signature;
2-8, the firmware upgrading tool sends the (ciphertext firmware + equipment digital envelope + firmware signature) to the solid state disk equipment;
2-9, the solid state disk firstly uses a pre-stored root public key to verify the validity of the firmware signature, and when the verification is passed, the data (ciphertext firmware, equipment digital envelope and firmware signature) is proved to come from a legal background server;
2-10, the solid state disk decrypts the data corresponding to the digital envelope by adopting an equipment private key to obtain a firmware decryption key and a security revision number;
2-11, the solid state disk judges whether the obtained firmware decryption key is valid through the stored equipment random number, and if the obtained firmware decryption key is invalid, the upgrading process is quitted; the judging method can comprise the following steps: checking whether the firmware decryption key contains a device random number;
2-12, the solid state disk can compare whether the latest security revision number is larger than the current security revision number, if not, the solid state disk indicates that the old security version firmware is used, and the firmware upgrade can be refused; wherein, the security revision number may have an initial value of 0.
2-13, the solid state disk decrypts the ciphertext firmware by adopting a firmware decryption key to obtain a plaintext firmware;
2-14, executing firmware upgrading work according to the plaintext firmware;
2-15, detect if there is a modification to the current security revision number? If the security revision number has a modification, updating the security revision number;
2-16, after the firmware updating work is finished, clearing the temporarily generated equipment random number.
In exemplary embodiments of the present application, at least the following advantages are included:
1. by adopting an online upgrading scheme, the signature key pair used by each solid state disk is different, and the signature key pair is one disk secret, so that other equipment is not influenced even if the key is leaked;
2. the firmware encryption key is generated for temporary negotiation, so that the security is higher;
3. the firmware upgrading process has bidirectional authentication to prevent man-in-the-middle attack;
4. the encryption key is a random number in the firmware upgrading process, so that replay attack is prevented;
5. and (3) adding safety version number management in firmware upgrading to prevent firmware rollback: the security revision number is used to manage the firmware rollback problem, and embodies the security risks of the firmware rather than the functionality. If the firmware only upgrades the function but does not have a security flaw, the security revision number is not changed, and the security revision number is updated only when the security flaw exists. This may allow the solid state disk to upgrade firmware of different functions, but not to upgrade firmware with security vulnerabilities.
The embodiment of the present application further provides a backend server 2, as shown in fig. 4, which may include a second processor 21 and a second computer-readable storage medium 22, where the second computer-readable storage medium 22 stores instructions, and when the instructions are executed by the second processor 21, the method for updating a solid state disk applied to the backend server side as described in any one of the above is implemented.
In the exemplary embodiment of the present application, any embodiment of the foregoing solid state disk updating method applied to the backend server may be applied to the backend server 2, and details are not repeated here.
It will be understood by those of ordinary skill in the art that all or some of the steps of the methods, systems, functional modules/units in the devices disclosed above may be implemented as software, firmware, hardware, and suitable combinations thereof. In a hardware implementation, the division between functional modules/units mentioned in the above description does not necessarily correspond to the division of physical components; for example, one physical component may have multiple functions, or one function or step may be performed by several physical components in cooperation. Some or all of the components may be implemented as software executed by a processor, such as a digital signal processor or microprocessor, or as hardware, or as an integrated circuit, such as an application specific integrated circuit. Such software may be distributed on computer readable media, which may include computer storage media (or non-transitory media) and communication media (or transitory media). The term computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data, as is well known to those of ordinary skill in the art. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, Digital Versatile Disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can accessed by a computer. In addition, communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media as known to those skilled in the art.

Claims (10)

CN202111544457.5A2021-12-162021-12-16Solid state disk updating method, solid state disk and background serverActiveCN114296756B (en)

Priority Applications (1)

Application NumberPriority DateFiling DateTitle
CN202111544457.5ACN114296756B (en)2021-12-162021-12-16Solid state disk updating method, solid state disk and background server

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
CN202111544457.5ACN114296756B (en)2021-12-162021-12-16Solid state disk updating method, solid state disk and background server

Publications (2)

Publication NumberPublication Date
CN114296756Atrue CN114296756A (en)2022-04-08
CN114296756B CN114296756B (en)2024-08-06

Family

ID=80968497

Family Applications (1)

Application NumberTitlePriority DateFiling Date
CN202111544457.5AActiveCN114296756B (en)2021-12-162021-12-16Solid state disk updating method, solid state disk and background server

Country Status (1)

CountryLink
CN (1)CN114296756B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN115168813A (en)*2022-06-292022-10-11海光信息技术股份有限公司 Firmware signature and processor boot method and apparatus

Citations (6)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN101783800A (en)*2010-01-272010-07-21华为终端有限公司Embedded system safety communication method, device and system
CN108809651A (en)*2018-05-052018-11-13深圳大普微电子科技有限公司Key pair management method and terminal
CN109120649A (en)*2018-11-022019-01-01美的集团股份有限公司Cryptographic key negotiation method, Cloud Server, equipment, storage medium and system
CN110929262A (en)*2019-11-202020-03-27上海钧正网络科技有限公司Online upgrading method and system
CN111046443A (en)*2019-12-242020-04-21合肥大唐存储科技有限公司Hard disk anti-counterfeiting realization method, hard disk and CA server
GB202105203D0 (en)*2021-04-122021-05-26Crypto Quantique LtdEncrypted and authenticated firmware provisioning with root-of-trust based security

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN101783800A (en)*2010-01-272010-07-21华为终端有限公司Embedded system safety communication method, device and system
CN108809651A (en)*2018-05-052018-11-13深圳大普微电子科技有限公司Key pair management method and terminal
CN109120649A (en)*2018-11-022019-01-01美的集团股份有限公司Cryptographic key negotiation method, Cloud Server, equipment, storage medium and system
CN110929262A (en)*2019-11-202020-03-27上海钧正网络科技有限公司Online upgrading method and system
CN111046443A (en)*2019-12-242020-04-21合肥大唐存储科技有限公司Hard disk anti-counterfeiting realization method, hard disk and CA server
GB202105203D0 (en)*2021-04-122021-05-26Crypto Quantique LtdEncrypted and authenticated firmware provisioning with root-of-trust based security

Cited By (2)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN115168813A (en)*2022-06-292022-10-11海光信息技术股份有限公司 Firmware signature and processor boot method and apparatus
CN115168813B (en)*2022-06-292025-07-29海光信息技术股份有限公司Firmware signature and processor starting method and device

Also Published As

Publication numberPublication date
CN114296756B (en)2024-08-06

Similar Documents

PublicationPublication DateTitle
US11714633B2 (en)Method for providing a firmware update of a device
US11361087B2 (en)Security data processing device
US9054880B2 (en)Information processing device, controller, key issuing authority, method for judging revocation list validity, and key issuing method
EP2605175B1 (en)Method and apparatus for checking field replaceable unit and communication device
CN106302379A (en)The authentication method of vehicle mounted electrical apparatus, system and its apparatus
CN104537293A (en)Authentication device and system
CN111147259B (en)Authentication method and device
US11516024B2 (en)Semiconductor device, update data-providing method, update data-receiving method, and program
US9100192B2 (en)Apparatus and method for provisioning an endorsement key certificate for a firmware trusted platform module
CN101977193A (en)Method and system for safely downloading certificate
CN104836784B (en)A kind of information processing method, client and server
CN106850311B (en)Data security transmission system and method for firmware upgrade
CN109388961A (en)Store the method for controlling security and storage equipment of equipment
CN111382397B (en)Configuration method of upgrade software package, software upgrade method, equipment and storage device
KR20130118951A (en)Secure management and personalization of unique code signing keys
CN114296756B (en)Solid state disk updating method, solid state disk and background server
CN109450951B (en)Server-side security file management method, device and system
CN114040401B (en) Terminal authentication method and system
CN109302286B (en)Fido equipment key index generation method
CN104735064A (en)Safety revocation and updating method for identification in identification password system
US11570008B2 (en)Pseudonym credential configuration method and apparatus
CN107294726B (en)Export, import and processing method, device and system of virtual encryption machine data
CN112929871B (en)OTA upgrade package acquisition method, electronic equipment and storage medium
CN108563927A (en)A kind of packaging ciphering method of host upgrading software
CN114297673B (en) A password verification method, solid state hard disk and host computer

Legal Events

DateCodeTitleDescription
PB01Publication
PB01Publication
SE01Entry into force of request for substantive examination
SE01Entry into force of request for substantive examination
GR01Patent grant
GR01Patent grant

[8]ページ先頭

©2009-2025 Movatter.jp