Patent ID: 8250560

Claim:
An information processing apparatus comprising: a memory in which first firmware is stored; a first controller to execute the firmware; a storage device configured to store update data having a plurality of blocks corresponding to second firmware that can be used to update the first firmware stored in the memory, and rewrite information indicating whether or not to rewrite a region in the memory for each block of the update data, the update data being grouped into the plurality of blocks which are encrypted using a block encryption scheme; a processing unit configured to (a) transfer each block of the update data, and (b) indicate whether the region in the memory corresponding to the transferred block of the update data requires updating, based on the rewrite information every time a block of the update data is transferred; and a second controller comprising an updating unit and a decoder, the decoder configured to decrypt each block of the update data transferred from the processing unit, the updating unit configured to rewrite an appropriate region in the memory using the decrypted block in response to the indication of the region of the memory requiring updating.