Patent attributes
This disclosure relates to a storage device comprising non-volatile storage and a controller. The non-volatile storage may comprise a firmware image, a known data pattern (KDP) in plaintext, and an encrypted KDP. The controller may be coupled to the non-volatile storage, and may be configured to update the firmware image of the non-volatile storage. For this update, the controller may first receive a symmetric key from a host by way of a public key encryption process. Next, the controller may decrypt the encrypted KDP using the symmetric key. If the decrypted KDP matches the KDP in plaintext, the symmetric key may be validated and the firmware image update may be downloaded. The firmware image update may then replace the firmware image in non-volatile storage.