WO2007142240A1 - データ格納装置、管理サーバ、集積回路、データ更新システム、家電機器、データ更新方法、暗号化方法、および、暗復号鍵生成方法 - Google Patents

データ格納装置、管理サーバ、集積回路、データ更新システム、家電機器、データ更新方法、暗号化方法、および、暗復号鍵生成方法 Download PDF

Info

Publication number
WO2007142240A1
WO2007142240A1 PCT/JP2007/061383 JP2007061383W WO2007142240A1 WO 2007142240 A1 WO2007142240 A1 WO 2007142240A1 JP 2007061383 W JP2007061383 W JP 2007061383W WO 2007142240 A1 WO2007142240 A1 WO 2007142240A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
data
update
generation
key
Prior art date
Application number
PCT/JP2007/061383
Other languages
English (en)
French (fr)
Inventor
Hisashi Takayama
Original Assignee
Panasonic Corporation
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 Panasonic Corporation filed Critical Panasonic Corporation
Priority to US12/303,420 priority Critical patent/US8155320B2/en
Publication of WO2007142240A1 publication Critical patent/WO2007142240A1/ja

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6112Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving terrestrial transmission, e.g. DVB-T
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/26613Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for generating or managing keys in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • H04N21/42684Client identification by a unique number or address, e.g. serial number, MAC address, socket ID
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6156Network physical structure; Signal processing specially adapted to the upstream path of the transmission network
    • H04N21/6175Network physical structure; Signal processing specially adapted to the upstream path of the transmission network involving transmission via Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8166Monomedia components thereof involving executable data, e.g. software
    • H04N21/818OS software
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/30Security of mobile devices; Security of mobile applications
    • H04W12/35Protecting application or service provisioning, e.g. securing SIM application provisioning

Definitions

  • Data storage apparatus management server, integrated circuit, data update system, home appliance, data update method, encryption method, and encryption / decryption key generation method
  • the present invention relates to a data storage device, a management server, an integrated circuit, a data update system, a home appliance, a data update method, an encryption method, and a decoy key generation method.
  • a mass storage device such as a hard disk and an Internet connection function such as a LAN (Local Area Network) card or an internet modem
  • the software can be relatively easy. Automatic updating of is possible.
  • a software module for automatic software update is installed in a mass storage device, and this module is used to periodically connect to a server via the Internet to receive the latest version of software from Sano and use it as a mass storage device. Store.
  • Patent Document 1 describes a system power for coping with these.
  • the execution program is rewritably stored in the first storage means.
  • the download module including the new execution program and module identification information is stored in the second storage unit.
  • the download module encrypted with the encryption key created from the execution program and module identification information stored in the first storage means is received and stored in the second storage means.
  • the download module is decrypted with the encryption key created from the execution program in the first storage means and the download module in the second storage means. If the storage start address encrypted in the download module, the data length and the check digit are deciphered into valid values, the new executable program decrypted is used to execute the executable program in the first storage means. replace. That is, by using the current execution program and the identification information of the download module, the encrypted download module is received to prevent falsification or decryption of the execution program.
  • Patent Document 1 International Publication 2002Z057904 Pamphlet
  • Patent Document 2 Japanese Patent Application Laid-Open No. 2002-290396
  • each home appliance stores a key ring including a plurality of keys in advance, One key is selected from the key ring, the information to be distributed is encrypted by the selection key, and the encrypted information is distributed to each home appliance together with the identification information of the selection key.
  • FIG. 1A it is assumed that home appliances with different software versions installed.
  • Each home appliance stores a key ring made up of n keys K1 to Kn.
  • the server selects one of the keys Ka from the key ring and distributes the software with the selected key Ka. It encrypts and delivers the encrypted software along with the identification information a of the selection key Ka.
  • Each home appliance selects the key Ka according to the identification information a, decrypts the software, and executes the software replacement.
  • An object of the present invention is to provide a data storage device, a management server, an integrated circuit, a data update system, a home appliance, a data update method, capable of updating software of a device such as a home appliance safely and efficiently. It is to provide an encryption method and a decryption key generation method.
  • a data storage apparatus comprises: data storage means for storing data Pn released to the n-th (n ⁇ 1); first generated information and second generated information for generating key information
  • Key generation information storage means for storing, key generation means for generating key information from the first generation information and the second generation information, the data, the first generation information, and the second generation.
  • a data storage device comprising: updating means for updating information, wherein the first generation information stored in the key generation information storage means includes an irreversible operation X for the first secret information A.
  • the second generation information X (n, A) performed n times is the irreversible operation Y performed on the second secret information B M ⁇ n times (M ⁇ n ⁇ l) Y (M ⁇ n, B)
  • the data storage device in which the released data is stored in n ⁇ i-th to n + j-th (M j n + j n n-n-i 1 1) is the update target
  • the key generation means performs the irreversible operation X j times on the first generated information to obtain X (n + j, A
  • the irreversible operation Y is performed on the second generated information i times to generate Y (M ⁇ n + i, B), and further, the X (n + j, A) and Y (M ⁇ n) are generated.
  • the updating means generates
  • the encrypted information of the update information is decrypted using the key information G (X (n + j, A), Y (Mn + i, B)), and the data Pk and the first generated information X (k) are decrypted.
  • A) and the second generated information Y (M ⁇ k, B) and stored in the data storage unit the data Pn is updated to the data Pk and stored in the key generation information storage unit.
  • the first generated information X (n, A) and the second generated information Y (M ⁇ n, B) are respectively generated by the first generated information X (k, A) and the second generated information Y. Update the configuration with (M ⁇ k, B) take.
  • the management server of the present invention comprises: secret information holding means for holding the first secret information A and the second secret information B for each type of data storage device; and a first generation for storing the first secret information A and the second secret information B in the data storage device.
  • a management server comprising generation information generation means for generating information and second generation information, the data storage apparatus storing the data Pn released to the n-th (nll);
  • the generation information generation means reads out the first secret information A and the second secret information B from the secret information holding means, performs irreversible operation X on the first secret information A n times, and generates the first generation information X (n, A) is generated, and irreversible operation Y is performed M ⁇ n times (M n l l) on the second secret information B to generate second generation information Y (M ⁇ n, B) Take the configuration.
  • the management server of the present invention includes secret information holding means for holding the first secret information A and the second secret information B for each type of data storage device, and a first generation for storing the first secret information A and the second secret information B in the data storage device.
  • Generation information generation means for generating information and second generation information, encryption key generation means for generating key information from the first generation information and the second generation information, and update information to be transmitted to the data storage device
  • a management server including update information generation means for generating data, which stores data released to n ⁇ i th to n + j th (M (n + j ⁇ n n n i 1 1)
  • the generation information generation unit When generating update information including data Pk that is the k-th (M ⁇ k) l) release to the storage device, the generation information generation unit generates the first secret information A from the secret information holding unit and Read out the second secret information B and perform irreversible operation X on the first secret information A k times 1 product information X (k, A) generates an irrevers
  • the update information generation means concatenates the data Pk, the first generation information X (k, A) and the second generation information Y (M ⁇ k, B), and the key information Control information that encrypts using information G (X (n + j, A), Y (M-n + i, B)) and further controls update information processing in the data storage device that has received update information To connect and generate update information.
  • the integrated circuit according to the present invention is an integrated circuit mounted on a data storage device storing data Pn released to the n-th (n ⁇ 1), which comprises: first generated information for generating key information; Key generation information storage means for storing 2 generation information, key generation means for generating key information from the first generation information and the second generation information, data stored in the data storage device, and And updating means for updating the first generation information and the second generation information, wherein the first generation information stored in the key generation information storage means is not reversible to the first secret information A.
  • X (n, A) where the operation X is performed n times
  • the second generated information is Y (M ⁇ n) where the irreversible operation Y is performed M ⁇ n times (M ⁇ n ⁇ l) on the second secret information B.
  • the encryption of the update information is decrypted using the key information G (X (n + j, A), Y (Mn + i, B)) to obtain the data Pk and the first generated information X (k, A) and the second generation information Y (M ⁇ k, B) are acquired, and the data Pn stored in the data storage device is updated to the data Pk and stored in the key generation information storage means
  • the first generated information X (n, A) and the second generated information Y (M ⁇ n, B) are respectively generated by the first generated information X (k, A) and the second generated information.
  • a data updating system includes a data storage device for storing data Pn released to the n-th (n 11), a management device for holding device information of the data storage device, and the data storage device.
  • a data updating system comprising a management server for updating the data stored in the data storage device, the data storage apparatus comprising: data storage means for storing data Pn; and a first for generating key information.
  • Key generation information storage means for storing generation information and second generation information, key generation means for generating key information from the first generation information and the second generation information, the data and the first Updating means for updating the generation information and the second generation information
  • the first generation information stored in the key generation information storage means includes an irreversible operation X on the first secret information A and n
  • the second generation of X (n, A) is the second It is Y (Mn, B) where the irreversible operation Y is performed Mn times (M-n l l) on the secret information B of the information
  • the management device holds the device information registered from the data storage device Device management means, and data update means for updating data stored in the data storage device
  • the management server comprising: a first secret information A and a second secret information B; Secret information holding means for holding each type of data, generation information generating means for generating the first generation information and the second generation information to be stored in the data storage device, the first generation information and the second generation information And an update information generation unit for generating update information to be sent
  • the management server reads the first secret information A and the second secret information B from the secret information holding means by the generated information generation means, and irreversibly generates the first secret information A.
  • the operation X is performed k times to generate the first generated information X (k, A), and the irreversible operation Y is performed on the second secret information B M ⁇ k times to generate the second generated information Y (M ⁇ k , B), and the encryption key generation means performs irreversible operation X on the first secret information A by n + j.
  • the control information is linked to generate update information, the generated update information is distributed to the management apparatus, and the management apparatus that receives the update information is used as the control information of the update information received by the collating means.
  • the device information contained is compared with the device information stored in the device information management means, and the device information matches.
  • the update processing control means stores the received update information in the storage means, and the update information is stored in the data storage device in which the device information matches.
  • the key generation means performs the irreversible operation X on the first generated information j times to generate X (n + j, A), and the second storage It is impossible to the generation information.
  • Inverse operation Y is performed i times to generate Y (M ⁇ n + i, B), and further, from the above X (n + j, A) and Y (M ⁇ n + i, B) Key information G (X (n + j, A), Y (Mn-i, B)) is generated, and the updating means generates the generated key information G (X (n + j, A), Y
  • the encryption of the update information is decrypted using (M ⁇ n + i, B)), and the data Pk and the first generation information X (k, A) and the second generation information Y (M ⁇ k, B) are decrypted.
  • the data Pn stored in the data storage means are updated to data Pk, and the key generation information storage means
  • the first generation information X (n, A) and the second generation information Y (Mn, B) stored in the stage are respectively generated by the first generation information X (k, A) and the second generation information X (k, A).
  • a household electrical appliance is a household electrical appliance which updates current data to new data, and a receiver for receiving the encrypted new data and the serial number of data to be updated, and the update object A generation unit that performs a predetermined irreversible operation on the unique information associated with the current data by the number of times according to the serial number of the data to generate a key, and a decryption unit that decrypts the new data with the key And a configuration having
  • the data update method of the present invention is data used for updating to current data new data
  • the generation step of generating the key by applying to the unique information associated with the data, and the decryption step of decrypting the new data with the key are provided.
  • the decoy key generation method is a decoy key generation method for generating a key to be used for encryption or decryption of data, which is specific information associated with the data, and the data. And a generation step of performing a predetermined irreversible operation on the unique information to generate a key the number of times according to the serial number of the data.
  • the encryption key generation method of the present invention is an encryption key generation method for generating a key to be used for encryption of data, and includes first secret information A and second secret information B associated with the data. Acquiring and acquiring n, j (n ⁇ 0, j 0 0) irreversible operations X on the first secret information A to generate X (n + j, A), and Irreversible operation Y is performed M ⁇ n + i times (M ⁇ 0, i ⁇ 0) on the second secret information B to generate Y (M ⁇ n + i, B), and X (n + j). , A) and Y (M ⁇ n + i, B) are also combined to generate a key.
  • the decryption key generation method of the present invention is a decryption key generation method for generating a key to be used for decryption of data, and the first generation information Ca and the second generation information C b associated with the data. And acquiring the irreversibly operation X j j times (j 0 0) on the first generated information Ca to generate X (j, Ca), and irreversibly to the second generated information Cb.
  • the operation i is performed i times (i ⁇ 0) to generate Y (i, Cb), and the step of synthesizing a key from information including the X (j, Ca) and the Y (i, Cb). , To have.
  • the encryption method of the present invention is an encryption method for encrypting data, which comprises: first secret information A, second secret information B, and third secret information C associated with the data
  • the encryption key generation method of the present invention is an encryption key generation method for generating a key to be used for encryption of data, and the first secret information A and the second secret information B associated with the data.
  • the step of generating (n + j, A) and the irreversible operation Y on the second secret information B are performed M ⁇ n + i times (M 0 0, i 0 0) and Y ( ⁇ ⁇ n + i) , B) and performing irreversible operation U s + q times (s 0 0, q 0 0) on the third secret information C to generate U (s + q, C);
  • Irreversible operation V is performed M ⁇ s + p times (p 0 0) on the fourth secret information D to generate V (M ⁇ s + p, D); and X
  • the decryption key generation method of the present invention is a decryption key generation method for generating a key to be used for decryption of data, and the first generation information Ca and the second generation information C b associated with the data.
  • the step of generating, and the step of generating Y (i, Cb) by performing the irreversible operation Y i times (i 0 0) on the second generated information Cb and the irreversible operation on the third generated information Cc Step of generating U (q, Cc) by performing U q q times (q ⁇ 0) and performing irreversible operation V p times (p 0 0) on the fourth generated information C d V (p, C d
  • the step of synthesizing the key as well as the step of generating the information, and the
  • FIG. 1A is a diagram showing an example of a conventional software update method.
  • FIG. 1B A diagram showing another example of the conventional software updating method.
  • FIG. 2 A block diagram showing the configuration of the software update system according to the first embodiment of the present invention
  • FIG. 3 shows the interrelationship of data stored in the home appliance according to the first embodiment of the present invention
  • FIG. 4A A diagram showing current data, update target data, and new data according to Embodiment 1 of the present invention.
  • FIG. 4B A diagram showing update information and control information according to Embodiment 1 of the present invention.
  • FIG. 5A Flow chart of encryption processing by the device management server according to Embodiment 1 of the present invention
  • FIG. 5B A flow chart of decryption processing by a home electric appliance according to Embodiment 1 of the present invention
  • FIG. 6 A block diagram showing the configuration of a software update system according to Embodiment 2 of the present invention
  • FIG. 7A A block diagram showing the configuration of a software update system according to Embodiment 3 of the present invention.
  • FIG. 7B is a block diagram showing the configuration of a device management module according to Embodiment 3 of the present invention.
  • FIG. 8 is a diagram showing a flowchart of update processing in a software update system according to Embodiment 3 of the present invention.
  • FIG. 9A is a diagram showing the configuration of a software update system according to a fourth embodiment of the present invention.
  • FIG. 9B A block diagram showing a configuration of a device management module according to Embodiment 4 of the present invention.
  • FIG. 10 A diagram showing a flow of update processing in a software update system according to Embodiment 4 of the present invention.
  • FIG. 11A A diagram showing a configuration of a software update system according to Embodiment 5 of the present invention.
  • FIG. 11B is a diagram showing the configuration of a device management module according to Embodiment 5 of the present invention.
  • FIG. 11C A diagram showing the configuration of another device management module according to Embodiment 5 of the present invention.
  • FIG. 12 Failure of update processing in the software update system according to Embodiment 5 of the present invention Diagram showing a row
  • FIG. 13 A block diagram showing the configuration of a software update system according to a sixth embodiment of the present invention.
  • FIG. 14 A block diagram showing a configuration of a software update system according to Embodiment 7 of the present invention.
  • FIG. 15 A diagram showing a flow of update processing in the software update system according to Embodiment 7 of the present invention.
  • FIG. 16 A block diagram showing a configuration of a software update system according to an eighth embodiment of the present invention.
  • ⁇ 18A A diagram showing current data, update target data, and new data according to Embodiment 8 of the present invention.
  • ⁇ 19A Flow chart of encryption processing by the device management server according to Embodiment 8 of the present invention
  • ⁇ 19B Flow diagram of decryption processing by a home electric appliance according to Embodiment 8 of the present invention If the serial number of the software version of the installed software is n (n-i ⁇ n ⁇ n + j)
  • FIG. 20 A block diagram showing a configuration of a software update system according to a ninth embodiment of the present invention.
  • ⁇ 21 A diagram showing the interrelationship of data stored in the home electric appliance according to Embodiment 9 of the present invention
  • ⁇ 22A A diagram showing current data, update target data, and new data according to Embodiment 9 of the present invention.
  • FIG. 23A A diagram showing update information and control information according to Embodiment 9 of the present invention
  • FIG. 23B Flow chart of encryption processing by a device management server according to Embodiment 9 of the present invention
  • FIG. 23B Flow diagram of decryption processing by a home appliance according to Embodiment 9 of the present invention Best form to do
  • FIG. 2 shows a data communication system as a software update system according to the first embodiment of the present invention.
  • the software update system includes a home appliance 100 having a software update function, a device management server 150 for delivering update information including new encrypted software to the home appliance 100, a home appliance 100 and a device management server 150. And a communication path 160 for enabling data communication between the two.
  • the device management server 150 is installed and managed by a manufacturer or sales company that manages software of the home appliance 100.
  • Home appliance 100 includes a receiving unit 140 that receives the distributed update information, a mechanism unit 130 configured by hardware that performs an actual physical operation related to the original function of home appliance 100, and a mechanism unit 130. And a device management module 110 for updating software stored in the control unit 120.
  • the control unit 120 further includes a control code storage unit 121.
  • the control code storage unit 121 includes a control code 122 as software of the home electric device 100, and a user setting 123 which is information set by the user. , Is stored. Further, the control unit 120 includes a central processing unit (CPU) that controls the mechanical unit 130 by executing the control code 122 and a memory that forms the control code storage unit 121.
  • CPU central processing unit
  • the device management module 110 includes a generation information storage unit 111 that stores generation information Cal 14 and generation information Cbl 15 which are key components for generating a key used for B sound decryption processing. Acquisition unit, operation unit, synthesis unit, and key generation unit 112 as a generation unit, and a machine as a decryption unit for decrypting update information using the generated key And an update unit 113 which updates the software with the decrypted update information. Also, the device management module 110 is configured by an integrated circuit, and this integrated circuit executes software modules corresponding to the key generation unit 112 and the update unit 113. It is assumed that the integrated circuit is composed of a CPU and a memory forming the generation information storage unit 111, and preferably has tamper resistance.
  • the device management server 150 includes a secret information storage unit 151, a generation information generation unit 152, an encryption key generation unit 153, an update information generation unit 154, an update information distribution unit 155, and an update status management unit 156.
  • the secret information holding unit 151 holds secret information A 157 and secret information B 158 which are original information for generating the generation information.
  • the secret information is usually different depending on the model of the home appliance, and is strictly managed by the device management server 150 which is not disclosed outside.
  • the device management server 150 distributes updated information to home electric appliances of multiple models, it manages a pair of secret information A and B for each model. If the same software is used for home appliances of different models, the same secret information may be assigned.
  • Generation information generation unit 152 generates generation information from secret information A 157 and secret information B 158.
  • the cryptographic key generation unit 153 combines the generated generation information to generate a key.
  • the update information generation unit 154 encrypts new software using the generated key to generate update information.
  • the update information distribution unit 155 distributes the generated update information to the home appliance 100.
  • the update status management unit 156 manages the software update status of the home electric device 100.
  • the communication path 160 is, for example, a broadcasting network such as television broadcasting, a wired communication network such as the Internet, or a wireless communication network such as a mobile phone.
  • the data communication between the home appliance 100 and the device management server 150 may be via a storage medium such as a memory card or an IC card instead of via the communication path 160.
  • FIG. 3 is a diagram showing the interrelationship of data stored in the home appliance 100, that is, the control code and the two pieces of generated information Ca and Cb.
  • the generated information Ca and Cb are information generated by the generated information generation unit 152 of the device management server 150 from the secret information A 157 and the secret information B 158, respectively, and differ depending on the serial number of the software version of the home appliance 100. ing.
  • the al number is a number indicating the order of software release, and shall be counted up each time a new version is released.
  • the serial number of the first version of software is "1", and the number is incremented by "1" each time a new version is released.
  • the version number of the first version of software is Version 1.0.0
  • the version number of the next released software is Version 1.0.1
  • the version number of the next released software is Version 1.0.2
  • the serial number of the software version of Version 1.0.0 is 1
  • the serial number of the software version of Version 1.0.1 is 2
  • Version 1.0 is 2
  • the serial number of software version 2 is 3, the serial number of software version 1.1.0 is 4, and so on.
  • X and Y indicate mutually different predetermined irreversible operations! /.
  • X (p, a) indicates the result of repeating the irreversible operation X p times to the data a
  • Y (q, b) indicates the result of repeating the irreversible operation Y q times to the data b . Therefore, the generated information X (l, A) is the result of performing the irreversible operation X once on the confidential information A, and the generated information Y (M ⁇ 1, B) is the irreversible operation Y on the confidential information B. Is the result of repeating M-1 time.
  • M-1 indicates the maximum value of the serial number of the software version, and M (M-1: an integer of 1 1 1) is a sufficiently large value.
  • the generated information X (n, A) is the result when the irreversible operation X is repeated n times on the secret information A. Yes, generated information X (n, A) can not calculate secret information A. Also, the generated information Y (Mn, B) is the result of repeating the irreversible operation Y M times n times to the secret information B, and the secret information B is calculated from the generated information Y (Mn, B). I can not do that.
  • the device management server 150 is installed in the home appliance to be updated when it is necessary to update the software of the home appliance of the model managed by the device management server 150 to a new software. Based on the version, it encrypts software, generates update information, and distributes it to each home appliance via the communication path 160.
  • the secret information A 157 and the secret information B 158 corresponding to the home appliance 100 are read from the generated information generation unit 152 of the device management server 150 from the secret information holding unit 151, Secret information A 157 Irreversible operation X is performed n + j times to generate generated information X (n + j, A), and irreversible operation X is performed k j times to generate serial information n + k in case of generated information Ca X (n + k, A) is generated (step 401), and irreversible operation Y is performed M ⁇ n ⁇ k times on the secret information B 158 and the generated information Cb in the case of serial number n + k Y (M ⁇ n ⁇ k, B) are generated, and the irreversible operation Y is performed k + i times to generate generated information Y (M ⁇ n + i, B) (step 402).
  • the encryption key generation unit 153 combines the generated information X (n + j, A), the generation information Y (M ⁇ n + i, B), and the serial number n + k, and generates the key F ( X (n + j, A), Y (M-n + i, ⁇ ), n + k) are generated (step 403).
  • the update information distribution unit 155 distributes the generated update information to each home appliance including the home appliance 100 via the communication path 160.
  • control information is information for controlling the processing of the update information in the home appliance 100 that has received the update information.
  • Control information includes information that specifies the model of the home appliance that is the target of the update. Specifically, for example, a manufacturer code indicating a manufacturer, a model number of a home electronic device, and a serial number of a software version may be included, and further, information indicating a range of manufacturing serial numbers may be included.
  • the control information includes the serial number of the updated software version as information defining the updated software version.
  • the control information may include program data actually executed on the home electric appliance, and may further include verification data such as an electronic signature for verifying the correctness of the program data. Also good. In the case of the present embodiment, it is assumed that program data for converting the user setting 123 stored in the control code storage unit 121 into a data format that is valid even in new software is included.
  • home appliance 100 receiving the update information generates a key for decrypting the encryption of the update information from the generation information based on the control information of the update information, and decrypts the encryption of the update information.
  • Update the software to what was included in the update information the case where the serial number of the software version of the software installed in the home appliance 100 is n (n ⁇ i ⁇ n ⁇ n + j) will be described as an example.
  • the receiving unit 140 of the home appliance 100 receives the update information distributed from the device management server 150 via the communication path 160.
  • the update unit 113 of the device management module 110 of the home appliance 100 determines whether the software needs to be updated based on the control information of the update information (step 410). Specifically, the control information is acquired, specified in the acquired control information, the manufacturer code and the model number correspond to the maker code and the model number of the home electric appliance 100, respectively, and further, in the control information. Prescribed in the serial number of the software version of the software version subject to update 10 If the software version serial number of 0 is included, it is determined that "update required". If it is determined in step 410 that the update is not necessary, the update unit 113 discards the received update information as it is.
  • the program data contained in the control information is executed and stored in the control code storage unit 121, and the user setting 123 is a valid data format even if the control code Pn + k is new.
  • Update the user settings 123 by converting to and complete the software update.
  • the update unit 113 checks the notice bit of the decrypted data, and the decryption processing is normally performed. Check what happened.
  • the software version of installed software is specified in the control information of update information. If the home appliance is the software version to be updated (serial number n: n-i ⁇ n ⁇ n + j), generate a key to decrypt the encrypted part of the update information And can update software. At this time, the device management server 150 distributes multiple update information for each home appliance version It is not necessary to do so The load on processing can be reduced by distributing updated information encrypted with only one type of key, so the cost for server facilities can be reduced.
  • the home appliance 100 has only two pieces of generated information, it is sufficient to perform processing with a small amount of data and with a small load such as hash calculation, while the group of update information to be delivered for each update. Since the decryption key can be changed, the security of the delivery of the update information is improved.
  • the software version of the software is prescribed by the control information of the software version power update information, and the software version of the update target is not, In the case, the encrypted information of the update information Because you can not generate a key for decryption
  • I can not update the software.
  • the software version of the software installed in the home appliance is not the update target, and in the case, it is possible to generate a key for decrypting the encrypted part of the update information. Because it does not exist, it is possible to prevent an erroneous update of software due to a user's erroneous operation or the like.
  • the key for encrypting the update information is F (X (n + j, A), Y (M ⁇ n + i, ⁇ ), ⁇
  • G (X (n + j, A), Y (M-n + i, B) with only the forces X (n + j, A) and Y (M-n + i, B) as variables ) May be used as a key for encrypting the update information.
  • the key generation unit 112 of the home electric device 100 is generated in the process of step 413.
  • a key G (X (n + j, A) for decrypting the encrypted part of the update information from the generated information X (n + j, A) and Y (M ⁇ n + i, B) , Y (M ⁇ n + i, B)) are generated. If the software versions to be updated are the same, the key is also the same, but even in this case, the software version to be updated can be limited, and the key generation process on the home appliance side can be simplified. You can hesitate.
  • the device management module 110 is an integrated circuit having a CPU different from the CPU of the control unit 120 in the above description, the function of the device management module 110 is not limited to the CPU of the control unit 120 and the memory. Even if it is configured by and, it is good!
  • control code stored in home appliance 100 is updated, it is possible to update specific data stored in home appliance 100 with a similar mechanism, using control codes alone.
  • specific data that is good includes multimedia content, license information, table information referred to by the control code, database, and the like.
  • home appliance 100 can be updated by updating specific data stored in home appliance 100 by the same mechanism. Some or all of the functions of may be disabled. As the specific data, control code, internal control flag information of home appliance 100, key data used for encryption processing, multimedia 'content, license information, table information or database to which control code refers, etc. By updating them to invalid data, which is included, some or all of the functions of the home appliance 100 are disabled.
  • FIG. 6 is a block diagram showing the configuration of a software update system according to a second embodiment of the present invention.
  • the software update system described in the present embodiment has basically the same configuration as that described in the first embodiment. Therefore, in the present embodiment, the same components as those described in the first embodiment are denoted by the same reference numerals, and the detailed description thereof is omitted.
  • the software update system according to the present embodiment differs from the software update system according to the first embodiment in that the home appliance management device is connected between the home appliance and the device management server. This is especially a home appliance that does not have the ability to connect to an external network In order to ensure that software updates can be performed reliably and efficiently.
  • the software update system includes a home appliance 500 having a function of updating software, and an embodiment 1 including encrypted new software and A device management server 550 for distributing similar update information to the home appliance 500, and a home appliance management device 570 for managing a plurality of home appliances including the home appliance 500 in the home.
  • the home appliance 500 also includes the control unit 120 and the mechanism unit 130 described in the first embodiment, and a device management module that updates software stored in the control unit 120.
  • the device management module 510 communicates with the home appliance management device 570 via the local network 561 to the generated information storage unit 111, the key generation unit 112, and the update unit 113 described in the first embodiment. And a local communication unit 517 as a transfer unit, and a device information registration unit 516 as a notification unit for constantly registering the device information of the home appliance 500 in the home appliance management device 570 via the local network 561.
  • the local network 561 may be a power line network performing communication via a power line, a short distance wireless network using wireless communication of a noncontact IC card, or a short distance wireless communication such as infrared, a LAN network, or a wireless network. It may be a LAN network.
  • the device management module 510 includes a CPU that executes software modules corresponding to the key generation unit 112, the update unit 113, and the device information registration unit 56, a memory that forms the generation information storage unit 111, and a local And a modem circuit forming the communication unit 517.
  • the device information registration unit 516 notifies the home appliance management device 570 of its own device information through the local communication unit 517 in advance via the local network 561 in the house where the home appliance 500 is installed. Thus, registration of device information is performed.
  • the device information registered in the device information management unit 573 includes the maker code, model number and manufacturing number of the home appliance, and the serial number of the software version of the home appliance.
  • Device management server 550 has the same internal configuration as device management server 150 described in the first embodiment.
  • the generated update information is home appliance management It is delivered to the device 570.
  • the home appliance management device 570 receives the update information from the device management server 550 via the communication path 560, and the local communication unit 571 communicates with the home appliance via the local network 561. And the device information management unit 573 that manages device information notified for registration of each home appliance for each home appliance and holds it as the device information list 576, and cooperates with the device management module of each home appliance. It comprises a data update unit 574 for updating software of each home device, and a communication unit 575 for notifying the device management server 550 of the result of software update of each home device together with device information.
  • the collation unit 577 collates the information defining the model of the home appliance to be updated in the control information of the update information with the device information of the device information list 576, Determine whether home appliances that require software update have been registered. If a home appliance whose appliance information matches the home appliance to be updated is registered, the update processing control unit 579 communicates with the corresponding home appliance 500 via the local network 561 to perform software update processing. Do. In the process of the update processing at this time, the received data update unit 578 holds the received update information, and the home appliance 500 backs up the software before update to the data storage unit 578.
  • the communication path 560 may be a broadcasting network such as television broadcasting, a wired communication network such as the Internet, or a wireless communication network such as a mobile phone, or may be a plurality of types of communication networks.
  • the device information management unit 573 includes a non-volatile memory storing the device information list 576.
  • the data updating unit 574 is configured by a CPU that executes software modules corresponding to the checking unit 577 and the update processing control unit 579, and a memory that forms the data holding unit 578. At the time of the updating process, the data holding unit 578 holds the received update information and the pre-update software of the encrypted home appliance.
  • device information of a home appliance is registered in home appliance management device 570, and home appliance management device 570 receives update information from device management server 550.
  • each home appliance is configured to receive the update information and update the software via the home appliance management device 570.
  • the function to receive update information directly from the device management server 550 to each home appliance Since it is not necessary to have the function of connecting to an external network, such as a TV tuner or an Internet modem, home appliances equipped with a software update function can be configured at low cost.
  • the home appliance management device 570 receives the update information distributed from the device management server 550. This will ensure that the software for each home appliance can be updated.
  • each home appliance does not have to be in the power-on state.
  • the update process with the home appliance management device 570 is performed. By doing this, you can ensure software updates.
  • the update process can be performed in each home appliance. You can minimize the memory required for this.
  • the process in the case where the update process fails may be performed based on program data included in the control information of the update information set by the device management server 550. Also, based on the program data, there may be cases where the software prior to updating that has been knocked up can be restored to its original state by restoring it, but there is no need to do this. In some cases, the function is set to stop functioning.
  • the device management module 510 is an integrated circuit having a CPU different from the CPU of the control unit 120 in the above description, the function of the device management module 510 is not limited to the CP of the control unit 120.
  • the local communication unit 517 is built in the device management module 510 in the above description, a local communication module that performs local communication with the home appliance management device 570 independently of the device management module 510 is provided.
  • a local communication module that performs local communication with the home appliance management device 570 independently of the device management module 510 is provided.
  • the update status management unit 156 of the device management server 550 further has a function of managing user information and loyalty point information of the user of the home appliance 500, and the home appliance 500 It is also possible to give loyalty points to users who have updated their software.
  • the information for notifying the device management server 550 of the update of the software of the home appliance 500 from the home appliance management device 570 includes the identification information of the user who manages the home appliance 500.
  • the update status management unit 156 updates the software update status of the home appliance 500, and further, , Add a predetermined point to the mouth point information of the user of the home appliance 500.
  • the number of purchasers of the home appliance 500 and the home appliance management apparatus 570 corresponding to the software update system of the present invention increases.
  • the number of users of software update systems can be expected to increase.
  • the software of home appliance 500 is updated to provide the user with a loyalty point.
  • the software of home appliance 500 is updated to provide the user's loyalty point information.
  • a predetermined point may be subtracted from. This is more than updating software due to software defects etc.
  • upgrading software for a fee such as upgrading to the latest software with new functions added, royalty points are paid as compensation. It is something to use.
  • control code stored in home appliance 500 is updated, it is possible to update specific data stored in home appliance 500 with the same mechanism, using control codes alone.
  • specific data that is good includes multimedia content, license information, table information referred to by the control code, database, and the like.
  • home appliance 500 can be updated by updating specific data stored in home appliance 500 by the same mechanism. Some or all of the functions of may be disabled. As the specific data, control code, internal control flag information of home appliance 500, key data used for encryption processing, multimedia 'content, license information, table information or database to which control code refers, etc. House included by updating them to invalid data Disable some or all of the functions of the electronic device 500.
  • FIG. 7A is a block diagram showing a configuration of a software update system according to Embodiment 3 of the present invention.
  • FIG. 7B is a block diagram showing a configuration of a device management module according to Embodiment 3 of the present invention.
  • the software update system described in this embodiment has basically the same configuration as that described in the above embodiment. Therefore, in the present embodiment, the same components as those described in the above-described embodiments are denoted by the same reference numerals, and the detailed description thereof will be omitted.
  • a home electric appliance management device is connected between the home electric appliance and the device management server.
  • the household appliance updating system of the present embodiment is an application of the home electric appliance management apparatus described in the second embodiment to a stationary apparatus such as a television receiver.
  • the software update system includes home appliance 500 described in the second embodiment, and home appliance 501 having the same internal configuration as home appliance 500, and the home appliance.
  • a home electric appliance management television receiver 670 as an equipment management apparatus, an equipment management server 550 described in the second embodiment, and a broadcasting station 659 for broadcasting a TV program and the like.
  • the device management server 550 and the broadcast station 659 are communicably connected via a predetermined communication line.
  • the broadcast station 659 and the home appliance management television receiver 670 are communicably connected by a broadcast network 660.
  • the device management server 550 and the home appliance management television receiver 670 are communicably connected via the Internet 662.
  • the home appliance management television receiver 670 and the home appliances 500 and 501 are communicably connected by a power line network 661.
  • the device management module 510 of the home appliance 500, 501 includes a power line network 661 in addition to the generated information storage unit 111, the key generation unit 112, the update unit 113 and the device information registration unit 516.
  • a power line communication unit 1501 as a local communication unit that communicates with the home appliance management television receiver 670 is provided.
  • the home appliance management television receiver 670 includes the data update unit 574 and the device information management unit 573 described in the second embodiment, the update information reception unit 571 described in the second embodiment, the local communication unit 572 and the communication.
  • a broadcast reception unit 671 corresponding to the unit 575, a power line communication unit 672, an Internet communication unit 675, and a television function unit 676 are provided.
  • the broadcast reception unit 671 receives update information included in normal television broadcast and broadcast data.
  • the power line communication unit 672 communicates with the home appliance via the power line network 661.
  • the Internet communication unit 675 notifies the device management server 550 of the software update result of each home device via the Internet 662.
  • a television function unit 676 displays a normal television broadcast.
  • FIG. 8 shows a flow of software update processing in the present embodiment.
  • the home appliances 500 and 501 register the device information in the home appliance management television receiver 670 via the power line network 661 (step 1: registration of the device information).
  • step 2 generation of update information
  • the procedure for generating the update information is the same as the procedure described in the first embodiment.
  • the device management server 550 requests the broadcasting station 659 to distribute the update information (step 3: distribution information update request), and the broadcasting station 659 receives the home appliance management television receiver 670 through the broadcasting network 660.
  • the information and equipment specifying the model of the electric appliance to be updated in the control information of the update information in the update information control unit 577 The device information in the information list 576 is collated to determine whether a home appliance for which the software needs to be updated is registered (step 5: collation of device information)
  • the update processing control unit 579 stores the update information in the data holding unit 578, and the power line communication unit 672 is applicable. Send an update request message including the control information part in the update information to home appliance 500 (step 6: update request). At this time, if communication with home appliance 500 can not be performed for some reason and transmission of the update request message fails (home appliance 500 is not connected to the power line network).
  • the update processing control unit 579 indicates that the software update of the home appliance 500 is necessary on the TV screen, the user can tell the user the power line network 661 of the home appliance 500. Encourages connection. When communication with home appliance 500 becomes possible, an update request message is sent to home appliance 500 again.
  • the device management module 510 updates the update information based on the control information of the update information contained in the update request message.
  • Generate a key to decrypt the encryption (step 7: Key generation).
  • the procedure for generating the key is the same as the procedure described in the first embodiment.
  • the device management module 510 encrypts the generated information Ca, Cb, the control code, and the user setting before update using the generated key, and the data holding unit 578 of the home electric appliance management television receiver 670. Transfer for backup (Step 8: Backup).
  • the update processing control unit 579 of the home appliance management television receiver 670 transmits the encrypted generation information Ca and Cb in the update information and the control code through the power line communication unit 672.
  • Send to home appliance 500 step 9: Send updated data).
  • the device management module 510 of the home appliance 500 decrypts the encryption of the update information, and updates the control code and the generated information Ca, Cb (step 10: data update).
  • the update processing control unit 579 of the home appliance management television receiver 670 updates the device information of the home appliance 500 for which the software update has been performed, together with the result of the update process, via the Internet communication unit 675.
  • the update status management unit 156 of the device management server 550 is notified and the update processing is completed (step 11: notification of update completion).
  • the encrypted update information is collectively transmitted, and is not decrypted at the home appliance 500 side. It transmits, performs decoding on a block basis, and performs update processing.
  • the device information of the home appliance is registered in the home appliance management television receiver 670, and the home appliance management television receiver 670 transmits the broadcast network 660 through the broadcast network 660.
  • each home appliance receives the update information via the home appliance management television receiver 670 and performs the software update. This eliminates the need for each home appliance to have the function of directly receiving update information from the device management server 550 or the function of connecting it to an external network, and also enables each home appliance to decrypt the encryption of the update information. Since the memory capacity required for home appliances can be reduced, home appliances equipped with a software update function can be configured at low cost.
  • the home appliance management television receiver 670 can reliably receive the update information through the broadcast network 660, and can reliably update the software of each home appliance.
  • the data holding unit 578 of the data updating unit 574 of the home appliance management television receiver 670 can be used as a backup area of the software before the update, it is necessary for the updating process in each household electric appliance. Memory can be minimized. In addition, even if the update processing fails, it is possible to restore the original state by restoring the software before update that has been knocked up, thereby further improving the security of the update processing. .
  • the home appliance management television receiver 670 receives update information via the broadcast reception unit 671.
  • the update information is received from the device management server 550 via the Internet 662 via the Internet communication unit 675. You may do it.
  • a URL (Uniform Resource Locator) of the device management server 550 is further registered in the device information list 576 as one of the device information.
  • the home appliance management television receiver 670 periodically transmits an update information request from the update processing control unit 579 to the device management server 550 indicated by the URL via the Internet communication unit 675.
  • the device management server 550 transmits the update information to the home appliance management television receiver 670 when there is update information that needs to be distributed.
  • the home appliance management television receiver 670 performs the same processing as the update information received via the broadcast reception unit 671 on the update information received via the Internet communication unit 675.
  • the home appliance management television receiver 670 transmits the update information request transmitted from the home appliance management television receiver 670 to the device management server 550 from the home appliances 500 and 501. It may be transmitted based on the received update processing request.
  • the update processing request is a message for the home appliance 500 or 501 to request the home appliance management television receiver 670 to perform software update processing.
  • the home appliance management television receiver 670 that has received the update processing request via the power line communication unit 672 transmits the update information request to the device management server 550.
  • the subsequent processing is the same as the procedure described above.
  • FIG. 9A is a block diagram showing the configuration of a software update system according to a fourth embodiment of the present invention. Further, FIG. 9B is a block diagram showing the configuration of the device management module according to the present embodiment.
  • the software update system described in the present embodiment has basically the same configuration as that described in the previous embodiment. Therefore, in the present embodiment, the same reference numerals are attached to the same components as those described in the above-mentioned embodiment, and the detailed description thereof is omitted.
  • a home electric appliance management device is connected between the home electric appliance and the device management server.
  • the software update system of the present embodiment applies the home appliance management device described in the second embodiment to a portable device having a digital broadcast reception function, for example, a portable terminal such as a mobile phone. It will be
  • the software update system is the home appliance 500 described in the second embodiment, the home appliance 501 described in the third embodiment, and the home appliance management device.
  • a home electric appliance management portable terminal 870 as an embodiment, an apparatus management server 550 described in the second embodiment, and a broadcasting station 859 providing a one-segment broadcasting service such as a TV program are also configured.
  • the device management server 550 and the broadcasting station 859 are communicably connected via a predetermined communication line.
  • the broadcast station 859 and the home appliance management portable terminal 870 are communicably connected by a broadcast network 860.
  • the device management server 550 and the home appliance management portable terminal 870 are communicably connected via the Internet 862.
  • the home electric appliance management mobile terminal 870 and the home electric appliances 500 and 501 are connected via wireless communication.
  • the device management module 510 of the home appliance 500 or 501 includes a home information device management portable terminal 870 and a short range wireless in addition to the generated information storage unit 111, the key generation unit 112, the update unit 113, and the device information registration unit 516.
  • a short distance wireless communication unit 1502 as a local communication unit to communicate is provided.
  • the home electric appliance management portable terminal 870 includes the data update unit 574 and the device information management unit 573 described in the second embodiment, the update information reception unit 571 described in the second embodiment, the local communication unit 572 and the communication unit 575. And a short distance wireless communication unit 872, an Internet communication unit 875, and a television function unit 876.
  • the digital broadcast receiving unit 871 receives update information included in data of digital broadcast such as one segment (one segment) broadcast.
  • the short distance wireless communication unit 872 communicates with the home electric appliance via short distance wireless communication such as infrared rays, Bluetooth (Near Field Communication) and the like.
  • the Internet communication unit 875 notifies the device management server 550 of the update result of the software of each home appliance via the Internet 862 by wireless communication.
  • a television function unit 876 displays a normal digital television broadcast.
  • FIG. 10 shows the flow of the software update process of the present embodiment! /.
  • home appliances 500 and 501 register device information in home appliance management portable terminal 870 via near field communication (step 1: registration of device information). For example, the home appliances 500 and 501 automatically register the device information in the home appliance management portable terminal 870 each time the power is turned on.
  • step 2 generation of update information
  • the procedure for generating the update information is the same as the procedure described in the first embodiment.
  • device management server 550 requests broadcasting station 859 to distribute update information (step 3: distribution information update request), and broadcasting station 859 controls home appliance management portable terminal 870 through broadcasting network 860.
  • the collation unit 577 is a device of the household electric appliance to be updated in the control information of the update information.
  • the information specifying the species is compared with the device information in the device information list 576 to determine whether the home appliance requiring software update is registered (Step 5: Device information comparison).
  • the update processing control unit 579 of the data update unit 574 stores the update information in the data holding unit 578, and the short-distance wireless communication unit 872 An update request message including a portion of control information in the update information is transmitted to the corresponding home appliance 500 via (step 6: update request).
  • update request message including a portion of control information in the update information is transmitted to the corresponding home appliance 500 via (step 6: update request).
  • the update processing control unit 579 will The device management portable terminal 870 displays that the software update for home appliance 500 is necessary, and prompts the user to turn on home appliance 500 or move to a distance where near field communication is possible. .
  • the update request message is sent to the home appliance 500 again.
  • device management module 510 updates the update information based on the control information of the update information included in the update request message.
  • Generate a key to decrypt and encrypt the cipher (step 7: Key generation).
  • the procedure for generating the key is the same as the procedure described in the first embodiment.
  • the device management module 510 of the home appliance 500 encrypts the generated information Ca, Cb, the control code and the user setting before update using the generated key, and the data storage of the home appliance management portable terminal 870 is performed. Transfer to section 578 for backup (Step 8: Backup).
  • the update processing control unit 579 of the home electric appliance management portable terminal 870 mixes the encrypted generation information Ca, Cb and the control code in the update information with the short distance wireless communication unit 872.
  • Step 9 send update data
  • the device management module 510 of the home device 500 decrypts the encryption of the update information and updates the control code and the generated information Ca and Cb
  • Step 10 Update data
  • the update processing control unit 579 of the home electric appliance management portable terminal 870 updates the device information of the home electric appliance 500 for which the software update has been performed, together with the result of the update process, via the Internet communication unit 875. Notify the update status management unit 156 of 550 and perform update processing Complete (Step 11: Update Complete Notification).
  • the encrypted update information is sent together and sent to the home appliance 500 in block units of encryption rather than being decrypted on the home appliance 500 side. Perform decryption processing on a unit basis and update processing.
  • the device information of the home appliance is registered in home appliance management portable terminal 870, and home appliance management portable terminal 870 receives the updated information through broadcast network 860. Then, when it is necessary to update the software, each home appliance receives the update information through the home appliance management portable terminal 870 and performs the software update. As a result, it is not necessary for each home appliance to have the function to receive update information directly from the device management server 550 or the function to connect to an external network, and to decrypt the encryption of the update information. Since the memory capacity required for the device can be reduced, home appliances equipped with a software update function can be configured at low cost.
  • the home appliance management portable terminal 870 can surely receive the update information through the broadcast network 860, and can securely update the software of each home appliance.
  • the data holding unit 578 of the data updating unit 574 of the home appliance management portable terminal 870 can be used as a backup area of software for updating, it becomes necessary for the updating process in each household appliance. Memory can be minimized. Even if the update process fails, it is possible to return to the original state by knocking up and restoring the pre-update software, thus further improving the security of the update process. .
  • the home appliance management portable terminal 870 receives the update information via the digital broadcast reception unit 871, and receives the update information from the device management server 550 via the Internet 862 via the Internet communication unit 875. You may receive it.
  • the URL of the device management server 550 is registered in advance in the device information list 576 as one of the device information.
  • the home appliance management portable terminal 870 periodically receives the device management server indicated by the URL from the update processing control unit 579 through the Internet communication unit 875. Send an update information request to the 550.
  • the device management server 550 transmits the update information to the home electric appliance management portable terminal 870 when there is update information that needs to be distributed.
  • the home appliance management portable terminal 870 performs the same processing as the update information received through the digital broadcast reception unit 871 on the update information received through the Internet communication unit 875.
  • the home appliance management portable terminal 870 transmits the update information request transmitted from the home appliance management portable terminal 870 to the device management server 550 based on the update processing request received from the home appliance 500 or 501. You may do so.
  • the update process request is a message for the home appliance 500 or 501 to request the home appliance management portable terminal 870 to perform a software update process.
  • the home electronic device management portable terminal 870 that has received the update processing request via the short distance wireless communication unit 872 transmits the update information request to the device management server 550.
  • the subsequent processing is the same as the procedure described above.
  • FIG. 11A is a block diagram showing a configuration of a software update system according to Embodiment 5 of the present invention.
  • FIG. 11B is a block diagram showing the configuration of the device management module according to the present embodiment.
  • FIG. 11C is a block diagram showing a configuration of another device management module according to the present embodiment.
  • the software update system described in the present embodiment has basically the same configuration as that described in the above embodiment. Therefore, in the present embodiment, the same components as those described in the above-described embodiments are denoted by the same reference numerals, and the detailed description thereof will be omitted.
  • a home electric appliance management device is connected between the home electric appliance and the device management server.
  • the software update system according to the present embodiment is one in which the home appliance management device described in the second embodiment is applied to a broadband compatible communication device such as a router.
  • the software update system includes the home appliance 500 described in the second embodiment, the home appliance 501 described in the third embodiment, and the home appliance A home appliance management router 1070 as a management apparatus, and a device management server 550 described in the second embodiment are configured.
  • the device management server 550 and the home appliance management router 1070 are communicably connected via the Internet 662.
  • home appliances The management router 1070 and the home appliances 500 and 501 are connected via a wired LAN, wireless LAN or power line network in the house.
  • the device management module 510 of the home appliance 500 includes the home appliance via the wired LAN in addition to the generated information storage unit 111, the key generation unit 112, the update unit 113, and the device information registration unit 516.
  • a wired LAN communication unit 1503 is provided as an oral communication unit that communicates with the device management router 1070.
  • the device management module 510 of the home appliance 501 is a home appliance via a wireless LAN in addition to the generated information storage unit 111, the key generation unit 112, the update unit 113, and the device information registration unit 516.
  • a wireless LAN communication unit 1504 as a local communication unit for communicating with the management router 1070 is provided.
  • home appliances that communicate with the home appliance management router 1070 via the power line network may exist.
  • Home appliance management router 1070 corresponds to data update unit 574 and device information management unit 573 described in the second embodiment, and to oral communication unit 1072 corresponding to local communication unit 572 described in the second embodiment. It comprises the update information reception unit 571 described in the second embodiment, the Internet communication unit 1075 corresponding to the communication unit 5 75, and the router function unit 1076.
  • the home appliance management router 1070 also has an LED (not shown) indicating the internal status of the home appliance management router 1070.
  • the Internet communication unit 1075 receives the update information from the device management server 550 via the Internet 662. In addition, the Internet communication unit 1075 notifies the device management server 550 of the result of the software update of the home appliance.
  • the local communication unit 1072 communicates with home appliances via a wired LAN, a wireless LAN or a power line network.
  • the router function unit 1076 functions as a wired LAN, wireless LAN or power line network router in the home.
  • FIG. 12 shows the flow of software update processing according to the present embodiment.
  • home appliances 500 and 501 respectively register device information with home appliance management router 1070 via a wired LAN and a wireless LAN (step 1: registration of device information).
  • step 2 generation of update information
  • the procedure for generating the update information is the same as the procedure described in the first embodiment.
  • the home appliance management router 1070 transmits an update information request to the device management server 550 through the Internet 662 (step 3: update information request).
  • the device management server 550 sends the update information to the home appliance management router 1070 through the Internet 662 (step 4: distribution of device update information).
  • the URL of the device management server 550 is further registered in the device information list 576 as one of the device information.
  • the home appliance management router 1070 periodically transmits an update information request from the update processing control unit 579 to the device management server 550 indicated by the URL via the Internet communication unit 1075.
  • the device management server 550 sends the update information to the home appliance management router 1070 when there is update information that needs to be distributed.
  • the collation unit 577 determines information about the model of the home appliance to be updated and the device information list in the control information of the update information.
  • the device information is compared with 576 to determine whether a home appliance that needs to have software updated is registered (Step 5: Device Information Verification).
  • the update processing control unit 579 stores the update information in the data holding unit 578, and the corresponding information is received via the local communication unit 1072.
  • the update processing control unit 579 It is possible to generate Hyper Text Markup Language (HTML) data indicating that the software for home appliance 500 needs to be updated, and display the generated HTML data on the home device connected to home appliance management router 1070.
  • HTML Hyper Text Markup Language
  • Step 7 Key generation
  • the procedure for generating the key is the same as the procedure described in the first embodiment.
  • the device management module 510 of the home appliance 500 encrypts the generated information Ca, Cb, the control code and the user setting before update using the generated key, and the data storage unit of the home appliance management router 1070 Transfer to 578 for backup (Step 8: Backup).
  • the update processing control unit 579 of the home appliance management router 1070 transmits the encrypted generation information Ca and Cb in the update information and the control code part via the local communication unit 1072.
  • the device management module 510 of the home appliance 500 decrypts the encryption of the update information, and updates the control code and the generated information Ca and Cb (step 10). :Data update).
  • the update processing control unit 579 of the home appliance management router 1070 updates the device information of the home appliance 500 for which the software update has been performed, together with the result of the update process, and the device management server 550 via the Internet communication unit 1075. Notify the update status management unit 156 of and complete the update process (Step 11: Update completion notification).
  • the encrypted update information is collectively transmitted and transmitted to the home electric device 500 in block units of encryption rather than being decrypted by the home electric device 500 side. It performs decryption processing on a unit basis and performs update processing.
  • the device information of the home appliance is registered in the home appliance management router 1 1070, and the home appliance management router 1070 receives the update information through the Internet 662, and the software If it is necessary to update the, each home appliance receives the update information via the home appliance management router 1070 and performs software update.
  • each home appliance it is not necessary for each home appliance to have the function of directly receiving the update information from the device management server 550 or the function of connecting to an external network, and in order to decrypt the update information individually. Memory capacity required for home appliances can be reduced Therefore, home appliances with software update functions can be configured at low cost and at low cost.
  • the home appliance management router 1070 can reliably receive the update information through the Internet 662, and can reliably update the software of each home appliance.
  • the data holding unit 578 of the data updating unit 574 of the home appliance management router 1070 can be used as a backup area for software before updating, the memory required for the updating process in each home appliance can be used. Can be minimized.
  • the update processing fails, it is possible to return to the original state by knocking back and restoring the software before the update, thereby further improving the security of the update processing.
  • the home appliance management router 1070 transmits the update information request transmitted from the home appliance management router 1070 to the device management server 550 based on the update processing request received from the home appliance 500 or 501. It is good.
  • the update process request is a message for the home appliance 500 or 501 to request the home appliance management router 1070 to perform a software update process.
  • the home appliance management router 1070 that has received the update processing request via the local communication unit 1072 transmits the update information request to the device management server 550.
  • the subsequent processing is the same as the procedure described above.
  • FIG. 13 is a block diagram showing a configuration of a software update system according to Embodiment 6 of the present invention.
  • the software updating system of the present embodiment has basically the same configuration as the above-described software updating system. Therefore, in the present embodiment, the same reference numerals are given to the same components as those described in the above-mentioned embodiment, and the detailed description thereof is omitted.
  • the software update system according to the present embodiment is the same as Embodiments 2 to 5 in that the home appliance management device is connected between the home appliance and the device management server.
  • the second embodiment differs from the second to fifth embodiments in that the home appliance communicates with the home appliance management apparatus via an integrated circuit (IC) card, provided with a connection function. It has the ability to connect to the network, ensure the software update of the home appliance, And to be able to do it efficiently.
  • IC integrated circuit
  • the software update system is a home appliance 1200 having a function of updating software, a device management server 550 described in the second embodiment, and a home
  • the home electric appliance management IC card 1220 for managing the home electric appliances and the home electric appliance management apparatus 1270 which can be attached with the electric home appliance management IC card 1220 and receives the update information from the apparatus management server 550.
  • the device management server 550 and the home appliance management device 1270 are connected via the communication path 560 described in the second embodiment.
  • Home Appliances Management IC Card 1220 is an IC card provided with both contact and non-contact external interfaces.
  • the home appliance 1200 includes the control unit 120 and the mechanism unit 130 described in the first embodiment, and a device management module 1210 that updates software stored in the control unit.
  • the device management module 1210 includes the generated information storage unit 111 described in the first embodiment, the key generation unit 112 and the update unit 113, and the device information registration unit 516 described in the second embodiment. Further, the device management module 1210 has an IC card communication unit 1217 which performs contactless communication with the home appliance management IC card 1220. The device management module 1210 also includes a CPU that executes a software module corresponding to the key generation unit 112, the update unit 113, and the device information registration unit 516, a memory forming the generation information storage unit 111, and an IC card communication unit. The RF circuit and the communication control circuit which form 1217 and the integrated circuit which is also configured the force.
  • the IC card communication unit 1217 may be of a type that performs contact communication with the home appliance management IC card 1220.
  • the IC card communication unit 1217 is a terminal connected to the home appliance management IC card 1220 and Communication control circuit power is also configured.
  • Home appliance management apparatus 1270 includes update information receiving unit 571 and the communication unit described in the second embodiment, and IC card communication unit 1272 that performs contact communication with home appliance management IC card 1220, and the like. Ru.
  • the home appliance management IC card 1220 shall be attached to the
  • the IC card communication unit 1272 is a home appliance management IC card 1220 and In this case, the IC card communication unit 1272 is composed of an RF circuit and a communication control circuit.
  • the home appliance management IC card 1220 includes the device information management unit 573 described in the second embodiment, the data update unit 574, and the contact-type external interface and the noncontact-type that communicate with the home appliance management device 1270 or each home appliance. It consists of an external interface (not shown).
  • the shape of the home appliance management IC card 1220 may be the shape of a general IC card of business card size, the shape of a SIM card attached to a mobile phone or the like, or the shape of a memory card.
  • the device information registration unit 516 of the home appliance 1200 performs IC card communication by bringing the home appliance management IC card 1220 closer to the IC card communication unit 1217 of the home appliance 1200 in advance.
  • the device information of its own is registered in the device information management unit 573 of the home appliance device management IC card 1220 through the unit 1217.
  • the device information registered in the device information management unit 573 includes the manufacturer code, model number and serial number of the home device, and the serial number of the software version of the home device.
  • the device information management unit 573 manages, for each home appliance, the device information registered from each home appliance, and holds the information as a device information list 576.
  • the home appliance management IC card 1220 is usually attached to the home appliance management apparatus 1270.
  • the update information is distributed from the device management server 550 to the home appliance management device 1 270 via the communication path 560.
  • the home appliance management IC card 1220 receives the update information through the update information receiving unit 571 of the home appliance management apparatus 1270, and the collation unit 577 specifies the model of the home appliance to be updated in the control information of the update information.
  • the device information in the device information list 576 is collated to determine whether the home appliance for which the software needs to be updated is registered.
  • the home appliance management device 1270 displays that the software update of the home appliance 1200 is necessary, and the user can manage the home appliance management IC card 1220. Operation to update the software of home appliance 1200 using Are prompted.
  • the update processing control unit 579 communicates with the home appliance 1200 to perform software update processing.
  • the pre-update software is transferred from the home appliance 1200 to the data holding unit 578 of the data updating unit 574 for knock-up.
  • device information of a home appliance is registered in home appliance management IC card 1220, and home appliance management IC card 1220 is updated via home appliance management apparatus 1270.
  • home appliance management apparatus 1270 When information needs to be received from the device management server 550 and software needs to be updated, each home device receives the update information via the home device management IC card 1220 and performs software update. This eliminates the need for individual home appliances to have the function of directly receiving updated information from the device management server 550 or the function of connecting to an external network, such as a TV tuner or an Internet modem. It is possible to configure home appliances with the update function of at low cost.
  • the home appliance management IC card 1220 receives the update information distributed from the device management server 550 via the home appliance management device 1270 in a state in which update information can be received.
  • the software of the device can be reliably updated.
  • each home device does not necessarily have to be in the power on state.
  • the update process with the home appliance management IC card 1220 is performed. By doing this, software can be updated reliably.
  • the data holding unit 578 of the data updating unit 574 of the home appliance management IC card 1220 can be used as a buffer area of the update information and a backup area of the software before the update, the update process is performed in each home appliance. You can minimize the memory required for In addition, even if the update processing fails, it is possible to restore the original state by restoring the pre-update software that has been knocked up, so the security of the update processing can be further enhanced. In practice, the process in the case where the update process fails may be performed based on program data included in the control information of the update information set by the device management server 550.
  • the device management module 1210 is an integrated circuit having a CPU different from the CPU of the control unit 120 in the above description, the function of the device management module 1210 is different from that of the CPU of the control unit 120 and the memory. It is good even if it is configured by.
  • the IC card communication unit 1217 is built in the device management module 1210 in the above description, for example, an IC card reader / writer may be provided independently of the device management module 1210.
  • control code stored in home appliance 1200 is updated, it is possible to update specific data stored in home appliance 1200 with the same mechanism using the control code alone.
  • specific data that is good includes multimedia contents, license information, table information referred to by the control code, databases and the like.
  • control code stored in home appliance 1200 is updated
  • the home appliance may be updated by updating specific data stored in home appliance 1200 by the same mechanism. You may choose to disable some or all of the 1200 features.
  • the specific data includes control code, internal control flag information of home appliance 1200, key data used for encryption processing, multimedia 'content, license information, table information and database to which control code refers etc. Disable some or all of the functions of the home appliance 1200 by updating them to invalid data.
  • the home appliance management IC card 1220 has two types of external interfaces, a contact external interface and a non-contact external interface, but only one external interface can be used. You may comprise so that it may be provided. In that case, the IC card communication unit 1217 and the IC card communication unit 1272 are of the type that can communicate with the home appliance management IC card 1 220.
  • FIG. 14 is a diagram showing a configuration of a software update system according to a seventh embodiment of the present invention. It is a sketch.
  • the software update system of this embodiment has basically the same configuration as that of the above-described embodiment. Therefore, in the present embodiment, the same components as those described in the above-described embodiment are denoted by the same reference numerals, and the detailed description thereof will be omitted.
  • a smart home appliance having a network connection function communicates with the home appliance management apparatus via the IC card.
  • the software update system according to the present embodiment is an application where the home appliance management apparatus described in the sixth embodiment is applied to a portable apparatus having a digital broadcast reception function, for example, a portable terminal such as a mobile phone. is there.
  • the software update system includes home appliance 1200 described in the sixth embodiment, and home appliance 1201 having an internal configuration common to that of home appliance 1200;
  • the home appliance management portable terminal 1370 as a home appliance management apparatus, the apparatus management server 550 described in the second embodiment, the broadcast station 859 described in the fourth embodiment, the home appliance management IC card 1260, and a power are also configured. Ru.
  • the device management server 550 and the broadcasting station 859 are communicably connected via a predetermined communication line.
  • the broadcast station 859 and the home electric appliance management portable terminal 1370 are communicably connected by a broadcast network 860.
  • the device management server 550 and the home appliance management portable terminal 1370 are communicably connected via the Internet 862.
  • the home appliance management IC card 1260 is connected to the home appliances 1200 and 1201 by contact communication or non-contact communication, and is communicably connected to the appliance management server 550 via the Internet 862.
  • Each of the home appliances 1200 and 1201 includes the control unit 120 and the mechanism unit 130 described in the first embodiment, and the device management module 1210 described in the sixth embodiment. Also, as the home appliances 1200 and 1201, for example, a battery-powered portable type device such as a portable music player is assumed.
  • Household appliance management portable terminal 1370 includes IC card communication unit 1272 described in the sixth embodiment, and digital broadcast receiving unit 871 described in the fourth embodiment, Internet communication unit 875, and television function unit 876. Be done.
  • the home appliance management IC card 1260 is the device information management unit 573 described in the second embodiment. And a data updating unit 574, and a contact-type external interface and a non-contact-type external interface (not shown) for communicating with the home electric appliance management portable terminal 1370 or each home electric appliance.
  • FIG. 15 shows a flow of software update processing according to the present embodiment.
  • the home appliances 1200 and 1201 can transmit the device information to the home appliance via the IC card communication unit 1217.
  • Device management Register in the IC card 1260 (Step 1: Register device information).
  • the home appliances 1200 and 1201 display a message or the like to prompt the user to register the device information in the home appliance management IC card 1260.
  • step 2 generation of update information
  • the procedure for generating the update information is the same as the procedure described in the first embodiment.
  • device management server 550 requests broadcasting station 859 to distribute update information (step 3: distribution information update request), and broadcasting station 859 transmits home appliance management portable terminal 1370 through broadcasting network 860. Deliver updated information to Furthermore, the update information is transmitted to the home appliance management IC card 1260 (step 4: distribution of device update information).
  • the collation unit 577 selects the model of the home appliance to be updated in the control information of the update information.
  • the home appliance which needs to update the software is registered by comparing the information defining the and the device information of the device information list 576 to determine whether the home appliance is required to be updated (step 5 : collation of the device information).
  • the update processing control unit 579 stores the update information in the data holding unit 578, and the response data is managed by the home electric appliance management mobile terminal Send to 1370
  • the home appliance management portable terminal 1370 displays that it is necessary to update the software of the home appliance 1200 based on the received response data, and the home appliance management IC card 1260 is used for the user. Prompts an operation to update the software of device 1200.
  • Step 6 Update request
  • the device management module 1210 of the home appliance 1200 encrypts the generated information Ca, Cb before updating, the control code, and the key generated with the user setting, and holds the data of the home appliance management IC card 1260 Transfer to section 578 for backup (Step 8: Backup).
  • the update processing control unit 579 of the home appliance management IC card 1260 transmits the encrypted generation information Ca, Cb and the control code part in the update information to the home appliance 1200. Yes (Step 9: Send updated data).
  • the encryption of the device management module 1210 power update information of the home appliance 1200 is decrypted, and the control code and the generated information Ca and Cb are updated (step 10: data update).
  • the update processing control unit 579 updates the device information of the home appliance 1200 for which the software update has been performed.
  • the update status management unit 156 of the device management server 550 is notified through the Internet communication unit 875 of the home electric appliance management portable terminal 1370 to complete the update process (step 11: notification of update completion).
  • the encrypted update information is collectively transmitted, and it is transmitted to the home appliance 1200 in block units of encryption instead of being decrypted by the home appliance 1200. Perform decryption processing in block units and update processing.
  • the procedure for updating the software of home appliance 1201 is the same as the procedure for updating the software of home appliance 1200.
  • home appliance management device information is registered in home appliance management IC card 1260, and home appliance management IC card 1260 mounted on home appliance management portable terminal 1370 is updated via broadcast network 860. If you need to receive and update the software, the home appliance Each home appliance receives the update information via the management IC card 1260 and performs software update. This eliminates the need for each home appliance to have the function of directly receiving update information from the device management server 550 or the function of connecting to an external network, and also to enable individual home appliances to decrypt the encryption of the update information. Since the amount of memory required for the device can be reduced, home appliances equipped with a software update function can be configured at low cost.
  • the home appliance management IC card 1260 mounted on the home appliance management portable terminal 1370 can surely receive the update information through the broadcast network 860, and can surely update the software of each home appliance.
  • the data holding unit 578 of the data updating unit 574 of the home appliance management IC card 1260 can be used as a backup area of the software before the update, each home appliance is required for the update process. Memory can be minimized. In addition, even if the update processing fails, it is possible to return to the original state by knocking back and restoring the software before the update, thereby further improving the security of the update processing.
  • the home appliance management IC card 1260 receives the update information via the digital broadcast reception unit 871 of the home appliance management portable terminal 1370, but via the Internet communication unit 875 via the Internet 862
  • the update information may be received from the device management server 550.
  • the URL of the device management server 550 is further registered in the device information list 576 as one of the device information.
  • the home appliance management IC card 1260 mounted on the home appliance management portable terminal 1370 is periodically requested from the update processing control unit 579 via the Internet communication unit 875 to the update information request from the appliance management server 550 indicated by the URL.
  • the device management server 550 transmits the update information to the home appliance management IC card 1260 when there is update information that needs to be distributed.
  • the home appliance management IC card 1260 performs the same processing as the update information received via the digital broadcast reception unit 871 on the update information received via the Internet communication unit 875 of the home appliance management portable terminal 1370.
  • the home appliance management IC mounted on home appliance management portable terminal 1370 The home appliance management IC card 1260 may transmit the update information request that the card 1260 transmits to the device management server 550 based on the update processing request received from the home appliances 1200 and 1201.
  • the update process request is a message for the home appliance 1200 or 1201 to request the home appliance management IC card 1260 to perform the software update process.
  • the home appliance management IC card 1260 is brought close to the home appliance IC card communication unit 1217, the home appliance management IC card 1260, which has received the update processing request, is installed on the home appliance management portable terminal 13 70 and the Internet
  • the update information request is transmitted to the device management server 550 via the communication unit 875.
  • the subsequent processing is the same as the procedure described above.
  • FIG. 16 shows a data communication system as a software update system according to an eighth embodiment of the present invention.
  • the present embodiment is configured such that software can be updated even if the serial numbers of the software versions of the devices to be updated are continuous.
  • the software update system described in the present embodiment has basically the same configuration as that described in the first embodiment. Therefore, in the present embodiment, the same components as those described in Embodiment 1 are denoted by the same reference numerals, and the detailed description thereof is omitted.
  • the generation information storage unit 111 of the device management module 110 of the home appliance 100 further includes another set of generation information Ccl in addition to the generation information Cal l4 and the generation information Cbl l5. 16 and generation information Cdl 17 are stored.
  • secret information holding unit 151 of device management server 150 has another set of secret information C 159 and secret information D 160 in addition to secret information A 157 and secret information B 158 for one type of home electric appliance. Hold.
  • FIG. 17 is a diagram showing the interrelationship of data stored in the home appliance 100, that is, the control code and the four pieces of generation information Ca, Cb, Cc and Cd.
  • the generation information Ca and Cb are generated from the secret information A 157 and the secret information B 158, respectively, and the generation information C c and C d are generated from the secret information C 159 and the secret information D 160, respectively, from the generation information generation unit 152 of the device management server 150.
  • the software version of the home appliance 100 It depends on the serial number!
  • the control code Pn is stored as information specific to the control code Pn, and is used as a key component for key generation.
  • U and V indicate mutually different predetermined irreversible operations.
  • U (p, a) indicates the result of repeating the irreversible operation U p times to the data a
  • V (q, b) indicates the result of repeating the irreversible operation V q times to the data b . Therefore, the generated information U (l, C) is the result of performing the irreversible operation U once on the confidential information C
  • the generated information V (M ⁇ 1, D) is an irreversible operation on the confidential information D Is the result of repeating M-1 time.
  • the generated information U (n, C) is the result when the irreversible operation U is repeated n times on the secret information C, and the secret information C can not be calculated from the generated information U (n, C).
  • the generated information V (Mn, D) is the result of repeating the irreversible operation V M times n times to the secret information D, and the secret information D is calculated from the generated information V (Mn, D). I can not do that.
  • the device management server 150 If there is a need to update the software of the home appliance of the model managed by the device management server 150 to a new software, the device management server 150 is installed in the home appliance to be updated. Based on the version, it encrypts software, generates update information, and distributes it to each home appliance via the communication path 160.
  • the serial numbers of the software versions are n ⁇ i to n + j and N-p to N + q (n, N, i, j, p, q are l ⁇ n ⁇ n j n + j n n + j + l ⁇ N-p-1 ⁇ N-p ⁇ N + q ⁇ M (integer satisfying M-1) software (that is, software to be updated), serial number n + k (k is an integer satisfying l ⁇ n + k ⁇ M-1) software (that is, new software)
  • M-1 integer satisfying M-1
  • the software version serial numbers n + j + l to N ⁇ p ⁇ 1 are not update targets, and the serial numbers of the software versions of the update target devices are not always consecutive.
  • the serial number of the version of software currently used in home appliance 100 (that is, current software) is n (n is an integer satisfying n ⁇ i ⁇ n ⁇ n + j) or N (N is N ⁇ p). Let ⁇ N ⁇ N + q be an integer).
  • the generation information generation unit 152 of the device management server 150 reads out the secret information A 157, the secret information B 158, the secret information C 159, and the secret information D 160 corresponding to the home electric appliance 100 from the secret information holding unit 151.
  • the operation X is performed n + j times to generate the generation information X (n + j, A), and the irreversible operation X is performed kj times to generate the generation information Ca for serial number n + k, which is Ca X (n + k, Generate A) (step 1901),
  • Irreversible operation Y is performed M ⁇ n ⁇ k times on secret information B 158 to generate generated information Cb Y (M ⁇ n ⁇ k, B) in the case of serial number n + k, and further irreversible operation Y is k + i times to generate generation information Y (M ⁇ n + i, B) (step 1902),
  • Irreversible operation V is performed M ⁇ n ⁇ k times to generate generated information Cd V (M ⁇ n ⁇ k, D) which is serial number n + k, and further irreversible operation V is n + k- N + p times to generate generated information V (M-N + p, D) (step 1904).
  • the encryption key generation unit 153 combines the generated information X (n + j, A), the generation information Y (M ⁇ n + i, B), and the serial number n + k.
  • the key F (X (n + j, A), Y (M-n + i, ⁇ ), + + k) is generated (step 1905), generation information U (N + q, C) and generation information V ( M— N + p, D)
  • the key F is synthesized with the serial number n + k to generate a key F (U (N + q, C), V (M-N + p, D), n + k) (step 1906).
  • Generate key K (step 1907).
  • the encryption key K is a key of an arbitrary common key scheme using a random number as a seed.
  • control information is further added to generate update information of data structure as shown in FIG. 18B.
  • the update information distribution unit 155 transmits the generated update information to the home electric appliance through the communication path 160.
  • control information is information for controlling the process of the update information in the home appliance 100 that has received the update information.
  • Control information includes information that specifies the model of the home appliance that is the target of the update. Specifically, for example, a manufacturer code indicating a manufacturer, a model number of a home electronic device, and a serial number of a software version may be included, and further, information indicating a range of manufacturing serial numbers may be included.
  • the control information includes the serial number of the updated software version as information defining the updated software version.
  • the control information may include program data actually executed on the home electric appliance, and may further include verification data such as an electronic signature for verifying the correctness of the program data. Also good. In the case of the present embodiment, it is assumed that program data for converting the user setting 123 stored in the control code storage unit 121 into a data format that is valid even in new software is included.
  • the home appliance 100 that has received the update information generates a key for decrypting the encryption of the update information from the generation information based on the control information of the update information, and decrypts the encryption of the update information. Update the software to what was included in the update information.
  • home appliances that has received the update information generates a key for decrypting the encryption of the update information from the generation information based on the control information of the update information, and decrypts the encryption of the update information. Update the software to what was included in the update information.
  • receiver 140 of home appliance 100 receives The update information distributed from the device management server 150 is received via the communication path 160.
  • the update unit 113 of the device management module 110 of the home appliance 100 determines whether the software needs to be updated based on the control information of the update information (step 1 910). Specifically, the control information is acquired, and the appliance code and the model number defined in the acquired control information respectively match the maker code and the model number of the home electric device 100, and further, the control information If the serial number of the software version subject to update specified in the above includes the serial number of the software version of home appliance 100, it is determined that "the update is necessary". If it is determined in step 1910 that the update is not necessary, the update unit 113 discards the received update information as it is.
  • the updating unit 113 encrypts the encryption of the encryption key K encrypted with the key F (X (n + j, A), Y (Mn ⁇ i, B), n + k). Decrypt (step 1914),
  • the program data included in the control information is executed and stored in the control code storage unit 120, and the user setting 123 is a valid data format even if the new control code Pn + k is used.
  • Update the user settings 123 by converting to and complete the software update.
  • the update unit 113 checks the notice bit of the decrypted data, and the decryption processing is normally performed. Check what happened.
  • receiving section 140 of home appliance 100 receives The update information distributed from the device management server 150 is received via the communication path 160.
  • the update unit 113 of the device management module 110 of the home appliance 100 determines whether the software needs to be updated based on the control information of the update information (step 1 920). Specifically, the control information is acquired, and the appliance code and the model number defined in the acquired control information respectively match the maker code and the model number of the home electric device 100, and further, the control information If the serial number of the software version subject to update specified in the above includes the serial number of the software version of home appliance 100, it is determined that "the update is necessary". If it is determined in step 1920 that the update is not necessary, the update unit 113 discards the received update information as it is.
  • updating section 113 encrypts key F (U (N + q, C), V (M-N + p, D), n + k) with encryption key K Decrypt the encryption (step 1924),
  • the program data contained in the control information is executed and stored in the control code storage unit 121, and the user setting 123 is a valid data format even if the control code Pn + k is new.
  • Update the user settings 123 by converting to and complete the software update.
  • the update unit 113 checks the notice bit of the decrypted data, and the decryption processing is normally performed. Check what happened.
  • the software version of the installed software is specified in the control information of the update information. If it is a device, it is possible to generate a key for decrypting the encryption applied to the encryption key K that decrypts the encrypted part of the update information, and perform the software update. Can do. At this time, the device management server 150 does not need to distribute a plurality of update information for each version of the home appliance, and only one type of update information needs to be distributed. It is possible to reduce the cost for the bar equipment. In addition, while the home appliance 100 side only needs to perform processing with a small load of noise calculation, it can change the decoy key of the update information distributed for each update, so that the update information can be distributed. Safety is improved.
  • the software version of the software is defined by the control information of the software version power update information, not the software version of the update target, and in the case, the encrypted information of the update information Since it is not possible to generate a key for decrypting the encryption applied to the encryption key K to be decrypted, the software can not be updated.
  • the device management module 110 is an integrated circuit having a CPU different from the CPU of the control unit 120 in the above description, the function of the device management module 110 can be compared to the CPU of the control unit 120 and the memory. Even if it is configured by and, it is good!
  • control code stored in home appliance 100 is updated
  • specific data stored in home appliance 100 includes multimedia content, license information, table information referred to by the control code, database, and the like.
  • home appliance 100 can be updated by updating specific data stored in home appliance 100 by the same mechanism. Some or all of the functions of may be disabled. As the specific data, control code, internal control flag information of home appliance 100, key data used for encryption processing, multimedia 'content, license information, table information or database to which control code refers, etc. By updating them to invalid data, which is included, some or all of the functions of the home appliance 100 are disabled.
  • serial number of the software version of the device to be updated is continuously continuous, and the power explained in the form in the case of one location is continuously described. Even if there are two or more locations, software can be updated with the same mechanism by increasing the number of secret information and generated information by two each.
  • FIG. 20 shows a data communication system as a software update system according to a ninth embodiment of the present invention.
  • the software of the device is also configured as a plurality of software, and even when the release timing of each software is different, the software can be updated.
  • multiple software capabilities are also configured, such as software capabilities installed in the device, such as an OS, middleware, and applications, and in particular, each software is provided with different vendor capabilities, the timing of software release is different.
  • the software version serial number will be different.
  • there may be compatibility between software versions and it may be necessary to update each software in a specific combination that does not necessarily require updating each software individually.
  • the software update system described in the present embodiment has basically the same configuration as that described in the first embodiment. Therefore, in the present embodiment, the same components as those described in Embodiment 1 are denoted by the same reference numerals, and the detailed description thereof is omitted.
  • the control code storage unit 121 stores two pieces of software, a control module P 125 and a control module Q 126 instead of the control code 122 in the first embodiment, and the generated information storage unit 111 of the device management module 110.
  • the generated information Cal l4 and the generated information Cbl l5, and the other set of generated information Ccl 16 and the generated information C dl 17 are stored.
  • generation information Cal l4 and generation information Cbl l5 are two pieces of generation information corresponding to control module P125
  • generation information Ccl 16 and generation information Cdl 17 are two generations corresponding to control module Q 126. It is information.
  • secret information holding unit 151 of device management server 150 has another set of secret information C159 and secret information D160 in addition to secret information A 157 and secret information B 158 for one type of home appliance. Hold.
  • the secret information A 157 and the secret information B 158 are two pieces of secret information corresponding to the control module P 125
  • the secret information C 159 and the secret information D 160 are two pieces of secret information corresponding to the control module Q 126.
  • FIG. 21 shows data stored in home appliance 100, that is, control module P125 and control module P125. It is a figure which shows the interrelationship of control module Q126 and four generation information Ca, Cb, Cc, and Cd.
  • the generated information Ca and Cb are respectively generated from the secret information A 157 and the secret information B 158, and the generated information C c and Cd are respectively generated by the generation information generation unit 152 of the device management server 150 from the secret information C 159 and the secret information D 160.
  • the generated information Ca and Cb differ depending on the serial number of the control module PI 25 version, and the generated information Cc and Cd differ depending on the control module Q 126 version serial number.
  • control module P1 when the serial number of the version of control module P125 is 1, control module P1 is stored in home appliance 100 as control module P, and the generation information generation unit of device management server 150.
  • the control module Q1 When the serial number of the control module Q126 is 1, the control module Q1 is stored in the home appliance 100 as the control module Q, and the generation information generation unit 152 of the device management server 150 generates the control module Q1.
  • the control module Qs is stored in the home appliance 100 as the control module Q, and is further generated by the generation information generation unit 152 of the device management server 150,
  • the software itself being used (or the software itself) Part) consists of control module Pn and control module Qs.
  • the generation information Cc U (s, C)
  • Generation information Cd V (M-s, D) is held as information specific to control code Qs. , Used as a key component to generate a key.
  • U and V indicate mutually different predetermined irreversible operations.
  • U (p, a) indicates the result of repeating the irreversible operation U p times to the data a
  • V (q, b) indicates the result of repeating the irreversible operation V q times to the data b . Therefore, the generated information U (l, C) is the result of performing the irreversible operation U once on the confidential information C
  • the generated information V (M ⁇ 1, D) is an irreversible operation on the confidential information D Is the result of repeating M-1 time.
  • the generated information U (n, C) is the result of repeating the irreversible operation U n times on the secret information C, and the secret information C can not be calculated from the generated information U (n, C).
  • the generated information V (Mn, D) is the result of repeating the irreversible operation V M times n times to the secret information D, and the secret information D is calculated from the generated information V (Mn, D). I can not do that.
  • the device management server 150 When it is necessary to update the software of the home appliance of the model managed by the device management server 150 to a new software, the device management server 150 is installed in the home appliance to be updated, Based on the version, it encrypts software, generates update information, and distributes it to each home appliance via the communication path 160.
  • the serial number of the version of the control module P is n ⁇ i to n + j (n, i, j is l ⁇ n ⁇ i ⁇ n + j ⁇ M ⁇ l Software that consists of a satisfying integer) and serial number power of the control module Q version p s + q (s, p, q is an integer satisfying l ⁇ s ⁇ p ⁇ s + q ⁇ M-1) (That is, the software to be updated), the serial number of the control module P version is n + k (k is an integer that satisfies l ⁇ n + k ⁇ M ⁇ 1), the serial number strength of the control module Q version S s
  • the case where it is necessary to update to software (that is, new software) of + t (t is an integer satisfying l ⁇ n + t ⁇ M ⁇ 1) will be described as an example.
  • the software currently used in home appliance 100 (that is, the current software) is that the serial number of the version of control module P is n and the serial number of the version of control module Q is s. Do.
  • the generation information generation unit 152 of the device management server 150 starts the home information device from the secret information storage unit 151.
  • Secret information A157, secret information B158, secret information C159, and secret information D 160 corresponding to the signal unit 100 are read out, and irreversible operation X is performed n + j times on the secret information A 157 to generate generated information X (n + j, A) Further, the irreversible operation X is performed kj times to generate information Ca (serial number n + k), which is X (n + k, A) which is information Ca (step 2301),
  • Irreversible operation Y is performed M ⁇ n ⁇ k times on secret information B 158 to generate generated information Cb Y (M ⁇ n ⁇ k, B) in the case of serial number n + k, and further irreversible operation Y is k + i times to generate generation information Y (M ⁇ n + i, B) (step 2302),
  • Secret information D160 is subjected to irreversible operation V M-s-t times to generate generation information Cd (serial number s + t) C (M-s-t, D), and further irreversible operation V is t + p times to generate generation information V (M-s + p, D) (step 2304).
  • the encryption key generation unit 153 generates the generated information X (n + j, A), the generated information Y (M ⁇ n + i, B), and the generated information U (s + q, C). And the generated information V (M ⁇ s + p, D) and serial numbers n + k and 3 +1; Generate ((11 + _), A), Y (M-n + i, B), U (s + q, C), V (Ms + p, D), n + k, s + t) (Step 2305),
  • the update information distribution unit 155 distributes the generated update information to each home appliance including the home appliance 100 via the communication path 160.
  • the control information is information for controlling the process of the update information in the home appliance 100 that has received the update information.
  • Control information includes information that specifies the model of the home appliance that is the target of the update. Specifically, for example, a manufacturer code indicating a manufacturer, a model number of a home electronic device, and a serial number of a software version may be included, and further, information indicating a range of manufacturing serial numbers may be included.
  • the control information includes the serial number of the updated software version as information defining the updated software version.
  • control information may include program data actually executed on the home electric appliance, and may further include verification data such as an electronic signature for verifying the correctness of the program data. Also good.
  • program data for converting the user setting 123 stored in the control code storage unit 121 into a data format that is valid even in new software is included.
  • the home appliance 100 having received the update information generates a key for decrypting the encryption of the update information from the generation information based on the control information of the update information, and decrypts the encryption of the update information.
  • the serial number of the control module P installed in the home appliance 100 is n and the serial number of the control module Q is s will be described as an example.
  • the receiving unit 140 of the home electric device 100 receives the update information distributed from the device management server 150 via the communication path 160.
  • the update unit 113 of the device management module 110 of the home appliance 100 determines whether the software needs to be updated based on the control information of the update information (step 2310). Specifically, the control information is acquired, specified in the acquired control information, the manufacturer code and the model number correspond to the maker code and the model number of the home electric appliance 100, respectively, and further, in the control information. If the serial number of the software version to be updated includes the serial number of the software version of the home electric device 100, it is determined that "an update is necessary". If it is determined in step 2310 that the update is not necessary, the update unit 113 discards the received update information as it is.
  • the key generation unit 112 When it is determined that “update is necessary”, the key generation unit 112 generates the file from the generation information storage unit 111.
  • the generation information V (M ⁇ s + p, D) is generated p times to generate the generation information V (M ⁇ s + p, D) (step 2314), and the generated information X (n + j, A) Y (M ⁇ n + i, B) , U (s + q, C), V (M-s + p, D) and serial numbers n + k and s + t, the key F (X (n + j, A), Y (M- n + i, B), U (
  • the program data included in the control information is executed and stored in the control code storage unit 120, and the user setting 123 is newly updated in the control module Pn + k and the control module Qs + t. Update the user settings 123 and complete the software update by converting it to a valid data format.
  • the update unit 113 decrypts the encrypted information of the update information
  • the update unit 113 checks the bits of the decrypted data, etc., and the decryption processing is normally performed. Check what happened.
  • the software of the device to be updated is configured with multiple software packages. If the software version of the software to be updated is defined in the control information of the update information and is a home electric device of the software version to be updated, an encryption key ⁇ for decrypting the encrypted portion of the update information It is possible to generate a key for decrypting the encrypted code and to update the software.
  • the device management server 150 needs to distribute a plurality of update information for each version of the home electric appliance and only one type of update information is distributed, the processing load can be improved. It is possible to reduce the cost involved.
  • the home appliance 100 side only needs to perform processing with a small load such as noise calculation, it is possible to change the decryption key of the update information to be distributed for each update, so that the update information can be distributed. Safety is improved.
  • the software version of the software is prescribed by the control information of the software version power update information, not the software version of the update target, and in the case, the encrypted information of the update information Since it is not possible to generate a key for decrypting the encryption applied to the encryption key K to be decrypted, the software can not be updated.
  • the device management module 110 is an integrated circuit having a CPU different from the CPU of the control unit 120 in the above description, the function of the device management module 110 can be compared to the CPU of the control unit 120 and the memory. Even if it is configured by and, it is good!
  • control code stored in home appliance 100 is updated, it is possible to update specific data stored in home appliance 100 with the same mechanism, using control codes alone.
  • specific data that is good includes multimedia content, license information, table information referred to by the control code, database, and the like.
  • home appliance 100 can be updated by updating specific data stored in home appliance 100 with the same mechanism. Some or all of the functions of may be disabled. As the specific data, control code, internal control flag information of home appliance 100, key data used for encryption processing, multimedia 'content, license information, table information or database to which control code refers, etc. By updating them to invalid data, which is included, some or all of the functions of the home appliance 100 are disabled.
  • Embodiments 1 to 9 can be implemented in combination as appropriate.
  • the communication method used in each embodiment, the number of each device, and the like should not be limited to those described above.
  • the configuration described in each embodiment is an example, and it is apparent that various changes and modifications of this configuration example are possible within the scope of the present invention.
  • the home appliance of the present invention is useful as a home appliance capable of upgrading the version of data to be used.
  • the data storage device, management server, integrated circuit, data update system, data update method, encryption method, and decryption key generation method of the present invention are suitable for use in upgrading of data used in home appliances. There is.

Abstract

 家電機器のソフトウェアの更新を安全にしかも効率的に行うことができるデータ格納装置。現用データを新規データに更新する家電機器(100)において、受信部(140)は、暗号化された新規データと、更新対象データのシリアル番号と、を受信する。鍵生成部(112)は、更新対象データのシリアル番号に応じた回数だけ、所定の不可逆演算を、現用データに関連付けられた固有情報に施して鍵を生成する。更新部(113)は、新規データを鍵で復号化する。

Description

明 細 書
データ格納装置、管理サーバ、集積回路、データ更新システム、家電機 器、データ更新方法、暗号化方法、および、暗復号鍵生成方法
技術分野
[0001] 本発明は、データ格納装置、管理サーバ、集積回路、データ更新システム、家電機 器、データ更新方法、暗号化方法、および、喑復号鍵生成方法に関する。
背景技術
[0002] 近年、エアコンや冷蔵庫、携帯音楽プレーヤなどの家電機器に搭載されるソフトゥ エアの高機能化が進んでいる。これに伴い、出荷後にソフトウェアの不具合などが発 見されることがあり、場合によっては、ソフトウェアの更新や家電機器自体の回収が必 要となる。
[0003] パーソナルコンピュータの場合は、ハードディスクなどの大容量記憶装置、および L AN (Local Area Network)カードやインターネットモデムなどのインターネット接続機 能を標準装備しているため、比較的容易な方法によりソフトウェアの自動更新が可能 である。例えば、ソフトウェア自動更新用のソフトウェアモジュールを大容量記憶装置 にインストールし、このモジュールを用いてインターネットを介して定期的にサーバに 接続してサーノからソフトウェアの最新バージョンを受信して大容量記憶装置に格納 する。
[0004] 一方、家電機器の場合は、大容量記憶装置およびインターネット接続機能が標準 装備されていることはまれであるため、パーソナルコンピュータと同様の方法でソフト ウエアを更新することは困難である。
[0005] 仮に、家電機器にインターネット接続機能が標準装備されたとしても、ソフトウェア 更新のための設備を整えるのは困難である。その理由としては、家電機器は大量に かつ不特定多数の消費者により使用されること、家電機器のソフトウェアは機種によ つて異なること、および、同機種の家電機器間でもその出荷時期によってはソフトゥェ ァのバージョンが異なり得ること力 挙げられる。
[0006] さらに、家電機器用ソフトウェアの更新を行うには、配信されるソフトウェアに対する セキュリティも重要である。例えば、悪意の第三者の操作により、配信されるソフトゥェ ァに不正なコードが混入されてソフトウェアが改ざんされたり、配信される情報の中か らその家電機器に関するノウハウやアルゴリズムなどの秘密情報が解読されたりする ことは、確実に防止されなければならない。そのためには、ソフトウェアおよびそれに 付随する情報は、配信の際に暗号ィ匕する必要がある。
[0007] これらに対処するための方式力 例えば特許文献 1に記載されている。この装置で は、実行プログラムを第 1の記憶手段に書き換え可能に格納する。また、新たな実行 プログラムとモジュール識別情報とを含むダウンロードモジュールを第 2の記憶手段 に格納する。また、第 1の記憶手段に格納された実行プログラムとモジュール識別情 報とから作成された暗号鍵で暗号化されたダウンロードモジュールを受信して、第 2 の記憶手段に格納する。そして、第 1の記憶手段内の実行プログラムと第 2の記憶手 段内のダウンロードモジュールとから作成される暗号鍵でダウンロードモジュールを 復号化する。ダウンロードモジュール中に暗号ィ匕されている格納開始アドレス、デー タ長およびチェックディジットが正当な値に平文化された場合、復号化された新たな 実行プログラムで第 1の記憶手段内の実行プログラムを置き換える。つまり、現在の 実行プログラムとダウンロードモジュールの識別情報とを利用して、暗号ィ匕されたダウ ンロードモジュールを受信することにより、実行プログラムの改ざんや解読を防止する
特許文献 1:国際公開第 2002Z057904号パンフレット
特許文献 2:特開 2002— 290396号公報
発明の開示
発明が解決しょうとする課題
[0008] し力しながら、上記従来の更新方式においては、現在の実行プログラムとダウン口 ードモジュール識別情報とから暗号鍵が生成されるため、バージョンごとに異なる暗 号鍵でダウンロードモジュールを暗号ィ匕して配信する必要が生じる。よって、更新対 象のプログラムが多数のバージョンを含む場合には、莫大なコストが必要となる。
[0009] また、別の方式として、特許文献 2に記載された鍵束を用いた通信方式の応用が考 えられる。この方法では、各家電機器に予め複数の鍵を含む鍵束を格納しておき、 その鍵束の中から一つの鍵を選択して、配信する情報を選択鍵で暗号化し、暗号ィ匕 した情報を選択鍵の識別情報とともに各家電機器に配信する。例えば、図 1Aに示す ように、互いに異なるバージョンのソフトウェアが搭載された家電機器を想定する。各 家電機器には、鍵 Kl〜Knの n個の鍵からなる鍵束が格納されている。これらの家電 機器に対して、図 1Bに示すように、最新バージョンのソフトウェアを配信する場合、サ ーバは、鍵束の中からいずれかの鍵 Kaを選択して、選択鍵 Kaでソフトウェアを暗号 化して、暗号ィ匕したソフトウェアを選択鍵 Kaの識別情報 aとともに配信する。各家電機 器は、識別情報 aに従って鍵 Kaを選択してソフトウェアを復号ィ匕してソフトウェアの置 き換えを実行する。
[0010] この方式によれば、複数の家電機器に対して配信する情報を一つの共通する鍵で 暗号ィ匕すればよいため、配信サーバ側のコストを抑制することができる。しかし、この 方式にお 、て一定のセキュリティレベルを維持するには、鍵束に多数の鍵を含めるこ とが必要である。よって、鍵束を格納するのに十分な記憶容量を各家電機器に設け ることが求められるため、家電機器自体のコストが増大し得る。
[0011] 本発明の目的は、家電機器等の装置のソフトウェアの更新を安全にしかも効率的 に行うことができるデータ格納装置、管理サーバ、集積回路、データ更新システム、 家電機器、データ更新方法、暗号化方法、および、喑復号鍵生成方法を提供するこ とである。
課題を解決するための手段
[0012] 本発明のデータ格納装置は、 n番目(n≥ 1)にリリースされたデータ Pnを格納する データ格納手段と、鍵情報を生成するための第 1の生成情報と第 2の生成情報とを 格納する鍵生成情報記憶手段と、前記第 1の生成情報と第 2の生成情報とから鍵情 報を生成する鍵生成手段と、前記データ及び前記第 1の生成情報と第 2の生成情報 とを更新する更新手段と、から構成されるデータ格納装置であって、前記鍵生成情 報記憶手段に格納されている第 1の生成情報は、第 1の秘密情報 Aに不可逆演算 X を n回行った X(n, A)、第 2の生成情報は、第 2の秘密情報 Bに不可逆演算 Yを M— n回(M— n≥l)行った Y(M— n, B)であり、 n— i番目〜 n+j番目(M≥n+j≥n≥n -i≥ 1)にリリースされたデータが格納されているデータ格納装置を更新対象とする データ Pnをデータ Pk (M≥k≥l)に更新する更新情報を受信した場合に、前記鍵 生成手段が、第 1の生成情報に不可逆演算 Xを j回行って X(n+j, A)を生成し、第 2 の生成情報に不可逆演算 Yを i回行って Y(M—n+i, B)を生成し、更に、前記 X(n +j, A)と Y(M— n+i, B)と力ら鍵情報 G (X(n+j, A) , Y(M— n+i, B) ) (Gは任意 の関数)を生成し、前記更新手段が、前記生成した鍵情報 G (X(n+j, A) , Y(M- n+i, B) )を用いて前記更新情報の暗号を復号化して、データ Pk及び第 1の生成情 報 X(k, A)と第 2の生成情報 Y(M— k, B)とを取得し、前記データ格納手段に格納 されて 、るデータ Pnをデータ Pkに更新し、前記鍵生成情報記憶手段に格納されて いる第 1の生成情報 X(n, A)と第 2の生成情報 Y(M— n, B)とを、それぞれ、第 1の 生成情報 X(k, A)と第 2の生成情報 Y(M— k, B)とに更新する、構成を採る。
[0013] 本発明の管理サーバは、第 1の秘密情報 Aと第 2の秘密情報 Bとをデータ格納装置 の種類ごとに保持する秘密情報保持手段と、データ格納装置に格納する第 1の生成 情報と第 2の生成情報を生成する生成情報生成手段と、から構成される管理サーバ であって、 n番目(n≥l)にリリースされたデータ Pnを格納するデータ格納装置に対し て、前記生成情報生成手段が、前記秘密情報保持手段から第 1の秘密情報 Aと第 2 の秘密情報 Bを読み出し、前記第 1の秘密情報 Aに不可逆演算 Xを n回行って第 1の 生成情報 X(n, A)を生成し、前記第 2の秘密情報 Bに不可逆演算 Yを M— n回 (M n≥l)行って第 2の生成情報 Y(M— n, B)を生成する、構成を採る。
[0014] 本発明の管理サーバは、第 1の秘密情報 Aと第 2の秘密情報 Bとをデータ格納装置 の種類ごとに保持する秘密情報保持手段と、データ格納装置に格納する第 1の生成 情報と第 2の生成情報を生成する生成情報生成手段と、前記第 1の生成情報と第 2 の生成情報とから鍵情報を生成する暗号鍵生成手段と、データ格納装置に送信する 更新情報を生成する更新情報生成手段とから構成される管理サーバであって、 n— i 番目〜n+j番目(M≥n+j≥n≥n— i≥ 1)にリリースされたデータを格納するデータ 格納装置に対して、 k番目(M≥k≥l)のリリースとなるデータ Pkを含む更新情報を 生成する場合に、前記生成情報生成手段が前記秘密情報保持手段から第 1の秘密 情報 Aと第 2の秘密情報 Bを読み出し、前記第 1の秘密情報 Aに不可逆演算 Xを k回 行って第 1の生成情報 X(k, A)を生成し、前記第 2の秘密情報 Bに不可逆演算 Yを M— k回行って第 2の生成情報 Y(M— k, B)を生成し、前記暗号鍵生成手段が前記 第 1の秘密情報 Aに不可逆演算 Xを n+j回行って X(n+j, A)を生成し、前記第 2の 秘密情報 Bに不可逆演算 Yを M—n+i回行って Y(M—n+i, B)を生成し、更に、前 記生成した X(n+k, A)と Y (M—n+i, B)と力も鍵情報 G (X(n+j, A) , Y(M— n +i, B) ) (Gは任意の関数)を生成し、前記更新情報生成手段が前記データ Pkと第 1の生成情報 X(k, A)と第 2の生成情報 Y(M— k, B)とを連結して、さらに前記鍵情 報 G (X(n+j, A) , Y(M— n+i, B) )を用いて暗号ィ匕し、さらに更新情報を受信した データ格納装置における更新情報の処理を制御する制御情報を連結して更新情報 を生成する、構成を採る。
本発明の集積回路は、 n番目(n≥ 1)にリリースされたデータ Pnを格納するデータ 格納装置に搭載される集積回路であって、鍵情報を生成するための第 1の生成情報 と第 2の生成情報とを格納する鍵生成情報記憶手段と、前記第 1の生成情報と第 2の 生成情報とから鍵情報を生成する鍵生成手段と、前記データ格納装置に格納された データと前記第 1の生成情報と第 2の生成情報とを更新する更新手段と、を備え、前 記鍵生成情報記憶手段に格納されている第 1の生成情報は、第 1の秘密情報 Aに不 可逆演算 Xを n回行った X(n, A)、第 2の生成情報は、第 2の秘密情報 Bに不可逆演 算 Yを M—n回(M—n≥l)行った Y(M—n, B)であり、 n—i番目〜 n+j番目(M≥ n+j≥n≥n— i≥ 1)にリリースされたデータが格納されているデータ格納装置を更新 対象とするデータ Pnをデータ Pk (M≥k≥l)に更新する更新情報を受信した場合に 、前記鍵生成手段が、第 1の生成情報に不可逆演算 Xを j回行って X (n+j, A)を生 成し、第 2の生成情報に不可逆演算 Yを i回行って Y (M—n+i, B)を生成し、更に、 前記 X (n+j, A)と Y (M—n+i, B)と力ら鍵情報 G (X(n+j, A) , Y(M— n+i, B) ) (Gは任意の関数)を生成し、前記更新手段が、前記生成した鍵情報 G (X(n+j, A) , Y(M-n+i, B) )を用いて前記更新情報の暗号を復号化して、データ Pk及び第 1 の生成情報 X(k, A)と第 2の生成情報 Y(M— k, B)とを取得し、前記データ格納装 置に格納されて 、るデータ Pnをデータ Pkに更新し、前記鍵生成情報記憶手段に格 納されている第 1の生成情報 X(n, A)と第 2の生成情報 Y(M— n, B)とを、それぞれ 、第 1の生成情報 X(k, A)と第 2の生成情報 Y(M— k, B)とに更新する、構成を採る 本発明のデータ更新システムは、 n番目(n≥ 1)にリリースされたデータ Pnを格納す るデータ格納装置と、前記データ格納装置の機器情報を保持する管理装置と、前記 データ格納装置に搭載されているデータを更新する管理サーバとから構成されるデ ータ更新システムであって、前記データ格納装置は、データ Pnを格納するデータ格 納手段と、鍵情報を生成するための第 1の生成情報と第 2の生成情報とを格納する 鍵生成情報記憶手段と、前記第 1の生成情報と第 2の生成情報とから鍵情報を生成 する鍵生成手段と、前記データ及び前記第 1の生成情報と第 2の生成情報とを更新 する更新手段と、を備え、前記鍵生成情報記憶手段に格納されている第 1の生成情 報は、第 1の秘密情報 Aに不可逆演算 Xを n回行った X(n, A)、第 2の生成情報は、 第 2の秘密情報 Bに不可逆演算 Yを M— n回(M— n≥l)行った Y(M— n, B)であり 、前記管理装置は、前記データ格納装置から登録された機器情報を保持する機器 情報管理手段と、前記データ格納装置が格納するデータを更新するデータ更新手 段とを備え、前記管理サーバは、第 1の秘密情報 Aと第 2の秘密情報 Bとをデータ格 納装置の種類ごとに保持する秘密情報保持手段と、データ格納装置に格納する第 1 の生成情報と第 2の生成情報を生成する生成情報生成手段と、前記第 1の生成情報 と第 2の生成情報とから鍵情報を生成する暗号鍵生成手段と、データ格納装置に送 信する更新情報を生成する更新情報生成手段とを備え、前記データ更新手段は、さ らに、更新情報に含まれる機器情報と前記機器情報管理手段が保持する機器情報 とを照合する照合手段と、更新情報を保持する保持手段と、前記データ格納装置と の間で行う前記データ格納装置が格納するデータを更新する処理を制御する更新 処理制御手段とを備え、 n—i番目〜n+j番目(M≥n+j≥n≥n—i≥ 1)にリリースさ れたデータを搭載するデータ格納装置の前記データを、 k番目(M≥k≥l)のリリー スとなるデータ Pkに更新する場合に、前記管理サーバは、前記生成情報生成手段 が前記秘密情報保持手段から第 1の秘密情報 Aと第 2の秘密情報 Bを読み出し、前 記第 1の秘密情報 Aに不可逆演算 Xを k回行って第 1の生成情報 X(k, A)を生成し、 前記第 2の秘密情報 Bに不可逆演算 Yを M— k回行って第 2の生成情報 Y(M— k, B)を生成し、前記暗号鍵生成手段が前記第 1の秘密情報 Aに不可逆演算 Xを n+j 回行って X(n+j, A)を生成し、前記第 2の秘密情報 Bに不可逆演算 Yを M— n+i回 行って Y(M—n+i, B)を生成し、更に、前記生成した X(n+j, A)と Y(M—n+i, B )とから鍵情報 G (X(n+j, A) , Y(M— n+i, B) ) (Gは任意の関数)を生成し、前記 更新情報生成手段が前記データ Pkと第 1の生成情報 X(k, A)と第 2の生成情報 Y( M-k, B)とを連結して、さらに前記鍵情報 G (X(n+j, A) , Y(M— n+i, B) )を用 いて暗号ィ匕し、さらに更新情報を受信したデータ格納装置における更新情報の処理 を制御する制御情報を連結して更新情報を生成し、前記生成した更新情報を前記 管理装置に配信し、前記更新情報を受信した管理装置は、前記照合手段が前記受 信した更新情報の前記制御情報に含まれる機器情報と前記機器情報管理手段が保 持する機器情報とを照合して、機器情報が一致するデータ格納装置の機器情報が 登録されて!、た場合に、前記更新処理制御手段が前記受信した更新情報を前記保 持手段に格納し、さらに機器情報が一致したデータ格納装置に対して前記更新情報 を送信し、前記更新情報を受信したデータ格納装置は、前記鍵生成手段が、第 1の 生成情報に不可逆演算 Xを j回行って X(n+j, A)を生成し、第 2の生成情報に不可 逆演算 Yを i回行って Y(M— n+i, B)を生成し、更に、前記 X(n+j, A)と Y(M— n +i, B)とから鍵情報 G (X(n+j, A) , Y(M-n+i, B) )を生成し、前記更新手段が 、前記生成した鍵情報 G (X(n+j, A) , Y(M— n+i, B) )を用いて前記更新情報の 暗号を復号化して、データ Pk及び第 1の生成情報 X(k, A)と第 2の生成情報 Y(M -k, B)とを取得し、前記データ格納手段に格納されているデータ Pnをデータ Pkに 更新し、前記鍵生成情報記憶手段に格納されている第 1の生成情報 X(n, A)と第 2 の生成情報 Y(M— n, B)とを、それぞれ、第 1の生成情報 X(k, A)と第 2の生成情 報 Y(M— k, B)とに更新する、構成を採る。
[0017] 本発明の家電機器は、現用データを新規データに更新する家電機器において、暗 号化された前記新規データと、更新対象データのシリアル番号と、を受信する受信部 と、前記更新対象データのシリアル番号に応じた回数だけ、所定の不可逆演算を、 前記現用データに関連付けられた固有情報に施して鍵を生成する生成部と、前記新 規データを前記鍵で復号化する復号化部と、を有する構成を採る。
[0018] 本発明のデータ更新方法は、現用データ力 新規データへの更新に用いるデータ 更新方法において、暗号化された前記新規データと、更新対象データのシリアル番 号と、を取得する取得ステップと、前記更新対象データのシリアル番号に応じた回数 だけ、所定の不可逆演算を、前記現用データに関連付けられた固有情報に施して鍵 を生成する生成ステップと、前記新規データを前記鍵で復号化する復号化ステップと 、を有するようにした。
[0019] 本発明の喑復号鍵生成方法は、データの暗号ィ匕または復号ィ匕に用いる鍵を生成 する喑復号鍵生成方法であって、前記データに関連付けられた固有情報と前記デ ータのシリアル番号と、を取得する取得ステップと、前記データのシリアル番号に応じ た回数だけ、所定の不可逆演算を前記固有情報に施して鍵を生成する生成ステップ と、を有するようにした。
[0020] 本発明の暗号鍵生成方法は、データの暗号ィ匕に用いる鍵を生成する暗号鍵生成 方法であって、前記データに関連付けられた第 1の秘密情報 Aと第 2の秘密情報 Bと を取得する取得ステップと、前記第 1の秘密情報 Aに不可逆演算 Xを n+j回 (n≥0、 j ≥0)行って X(n+j, A)を生成するステップと、前記第 2の秘密情報 Bに不可逆演算 Yを M— n+i回(M≥0、 i≥0)行って Y(M— n+i, B)を生成するステップと、前記 X (n+j, A)と Y(M— n+i, B)とを含む情報力も鍵を合成するステップと、を有するよう にした。
[0021] 本発明の復号鍵生成方法は、データの復号化に用いる鍵を生成する復号鍵生成 方法であって、前記データに関連付けられた第 1の生成情報 Caと第 2の生成情報 C bとを取得する取得ステップと、前記第 1の生成情報 Caに不可逆演算 Xを j回 (j≥0) 行って X(j, Ca)を生成するステップと、前記第 2の生成情報 Cbに不可逆演算 Yを i回 (i≥0)行って Y(i, Cb)を生成するステップと、前記 X(j, Ca)と Y(i, Cb)とを含む情 報から鍵を合成するステップと、を有するようにした。
[0022] 本発明の暗号化方法は、データを暗号化する暗号化方法であって、前記データに 関連付けられた第 1の秘密情報 Aと第 2の秘密情報 Bと第 3の秘密情報 Cと第 4の秘 密情報 Dとを取得する取得ステップと、前記第 1の秘密情報 Aに不可逆演算 Xを n+j 回 (n≥0、 j≥0)行って X(n+j, A)を生成するステップと、前記第 2の秘密情報 Bに 不可逆演算 Yを M— n+i回(M≥0、 i≥0)行って Y(M— n+i, B)を生成するステツ プと、前記第 3の秘密情報 Cに不可逆演算 Uを N + q回 (N≥0、 q≥0)行って U (N + q, C)を生成するステップと、前記第 4の秘密情報 Dに不可逆演算 Vを M— N + p 回(p≥0)行って V (M—N+p, D)を生成するステップと、前記 X(n+j, A)と Y(M -n + i, B)とを含む情報力 鍵を合成するステップと、前記 U (N + q, C)と V(M— N + p, D)とを含む情報力も鍵を合成するステップと、暗号鍵 Kを生成するステップと 、前記暗号鍵 Kを用いてデータを暗号ィ匕するステップと、前記 X(n+j, A)と Y(M— n+i, B)とを含む情報カゝら合成された鍵を用いて前記暗号鍵 Kを暗号ィ匕するステツ プと、前記 U (N + q, C)と V(M— N + p, D)とを含む情報力も合成された鍵を用い て前記暗号鍵 Kを暗号ィ匕するステップと、を有するようにした。
[0023] 本発明の暗号鍵生成方法は、データの暗号ィ匕に用いる鍵を生成する暗号鍵生成 方法であって、前記データに関連付けられた第 1の秘密情報 Aと第 2の秘密情報 Bと 第 3の秘密情報 Cと第 4の秘密情報 Dとを取得する取得ステップと、前記第 1の秘密 情報 Aに不可逆演算 Xを n+j回 (n≥0、 j≥0)行って X(n+j, A)を生成するステツ プと、前記第 2の秘密情報 Bに不可逆演算 Yを M— n+i回(M≥0、 i≥0)行って Y( Μ— n + i, B)を生成するステップと、前記第 3の秘密情報 Cに不可逆演算 Uを s + q 回(s≥0、 q≥0)行って U (s + q, C)を生成するステップと、前記第 4の秘密情報 Dに 不可逆演算 Vを M— s + p回(p≥ 0)行って V (M— s + p , D)を生成するステップと、 前記 X(n+j, A)と Y(M— n+i, B)と U (s + q, C)と V(M— s+p, D)とを含む情報 力も鍵を合成するステップと、を有するようにした。
[0024] 本発明の復号鍵生成方法は、データの復号化に用いる鍵を生成する復号鍵生成 方法であって、前記データに関連付けられた第 1の生成情報 Caと第 2の生成情報 C bと第 3の生成情報 Ccと第 4の生成情報 Cdとを取得する取得ステップと、前記第 1の 生成情報 Caに不可逆演算 Xを j回 (j≥0)行って X(j, Ca)を生成するステップと、前 記第 2の生成情報 Cbに不可逆演算 Yを i回 (i≥0)行って Y(i, Cb)を生成するステツ プと、前記第 3の生成情報 Ccに不可逆演算 Uを q回 (q≥0)行って U (q, Cc)を生成 するステップと、前記第 4の生成情報 Cdに不可逆演算 Vを p回 (p≥0)行って V(p, C d)を生成するステップと、前記 X(j, Ca)と Y(i, Cb)と U (q, Cc)と V (p, Cd)とを含む 情報力も鍵を合成するステップと、を有するようにした。 発明の効果
[0025] 本発明によれば、家電機器等の装置のソフトウェアの更新を安全にしかも効率的に 行うことができる。
図面の簡単な説明
[0026] [図 1A]従来のソフトゥ ア更新方式の一例を示す図
[図 1B]従来のソフトゥ ア更新方式の他の例を示す図
[図 2]本発明の実施の形態 1に係るソフトウェア更新システムの構成を示すブロック図 [図 3]本発明の実施の形態 1に係る家電機器に格納されるデータの相互関係を示す 図
[図 4A]本発明の実施の形態 1に係る現用データ、更新対象データおよび新規データ を示す図
[図 4B]本発明の実施の形態 1に係る更新情報および制御情報を示す図
[図 5A]本発明の実施の形態 1に係る機器管理サーバによる暗号ィ匕処理のフロー図
[図 5B]本発明の実施の形態 1に係る家電機器による復号ィ匕処理のフロー図
[図 6]本発明の実施の形態 2に係るソフトウェア更新システムの構成を示すブロック図
[図 7A]本発明の実施の形態 3に係るソフトウェア更新システムの構成を示すブロック 図
[図 7B]本発明の実施の形態 3に係る機器管理モジュールの構成を示すブロック図 [図 8]本発明の実施の形態 3に係るソフトウェア更新システムにおける更新処理のフロ 一を示す図
[図 9A]本発明の実施の形態 4に係るソフトウェア更新システムの構成を示す図
[図 9B]本発明の実施の形態 4に係る機器管理モジュールの構成を示すブロック図 [図 10]本発明の実施の形態 4に係るソフトウェア更新システムにおける更新処理のフ ローを示す図
[図 11A]本発明の実施の形態 5に係るソフトウェア更新システムの構成を示す図
[図 11B]本発明の実施の形態 5に係る機器管理モジュールの構成を示す図
[図 11C]本発明の実施の形態 5に係る別の機器管理モジュールの構成を示す図 [図 12]本発明の実施の形態 5に係るソフトウェア更新システムにおける更新処理のフ ローを示す図
[図 13]本発明の実施の形態 6に係るソフトウェア更新システムの構成を示すブロック 図
[図 14]本発明の実施の形態 7に係るソフトウェア更新システムの構成を示すブロック 図
[図 15]本発明の実施の形態 7に係るソフトウェア更新システムにおける更新処理のフ ローを示す図
[図 16]本発明の実施の形態 8に係るソフトウェア更新システムの構成を示すブロック 図
圆 17]本発明の実施の形態 8に係る家電機器に格納されるデータの相互関係を示 す図
圆 18A]本発明の実施の形態 8に係る現用データ、更新対象データおよび新規デー タを示す図
圆 18B]本発明の実施の形態 8に係る更新情報および制御情報を示す図
圆 19A]本発明の実施の形態 8に係る機器管理サーバによる暗号ィ匕処理のフロー図 圆 19B]本発明の実施の形態 8に係る家電機器による復号ィ匕処理のフロー図 (搭載さ れているソフトウェアのソフトウェアバージョンのシリアル番号が n (n—i≤n≤n+j)の 場合)
圆 19C]本発明の実施の形態 8に係る家電機器による復号ィ匕処理のフロー図 (搭載 されているソフトウェアのソフトウェアバージョンのシリアル番号が N (N—p≤N≤N + q)の場合)
[図 20]本発明の実施の形態 9に係るソフトウェア更新システムの構成を示すブロック 図
圆 21]本発明の実施の形態 9に係る家電機器に格納されるデータの相互関係を示 す図
圆 22A]本発明の実施の形態 9に係る現用データ、更新対象データおよび新規デー タを示す図
圆 22B]本発明の実施の形態 9に係る更新情報および制御情報を示す図 [図 23A]本発明の実施の形態 9に係る機器管理サーバによる暗号ィ匕処理のフロー図 [図 23B]本発明の実施の形態 9に係る家電機器による復号ィ匕処理のフロー図 発明を実施するための最良の形態
[0027] 以下、本発明の実施の形態について、図面を用いて詳細に説明する。
[0028] (実施の形態 1)
図 2は、本発明の実施の形態 1に係るソフトウェア更新システムとしてのデータ通信 システムである。このソフトウェア更新システムは、ソフトウェア更新機能を備えた家電 機器 100と、暗号ィ匕した新しいソフトウェアを含む更新情報を家電機器 100に対して 配信する機器管理サーバ 150と、家電機器 100と機器管理サーバ 150との間のデー タ通信を可能にする通信路 160と、力も構成される。機器管理サーバ 150は、家電機 器 100のソフトウェアを管理する製造会社や販売会社などによって設置、管理される
[0029] 家電機器 100は、配信された更新情報を受信する受信部 140と、家電機器 100の 本来の機能に関する実際の物理的動作を行うハードウ アによって構成される機構 部 130と、機構部 130の動作を制御する制御部 120と、制御部 120に格納されてい るソフトウェアを更新する機器管理モジュール 110と、から構成される。
[0030] また、制御部 120は、制御コード格納部 121を備え、制御コード格納部 121には、 家電機器 100のソフトウェアとしての制御コード 122と、ユーザにより設定された情報 であるユーザ設定 123と、が格納されている。また、制御部 120は、制御コード 122を 実行して機構部 130を制御する CPU (Central Processing Unit)と、制御コード格納 部 121を形成するメモリと、から構成される。
[0031] 機器管理モジュール 110は、 B音復号ィ匕処理に用いられる鍵を生成するための鍵成 分である生成情報 Cal 14、生成情報 Cbl 15を格納する生成情報記憶部 111と、こ れらの生成情報力 鍵を生成する、取得部、演算部、合成部および生成部としての 鍵生成部 112と、生成された鍵を用いて更新情報を復号ィ匕する復号ィ匕部としての機 能を有しかつ復号化された更新情報によりソフトウェアを更新する更新部 113と、力 構成される。また、機器管理モジュール 110は、集積回路により構成され、この集積 回路は、鍵生成部 112と更新部 113とに相当するソフトウェアモジュールを実行する CPUと、生成情報記憶部 111を形成するメモリと、から構成され、望ましくは耐タンパ 性を備えた集積回路であるとする。
[0032] 機器管理サーバ 150は、秘密情報保持部 151、生成情報生成部 152、暗号鍵生 成部 153、更新情報生成部 154、更新情報配信部 155および更新状況管理部 156 から構成される。
[0033] 秘密情報保持部 151は、生成情報を生成するための元情報である秘密情報 A157 、秘密情報 B158を保持する。
[0034] ここで、これらの秘密情報は、通常は家電機器の機種ごとに異なり、外部に公開さ れることなぐ機器管理サーバ 150に厳重に管理される。機器管理サーバ 150が複 数の機種の家電機器に対して更新情報を配信する場合には、機種ごとに秘密情報 Aおよび Bのペアを管理する。なお、機種が異なる家電機器であっても同じソフトゥェ ァを使用する場合には、同じ秘密情報を割り当てるようにしても良 ヽ。
[0035] 生成情報生成部 152は、秘密情報 A157および秘密情報 B158から生成情報を生 成する。
[0036] 暗号鍵生成部 153は、生成された生成情報を合成して鍵を生成する。
[0037] 更新情報生成部 154は、生成された鍵を用いて新しいソフトウェアを暗号ィ匕して更 新情報を生成する。
[0038] 更新情報配信部 155は、生成された更新情報を家電機器 100に配信する。
[0039] 更新状況管理部 156は、家電機器 100のソフトウェア更新状況を管理する。
[0040] 通信路 160は、例えば、テレビ放送などの放送網、インターネットなどの有線通信 網、携帯電話などの無線通信網である。なお、家電機器 100と機器管理サーバ 150 との間のデータ通信は、通信路 160を介する代わりに、メモリカードなどの蓄積メディ ァゃ ICカードを介しても良い。
[0041] 図 3は、家電機器 100に格納されるデータ、すなわち、制御コードおよび 2つの生 成情報 Ca、 Cbの相互関係を示す図である。
[0042] 生成情報 Ca、 Cbは、それぞれ秘密情報 A157、秘密情報 B 158から機器管理サ ーバ 150の生成情報生成部 152が生成した情報であり、家電機器 100のソフトウェア バージョンのシリアル番号によって異なっている。ここで、ソフトウェアバージョンのシリ アル番号とは、ソフトウェアのリリースの順番を示す番号であり、新しいバージョンのリ リースの度にカウントアップするものとする。最初のバージョンのソフトウェアのシリアル 番号を" 1"とし、新しいバージョンのリリースごとに" 1"カウントアップする番号とする。 例えば、ソフトウェアの最初のバージョンのバージョン番号が Version 1.0.0で、次にリ リースされたソフトウェアのバージョン番号が Version 1.0.1、その次にリリースされたソ フトウェアのバージョン番号が Version 1.0.2、さらに次にリリースされたソフトウェアの バージョン番号が Version 1.1.0であった場合、 Version 1.0.0のソフトウェアバージョン のシリアル番号は 1、 Version 1.0.1のソフトウェアバージョンのシリアル番号は 2、 Versi on 1.0.2のソフトウェアバージョンのシリアル番号は 3、 Version 1.1.0のソフトウェアバ 一ジョンのシリアル番号は 4、というようになる。
[0043] 図 3において、例えば、ソフトウェアバージョンのシリアル番号が 1の場合、家電機器 100には、制御コード P1と、機器管理サーバ 150の生成情報生成部 152が生成した 、生成情報 Ca=X(l, A)と生成情報 Cb=Y(M— 1, B)と、が格納される。同様に、 ソフトウェアバージョンのシリアル番号が nの場合、家電機器 100には制御コード Pnと 、機器管理サーバ 150の生成情報生成部 152が生成した、生成情報 Ca=X(n, A) と生成情報 Cb=Y(M— n, B)と、が格納される。換言すれば、現在使用されている ソフトウェアバージョンのシリアル番号が nであれば、使用中のソフトウェア自体(また はその一部)が制御コード Pnである。また、生成情報 Ca=X(n, A)、生成情報 Cb = Y(M-n, B)は、制御コード Pnに固有の情報としてそれぞれ保持され、鍵成分とし て鍵の生成に用いられる。
[0044] ここで、 Xおよび Yは互 、に異なる所定の不可逆演算を示して!/、る。 X (p, a)は、デ ータ aに対して不可逆演算 Xを p回繰り返した結果を示し、 Y(q, b)はデータ bに対し て不可逆演算 Yを q回繰り返した結果を示す。したがって、生成情報 X(l, A)は、秘 密情報 Aに不可逆演算 Xを 1回行った場合の結果であり、生成情報 Y(M— 1, B)は 、秘密情報 Bに不可逆演算 Yを M— 1回繰り返した場合の結果である。 M— 1は、ソ フトウエアバージョンのシリアル番号の最大値を示し、 M (M— 1≥ 1の整数)は十分に 大きい値であるとする。
[0045] 生成情報 X(n, A)は、秘密情報 Aに不可逆演算 Xを n回繰り返した場合の結果で あり、生成情報 X(n, A)力も秘密情報 Aを算出することは出来ない。また、生成情報 Y(M-n, B)は、秘密情報 Bに不可逆演算 Yを M— n回繰り返した場合の結果であ り、生成情報 Y(M—n, B)から秘密情報 Bを算出することは出来ない。
[0046] 次に、家電機器 100のソフトウェアを更新する動作について説明する。
[0047] 機器管理サーバ 150は、機器管理サーバ 150が管理する機種の家電機器のソフト ウェアを新しいソフトウェアに更新する必要が発生した場合、更新の対象となる家電 機器に搭載されて 、るソフトウェアのバージョンに基づ 、て新し 、ソフトウェアを暗号 化し、更新情報を生成して、それを、通信路 160を介して各家電機器へ配信する。
[0048] ここで、図 4Aに示すように、ソフトウェアバージョンのシリアル番号が n—i〜n+j (i, jは 1≤n— i≤n+j≤M— 1を満たす整数)のソフトウェア(つまり、更新対象ソフトゥェ ァ)を、シリアル番号が n+k (kは 1≤n+k≤M— 1を満たす整数)のソフトウェア(つ まり、新規ソフトウェア)に更新する必要がある場合を例にとって説明する。なお、家電 機器 100において現在使用されているソフトウェア(つまり、現用ソフトウェア)のバー ジョンのシリアル番号は n (nは n— i≤ n≤ n + jを満たす整数)であるとする。
[0049] 図 5Aのフロー図に示すように、まず、機器管理サーバ 150の生成情報生成部 152 力 秘密情報保持部 151から家電機器 100に対応する秘密情報 A157と秘密情報 B 158を読み出して、秘密情報 A157に不可逆演算 Xを n+j回行って生成情報 X(n+ j, A)を生成し、さらに不可逆演算 Xを k j回行ってシリアル番号 n+kの場合の生成 情報 Caである X(n+k, A)を生成し (ステップ 401)、秘密情報 B158に不可逆演算 Yを M— n— k回行つてシリアル番号 n + kの場合の生成情報 Cbである Y (M— n— k , B)を生成し、さらに不可逆演算 Yを k+i回行って生成情報 Y(M—n+i, B)を生成 する (ステップ 402)。次に、暗号鍵生成部 153が、生成された生成情報 X (n+j, A) と生成情報 Y(M— n+i, B)とシリアル番号 n+kとを合成して鍵 F (X (n+j, A) , Y( M-n+i, Β) , n+k)を生成する(ステップ 403)。ここで、鍵 F (x, y, z)は、 x、 y、 zを 変数とする任意の関数であり、例えば、 F (x, y, z) =H (x I I y | | z) (xと yと zのデ ータ連結にハッシュ演算を施したもの)と 、つた関数が用いられる。
[0050] 次に、更新情報生成部 154が、シリアル番号 n+kの場合の生成情報 Ca (=X(n+ k, A) )と生成情報 Cb (=Y(M— n— k, B) )と制御コード Pn+kとを、生成した鍵 F ( X(n+j, A) , Y(M-n+i, B) , n+k)を用いて暗号化し (ステップ 404)、さらに制 御情報を付加して、図 4Bに示すようなデータ構造の更新情報を生成する。
[0051] 次に、更新情報配信部 155が、生成した更新情報を通信路 160を介して家電機器 100を含む各家電機器へ配信する。
[0052] ここで、制御情報は、更新情報を受信した家電機器 100における更新情報の処理 を制御する情報である。制御情報には、更新の対象となっている家電機器の機種を 規定する情報が含まれている。具体的には、例えば、製造会社を示すメーカーコード と、家電機器の型式番号と、ソフトウェアバージョンのシリアル番号とが含まれ、さらに 製造シリアル番号の範囲を示す情報が含まれていても良い。また、制御情報には、 更新後のソフトウェアバージョンを規定する情報として更新後のソフトウェアバージョ ンのシリアル番号が含まれている。さらに、制御情報には、実際に家電機器上で実行 されるプログラムデータが含まれていても良ぐさらに、そのプログラムデータの正当 性を検証するための電子署名等の検証データが含まれていても良い。本実施の形 態の場合には、制御コード格納部 121に格納されているユーザ設定 123を、新しい ソフトウェアにおいても有効なデータ形式に変換するプログラムデータが含まれてい るとする。
[0053] 次に、更新情報を受信した家電機器 100は、更新情報の制御情報に基づき、生成 情報から更新情報の暗号を復号化するための鍵を生成し、更新情報の暗号を復号 化して、ソフトウェアを更新情報に含まれていたものに更新する。ここでは、家電機器 100に搭載されて!、るソフトウェアのソフトウェアバージョンのシリアル番号が n (n-i ≤n≤n+j)であった場合を例にとって説明する。
[0054] 図 5Bのフロー図に示すように、まず、家電機器 100の受信部 140が、機器管理サ ーバ 150から配信された更新情報を通信路 160を介して受信する。家電機器 100の 機器管理モジュール 110の更新部 113が、更新情報の制御情報に基づいて、ソフト ウェアを更新する必要があるかどうかを判定する (ステップ 410)。具体的には、制御 情報を取得し、取得した制御情報の中で規定されて 、るメーカーコードと型式番号が 、家電機器 100のメーカーコードと型式番号とそれぞれ一致し、更に、制御情報の中 で規定されて 、る更新対象のソフトウェアバージョンのシリアル番号に、家電機器 10 0のソフトウェアバージョンのシリアル番号が含まれる場合に、「更新が必要」であると 判定する。ステップ 410の更新の要否判定において、「更新不要」と判定した場合に は、更新部 113は受信した更新情報をそのまま廃棄する。
[0055] 「更新が必要」と判定された場合は、鍵生成部 112が、生成情報記憶部 111から生 成情報 Ca (=X(n, A) )と生成情報 Cb (=Y(M— n, B) )を読み出して、生成情報 C a (=X(n, A) )に不可逆演算 Xを j回行って生成情報 X(n+j, A)を生成し (ステップ 411)、生成情報 Cb (=Y(M—n, B) )に不可逆演算 Yを i回行って生成情報 Y(M -n+i, B)を生成し (ステップ 412)、更に、生成された生成情報 X(n+j, A)、 Y(M -n+i, B)およびシリアル番号 n+kから、鍵 F (X(n+j, A) , Y(M— n+i, B) , n+ k)を生成する (ステップ 413)。
[0056] 次に、更新部 113が、更新情報の暗号ィ匕されている部分を復号ィ匕し (ステップ 414 )、シリアル番号力 +kの場合の生成情報 Ca (=X(n+k, A) )と生成情報 Cb (=Y (M-n-k, B) )と制御コード Pn+kとを取り出して、制御コード格納部 121の制御コ ード Pnを制御コード Pn+kに更新し、生成情報記憶部 111の生成情報 Ca (=X(n, A) )と生成情報 Cb (=Y(M— n, B) )を、それぞれ生成情報 Ca (=X(n+k, A) )と 生成情報 Cb (=Y(M— n— k, B) )に更新する。
[0057] さらに、制御情報に含まれるプログラムデータを実行して、制御コード格納部 121に 格納されて 、るユーザ設定 123を、新 、制御コード Pn+kにお 、ても有効なデー タ形式に変換することにより、ユーザ設定 123を更新して、ソフトウェアの更新を完了 する。この時、更新部 113は、更新情報の暗号化されている部分を復号ィ匕した際に、 復号ィ匕されたデータのノ^ティビットなどをチェックして、復号ィ匕処理が正常に行われ たことをチェックする。
[0058] 以上のように、更新対象の複数の家電機器の中に複数のソフトウェアバージョンの 機器が混在する場合でも、搭載されているソフトウェアのソフトウェアバージョンが、更 新情報の制御情報で規定されている更新対象のソフトウェアバージョンの家電機器 であれば (シリアル番号 n:n—i≤n≤n+j)、更新情報の暗号化されている部分を復 号ィ匕するための鍵を生成することができ、ソフトウェアの更新を行うことが出来る。この 時、機器管理サーバ 150側は、家電機器のバージョンごとに複数の更新情報を配信 する必要はなぐ 1種類の鍵で暗号化された更新情報を配信するだけで良ぐ処理の 負荷が小さくてすむので、サーバ設備に力かるコストを抑えることが出来る。また、家 電機器 100側は、 2つの生成情報を持つだけで、少ないデータ量で、しかもハッシュ 演算という負荷の小さな処理を行うだけで良ぐ一方で、更新ごとに配信される更新 情報の喑復号鍵を変えることが出来るので、更新情報の配信の安全性が向上する。
[0059] 一方、家電機器に搭載されて 、るソフトウェアのソフトウェアバージョン力 更新情報 の制御情報で規定されて 、る更新対象のソフトウェアバージョンではな 、場合、更新 情報の暗号ィ匕されている部分を復号ィ匕するための鍵を生成することは出来ないので
、ソフトウェアを更新することも出来ない。例えば、上記の例の場合で、家電機器に搭 載されて!、るソフトウェアのソフトウェアバージョンのシリアル番号が n—i— 1の場合に は、生成情報記憶部 111に格納されている生成情報 Cbは Y(M— n+i+ 1, B)なの で、この生成情報 Cb (=Y(M—n+i+ l, B) )カら生成情報Y(M—n+i, B)を生成 することは出来ない。したがってこの場合、更新情報の暗号化されている部分を復号 化するための鍵を生成することは出来ない。また、家電機器に搭載されているソフトゥ エアのソフトウェアバージョンのシリアル番号が n+j + 1の場合には、生成情報記憶 部 111に格納されている生成情報 Caは X(n+j + l, A)なので、この生成情報 Ca ( =X(n+j + l, A) )から生成情報 X(n+j, A)を生成することは出来ない。したがつ てこの場合も、更新情報の暗号ィ匕されている部分を復号ィ匕するための鍵を生成する ことは出来ない。このように、家電機器に搭載されているソフトウェアのソフトウェアバ 一ジョンが更新対象ではな 、場合には、更新情報の暗号化されて 、る部分を復号化 するための鍵を生成することさえ出来ないので、ユーザの誤操作などによるソフトゥェ ァの誤更新を防止することが出来る。
[0060] なお、上記では、更新情報を暗号ィ匕する鍵を F (X(n+j, A) , Y(M— n+i, Β) , η
+k)とした力 X(n+j, A)と Y(M— n+i, B)だけを変数とする G (X(n+j, A) , Y( M—n+i, B) )を、更新情報を暗号ィ匕する鍵として用いるようにしても良い。ここで、 G (X, y)は、 x、 yを変数とする任意の関数であり、例えば、 G (x, y) =H (x | | y) と yのデータ連結にハッシュ演算を施したもの)といった関数が用いられる。
[0061] この場合、家電機器 100の鍵生成部 112は、ステップ 413の処理において、生成さ れた生成情報 X(n+j, A)、 Y(M— n+i, B)から、更新情報の暗号ィ匕されている部 分を復号化する鍵 G (X(n+j, A) , Y(M— n+i, B) )を生成する。更新対象のソフト ウェアバージョンが同じ場合には、鍵も同じものとなるが、この場合でも、更新対象の ソフトウェアバージョンを限定することができ、また、家電機器側での鍵生成処理を簡 略ィ匕することが出来る。
[0062] なお、上記では、機器管理モジュール 110を、制御部 120の CPUとは別の CPUを 持つ集積回路であるとしたが、機器管理モジュール 110の機能を、制御部 120の CP Uとメモリとによって構成するようにしても良!、。
[0063] また、上記では、家電機器 100に格納される制御コードの更新を行うとしたが、制御 コードだけではなぐ家電機器 100に格納される特定のデータを同様の仕組みで更 新するようにしても良ぐその特定のデータとしては、マルチメディア 'コンテンツや、ラ ィセンス情報、制御コードが参照するテーブル情報やデータベースなどが含まれる。
[0064] また、上記では、家電機器 100に格納される制御コードの更新を行うとしたが、同様 の仕組みで、家電機器 100に格納される特定のデータを更新することで、家電機器 1 00の一部の機能または全ての機能を無効化するようにしても良い。その特定のデー タとしては、制御コードや、家電機器 100の内部の制御フラグ情報、暗号処理に用い る鍵データ、マルチメディア 'コンテンツ、ライセンス情報、制御コードが参照するテー ブル情報やデータベースなどが含まれ、それらを無効なデータに更新することで、家 電機器 100の一部の機能または全ての機能を無効化する。
[0065] (実施の形態 2)
図 6は、本発明の実施の形態 2に係るソフトウェア更新システムの構成を示すブロッ ク図である。なお、本実施の形態で説明するソフトウェア更新システムは、実施の形 態 1で説明したものと基本的に同様の構成を有する。よって、本実施の形態において 、実施の形態 1で説明したものと同一の構成要素には同一の参照符号を付し、その 詳細な説明を省略する。
[0066] 本実施の形態のソフトウェア更新システムは、家電機器と機器管理サーバとの間に 家電機器管理装置が接続されるという点で、実施の形態 1のソフトウェア更新システ ムと相違する。これは、特に、外部ネットワークに接続する機能を持たない家電機器 のソフトウェアの更新を、確実にかつ効率的に行えるようにするためのものである。
[0067] したがって、本実施の形態のソフトウェア更新システムは、図 6に示すように、ソフト ウェアを更新する機能を備えた家電機器 500と、暗号ィ匕した新 ヅフトウエアを含 む実施の形態 1と同様の更新情報を家電機器 500に対して配信する機器管理サー バ 550と、家電機器 500を含む家庭内の複数の家電機器を管理する家電機器管理 装置 570と、から構成される。
[0068] 家電機器 500は、実施の形態 1で説明した制御部 120および機構部 130、ならび に制御部 120に格納されているソフトウェアを更新する機器管理モジュール力も構成 される。
[0069] 機器管理モジュール 510は、実施の形態 1で説明した生成情報記憶部 111、鍵生 成部 112および更新部 113に、ローカルネットワーク 561を介して家電機器管理装置 570と通信を行う受信部および転送部としてのローカル通信部 517と、ローカルネット ワーク 561を介して常に家電機器管理装置 570に家電機器 500の機器情報を登録 する通知部としての機器情報登録部 516と、を加えた構成となっている。ここで、ロー カルネットワーク 561としては、電力線を介して通信を行う電力線ネットワーク、非接 触 ICカードの無線通信や赤外線などの近距離無線通信を用いた近距離無線ネット ワーク、 LANネットワーク、または無線 LANネットワークであっても良い。
[0070] また、機器管理モジュール 510は、鍵生成部 112と更新部 113と機器情報登録部 5 16とに相当するソフトウェアモジュールを実行する CPUと、生成情報記憶部 111を 形成するメモリと、ローカル通信部 517を形成するモデム回路と、から構成される集積 回路によって構成される。
[0071] 機器情報登録部 516は、予め、ローカル通信部 517を通じ、家電機器 500が設置 されている家の中のローカルネットワーク 561を介して、自身の機器情報を家電機器 管理装置 570に通知することにより、機器情報の登録を行う。機器情報管理部 573 に登録される機器情報には、その家電機器のメーカーコード、型式番号および製造 番号、ならびにその家電機器のソフトウェアバージョンのシリアル番号が含まれる。
[0072] 機器管理サーバ 550は、実施の形態 1で説明した機器管理サーバ 150と同一の内 部構成を有する。本実施の形態の場合は、生成された更新情報は、家電機器管理 装置 570へ配信される。
[0073] 家電機器管理装置 570は、通信路 560を介して機器管理サーバ 550から更新情 報を受信する更新情報受信部 571と、ローカルネットワーク 561を介して家電機器と 通信をするローカル通信部 572と、各家電機器カゝら登録のために通知された機器情 報を家電機器ごとに管理し機器情報リスト 576として保持する機器情報管理部 573と 、各家電機器の機器管理モジュールと連携して各家電機器のソフトウェアを更新する データ更新部 574と、各家電機器のソフトウエアの更新の結果を機器情報と共に機 器管理サーバ 550へ通知する通信部 575と、から構成される。
[0074] また、データ更新部 574において、照合部 577が、更新情報の制御情報の中の更 新対象の家電機器の機種を規定する情報と機器情報リスト 576の機器情報とを照合 して、ソフトウェアを更新する必要がある家電機器が登録されているかどうかを判定す る。更新対象の家電機器と機器情報が一致する家電機器が登録されて 、た場合に、 更新処理制御部 579が、ローカルネットワーク 561を介して該当する家電機器 500と 通信して、ソフトウェアの更新処理を行う。この時の更新処理の過程で、データ保持 部 578には、受信した更新情報が保持され、また、家電機器 500から更新前のソフト ウェアがデータ保持部 578にバックアップされる。
[0075] ここで、通信路 560としては、テレビ放送などの放送網、インターネットなどの有線通 信網、携帯電話などの無線通信網であってもよぐまた複数の種類の通信網によって 構成されていてもよい。また、機器情報管理部 573は、機器情報リスト 576を格納す る不揮発性メモリを備える。また、データ更新部 574は、照合部 577と更新処理制御 部 579とに相当するソフトウェアモジュールを実行する CPUと、データ保持部 578を 形成するメモリと、カゝら構成される。更新処理の際、データ保持部 578には、受信した 更新情報と暗号化された家電機器の更新前のソフトウェアが保持される。
[0076] このように、本実施の形態によれば、家電機器の機器情報を家電機器管理装置 57 0に登録しておき、家電機器管理装置 570が更新情報を機器管理サーバ 550から受 信して、ソフトウェアを更新する必要がある場合に、家電機器管理装置 570を介して 個々の家電機器が更新情報を受信してソフトゥヱの更新を行うように構成する。これ により、個々の家電機器に、更新情報を機器管理サーバ 550から直接受信する機能 や外部のネットワークに接続する機能、例えば、テレビチューナーやインターネットモ デムなどの機能を持つ必要がなくなるので、ソフトウェアの更新機能を備えた家電機 器を低いコストで構成することが出来る。
[0077] また、本実施の形態によれば、家電機器管理装置 570が機器管理サーバ 550から 配信される更新情報を受信する。これにより、各家電機器のソフトウェアの更新を確 実に行うことが出来る。更新情報が機器管理サーバ 550から配信される時に、各家 電機器は必ずしも電源オンの状態である必要はなぐ電源がオンになった際に、家 電機器管理装置 570との間で更新処理を行うことで、ソフトウェアの更新を確実に行 うことが出来る。
[0078] さらに、家電機器管理装置 570のデータ更新部 574のデータ保持部 578を、更新 情報のバッファ領域および更新前のソフトウェアのバックアップ領域として用いること ができるので、個々の家電機器において更新処理の為に必要となるメモリを最小限 に抑えることができる。また、仮に更新処理に失敗した場合でも、ノ ックアップしてお いた更新前のソフトウェアを元に戻すことで元の状態に戻すことも出来るので、更新 処理の安全性を更に高めることが出来る。なお、実際には、更新処理に失敗した場 合の処理は、機器管理サーバ 550によって設定された更新情報の制御情報に含ま れるプログラムデータに基づいて行われる場合がある。また、そのプログラムデータに 基づいて、ノ ックアップしておいた更新前のソフトウェアを元に戻すことで元の状態に 戻す場合もあれば、元に戻すことはぜずに、安全のために家電機器を機能停止状態 に設定する場合もある。
[0079] なお、上記では、機器管理モジュール 510を、制御部 120の CPUとは別の CPUを 持つ集積回路であるとしたが、機器管理モジュール 510の機能を、制御部 120の CP
Uとメモリとによって構成するようにしても良!、。
[0080] また、上記では、機器管理モジュール 510にローカル通信部 517が内蔵されるとし たが、機器管理モジュール 510とは独立に、家電機器管理装置 570とローカル通信 を行うローカル通信モジュールを備えるようにしても良 、。
[0081] また、機器管理サーバ 550の更新状況管理部 156に、さらに、家電機器 500のュ 一ザのユーザ情報とロイャリティポイント情報を管理する機能を備え、家電機器 500 のソフトウェアを更新したユーザに対してロイャリティポイントを付与するようにしても良 い。この場合、家電機器 500のソフトウェアが更新されたことを家電機器管理装置 57 0から機器管理サーバ 550に通知する情報には、家電機器 500を管理するユーザの 識別情報が含まれる。家電機器 500のソフトウェアの更新が行われたことが家電機器 管理装置 570から機器管理サーバ 550に通知されると、更新状況管理部 156が、家 電機器 500のソフトウェアの更新状況を更新し、さらに、家電機器 500のユーザの口 ィャリティポイント情報に予め決められたポイントを加算する。このように、家電機器 50 0のソフトウェアを更新することでユーザにロイャリティポイントを付与した場合、本発 明のソフトウェア更新システムに対応した家電機器 500や家電機器管理装置 570の 購入者の増加が期待でき、またソフトウェア更新システムの利用者の増加が期待でき る。
[0082] また、上記では、家電機器 500のソフトウェアを更新することで、ユーザにロイャリテ ィポイントを付与するとした力 逆に、家電機器 500のソフトウェアを更新することで、 ユーザのロイャリティポイント情報から予め決められたポイントを減算するようにしても よい。これは、ソフトウェアの不具合などが要因でソフトウェアを更新するのではなぐ 新たな機能が追加された最新のソフトウェアにアップグレードするなど、有償でソフト ウェアの更新を行う場合に、対価としてロイャリティポイントを使用するというものであ る。
[0083] また、上記では、家電機器 500に格納される制御コードの更新を行うとしたが、制御 コードだけではなぐ家電機器 500に格納される特定のデータを同様の仕組みで更 新するようにしても良ぐその特定のデータとしては、マルチメディア 'コンテンツや、ラ ィセンス情報、制御コードが参照するテーブル情報やデータベースなどが含まれる。
[0084] また、上記では、家電機器 500に格納される制御コードの更新を行うとしたが、同様 の仕組みで、家電機器 500に格納される特定のデータを更新することで、家電機器 5 00の一部の機能または全ての機能を無効化するようにしても良い。その特定のデー タとしては、制御コードや、家電機器 500の内部の制御フラグ情報、暗号処理に用い る鍵データ、マルチメディア 'コンテンツ、ライセンス情報、制御コードが参照するテー ブル情報やデータベースなどが含まれ、それらを無効なデータに更新することで、家 電機器 500の一部の機能または全ての機能を無効化する。
[0085] (実施の形態 3)
図 7Aは、本発明の実施の形態 3に係るソフトウェア更新システムの構成を示すプロ ック図である。また、図 7Bは、本発明の実施の形態 3に係る機器管理モジュールの構 成を示すブロック図である。なお、本実施の形態で説明するソフトウェア更新システム は、前述の実施の形態で説明したものと基本的に同様の構成を有する。よって、本 実施の形態において、前述の実施の形態で説明したものと同一の構成要素には同 一の参照符号を付し、その詳細な説明を省略する。
[0086] 本実施の形態のソフトウェア更新システムでは、実施の形態 2と同様に、家電機器と 機器管理サーバとの間に家電機器管理装置が接続される。また、本実施の形態のソ フトウ ア更新システムは、実施の形態 2で説明した家電機器管理装置を、据え置き 型の装置、例えばテレビ受信機に適用したものである。
[0087] したがって、本実施の形態のソフトウェア更新システムは、図 7Aに示すように、実施 の形態 2で説明した家電機器 500と、家電機器 500と共通の内部構成を有する家電 機器 501と、家電機器管理装置としての家電機器管理テレビ受信機 670と、実施の 形態 2で説明した機器管理サーバ 550と、 TV番組などを放送する放送局 659と、か ら構成される。また、機器管理サーバ 550と放送局 659とは所定の通信線により通信 可能に接続される。また、放送局 659と家電機器管理テレビ受信機 670とは放送網 6 60により通信可能に接続される。また、機器管理サーバ 550と家電機器管理テレビ 受信機 670とはインターネット 662により通信可能に接続される。また、家電機器管 理テレビ受信機 670と家電機器 500、 501とは電力線ネットワーク 661により通信可 能に接続される。
[0088] 家電機器 500、 501としては、例えば、冷蔵庫やエアコンなどの、通常、電力線に 接続されている据え置きタイプの機器が想定される。また、図 7Bに示すように、家電 機器 500、 501の機器管理モジュール 510は、生成情報記憶部 111、鍵生成部 112 、更新部 113および機器情報登録部 516のほかに、電力線ネットワーク 661を介して 家電機器管理テレビ受信機 670と通信をするローカル通信部としての電力線通信部 1501を備える。 [0089] 家電機器管理テレビ受信機 670は、実施の形態 2で説明したデータ更新部 574お よび機器情報管理部 573、実施の形態 2で説明した更新情報受信部 571、ローカル 通信部 572および通信部 575にそれぞれ相当する放送受信部 671、電力線通信部 672およびインターネット通信部 675、ならびにテレビ機能部 676から構成される。
[0090] 放送受信部 671は、通常のテレビ放送および放送データの中に含まれる更新情報 を受信する。電力線通信部 672は、電力線ネットワーク 661を介して家電機器と通信 をする。インターネット通信部 675は、各家電機器のソフトウェアの更新結果を、イン ターネット 662を介して機器管理サーバ 550へ通知する。テレビ機能部 676は、通常 のテレビ放送を表示する。
[0091] 図 8は、本実施の形態におけるソフトウェア更新処理のフローを示している。
[0092] まず、家電機器 500、 501が、電力線ネットワーク 661を介して、機器情報を家電機 器管理テレビ受信機 670に登録する (ステップ 1:機器情報の登録)。
[0093] 次に、家電機器 500のソフトウェアを更新する必要が発生すると、機器管理サーバ 550が、更新情報を生成する (ステップ 2 :更新情報の生成)。更新情報を生成する手 順は、実施の形態 1で説明した手順と同じである。
[0094] 次に、機器管理サーバ 550が、放送局 659に更新情報の配信を依頼し (ステップ 3 :更新情報の配信依頼)、放送局 659が、放送網 660を通じて家電機器管理テレビ 受信機 670に更新情報を配信する (ステップ 4:機器更新情報の配信)。
[0095] 放送受信部 671を通じて更新情報を受信した家電機器管理テレビ受信機 670に おいて、照合部 577が更新情報の制御情報の中の更新対象の家電機器の機種を規 定する情報と機器情報リスト 576の機器情報とを照合して、ソフトウェアを更新する必 要がある家電機器が登録されているかどうかを判定する (ステップ 5 :機器情報の照合
) o
[0096] 照合された情報が一致する家電機器が登録されて!、た場合に、更新処理制御部 5 79が、更新情報をデータ保持部 578に格納し、電力線通信部 672を介して該当する 家電機器 500に、更新情報の中の制御情報の部分を含む更新要求メッセージを送 信する (ステップ 6 :更新要求)。この時、何らかの原因で家電機器 500との通信が出 来ず、更新要求メッセージの送信に失敗した場合は (家電機器 500が電力線ネットヮ ーク 661に接続されていな力つた場合など)、更新処理制御部 579がテレビ画面に 家電機器 500のソフトウェアの更新が必要であることを表示して、ユーザに家電機器 500の電力線ネットワーク 661への接続を促す。家電機器 500との通信が可能にな ると、改めて、家電機器 500に更新要求メッセージを送信する。
[0097] 家電機器管理テレビ受信機 670から更新要求メッセージを受信した家電機器 500 において、機器管理モジュール 510が、更新要求メッセージの中に含まれていた更 新情報の制御情報に基づき、更新情報の暗号を復号ィ匕するための鍵を生成する (ス テツプ 7 :鍵生成)。鍵を生成する手順は、実施の形態 1で説明した手順と同じである
[0098] 次に、機器管理モジュール 510は、更新前の生成情報 Ca、 Cbと制御コードとユー ザ設定とを生成した鍵で暗号ィ匕し、家電機器管理テレビ受信機 670のデータ保持部 578にバックアップのために転送する(ステップ 8 :バックアップ)。
[0099] 次に、家電機器管理テレビ受信機 670の更新処理制御部 579が、更新情報の中 の暗号化されている生成情報 Ca、 Cbと制御コードの部分とを電力線通信部 672を 介して家電機器 500に送信する (ステップ 9:更新データ送信)。
[0100] 次に、家電機器 500の機器管理モジュール 510が、更新情報の暗号を復号化して 、制御コードと生成情報 Ca、 Cbとを更新する (ステップ 10 :データ更新)。
[0101] 次に、家電機器管理テレビ受信機 670の更新処理制御部 579が、ソフトウェアの更 新が行われた家電機器 500の機器情報を更新処理の結果とともに、インターネット通 信部 675を介して機器管理サーバ 550の更新状況管理部 156に通知して更新処理 を完了する (ステップ 11:更新完了通知)。
[0102] ここで、ステップ 9、 10の処理では、暗号ィ匕された更新情報をまとめて送信し、それ を家電機器 500側で復号ィ匕するのではなぐ暗号のブロック単位で家電機器 500に 送信し、ブロック単位で復号ィ匕をして更新処理を行う。
[0103] なお、家電機器 501のソフトウェアの更新の手順は、家電機器 500のソフトウェアの 更新の手順と同じである。
[0104] このように、本実施の形態によれば、家電機器の機器情報を家電機器管理テレビ 受信機 670に登録しておき、家電機器管理テレビ受信機 670が放送網 660を通じて 更新情報を受信して、ソフトウェアを更新する必要がある場合に、家電機器管理テレ ビ受信機 670を介して個々の家電機器が更新情報を受信してソフトウェアの更新を 行う。これにより、個々の家電機器に、更新情報を機器管理サーバ 550から直接受 信する機能や外部のネットワークに接続する機能を持つ必要がなぐまた、更新情報 の暗号を復号ィ匕するために個々の家電機器に必要となるメモリの容量を抑えることが できるので、ソフトウェアの更新機能を備えた家電機器を低 ヽコストで構成することが できる。
[0105] また、家電機器管理テレビ受信機 670が放送網 660を通じて更新情報を確実に受 信し、各家電機器のソフトウェアの更新を確実に行うことができる。
[0106] さらに、家電機器管理テレビ受信機 670のデータ更新部 574のデータ保持部 578 を、更新前のソフトウェアのバックアップ領域として用いることができるので、個々の家 電機器において更新処理の為に必要となるメモリを最小限に抑えることができる。ま た、仮に更新処理に失敗した場合でも、ノ ックアップしておいた更新前のソフトウェア を元に戻すことで元の状態に戻すことも出来るので、更新処理の安全性を更に高め ることが出来る。
[0107] なお、上記では、家電機器管理テレビ受信機 670は更新情報を放送受信部 671を 介して受信するとした力 インターネット通信部 675を介してインターネット 662経由 で機器管理サーバ 550から更新情報を受信するようにしても良い。
[0108] この場合、機器情報リスト 576には、さらに機器情報の一つとして機器管理サーバ 5 50の URL (Uniform Resource Locator)が予め登録される。家電機器管理テレビ受 信機 670は、定期的に、更新処理制御部 579からインターネット通信部 675を介して 、その URLが示す機器管理サーバ 550へ更新情報要求を送信する。機器管理サー ノ 550は、配信が必要な更新情報が存在する場合に、家電機器管理テレビ受信機 6 70へ更新情報を送信する。家電機器管理テレビ受信機 670は、インターネット通信 部 675を介して受信した更新情報に対して、放送受信部 671を介して受信した更新 情報と同様の処理を行う。
[0109] また、上記において、家電機器管理テレビ受信機 670が機器管理サーバ 550へ送 信する更新情報要求を、家電機器管理テレビ受信機 670が家電機器 500、 501から 受信した更新処理要求に基づいて送信するようにしても良い。更新処理要求は、家 電機器 500、 501が家電機器管理テレビ受信機 670に対してソフトウェアの更新処 理を要求するメッセージである。電力線通信部 672を介して更新処理要求を受信し た家電機器管理テレビ受信機 670は、機器管理サーノ 550へ更新情報要求を送信 する。それ以降の処理は、上記で説明した手順と同じである。
[0110] (実施の形態 4)
図 9Aは、本発明の実施の形態 4に係るソフトウェア更新システムの構成を示すプロ ック図である。また、図 9Bは、本実施の形態に係る機器管理モジュールの構成を示 すブロック図である。なお、本実施の形態で説明するソフトウェア更新システムは、前 述の実施の形態で説明したものと基本的に同様の構成を有する。よって、本実施の 形態において、前述の実施の形態で説明したものと同一の構成要素には同一の参 照符号を付し、その詳細な説明を省略する。
[0111] 本実施の形態のソフトウェア更新システムでは、実施の形態 2と同様に、家電機器と 機器管理サーバとの間に家電機器管理装置が接続される。また、本実施の形態のソ フトウエア更新システムは、実施の形態 2で説明した家電機器管理装置を、デジタル 放送受信機能を備えたポータブル型の装置、例えば携帯電話などの携帯端末に適 用してなるものである。
[0112] したがって、本実施の形態のソフトウェア更新システムは、図 9Aに示すように、実施 の形態 2で説明した家電機器 500と、実施の形態 3で説明した家電機器 501と、家電 機器管理装置としての家電機器管理携帯端末 870と、実施の形態 2で説明した機器 管理サーバ 550と、 TV番組などのワンセグ放送サービスを提供する放送局 859と、 力も構成される。また、機器管理サーバ 550と放送局 859とは所定の通信線により通 信可能に接続される。また、放送局 859と家電機器管理携帯端末 870とは放送網 86 0により通信可能に接続される。また、機器管理サーバ 550と家電機器管理携帯端 末 870とはインターネット 862により通信可能に接続される。また、家電機器管理携 帯端末 870と家電機器 500、 501とは無線を介して接続される。
[0113] 家電機器 500、 501としては、例えば、ポータブル音楽プレーヤなどの、バッテリー によって駆動されるポータブルタイプの機器が想定される。また、図 9Bに示すように、 家電機器 500、 501の機器管理モジュール 510は、生成情報記憶部 111、鍵生成 部 112、更新部 113および機器情報登録部 516のほかに、近距離無線を介して家 電機器管理携帯端末 870と通信するローカル通信部としての近距離無線通信部 15 02を備える。
[0114] 家電機器管理携帯端末 870は、実施の形態 2で説明したデータ更新部 574および 機器情報管理部 573、実施の形態 2で説明した更新情報受信部 571、ローカル通信 部 572および通信部 575にそれぞれ相当するデジタル放送受信部 871、近距離無 線通信部 872およびインターネット通信部 875、ならびにテレビ機能部 876から構成 される。
[0115] デジタル放送受信部 871は、ワンセグ(1セグメント)放送などのデジタル放送のデ ータの中に含まれる更新情報を受信する。近距離無線通信部 872は、赤外線ゃブ ルートゥース、 NFC (Near Field Communication)などの近距離無線を介して家電機 器と通信をする。インターネット通信部 875は、各家電機器のソフトウェアの更新結果 を、無線通信によってインターネット 862を介して機器管理サーバ 550へ通知する。 テレビ機能部 876は、通常のデジタルテレビ放送を表示する。
[0116] 図 10は、本実施の形態のソフトウェア更新処理のフローを示して!/、る。
[0117] まず、家電機器 500、 501が、近距離無線を介して、機器情報を家電機器管理携 帯端末 870に登録する (ステップ 1 :機器情報の登録)。例えば、家電機器 500、 501 は、電源がオンになる度に、自動的に機器情報を家電機器管理携帯端末 870に登 録するようになっている。
[0118] 次に、家電機器 500のソフトウェアを更新する必要が発生すると、機器管理サーバ 550が、更新情報を生成する (ステップ 2 :更新情報の生成)。更新情報を生成する手 順は、実施の形態 1で説明した手順と同じである。
[0119] 次に、機器管理サーバ 550は、放送局 859に更新情報の配信を依頼し (ステップ 3 :更新情報の配信依頼)、放送局 859は、放送網 860を通じて家電機器管理携帯端 末 870に更新情報を配信する (ステップ 4 :機器更新情報の配信)。
[0120] デジタル放送受信部 871を通じて更新情報を受信した家電機器管理携帯端末 87 0において、照合部 577は、更新情報の制御情報の中の更新対象の家電機器の機 種を規定する情報と機器情報リスト 576の機器情報とを照合して、ソフトウェアを更新 する必要がある家電機器が登録されているかどうかを判定する (ステップ 5 :機器情報 の照合)。
[0121] 照合された情報が一致する家電機器が登録されていた場合に、データ更新部 574 の更新処理制御部 579が、更新情報をデータ保持部 578に格納し、近距離無線通 信部 872を介して該当する家電機器 500に、更新情報の中の制御情報の部分を含 む更新要求メッセージを送信する (ステップ 6 :更新要求)。この時、何らかの原因で 家電機器 500との通信が出来ず、更新要求メッセージの送信に失敗した場合は (家 電機器 500の電源がオフになっている場合など)、更新処理制御部 579が家電機器 管理携帯端末 870の画面に家電機器 500のソフトウェアの更新が必要であることを 表示して、ユーザに家電機器 500の電源オンや、近距離無線通信による通信が可能 な距離への移動を促す。家電機器 500との通信が可能になると、改めて、家電機器 500に更新要求メッセージを送信する。
[0122] 家電機器管理携帯端末 870から更新要求メッセージを受信した家電機器 500にお いて、機器管理モジュール 510は、更新要求メッセージの中に含まれていた更新情 報の制御情報に基づき、更新情報の暗号を復号ィ匕するための鍵を生成する (ステツ プ 7 :鍵生成)。鍵を生成する手順は、実施の形態 1で説明した手順と同じである。
[0123] 次に、家電機器 500の機器管理モジュール 510は、更新前の生成情報 Ca、 Cbと 制御コードとユーザ設定とを生成した鍵で暗号ィ匕し、家電機器管理携帯端末 870の データ保持部 578にバックアップのために転送する (ステップ 8:バックアップ)。
[0124] 次に、家電機器管理携帯端末 870の更新処理制御部 579が、更新情報の中の暗 号化されている生成情報 Ca、 Cbと制御コードの部分とを、近距離無線通信部 872を 介して家電機器 500に送信し (ステップ 9:更新データ送信)、家電機器 500の機器 管理モジュール 510が、更新情報の暗号を復号化して、制御コードと生成情報 Ca、 Cbとを更新する (ステップ 10:データ更新)。
[0125] 次に、家電機器管理携帯端末 870の更新処理制御部 579が、ソフトウェアの更新 が行われた家電機器 500の機器情報を更新処理の結果とともに、インターネット通信 部 875を介して機器管理サーバ 550の更新状況管理部 156に通知して更新処理を 完了する (ステップ 11 :更新完了通知)。この時、ステップ 9、 10の処理では、暗号ィ匕 された更新情報をまとめて送信し、それを家電機器 500側で復号化するのではなぐ 暗号のブロック単位で家電機器 500に送信し、ブロック単位で復号ィ匕をして更新処 理を行う。
[0126] なお、家電機器 501のソフトウェアの更新の手順は、家電機器 500のソフトウェアの 更新の手順と同じである。
[0127] このように、本実施の形態によれば、家電機器の機器情報を家電機器管理携帯端 末 870に登録しておき、家電機器管理携帯端末 870が放送網 860を通じて更新情 報を受信して、ソフトウェアを更新する必要がある場合に、家電機器管理携帯端末 8 70を介して個々の家電機器が更新情報を受信してソフトウェアの更新を行う。これに より、個々の家電機器に、更新情報を機器管理サーバ 550から直接受信する機能や 外部のネットワークに接続する機能を持つ必要がなぐまた、更新情報の暗号を復号 化するために個々の家電機器に必要となるメモリの容量を抑えることができるので、ソ フトウェアの更新機能を備えた家電機器を低いコストで構成することができる。
[0128] また、家電機器管理携帯端末 870が放送網 860を通じて更新情報を確実に受信し 、各家電機器のソフトウェアの更新を確実に行うことができる。
[0129] さらに、家電機器管理携帯端末 870のデータ更新部 574のデータ保持部 578を、 更新のソフトウェアのバックアップ領域として用いることができるので、個々の家電機 器において更新処理の為に必要となるメモリを最小限に抑えることができる。仮に更 新処理に失敗した場合でも、ノ ックアップしてお 、た更新前のソフトウェアを元に戻 すことで元の状態に戻すことも出来るので、更新処理の安全性を更に高めることが出 来る。
[0130] なお、上記では、家電機器管理携帯端末 870は、更新情報をデジタル放送受信部 871を介して受信するとした力 インターネット通信部 875を介してインターネット 862 経由で機器管理サーバ 550から更新情報を受信するようにしても良い。
[0131] この場合、機器情報リスト 576には、さらに機器情報の一つとして機器管理サーバ 5 50の URLが予め登録される。家電機器管理携帯端末 870は、定期的に、更新処理 制御部 579からインターネット通信部 875を介して、その URLが示す機器管理サー ノ 550へ更新情報要求を送信する。機器管理サーバ 550は、配信が必要な更新情 報が存在する場合に、家電機器管理携帯端末 870へ更新情報を送信する。家電機 器管理携帯端末 870は、インターネット通信部 875を介して受信した更新情報に対 して、デジタル放送受信部 871を介して受信した更新情報と同様の処理を行う。
[0132] また、上記において、家電機器管理携帯端末 870が機器管理サーバ 550へ送信 する更新情報要求を、家電機器管理携帯端末 870が家電機器 500、 501から受信 した更新処理要求に基づいて送信するようにしても良い。更新処理要求は、家電機 器 500、 501が家電機器管理携帯端末 870に対してソフトウェアの更新処理を要求 するメッセージである。近距離無線通信部 872を介して更新処理要求を受信した家 電機器管理携帯端末 870は、機器管理サーバ 550へ更新情報要求を送信する。そ れ以降の処理は、上記で説明した手順と同じである。
[0133] (実施の形態 5)
図 11Aは、本発明の実施の形態 5に係るソフトウェア更新システムの構成を示すブ ロック図である。また、図 11Bは、本実施の形態に係る機器管理モジュールの構成を 示すブロック図である。図 11Cは、本実施の形態に係る別の機器管理モジュールの 構成を示すブロック図である。なお、本実施の形態で説明するソフトウェア更新システ ムは、前述の実施の形態で説明したものと基本的に同様の構成を有する。よって、本 実施の形態において、前述の実施の形態で説明したものと同一の構成要素には同 一の参照符号を付し、その詳細な説明を省略する。
[0134] 本実施の形態のソフトウェア更新システムでは、実施の形態 2と同様に、家電機器と 機器管理サーバとの間に家電機器管理装置が接続される。また、本実施の形態のソ フトウエア更新システムは、実施の形態 2で説明した家電機器管理装置を、ブロード バンド対応の通信機器、例えばルーターに適用したものである。
[0135] したがって、本実施の形態のソフトウェア更新システムは、図 11Aに示すように、実 施の形態 2で説明した家電機器 500と、実施の形態 3で説明した家電機器 501と、家 電機器管理装置としての家電機器管理ルーター 1070と、実施の形態 2で説明した 機器管理サーバ 550と、カゝら構成される。また、機器管理サーバ 550と家電機器管理 ルーター 1070とはインターネット 662により通信可能に接続される。また、家電機器 管理ルーター 1070と家電機器 500、 501とは宅内の有線 LAN、無線 LANまたは電 力線ネットワークを介して接続される。
[0136] 家電機器 500、 501としては、例えば、 DVDレコーダーや無線 LANテレビ受像機 などの機器が想定される。また、図 11Bに示すように、家電機器 500の機器管理モジ ユール 510は、生成情報記憶部 111、鍵生成部 112、更新部 113および機器情報 登録部 516のほかに、有線 LANを介して家電機器管理ルーター 1070と通信する口 一カル通信部としての有線 LAN通信部 1503を備える。また、図 11Cに示すように、 家電機器 501の機器管理モジュール 510は、生成情報記憶部 111、鍵生成部 112 、更新部 113および機器情報登録部 516のほかに、無線 LANを介して家電機器管 理ルーター 1070と通信するローカル通信部としての無線 LAN通信部 1504を備え る。なお、家電機器 500、 501のほかに、電力線ネットワークを介して家電機器管理 ルーター 1070と通信する家電機器が存在して ヽても良 、。
[0137] 家電機器管理ルーター 1070は、実施の形態 2で説明したデータ更新部 574およ び機器情報管理部 573、実施の形態 2で説明したローカル通信部 572に相当する口 一カル通信部 1072、実施の形態 2で説明した更新情報受信部 571および通信部 5 75に相当するインターネット通信部 1075、ならびにルーター機能部 1076から構成 される。また、家電機器管理ルーター 1070は、家電機器管理ルーター 1070の内部 状態を示す LED (図示せず)を備えて ヽても良!ヽ。
[0138] インターネット通信部 1075は、インターネット 662を介して、機器管理サーバ 550か ら更新情報を受信する。また、インターネット通信部 1075は、家電機器のソフトウェア の更新結果を機器管理サーバ 550へ通知する。ローカル通信部 1072は、有線 LA N、無線 LANまたは電力線ネットワークを介して家電機器と通信をする。ルーター機 能部 1076は、宅内の有線 LAN、無線 LANまたは電力線ネットワークのルーターと して機能する。
[0139] 図 12は、本実施の形態のソフトウェア更新処理のフローを示している。
[0140] まず、家電機器 500、 501がそれぞれ、有線 LANと無線 LANを介して、機器情報 を家電機器管理ルーター 1070に登録する (ステップ 1:機器情報の登録)。
[0141] 次に、家電機器 500のソフトウェアを更新する必要が発生すると、機器管理サーバ 550が、更新情報を生成する (ステップ 2 :更新情報の生成)。更新情報を生成する手 順は、実施の形態 1で説明した手順と同じである。
[0142] 次に、家電機器管理ルーター 1070が、インターネット 662を通じて機器管理サー バ 550に更新情報要求を送信する (ステップ 3:更新情報要求)。機器管理サーバ 55 0は、インターネット 662を通じて家電機器管理ルーター 1070に更新情報を送信す る (ステップ 4 :機器更新情報の配信)。この場合、機器情報リスト 576には、さらに機 器情報の一つとして機器管理サーバ 550の URLが登録されて 、る。家電機器管理 ルーター 1070は、定期的に、更新処理制御部 579からインターネット通信部 1075 を介して、その URLが示す機器管理サーバ 550へ更新情報要求を送信する。機器 管理サーバ 550は、配信が必要な更新情報が存在する場合に、家電機器管理ルー ター 1070へ更新情報を送信する。
[0143] インターネット通信部 1075を通じて更新情報を受信した家電機器管理ルーター 10 70において、照合部 577が、更新情報の制御情報の中の更新対象の家電機器の機 種を規定する情報と機器情報リスト 576の機器情報とを照合して、ソフトウェアを更新 する必要がある家電機器が登録されているかどうかを判定する (ステップ 5 :機器情報 の照合)。
[0144] 照合された情報が一致する家電機器が登録されて!、た場合に、更新処理制御部 5 79が、更新情報をデータ保持部 578に格納し、ローカル通信部 1072を介して該当 する家電機器 500に、更新情報の中の制御情報の部分を含む更新要求メッセージ を送信する (ステップ 6 :更新要求)。この時、何らかの原因で家電機器 500との通信 が出来ず、更新要求メッセージの送信に失敗した場合は (家電機器 500の電源がォ フになっている場合など)、更新処理制御部 579が、家電機器 500のソフトウェアの 更新が必要であることを示す HTML (Hyper Text Markup Language)データを生成し て、家電機器管理ルーター 1070に接続する宅内の機器での、その生成した HTML データの表示を可能にし、さらにソフトウェアを更新する必要がある家電機器が存在 することを示す LEDを点灯させて、ユーザに家電機器 500の電源オンを促す。家電 機器 500との通信が可能になると、改めて、家電機器 500に更新要求メッセージを送 信する。 [0145] 家電機器管理ルーター 1070から更新要求メッセージを受信した家電機器 500〖こ おいて、機器管理モジュール 510が、更新要求メッセージの中に含まれていた更新 情報の制御情報に基づき、更新情報の暗号を復号ィ匕するための鍵を生成する (ステ ップ 7 :鍵生成)。鍵を生成する手順は、実施の形態 1で説明した手順と同じである。
[0146] 次に、家電機器 500の機器管理モジュール 510は、更新前の生成情報 Ca、 Cbと 制御コードとユーザ設定とを生成した鍵で暗号ィ匕し、家電機器管理ルーター 1070の データ保持部 578にバックアップのために転送する (ステップ 8:バックアップ)。
[0147] 次に、家電機器管理ルーター 1070の更新処理制御部 579が、更新情報の中の暗 号ィ匕されている生成情報 Ca、 Cbと制御コードの部分とを、ローカル通信部 1072を 介して家電機器 500に送信し (ステップ 9:更新データ送信)、家電機器 500の機器 管理モジュール 510が、更新情報の暗号を復号化して、制御コードと生成情報 Ca、 Cbとを更新する (ステップ 10:データ更新)。
[0148] 次に、家電機器管理ルーター 1070の更新処理制御部 579が、ソフトウェアの更新 が行われた家電機器 500の機器情報を更新処理の結果とともに、インターネット通信 部 1075を介して機器管理サーバ 550の更新状況管理部 156に通知して更新処理 を完了する (ステップ 11 :更新完了通知)。この時、ステップ 9、 10の処理では、暗号 化された更新情報をまとめて送信し、それを家電機器 500側で復号化するのではな ぐ暗号のブロック単位で家電機器 500に送信し、ブロック単位で復号ィ匕をして更新 処理を行う。
[0149] なお、家電機器 501のソフトウェアの更新の手順は、家電機器 500のソフトウェアの 更新の手順と同じである。
[0150] このように、本実施の形態によれば、家電機器の機器情報を家電機器管理ルータ 一 1070に登録しておき、家電機器管理ルーター 1070がインターネット 662を通じて 更新情報を受信して、ソフトウェアを更新する必要がある場合に、家電機器管理ルー ター 1070を介して個々の家電機器が更新情報を受信してソフトウェアの更新を行う 。これにより、個々の家電機器に、更新情報を機器管理サーバ 550から直接受信す る機能や外部のネットワークに接続する機能を持つ必要がなぐまた、更新情報の暗 号を復号ィ匕するために個々の家電機器に必要となるメモリの容量を抑えることができ るので、ソフトウェアの更新機能を備えた家電機器を低!ヽコストで構成することができ る。
[0151] また、家電機器管理ルーター 1070がインターネット 662を通じて更新情報を確実 に受信し、各家電機器のソフトウェアの更新を確実に行うことができる。
[0152] さらに、家電機器管理ルーター 1070のデータ更新部 574のデータ保持部 578を、 更新前のソフトウェアのバックアップ領域として用いることができるので、個々の家電 機器において更新処理の為に必要となるメモリを最小限に抑えることができる。また、 仮に更新処理に失敗した場合でも、ノ ックアップしてお 、た更新前のソフトウェアを 元に戻すことで元の状態に戻すことも出来るので、更新処理の安全性を更に高める ことが出来る。
[0153] なお、上記において、家電機器管理ルーター 1070が機器管理サーバ 550へ送信 する更新情報要求を、家電機器管理ルーター 1070が家電機器 500、 501から受信 した更新処理要求に基づいて送信するようにしても良い。更新処理要求は、家電機 器 500、 501が家電機器管理ルーター 1070に対してソフトウェアの更新処理を要求 するメッセージである。ローカル通信部 1072を介して更新処理要求を受信した家電 機器管理ルーター 1070は、機器管理サーバ 550へ更新情報要求を送信する。それ 以降の処理は、上記で説明した手順と同じである。
[0154] (実施の形態 6)
図 13は、本発明の実施の形態 6に係るソフトウェア更新システムの構成を示すプロ ック図である。なお、本実施の形態のソフトウェア更新システムは、前述のソフトウェア 更新システムと基本的に同様の構成を有する。よって、本実施の形態において、前 述の実施の形態で説明したものと同一の構成要素には同一の参照番号を付し、その 詳細な説明を省略する。
[0155] 本実施の形態のソフトウェア更新システムは、家電機器と機器管理サーバとの間に 家電機器管理装置が接続された点では、実施の形態 2〜5と同様であるが、ネットヮ ークに接続する機能を備えて 、な 、家電機器が IC (Integrated circuit)カードを介し て家電機器管理装置と通信を行うという点で、実施の形態 2〜5と相違する。これは、 ネットワークに接続する機能を備えて 、な 、家電機器のソフトウェアの更新を、確実 にかつ効率的に行えるようにするためのものである。
[0156] 本実施の形態のソフトウェア更新システムは、図 13に示すように、ソフトウェアを更 新する機能を備えた家電機器 1200と、実施の形態 2で説明した機器管理サーバ 55 0と、家の中の家電機器を管理する家電機器管理 ICカード 1220と、家電機器管理 I Cカード 1220の装着が可能であり機器管理サーバ 550から更新情報を受信する家 電機器管理装置 1270と、から構成される。機器管理サーバ 550と家電機器管理装 置 1270とは、実施の形態 2で説明した通信路 560を介して接続される。
[0157] 家電機器管理 ICカード 1220は、接触型と非接触型の両方の外部インターフェイス を備えた ICカードである。
[0158] 家電機器 1200は、実施の形態 1で説明した制御部 120および機構部 130、ならび に制御部に格納されているソフトウェアを更新する機器管理モジュール 1210から構 成される。
[0159] 機器管理モジュール 1210は、実施の形態 1で説明した生成情報記憶部 111、鍵 生成部 112および更新部 113、ならびに実施の形態 2で説明した機器情報登録部 5 16を有する。さら〖こ、機器管理モジュール 1210は、家電機器管理 ICカード 1220と 非接触通信を行う ICカード通信部 1217を有する。また、機器管理モジュール 1210 は、鍵生成部 112と更新部 113と機器情報登録部 516とに相当するソフトウェアモジ ユールを実行する CPUと、生成情報記憶部 111を形成するメモリと、 ICカード通信部 1217を形成する RF回路および通信制御回路と、力も構成される集積回路によって 構成される。なお、 ICカード通信部 1217は、家電機器管理 ICカード 1220と接触通 信を行うタイプであっても良ぐその場合は、 ICカード通信部 1217は、家電機器管理 ICカード 1220に接続する端子および通信制御回路力も構成される。
[0160] 家電機器管理装置 1270は、実施の形態 2で説明した更新情報受信部 571および 通信部と、家電機器管理 ICカード 1220と接触通信を行う ICカード通信部 1272と、 カゝら構成される。実際には、家電機器管理装置 1270は、ポータブルタイプや据え置 きタイプなど複数のタイプのものが存在して 、ても良ぐユーザは更新情報の受信が 可能ないずれかの家電機器管理装置 1270に家電機器管理 ICカード 1220を装着 しておくものとする。なお、 ICカード通信部 1272は、家電機器管理 ICカード 1220と 非接触通信を行うタイプであっても良ぐその場合は、 ICカード通信部 1272は、 RF 回路および通信制御回路力 構成される。
[0161] 家電機器管理 ICカード 1220は、実施の形態 2で説明した機器情報管理部 573、 データ更新部 574と、家電機器管理装置 1270または各家電機器と通信する接触型 外部インターフェイスおよび非接触型外部インターフェイス(図示せず)と、から構成さ れる。なお、家電機器管理 ICカード 1220の形状としては、名刺サイズの一般的な IC カードの形状や携帯電話などに装着される SIMカードの形状でも良いし、メモリカー ドの形状であっても良い。
[0162] 上記構成を有するソフトウェア更新システムにおいて、予め、家電機器管理 ICカー ド 1220を家電機器 1200の ICカード通信部 1217に近づけることで、家電機器 1200 の機器情報登録部 516は、 ICカード通信部 1217を通じ、自身の機器情報を家電機 器管理 ICカード 1220の機器情報管理部 573に登録する。機器情報管理部 573に 登録される機器情報には、その家電機器のメーカーコード、型式番号および製造番 号、ならびにその家電機器のソフトウェアバージョンのシリアル番号が含まれる。機器 情報管理部 573は、各家電機器から登録された機器情報を家電機器ごとに管理し、 機器情報リスト 576として保持する。
[0163] 家電機器管理 ICカード 1220は、通常、家電機器管理装置 1270に装着されてい る。更新情報は、通信路 560を介して機器管理サーバ 550から家電機器管理装置 1 270へ配信される。
[0164] 家電機器管理 ICカード 1220は、家電機器管理装置 1270の更新情報受信部 571 を通じて更新情報を受信し、照合部 577が更新情報の制御情報の中の更新対象の 家電機器の機種を規定する情報と機器情報リスト 576の機器情報とを照合して、ソフ トウエアを更新する必要がある家電機器が登録されているかどうかを判定する。
[0165] そして、照合された情報が一致する家電機器が登録されて!ヽた場合、データ更新 部 574のデータ保持部 578には受信した更新情報が保持される。さらに、家電機器 管理 ICカード 1220からのレスポンスデータに基づいて、家電機器管理装置 1270に は家電機器 1200のソフトウェアの更新が必要である旨が表示され、ユーザに対して 家電機器管理 ICカード 1220を用いて家電機器 1200のソフトウェアを更新する操作 が促される。
[0166] ユーザが家電機器管理 ICカード 1220を該当する家電機器 1200の ICカード通信 部 1217に近づけると、更新処理制御部 579が家電機器 1200と通信して、ソフトゥェ ァの更新処理を行う。この時の更新処理の過程で、データ更新部 574のデータ保持 部 578には、家電機器 1200から更新前のソフトウェアがノックアップのために転送さ れる。
[0167] このように、本実施の形態によれば、家電機器の機器情報を家電機器管理 ICカー ド 1220に登録しておき、家電機器管理 ICカード 1220が家電機器管理装置 1270を 介して更新情報を機器管理サーバ 550から受信し、ソフトウェアを更新する必要があ る場合に、家電機器管理 ICカード 1220を介して個々の家電機器が更新情報を受信 してソフトウェアの更新を行う。これにより、個々の家電機器に、更新情報を機器管理 サーバ 550から直接受信する機能や外部のネットワークに接続する機能、例えば、テ レビチューナーやインターネットモデムなどの機能を持つ必要がなくなるので、ソフト ウェアの更新機能を備えた家電機器を低いコストで構成することが出来る。
[0168] また、更新情報の受信が可能な状態の家電機器管理装置 1270を介して、家電機 器管理 ICカード 1220が機器管理サーバ 550から配信される更新情報を受信するこ とで、各家電機器のソフトウェアの更新を確実に行うことが出来る。更新情報が機器 管理サーバ 550から配信される時に、各家電機器は必ずしも電源オンの状態である 必要はなぐ電源がオンになった際に、家電機器管理 ICカード 1220との間で更新処 理を行うことで、ソフトウェアの更新を確実に行うことが出来る。
[0169] さらに、家電機器管理 ICカード 1220のデータ更新部 574のデータ保持部 578を、 更新情報のバッファ領域および更新前のソフトウェアのバックアップ領域として用いる ことができるので、個々の家電機器において更新処理の為に必要となるメモリを最小 限に抑えることができる。また、仮に更新処理に失敗した場合でも、ノ ックアップして おいた更新前のソフトウェアを元に戻すことで元の状態に戻すことも出来るので、更 新処理の安全性を更に高めることが出来る。実際には、更新処理に失敗した場合の 処理は、機器管理サーバ 550によって設定された更新情報の制御情報に含まれる プログラムデータに基づいて行われる場合がある。また、そのプログラムデータに基 づいて、ノ ックアップしておいた更新前のソフトウェアを元に戻すことで元の状態に戻 す場合もあれば、元に戻すことはぜずに、安全のために家電機器を機能停止状態に 設定する場合もある。
[0170] なお、上記では、機器管理モジュール 1210を、制御部 120の CPUとは別の CPU を持つ集積回路であるとしたが、機器管理モジュール 1210の機能を、制御部 120の CPUとメモリとによって構成するようにしても良!、。
[0171] また、上記では、機器管理モジュール 1210に ICカード通信部 1217が内蔵される としたが、機器管理モジュール 1210とは独立に、例えば ICカードリーダーライターを 備えるようにしても良い。
[0172] また、上記では、家電機器 1200に格納される制御コードの更新を行うとしたが、制 御コードだけではなぐ家電機器 1200に格納される特定のデータを同様の仕組みで 更新するようにしても良ぐその特定のデータとしては、マルチメディア 'コンテンツや 、ライセンス情報、制御コードが参照するテーブル情報やデータベースなどが含まれ る。
[0173] また、上記では、家電機器 1200に格納される制御コードの更新を行うとしたが、同 様の仕組みで、家電機器 1200に格納される特定のデータを更新することで、家電機 器 1200の一部の機能または全ての機能を無効化するようにしても良 、。その特定の データとしては、制御コードや、家電機器 1200の内部の制御フラグ情報、暗号処理 に用いる鍵データ、マルチメディア 'コンテンツ、ライセンス情報、制御コードが参照す るテーブル情報やデータベースなどが含まれ、それらを無効なデータに更新すること で、家電機器 1200の一部の機能または全ての機能を無効化する。
[0174] また、上記では、家電機器管理 ICカード 1220は、接触型外部インターフェイスおよ び非接触型外部インターフェイスの、 2種類の外部インターフェイスを備えるとしたが 、いずれ力 1種類の外部インターフェイスだけを備えるように構成しても良い。その場 合、 ICカード通信部 1217および ICカード通信部 1272は、家電機器管理 ICカード 1 220との通信が可能なタイプとなる。
[0175] (実施の形態 7)
図 14は、本発明の実施の形態 7に係るソフトウェア更新システムの構成を示すプロ ック図である。なお、本実施の形態のソフトウェア更新システムは、前述の実施の形態 と基本的に同様の構成を有している。よって、本実施の形態において、前述の実施 の形態で説明したものと同一の構成要素には同一の参照符号を付し、その詳細な説 明を省略する。
[0176] 本実施の形態のソフトウェア更新システムでは、実施の形態 6と同様に、ネットヮー ク接続機能を備えて ヽな ヽ家電機器が ICカードを介して家電機器管理装置と通信を 行う。また、本実施の形態のソフトウェア更新システムは、実施の形態 6で説明した家 電機器管理装置を、デジタル放送受信機能を備えたポータブル型の装置、例えば 携帯電話などの携帯端末に適用したものである。
[0177] したがって、本実施の形態のソフトウェア更新システムは、図 14に示すように、実施 の形態 6で説明した家電機器 1200と、家電機器 1200と共通の内部構成を有する家 電機器 1201と、家電機器管理装置としての家電機器管理携帯端末 1370と、実施 の形態 2で説明した機器管理サーバ 550と、実施の形態 4で説明した放送局 859と、 家電機器管理 ICカード 1260と、力も構成される。また、機器管理サーバ 550と放送 局 859とは所定の通信線により通信可能に接続される。また、放送局 859と家電機器 管理携帯端末 1370とは放送網 860により通信可能に接続される。また、機器管理サ ーバ 550と家電機器管理携帯端末 1370とはインターネット 862により通信可能に接 続される。家電機器管理 ICカード 1260は、接触通信または非接触通信によって家 電機器 1200、 1201と接続され、また、インターネット 862を介して機器管理サーバ 5 50に通信可能に接続される。
[0178] 家電機器 1200、 1201はそれぞれ、実施の形態 1で説明した制御部 120および機 構部 130、ならびに実施の形態 6で説明した機器管理モジュール 1210を備える。ま た、家電機器 1200、 1201としては、例えば、ポータブル音楽プレーヤなどの、バッ テリーによって駆動されるポータブルタイプの機器が想定される。
[0179] 家電機器管理携帯端末 1370は、実施の形態 6で説明した ICカード通信部 1272、 ならびに実施の形態 4で説明したデジタル放送受信部 871、インターネット通信部 87 5およびテレビ機能部 876から構成される。
[0180] 家電機器管理 ICカード 1260は、実施の形態 2で説明した機器情報管理部 573お よびデータ更新部 574、ならびに、家電機器管理携帯端末 1370または各家電機器 と通信する接触型外部インターフ イスおよび非接触型外部インターフ イス(図示 せず)から構成される。
[0181] 図 15は、本実施の形態のソフトウェア更新処理のフローを示している。
[0182] まず、家電機器管理 ICカード 1260を家電機器 1200、 1201の ICカード通信部 12 17にそれぞれ近づけることで、家電機器 1200、 1201が ICカード通信部 1217を介 して、機器情報を家電機器管理 ICカード 1260に登録する (ステップ 1:機器情報の 登録)。例えば、家電機器 1200、 1201は、メッセージを表示するなどして、ユーザに 対して、この家電機器管理 ICカード 1260に機器情報を登録する操作を促すようにな つている。
[0183] 次に、家電機器 1200のソフトウェアを更新する必要が発生すると、機器管理サー バ 550が、更新情報を生成する (ステップ 2 :更新情報の生成)。更新情報を生成する 手順は、実施の形態 1で説明した手順と同じである。
[0184] 次に、機器管理サーバ 550は、放送局 859に更新情報の配信を依頼し (ステップ 3 :更新情報の配信依頼)、放送局 859は、放送網 860を通じて家電機器管理携帯端 末 1370に更新情報を配信する。さらに更新情報は、家電機器管理 ICカード 1260 に伝送される (ステップ 4:機器更新情報の配信)。
[0185] 家電機器管理携帯端末 1370のデジタル放送受信部 871を通じて更新情報を受 信した家電機器管理 ICカード 1260において、照合部 577が、更新情報の制御情報 の中の更新対象の家電機器の機種を規定する情報と機器情報リスト 576の機器情 報とを照合して、ソフトウェアを更新する必要がある家電機器が登録されて 、る力どう かを判定する (ステップ 5:機器情報の照合)。
[0186] 照合された情報が一致する家電機器が登録されて!、た場合に、更新処理制御部 5 79が、更新情報をデータ保持部 578に格納して、レスポンスデータを家電機器管理 携帯端末 1370に送信する。家電機器管理携帯端末 1370は、受信したレスポンスデ ータに基づいて、家電機器 1200のソフトウェアの更新が必要である旨を表示し、ュ 一ザに対して家電機器管理 ICカード 1260を用いて家電機器 1200のソフトウェアを 更新する操作を促す。ユーザが家電機器管理 ICカード 1260を該当する家電機器 1 200の ICカード通信部 1217に近づけると、家電機器管理 ICカード 1260のデータ更 新部 574の更新処理制御部 579が、家電機器 1200へ更新情報の中の制御情報の 部分を含む更新要求メッセージを送信する (ステップ 6:更新要求)。
[0187] 家電機器管理 ICカード 1260から更新要求メッセージを受信した家電機器 1200に おいて、機器管理モジュール 1210力 更新要求メッセージの中に含まれていた更新 情報の制御情報に基づき、更新情報の暗号を復号ィ匕するための鍵を生成する (ステ ップ 7 :鍵生成)。鍵を生成する手順は、実施の形態 1で説明した手順と同じである。
[0188] 次に、家電機器 1200の機器管理モジュール 1210は、更新前の生成情報 Ca、 Cb と制御コードとユーザ設定とを生成した鍵で暗号ィ匕し、家電機器管理 ICカード 1260 のデータ保持部 578にバックアップのために転送する(ステップ 8 :バックアップ)。
[0189] 次に、家電機器管理 ICカード 1260の更新処理制御部 579が、更新情報の中の暗 号化されている生成情報 Ca、 Cbと制御コードの部分とを、家電機器 1200に送信す る (ステップ 9 :更新データ送信)。次に、家電機器 1200の機器管理モジュール 1210 力 更新情報の暗号を復号化して、制御コードと生成情報 Ca、 Cbとを更新する (ステ ップ 10 :データ更新)。
[0190] 次に、家電機器管理 ICカード 1260が、家電機器管理携帯端末 1370に装着され ると、更新処理制御部 579が、ソフトウェアの更新が行われた家電機器 1200の機器 情報を更新処理の結果とともに、家電機器管理携帯端末 1370のインターネット通信 部 875を通じて機器管理サーバ 550の更新状況管理部 156に通知して更新処理を 完了する (ステップ 11 :更新完了通知)。この時、ステップ 9、 10の処理では、暗号ィ匕 された更新情報をまとめて送信し、それを家電機器 1200側で復号ィ匕するのではなく 、暗号のブロック単位で家電機器 1200に送信し、ブロック単位で復号ィ匕をして更新 処理を行う。
[0191] なお、家電機器 1201のソフトウェアの更新の手順は、家電機器 1200のソフトゥェ ァの更新の手順と同じである。
[0192] このように、家電機器の機器情報を家電機器管理 ICカード 1260に登録しておき、 家電機器管理携帯端末 1370に装着された家電機器管理 ICカード 1260が放送網 8 60を通じて更新情報を受信して、ソフトウェアを更新する必要がある場合に、家電機 器管理 ICカード 1260を介して個々の家電機器が更新情報を受信してソフトウェアの 更新を行う。これにより、個々の家電機器に、更新情報を機器管理サーバ 550から直 接受信する機能や外部のネットワークに接続する機能を持つ必要がなぐまた、更新 情報の暗号を復号化するために個々の家電機器に必要となるメモリの容量を抑える ことができるので、ソフトウェアの更新機能を備えた家電機器を低 ヽコストで構成する ことができる。
[0193] また、家電機器管理携帯端末 1370に装着された家電機器管理 ICカード 1260が 放送網 860を通じて更新情報を確実に受信し、各家電機器のソフトウェアの更新を 確実に行うことができる。
[0194] さらに、家電機器管理 ICカード 1260のデータ更新部 574のデータ保持部 578を、 更新前のソフトウェアのバックアップ領域として用いることができるので、個々の家電 機器において更新処理の為に必要となるメモリを最小限に抑えることができる。また、 仮に更新処理に失敗した場合でも、ノ ックアップしてお 、た更新前のソフトウェアを 元に戻すことで元の状態に戻すことも出来るので、更新処理の安全性を更に高める ことが出来る。
[0195] なお、上記では、家電機器管理 ICカード 1260は更新情報を家電機器管理携帯端 末 1370のデジタル放送受信部 871を介して受信するとしたが、インターネット通信部 875を介してインターネット 862経由で機器管理サーバ 550から更新情報を受信す るようにしても良い。この場合、機器情報リスト 576には、さらに機器情報の一つとして 機器管理サーバ 550の URLが登録される。家電機器管理携帯端末 1370に装着さ れた家電機器管理 ICカード 1260は、定期的に、更新処理制御部 579からインター ネット通信部 875を介して、その URLが示す機器管理サーバ 550へ更新情報要求 を送信し、機器管理サーバ 550は、配信が必要な更新情報が存在する場合に、家電 機器管理 ICカード 1260へ更新情報を送信する。家電機器管理 ICカード 1260は、 家電機器管理携帯端末 1370のインターネット通信部 875を介して受信した更新情 報に対して、デジタル放送受信部 871を介して受信した更新情報と同様の処理を行
[0196] また、上記において、家電機器管理携帯端末 1370に装着された家電機器管理 IC カード 1260が機器管理サーバ 550へ送信する更新情報要求を、家電機器管理 IC カード 1260が家電機器 1200、 1201から受信した更新処理要求に基づいて送信す るようにしても良い。この場合、更新処理要求は、家電機器 1200、 1201が家電機器 管理 ICカード 1260に対してソフトウェアの更新処理を要求するメッセージである。家 電機器管理 ICカード 1260を家電機器の ICカード通信部 1217に近づけた際に、更 新処理要求を受信した家電機器管理 ICカード 1260は、家電機器管理携帯端末 13 70に装着されるとインターネット通信部 875を介して機器管理サーバ 550へ更新情 報要求を送信する。それ以降の処理は、上記で説明した手順と同じである。
[0197] (実施の形態 8)
図 16は、本発明の実施の形態 8に係るソフトウェア更新システムとしてのデータ通 信システムである。
[0198] 本実施の形態は、更新対象の機器のソフトウェアバージョンのシリアル番号が連続 して ヽな 、場合でも、ソフトウェアの更新が可能となるように構成したものである。
[0199] なお、本実施の形態で説明するソフトウェア更新システムは、実施の形態 1で説明 したものと基本的に同様の構成を有する。よって、本実施の形態において、実施の形 態 1で説明したものと同一の構成要素には同一の参照符号を付し、その詳細な説明 を省略する。
[0200] 本実施の形態の場合、家電機器 100の機器管理モジュール 110の生成情報記憶 部 111には、生成情報 Cal l4と生成情報 Cbl l5の他に、さらに、もう一組の生成情 報 Ccl 16と生成情報 Cdl 17が格納されて 、る。
[0201] 一方、機器管理サーバ 150の秘密情報保持部 151は、家電機器の一つの機種に 対して秘密情報 A157と秘密情報 B158の他に、さらに、もう一組の秘密情報 C159 と秘密情報 D160を保持する。
[0202] 図 17は、家電機器 100に格納されるデータ、すなわち、制御コードおよび 4つの生 成情報 Ca、 Cb、 Cc、 Cdの相互関係を示す図である。
[0203] 生成情報 Ca、 Cbは、それぞれ秘密情報 A157、秘密情報 B158から、生成情報 C c、 Cdは、それぞれ秘密情報 C159、秘密情報 D160から機器管理サーバ 150の生 成情報生成部 152が生成した情報であり、家電機器 100のソフトウェアバージョンの シリアノレ番号によって異なって!/、る。
[0204] 図 17において、例えば、ソフトウェアバージョンのシリアル番号が 1の場合、家電機 器 100には、制御コード P1と、機器管理サーバ 150の生成情報生成部 152が生成し た、生成情報 Ca=X(l, A)と生成情報 Cb=Y(M— 1, B)と生成情報 Cc = U (1, C )と生成情報 Cd=V (M—l, D)と、が格納される。同様に、ソフトウェアバージョンの シリアル番号力 の場合、家電機器 100には制御コード Pnと、機器管理サーバ 150 の生成情報生成部 152が生成した、生成情報 Ca=X(n, A)と生成情報 Cb=Y(M -n, B)と、生成情報 Cc=U (n, C)と生成情報 Cd=V(M— n, D)と、が格納される 。換言すれば、現在使用されているソフトゥヱァバージョンのシリアル番号が nであれ ば、使用中のソフトウェア自体 (またはその一部)が制御コード Pnである。また、生成 情報 Ca=X(n, A)、生成情報 Cb=Y(M— n, B)、生成情報 Cc=U (n, C)、生成 情報 Cd=V (M— n, D)は、制御コード Pnに固有の情報としてそれぞれ保持され、 鍵成分として鍵の生成に用いられる。
[0205] ここで、 Uおよび Vは互いに異なる所定の不可逆演算を示している。 U (p, a)は、デ ータ aに対して不可逆演算 Uを p回繰り返した結果を示し、 V(q, b)はデータ bに対し て不可逆演算 Vを q回繰り返した結果を示す。したがって、生成情報 U (l, C)は、秘 密情報 Cに不可逆演算 Uを 1回行った場合の結果であり、生成情報 V(M— 1, D)は 、秘密情報 Dに不可逆演算 Vを M— 1回繰り返した場合の結果である。
[0206] 生成情報 U (n, C)は、秘密情報 Cに不可逆演算 Uを n回繰り返した場合の結果で あり、生成情報 U (n, C)から秘密情報 Cを算出することは出来ない。また、生成情報 V (M-n, D)は、秘密情報 Dに不可逆演算 Vを M— n回繰り返した場合の結果であ り、生成情報 V(M—n, D)から秘密情報 Dを算出することは出来ない。
[0207] 次に、家電機器 100のソフトウェアを更新する動作について説明する。
[0208] 機器管理サーバ 150は、機器管理サーバ 150が管理する機種の家電機器のソフト ウェアを新しいソフトウェアに更新する必要が発生した場合、更新の対象となる家電 機器に搭載されて 、るソフトウェアのバージョンに基づ 、て新し 、ソフトウェアを暗号 化し、更新情報を生成して、それを、通信路 160を介して各家電機器へ配信する。
[0209] ここで、図 18Aに示すように、ソフトウェアバージョンのシリアル番号が n—i〜n+jと N— p〜N + q (n, N, i, j, p, qは l≤n— i≤n+jく n+j + l≤N— p— 1 <N— p≤ N + q≤M— 1を満たす整数)のソフトウェア(つまり、更新対象ソフトウェア)を、シリア ル番号が n +k(kは l≤n+k≤M— 1を満たす整数)のソフトウェア(つまり、新規ソフ トウエア)に更新する必要がある場合を例にとって説明する。
[0210] なお、ソフトウェアバージョンのシリアル番号が n+j + l〜N—p— 1のソフトウェアは 更新対象ではなぐ更新対象の機器のソフトウェアバージョンのシリアル番号は必ず しも連続しておらず、
また、家電機器 100において現在使用されているソフトウェア(つまり、現用ソフトゥ エア)のバージョンのシリアル番号は n (nは n— i≤ n≤ n + jを満たす整数)または N ( Nは N— p≤N≤N + qを満たす整数)であるとする。
[0211] 図 19Aのフロー図に示すように、まず、
機器管理サーバ 150の生成情報生成部 152が、秘密情報保持部 151から家電機 器 100に対応する秘密情報 A157と秘密情報 B158と秘密情報 C159と秘密情報 D 160を読み出して、秘密情報 A157に不可逆演算 Xを n+j回行って生成情報 X(n+ j, A)を生成し、さらに不可逆演算 Xを k j回行ってシリアル番号 n+kの場合の生成 情報 Caである X (n+k, A)を生成し (ステップ 1901)、
秘密情報 B158に不可逆演算 Yを M— n— k回行ってシリアル番号 n+kの場合の 生成情報 Cbである Y(M— n— k, B)を生成し、さらに不可逆演算 Yを k+i回行って 生成情報 Y (M-n+i, B)を生成し (ステップ 1902)、
秘密情報 C 159に不可逆演算 Uを N + q回行って生成情報 U (N + q, C)を生成し 、さらに不可逆演算 Uを n + k— N— q回行つてシリアル番号 n + kの場合の生成情報 Ccである U (n+k, C)を生成し (ステップ 1903)、
秘密情報 D 160に不可逆演算 Vを M— n— k回行つてシリアル番号 n + kの場合の 生成情報 Cdである V (M— n— k, D)を生成し、さらに不可逆演算 Vを n+k— N+p 回行って生成情報 V (M-N+p, D)を生成する(ステップ 1904)。
[0212] 次に、暗号鍵生成部 153が、生成された生成情報 X (n+j, A)と生成情報 Y(M— n+i, B)とシリアル番号 n+kとを合成して鍵 F (X (n+j, A) , Y (M-n+i, Β) , η+ k)を生成し (ステップ 1905)、生成情報 U (N + q, C)と生成情報 V(M— N + p, D) とシリアル番号 n+kとを合成して鍵 F (U (N + q, C) , V(M—N+p, D) , n+k)を生 成し (ステップ 1906)、さらに、暗号鍵 Kを生成する(ステップ 1907)。ここで暗号鍵 K は乱数をシードとする任意の共通鍵方式の鍵である。
[0213] 次に、更新情報生成部 154が、シリアル番号 n+kの場合の生成情報 Ca (=X(n+ k, A) )と生成情報 Cb (=Y(M— n— k, 8) )と生成情報じ0 (=1;(11 + ^ C) )と生成 情報 Cd(=V (M— n— k, D) )と制御コード Pn+kとを、生成した暗号鍵 Kを用いて 暗号化し (ステップ 1908)、
さら〖こ、暗号鍵 Kを
生成した鍵 F (X(n+j, A) , Y(M— n+i, B) , n+k)と
生成した鍵 F (U (N + q, C) , V(M-N + p, D) , n + k)と
を用いてそれぞれ暗号ィ匕し (ステップ 1909)、さらに制御情報を付加して、図 18B に示すようなデータ構造の更新情報を生成する。
[0214] 次に、更新情報配信部 155が、生成した更新情報を通信路 160を介して家電機器
100を含む各家電機器へ配信する。
[0215] ここで、制御情報は、更新情報を受信した家電機器 100における更新情報の処理 を制御する情報である。制御情報には、更新の対象となっている家電機器の機種を 規定する情報が含まれている。具体的には、例えば、製造会社を示すメーカーコード と、家電機器の型式番号と、ソフトウェアバージョンのシリアル番号とが含まれ、さらに 製造シリアル番号の範囲を示す情報が含まれていても良い。また、制御情報には、 更新後のソフトウェアバージョンを規定する情報として更新後のソフトウェアバージョ ンのシリアル番号が含まれている。さらに、制御情報には、実際に家電機器上で実行 されるプログラムデータが含まれていても良ぐさらに、そのプログラムデータの正当 性を検証するための電子署名等の検証データが含まれていても良い。本実施の形 態の場合には、制御コード格納部 121に格納されているユーザ設定 123を、新しい ソフトウェアにおいても有効なデータ形式に変換するプログラムデータが含まれてい るとする。
[0216] 次に、更新情報を受信した家電機器 100は、更新情報の制御情報に基づき、生成 情報から更新情報の暗号を復号化するための鍵を生成し、更新情報の暗号を復号 化して、ソフトウェアを更新情報に含まれていたものに更新する。ここでは、家電機器
100に搭載されて!、るソフトウェアのソフトウェアバージョンのシリアル番号が n (n-i ≤n≤n+j)であった場合と N (N— q≤N≤N+p)であった場合を例にとつて説明す る。
[0217] まず、家電機器 100に搭載されているソフトウェアのソフトウェアバージョンのシリア ル番号が nであった場合、図 19Bのフロー図に示すように、まず、家電機器 100の受 信部 140が、機器管理サーバ 150から配信された更新情報を通信路 160を介して受 信する。家電機器 100の機器管理モジュール 110の更新部 113が、更新情報の制 御情報に基づいて、ソフトウェアを更新する必要があるかどうかを判定する (ステップ 1 910)。具体的には、制御情報を取得し、取得した制御情報の中で規定されているメ 一力一コードと型式番号が、家電機器 100のメーカーコードと型式番号とそれぞれ一 致し、更に、制御情報の中で規定されている更新対象のソフトウェアバージョンのシリ アル番号に、家電機器 100のソフトウェアバージョンのシリアル番号が含まれる場合 に、「更新が必要」であると判定する。ステップ 1910の更新の要否判定において、「 更新不要」と判定した場合には、更新部 113は受信した更新情報をそのまま廃棄す る。
[0218] 「更新が必要」と判定された場合は、鍵生成部 112が、生成情報記憶部 111から生 成情報 Ca (=X(n, A) )と生成情報 Cb (=Y(M— n, B) )を読み出して、生成情報 C a (=X(n, A) )に不可逆演算 Xを j回行って生成情報 X(n+j, A)を生成し (ステップ 1911)、生成情報 Cb (=Y(M—n, B) )に不可逆演算 Yを i回行って生成情報 Y(M -n+i, B)を生成し (ステップ 1912)、更に、生成された生成情報 X(n+j, A)、 Y( M-n+i, B)およびシリアル番号 n+kから、鍵 F (X(n+j, A) , Y(M— n+i, B) , n +k)を生成する (ステップ 1913)。
[0219] 次に、更新部 113が、鍵 F (X(n+j, A) , Y (M-n+i, B) , n+k)で暗号化されて いる暗号鍵 Kの暗号を復号化し (ステップ 1914)、
復号ィ匕した暗号鍵 Κを用いて
更新情報の暗号ィ匕されている部分を復号ィ匕し (ステップ 1915)、シリアル番号が η +1^の場合の生成情報じ& (= (11 + ^ A) )と生成情報Cb (=Y(M—n—k, Β) )と 生成情報 Cc(=U(n+k, C))と生成情報 Cd(=V(M— n— k, D))と制御コード Pn +kとを取り出して、制御コード格納部 121の制御コード Pnを制御コード Pn+kに更 新し、生成情報記憶部 111の生成情報 Ca(=X(n, A))と生成情報 Cb(=Y(M— n , B))と生成情報 Cc(=U(n, C))と生成情報 Cd(=V(M— n, D))を、それぞれ生 成情報 Ca(=X(n+k, A))と生成情報 Cb(=Y(M— n— k, B))と生成情報 Cc( = U(n+k, C))と生成情報 Cd(=V(M— n— k, D))に更新する。
[0220] さらに、制御情報に含まれるプログラムデータを実行して、制御コード格納部 120に 格納されて 、るユーザ設定 123を、新 、制御コード Pn+kにお 、ても有効なデー タ形式に変換することにより、ユーザ設定 123を更新して、ソフトウェアの更新を完了 する。この時、更新部 113は、更新情報の暗号化されている部分を復号ィ匕した際に、 復号ィ匕されたデータのノ^ティビットなどをチェックして、復号ィ匕処理が正常に行われ たことをチェックする。
[0221] また、家電機器 100に搭載されているソフトウェアのソフトウェアバージョンのシリア ル番号が Nであった場合、図 19Cのフロー図に示すように、まず、家電機器 100の受 信部 140が、機器管理サーバ 150から配信された更新情報を通信路 160を介して受 信する。家電機器 100の機器管理モジュール 110の更新部 113が、更新情報の制 御情報に基づいて、ソフトウェアを更新する必要があるかどうかを判定する (ステップ 1 920)。具体的には、制御情報を取得し、取得した制御情報の中で規定されているメ 一力一コードと型式番号が、家電機器 100のメーカーコードと型式番号とそれぞれ一 致し、更に、制御情報の中で規定されている更新対象のソフトウェアバージョンのシリ アル番号に、家電機器 100のソフトウェアバージョンのシリアル番号が含まれる場合 に、「更新が必要」であると判定する。ステップ 1920の更新の要否判定において、「 更新不要」と判定した場合には、更新部 113は受信した更新情報をそのまま廃棄す る。
[0222] 「更新が必要」と判定された場合は、鍵生成部 112が、生成情報記憶部 111から生 成情報 Cc( = U(N, C))と生成情報 Cd(=V(M— N, D))を読み出して、生成情報 Cc( = U(N, C))に不可逆演算 Uを q回行って生成情報 U(N + q, C)を生成し (ステ ップ 1921)、生成情報 Cd(=V(M— N, D))に不可逆演算 Vを p回行って生成情報 V(M-N + p, D)を生成し (ステップ 1922)、更に、生成された生成情報 U(N + q, C)、 V(M— N + p, D)およびシリアル番号 n + kから、鍵 F(U(N + q, C) , V(M— N +p, D), n+k)を生成する(ステップ 1923)。
[0223] 次に、更新部 113が、鍵 F(U(N + q, C) , V(M— N+p, D) , n+k)で暗号化さ れて 、る暗号鍵 Kの暗号を復号化し (ステップ 1924)、
復号ィ匕した暗号鍵 Kを用いて
更新情報の暗号ィ匕されている部分を復号ィ匕し (ステップ 1925)、シリアル番号が n +1^の場合の生成情報じ&(= (11+^ A))と生成情報Cb(=Y(M—n—k, B))と 生成情報 Cc(=U(n+k, C))と生成情報 Cd(=V(M— n— k, D))と制御コード Pn +kとを取り出して、制御コード格納部 121の制御コード PNを制御コード Pn+kに更 新し、生成情報記憶部 111の生成情報 Ca(=X(N, A))と生成情報Cb(=Y(M— N, B))と生成情報 Cc( = U(N, C))と生成情報 Cd(=V(M— N, D))を、それぞれ 生成情報 Ca(=X(n+k, A))と生成情報 Cb(=Y(M— n— k, B))と生成情報 Cc( =U(n+k, C))と生成情報 Cd(=V(M— n— k, D))に更新する。
[0224] さらに、制御情報に含まれるプログラムデータを実行して、制御コード格納部 121に 格納されて 、るユーザ設定 123を、新 、制御コード Pn+kにお 、ても有効なデー タ形式に変換することにより、ユーザ設定 123を更新して、ソフトウェアの更新を完了 する。この時、更新部 113は、更新情報の暗号化されている部分を復号ィ匕した際に、 復号ィ匕されたデータのノ^ティビットなどをチェックして、復号ィ匕処理が正常に行われ たことをチェックする。
[0225] 以上のように、
更新対象の機器のソフトウェアバージョンのシリアル番号が必ずしも連続して 、な ヽ 場合でも、搭載されているソフトウェアのソフトウェアバージョンが、更新情報の制御情 報で規定されて 、る更新対象のソフトウェアバージョンの家電機器であれば、更新情 報の暗号ィ匕されている部分を復号ィ匕する暗号鍵 Kに施された暗号を復号ィ匕するため の鍵を生成することができ、ソフトウェアの更新を行うことが出来る。この時、機器管理 サーバ 150側は、家電機器のバージョンごとに複数の更新情報を配信する必要はな ぐ 1種類の更新情報を配信するだけで良ぐ処理の負荷力 、さくてすむので、サー バ設備に力かるコストを抑えることが出来る。また、家電機器 100側は、ノ、ッシュ演算 という負荷の小さな処理を行うだけで良ぐ一方で、更新ごとに配信される更新情報 の喑復号鍵を変えることが出来るので、更新情報の配信の安全性が向上する。
[0226] 一方、家電機器に搭載されて 、るソフトウェアのソフトウェアバージョン力 更新情報 の制御情報で規定されて 、る更新対象のソフトウェアバージョンではな 、場合、更新 情報の暗号ィ匕されている部分を復号ィ匕する暗号鍵 Kに施された暗号を復号ィ匕するた めの鍵を生成することは出来ないので、ソフトウェアを更新することも出来ない。
[0227] なお、上記では、機器管理モジュール 110を、制御部 120の CPUとは別の CPUを 持つ集積回路であるとしたが、機器管理モジュール 110の機能を、制御部 120の CP Uとメモリとによって構成するようにしても良!、。
[0228] また、上記では、家電機器 100に格納される制御コードの更新を行うとしたが、制御 コードだけではなぐ家電機器 100に格納される特定のデータを同様の仕組みで更 新するようにしても良ぐその特定のデータとしては、マルチメディア 'コンテンツや、ラ ィセンス情報、制御コードが参照するテーブル情報やデータベースなどが含まれる。
[0229] また、上記では、家電機器 100に格納される制御コードの更新を行うとしたが、同様 の仕組みで、家電機器 100に格納される特定のデータを更新することで、家電機器 1 00の一部の機能または全ての機能を無効化するようにしても良い。その特定のデー タとしては、制御コードや、家電機器 100の内部の制御フラグ情報、暗号処理に用い る鍵データ、マルチメディア 'コンテンツ、ライセンス情報、制御コードが参照するテー ブル情報やデータベースなどが含まれ、それらを無効なデータに更新することで、家 電機器 100の一部の機能または全ての機能を無効化する。
[0230] また、上記では、説明を簡単にするため、更新対象の機器のソフトウェアバージョン のシリアル番号が連続して ヽな 、箇所が 1個の場合の形態にっ 、て説明した力 連 続して 、な 、箇所が 2個以上の場合にっ 、ても、秘密情報および生成情報を 2個ず つ増加させることで、同様の仕組みでソフトウェアの更新を行うことができる。
[0231] (実施の形態 9)
図 20は、本発明の実施の形態 9に係るソフトウェア更新システムとしてのデータ通 信システムである。 [0232] 本実施の形態は、機器のソフトウェアが複数のソフトウェア力も構成され、それぞれ のソフトウェアのリリースのタイミングが異なる場合でも、それぞれのソフトウェアの更新 が可能となるように構成したものである。例えば、機器に搭載されるソフトウェア力 O S、ミドルウェア、アプリケーションといったように複数のソフトウェア力も構成され、特に 、それぞれが異なるベンダー力も提供されるソフトウェアである場合、ソフトウェアのリ リースのタイミングはそれぞれ異なるため、ソフトウェアバージョンのシリアノレ番号は異 なることになる。また、ソフトウェア間ではバージョンごとに相性が存在する場合があり 、必ずしも、それぞれのソフトウェアを個別に更新すれば良いわけでなぐ特定の組 み合わせでそれぞれのソフトウェアを更新する必要がある場合がある。
[0233] なお、本実施の形態で説明するソフトウェア更新システムは、実施の形態 1で説明 したものと基本的に同様の構成を有する。よって、本実施の形態において、実施の形 態 1で説明したものと同一の構成要素には同一の参照符号を付し、その詳細な説明 を省略する。
[0234] また、本実施の形態の場合、機器のソフトウェアを構成する複数のソフトウェアとして は、説明を簡単にするため、 2つのソフトウェアカゝら構成されるとし、家電機器 100の 制御部 120の制御コード格納部 121には、実施の形態 1における制御コード 122の 代わりに、制御モジュール P125と制御モジュール Q126の 2つのソフトウェアが格納 されており、また、機器管理モジュール 110の生成情報記憶部 111には、生成情報 Cal l4と生成情報 Cbl l5の他〖こ、さら〖こ、もう一組の生成情報 Ccl 16と生成情報 C dl 17が格納されている。ここで、生成情報 Cal l4と生成情報 Cbl l5は、制御モジュ ール P125に対応する 2つの生成情報であり、生成情報 Ccl 16と生成情報 Cdl 17 は、制御モジュール Q 126に対応する 2つの生成情報である。
[0235] 一方、機器管理サーバ 150の秘密情報保持部 151は、家電機器の一つの機種に 対して秘密情報 A157と秘密情報 B158の他に、さらに、もう一組の秘密情報 C159 と秘密情報 D160を保持する。ここで、秘密情報 A157と秘密情報 B158は制御モジ ユール P125に対応する 2つの秘密情報であり、秘密情報 C159と秘密情報 D160は 制御モジュール Q 126に対応する 2つの秘密情報である。
[0236] 図 21は、家電機器 100に格納されるデータ、すなわち、制御モジュール P125と制 御モジュール Q 126および 4つの生成情報 Ca、 Cb、 Cc、 Cdの相互関係を示す図で ある。
[0237] 生成情報 Ca、 Cbは、それぞれ秘密情報 A157、秘密情報 B158から、生成情報 C c、 Cdは、それぞれ秘密情報 C159、秘密情報 D160から機器管理サーバ 150の生 成情報生成部 152が生成した情報であり、生成情報 Ca、 Cbは、制御モジュール PI 25のバージョンのシリアル番号によって異なっており、生成情報 Cc、 Cdは、制御モ ジュール Q 126のバージョンのシリアル番号によって異なっている。
[0238] 図 21において、例えば、制御モジュール P125のバージョンのシリアル番号が 1の 場合、制御モジュール Pとして家電機器 100には制御モジュール P1が格納され、さら に、機器管理サーバ 150の生成情報生成部 152が生成した、生成情報 Ca=X(l, A)と生成情報 Cb=Y(M— 1, B)と、が格納される。同様に、制御モジュール P125 のバージョンのシリアル番号が nの場合、制御モジュール Pとして家電機器 100には 制御モジュール Pnが格納され、さらに、機器管理サーバ 150の生成情報生成部 15 2が生成した、生成情報 Ca=X(n, A)と生成情報 Cb=Y(M— n, B)と、が格納され る。
[0239] また制御モジュール Q126のバージョンのシリアル番号が 1の場合、制御モジユー ル Qとして家電機器 100には制御モジュール Q1が格納され、さらに、機器管理サー バ 150の生成情報生成部 152が生成した、生成情報 Cc=U (l, A)と生成情報 Cd =V (M- 1, B)と、が格納される。同様に、制御モジュール Q 126のバージョンのシリ アル番号が sの場合、制御モジュール Qとして家電機器 100には制御モジュール Qs が格納され、さらに、機器管理サーバ 150の生成情報生成部 152が生成した、生成 情報 Cc=U (s, C)と生成情報 Cd=V(M— s, D)と、が格納される。
[0240] 換言すれば、現在使用されているソフトウェアを構成する制御モジュール P125と制 御モジュール Q126のバージョンのシリアル番号が、それぞれ、 nと s、であれば、使 用中のソフトウェア自体(またはその一部)が制御モジュール Pnと制御モジュール Qs によって構成される。また、生成情報 Ca=X(n, A)、生成情報 Cb=Y(M—n, B)は 、制御コード Pnに固有の情報としてそれぞれ保持され、生成情報 Cc=U (s, C)、生 成情報 Cd=V (M— s, D)は、制御コード Qsに固有の情報としてそれぞれ保持され 、鍵成分として鍵の生成に用いられる。
[0241] ここで、 Uおよび Vは互いに異なる所定の不可逆演算を示している。 U (p, a)は、デ ータ aに対して不可逆演算 Uを p回繰り返した結果を示し、 V(q, b)はデータ bに対し て不可逆演算 Vを q回繰り返した結果を示す。したがって、生成情報 U (l, C)は、秘 密情報 Cに不可逆演算 Uを 1回行った場合の結果であり、生成情報 V(M— 1, D)は 、秘密情報 Dに不可逆演算 Vを M— 1回繰り返した場合の結果である。
[0242] 生成情報 U (n, C)は、秘密情報 Cに不可逆演算 Uを n回繰り返した場合の結果で あり、生成情報 U (n, C)から秘密情報 Cを算出することは出来ない。また、生成情報 V (M-n, D)は、秘密情報 Dに不可逆演算 Vを M— n回繰り返した場合の結果であ り、生成情報 V(M—n, D)から秘密情報 Dを算出することは出来ない。
[0243] 次に、家電機器 100のソフトウェアを更新する動作について説明する。
[0244] 機器管理サーバ 150は、機器管理サーバ 150が管理する機種の家電機器のソフト ウェアを新しいソフトウェアに更新する必要が発生した場合、更新の対象となる家電 機器に搭載されて 、るソフトウェアのバージョンに基づ 、て新し 、ソフトウェアを暗号 化し、更新情報を生成して、それを、通信路 160を介して各家電機器へ配信する。
[0245] ここで、図 22Aに示すように、制御モジュール Pのバージョンのシリアル番号が n—i 〜n+j (n, i, jは l≤n— i≤n+j≤M—lを満たす整数)かつ制御モジュール Qのバ 一ジョンのシリアル番号力 一 p〜s + q (s, p, qは l≤s— p≤s + q≤M— 1を満たす 整数)から構成されるソフトウェア(つまり、更新対象ソフトウェア)を、制御モジュール Pのバージョンのシリアル番号が n +k(kは l≤n+k≤M—lを満たす整数)、制御モ ジュール Qのバージョンのシリアル番号力 Ss+t (tは l≤n+t≤M—lを満たす整数) のソフトウェア(つまり、新規ソフトウェア)に更新する必要がある場合を例にとって説 明する。
[0246] なお、家電機器 100において現在使用されているソフトウェア(つまり、現用ソフトゥ エア)は、制御モジュール Pのバージョンのシリアル番号が n、制御モジュール Qのバ 一ジョンのシリアル番号が sであるとする。
[0247] 図 23Aのフロー図に示すように、まず、
機器管理サーバ 150の生成情報生成部 152が、秘密情報保持部 151から家電機 器 100に対応する秘密情報 A157と秘密情報 B158と秘密情報 C159と秘密情報 D 160を読み出して、秘密情報 A157に不可逆演算 Xを n+j回行って生成情報 X(n+ j, A)を生成し、さらに不可逆演算 Xを k j回行ってシリアル番号 n+kの場合の生成 情報 Caである X(n+k, A)を生成し (ステップ 2301)、
秘密情報 B158に不可逆演算 Yを M— n— k回行ってシリアル番号 n+kの場合の 生成情報 Cbである Y(M— n— k, B)を生成し、さらに不可逆演算 Yを k+i回行って 生成情報 Y (M-n+i, B)を生成し (ステップ 2302)、
秘密情報 C 159に不可逆演算 Uを s + q回行って生成情報 U (s + q, C)を生成し、 さらに不可逆演算 Uを t— q回行ってシリアル番号 s + tの場合の生成情報 Ccである U (s + t, C)を生成し (ステップ 2303)、
秘密情報 D160に不可逆演算 Vを M— s— t回行ってシリアル番号 s + tの場合の生 成情報 Cdである V (M— s— t, D)を生成し、さらに不可逆演算 Vを t + p回行って生 成情報 V (M-s+p, D)を生成する(ステップ 2304)。
[0248] 次に、暗号鍵生成部 153が、生成された生成情報 X (n+j, A)と生成情報 Y(M— n+i, B)と生成情報 U (s + q, C)と生成情報 V (M— s+p, D)とシリアル番号 n+kと 3 +1;とを合成して鍵?( (11+_) , A) , Y (M-n+i, B) , U (s + q, C) , V (M-s + p, D) , n+k, s+t)を生成し (ステップ 2305)、
次に、更新情報生成部 154が、生成情報 Ca (=X(n+k, A) )と生成情報 Cb (=Y (M-n-k, ))と生成情報0: (=1;(3 + C) )と生成情報 Cd (=V(M— s— t, D) )と制御コード Pn+kと制御コード Qs+tとを、生成した鍵 F (X(n+j, A) , Y(M— n + i, B) , U (s + q, C) , V(M-s + p, D) , n + k, s + t)を用いて暗号化し (ステップ 2306)、さらに制御情報を付加して、図 22Bに示すようなデータ構造の更新情報を 生成する。
[0249] この場合、鍵 F (a, b, c, d)は、 a、 b、 c、 dを変数とする任意の関数であり、例えば、 F (a, b, c, d) =H (a | | b | | c | | d) (aと bと cと dのデータ連結にハッシュ演算を 施したもの)と 、つた関数が用いられる。
[0250] 次に、更新情報配信部 155が、生成した更新情報を通信路 160を介して家電機器 100を含む各家電機器へ配信する。 [0251] ここで、制御情報は、更新情報を受信した家電機器 100における更新情報の処理 を制御する情報である。制御情報には、更新の対象となっている家電機器の機種を 規定する情報が含まれている。具体的には、例えば、製造会社を示すメーカーコード と、家電機器の型式番号と、ソフトウェアバージョンのシリアル番号とが含まれ、さらに 製造シリアル番号の範囲を示す情報が含まれていても良い。また、制御情報には、 更新後のソフトウェアバージョンを規定する情報として更新後のソフトウェアバージョ ンのシリアル番号が含まれている。さらに、制御情報には、実際に家電機器上で実行 されるプログラムデータが含まれていても良ぐさらに、そのプログラムデータの正当 性を検証するための電子署名等の検証データが含まれていても良い。本実施の形 態の場合には、制御コード格納部 121に格納されているユーザ設定 123を、新しい ソフトウェアにおいても有効なデータ形式に変換するプログラムデータが含まれてい るとする。
[0252] 次に、更新情報を受信した家電機器 100は、更新情報の制御情報に基づき、生成 情報から更新情報の暗号を復号化するための鍵を生成し、更新情報の暗号を復号 化して、ソフトウェアを更新情報に含まれていたものに更新する。ここでは、家電機器 100に搭載されて!、る制御モジュール Pのバージョンのシリアル番号が n、制御モジ ユール Qのバージョンのシリアル番号が sであった場合を例にとって説明する。
[0253] 図 23Bのフロー図に示すように、まず、家電機器 100の受信部 140が、機器管理サ ーバ 150から配信された更新情報を通信路 160を介して受信する。家電機器 100の 機器管理モジュール 110の更新部 113が、更新情報の制御情報に基づいて、ソフト ウェアを更新する必要があるかどうかを判定する (ステップ 2310)。具体的には、制御 情報を取得し、取得した制御情報の中で規定されて 、るメーカーコードと型式番号が 、家電機器 100のメーカーコードと型式番号とそれぞれ一致し、更に、制御情報の中 で規定されて 、る更新対象のソフトウェアバージョンのシリアル番号に、家電機器 10 0のソフトウェアバージョンのシリアル番号が含まれる場合に、「更新が必要」であると 判定する。ステップ 2310の更新の要否判定において、「更新不要」と判定した場合 には、更新部 113は受信した更新情報をそのまま廃棄する。
[0254] 「更新が必要」と判定された場合は、鍵生成部 112が、生成情報記憶部 111から生 成情報 Ca(=X(n, A))と生成情報 Cb(=Y(M— n, ))と生成情報0 (=1;(5, C ))と生成情報 Cd(=V(M— s, D))を読み出して、生成情報 Ca(=X(n, A))に不 可逆演算 Xを j回行って生成情報 X(n+j, A)を生成し (ステップ 2311)、生成情報 C b(=Y(M-n, B))に不可逆演算 Yを i回行って生成情報 Y(M— n+i, B)を生成し (ステップ 2312)、生成情報 Cc( = U(s, C))に不可逆演算 Uを q回行って生成情報 U(s + q, C)を生成し(ステップ2313)、生成情報Cd(=V(M— s, D))に不可逆演 算 Vを p回行って生成情報 V(M— s+p, D)を生成し (ステップ 2314)、更に、生成さ れた生成情報 X(n+j, A) Y(M— n+i, B)、U(s + q, C)、V(M— s+p, D)およ びシリアル番号 n+kと s+tから、鍵 F(X(n+j, A), Y(M— n+i, B), U(s + q, C) , V(M-s+p, D), n+k, s+t)を生成する(ステップ 2315)。
[0255] 次に、更新部 113が、鍵 F(X(n+j, A), Y(M— n+i, B), U(s + q, C), V(M— s+p, D), n+k, s+t)で更新情報の暗号ィ匕されている部分を復号ィ匕し (ステップ 2 316)、生成情報 Ca(=X(n+k, A))と生成情報 Cb(=Y(M— n— k, B))と生成情 報 Cc(=U(s+t, C))と生成情報 Cd(=V(M— s—t, D))と制御モジュール Pn+k と制御モジュール Qs+tとを取り出して、制御コード格納部 121の制御モジュール Pn を制御モジュール Pn+kに、制御モジュール Qsを制御モジュール Qs+tに、それぞ れ更新し、生成情報記憶部 111の生成情報 Ca(=X(n,八 と生成情報^ 丫 M-n, B))と生成情報 Cc(=U(s, C))と生成情報 Cd(=V(M— s, D))を、それぞ れ生成情報 Ca(=X(n+k, A))と生成情報 Cb(=Y(M— n— k, B))と生成情報 C c(=U(s+t, C))と生成情報 Cd(=V(M— s— t, D))に更新する。
[0256] さらに、制御情報に含まれるプログラムデータを実行して、制御コード格納部 120に 格納されて 、るユーザ設定 123を、新し 、制御モジュール Pn+kおよび制御モジュ ール Qs+tにおいても有効なデータ形式に変換することにより、ユーザ設定 123を更 新して、ソフトウェアの更新を完了する。この時、更新部 113は、更新情報の暗号化さ れて 、る部分を復号ィ匕した際に、復号ィ匕されたデータのノ リティビットなどをチェック して、復号化処理が正常に行われたことをチェックする。
[0257] 以上のように、
更新対象の機器のソフトウェアが複数のソフトウェアカゝら構成される場合でも、搭載 されているソフトウェアのソフトウェアバージョンが、更新情報の制御情報で規定され て 、る更新対象のソフトウェアバージョンの家電機器であれば、更新情報の暗号化さ れている部分を復号ィ匕する暗号鍵 κに施された暗号を復号ィ匕するための鍵を生成 することができ、ソフトウェアの更新を行うことが出来る。この時、機器管理サーバ 150 側は、家電機器のバージョンごとに複数の更新情報を配信する必要はなぐ 1種類の 更新情報を配信するだけで良ぐ処理の負荷力 、さくてすむので、サーバ設備にか 力るコストを抑えることが出来る。また、家電機器 100側は、ノ、ッシュ演算という負荷の 小さな処理を行うだけで良ぐ一方で、更新ごとに配信される更新情報の喑復号鍵を 変えることが出来るので、更新情報の配信の安全性が向上する。
[0258] 一方、家電機器に搭載されて 、るソフトウェアのソフトウェアバージョン力 更新情報 の制御情報で規定されて 、る更新対象のソフトウェアバージョンではな 、場合、更新 情報の暗号ィ匕されている部分を復号ィ匕する暗号鍵 Kに施された暗号を復号ィ匕するた めの鍵を生成することは出来ないので、ソフトウェアを更新することも出来ない。
[0259] なお、上記では、機器管理モジュール 110を、制御部 120の CPUとは別の CPUを 持つ集積回路であるとしたが、機器管理モジュール 110の機能を、制御部 120の CP Uとメモリとによって構成するようにしても良!、。
[0260] また、上記では、家電機器 100に格納される制御コードの更新を行うとしたが、制御 コードだけではなぐ家電機器 100に格納される特定のデータを同様の仕組みで更 新するようにしても良ぐその特定のデータとしては、マルチメディア 'コンテンツや、ラ ィセンス情報、制御コードが参照するテーブル情報やデータベースなどが含まれる。
[0261] また、上記では、家電機器 100に格納される制御コードの更新を行うとしたが、同様 の仕組みで、家電機器 100に格納される特定のデータを更新することで、家電機器 1 00の一部の機能または全ての機能を無効化するようにしても良い。その特定のデー タとしては、制御コードや、家電機器 100の内部の制御フラグ情報、暗号処理に用い る鍵データ、マルチメディア 'コンテンツ、ライセンス情報、制御コードが参照するテー ブル情報やデータベースなどが含まれ、それらを無効なデータに更新することで、家 電機器 100の一部の機能または全ての機能を無効化する。
[0262] また、上記では、説明を簡単にするため、機器のソフトウェアが 2つのソフトウェアか ら構成される場合の形態について説明したが、機器のソフトウェアが 3つ以上のソフト ウェア力も構成される場合にっ 、ても、秘密情報および生成情報を 2個ずつ増加さ せることで、同様の仕組みでソフトウェアの更新を行うことができる。
[0263] 以上、本発明の実施の形態について説明した。なお、以上の説明は本発明の好適 な実施の形態の例証であり、本発明の範囲はこれに限定されない。例えば、実施の 形態 1〜9で説明した幾つかの特徴を適宜組み合わせて実施することができる。また 、各実施の形態において使用した通信方式や各機器の個数などは、前述したものだ けに限定されるべきではない。また、各実施の形態で説明した構成は一例であり、よ つて、本発明の範囲においてこの構成例の様々な変更および修正が可能であること は明らかである。
[0264] 本明細書は、 2006年 6月 8日出願の特願 2006— 160284および 2007年 6月 1日 出願の特願 2007— 146869に基づく。この内容はすべてここに含めておく。
産業上の利用可能性
[0265] 本発明の家電機器は、使用するデータのバージョンアップが可能な家電機器として 有用である。また、本発明のデータ格納装置、管理サーバ、集積回路、データ更新 システム、データ更新方法、暗号化方法、および、喑復号鍵生成方法は、家電機器 において使用するデータのバージョンアップの用途に適している。

Claims

請求の範囲
n番目(n≥ 1)にリリースされたデータ Pnを格納するデータ格納手段と、 鍵情報を生成するための第 1の生成情報と第 2の生成情報とを格納する鍵生成情 報記憶手段と、
前記第 1の生成情報と第 2の生成情報とから鍵情報を生成する鍵生成手段と、 前記データ及び前記第 1の生成情報と第 2の生成情報とを更新する更新手段と、 から構成されるデータ格納装置であって、
前記鍵生成情報記憶手段に格納されて 、る
第 1の生成情報は、第 1の秘密情報 Aに不可逆演算 Xを n回行った X(n, A)、 第 2の生成情報は、第 2の秘密情報 Bに不可逆演算 Yを M— n回 (M— n≥ 1)行 つた Y(M— n, B)であり、
n—i番目〜n+j番目(M≥n+j≥n≥n—i≥ 1)にリリースされたデータが格納され ているデータ格納装置を更新対象とするデータ Pnをデータ Pk(M≥k≥ 1)に更新す る更新情報を受信した場合に、
前記鍵生成手段が、
第 1の生成情報に不可逆演算 Xを j回行って X(n+j, A)を生成し、
第 2の生成情報に不可逆演算 Yを i回行つて Y (M— n + i, B)を生成し、 更に、前記 X(n+j, A)と Y(M— n+i, B)とから鍵情報 G (X(n+j, A) , Y(M— n+i, B) ) (Gは任意の関数)を生成し、
前記更新手段が、
前記生成した鍵情報 G (X(n+j, A) , Y(M— n+i, B) )を用いて前記更新情 報の暗号を復号化して、データ Pk及び第 1の生成情報 X(k, A)と第 2の生成情報 Y
(M-k, B)とを取得し、
前記データ格納手段に格納されているデータ Pnをデータ Pkに更新し、 前記鍵生成情報記憶手段に格納されている第 1の生成情報 X(n, A)と第 2の 生成情報 Y(M— n, B)とを、それぞれ、第 1の生成情報 X(k, A)と第 2の生成情報 Y
(M-k, B)とに更新する
データ格納装置。
[2] 前記鍵生成手段が、
前記生成した X(n+j, A)及び Y(M— n+i, B)と前記 kとから鍵情報 F (X(n+j , A), Y(M— n+i, B) , k) (Fは任意の関数)を生成し、
前記更新手段が、
前記生成した鍵情報 F (X(n+j, A) , Y(M— n+i, B) , k)を用いて前記更新 情報の暗号を復号化して、データ Pk及び第 1の生成情報 X(k, A)と第 2の生成情報 Y(M-k, B)とを取得する
請求項 1記載のデータ格納装置。
[3] さらに、データ通信を行う通信手段と、
前記データ格納装置の識別情報を管理装置に登録する登録手段と、
を備え、
前記通信手段が通信可能になった際に、前記登録手段が前記通信手段を介して 自身の識別情報を前記管理装置に登録し、
前記通信手段を介して前記管理装置から前記更新情報を受信する
請求項 1記載のデータ格納装置。
[4] 第 1の秘密情報 Aと第 2の秘密情報 Bとをデータ格納装置の種類ごとに保持する秘 密情報保持手段と、
データ格納装置に格納する第 1の生成情報と第 2の生成情報を生成する生成情報 生成手段と、
力 構成される管理サーバであって、
n番目(n≥ 1)にリリースされたデータ Pnを格納するデータ格納装置に対して、 前記生成情報生成手段が、
前記秘密情報保持手段から第 1の秘密情報 Aと第 2の秘密情報 Bを読み出し、 前記第 1の秘密情報 Aに不可逆演算 Xを n回行って第 1の生成情報 X(n, A)を生 成し、
前記第 2の秘密情報 Bに不可逆演算 Yを M— n回 (M— n≥ 1)行って第 2の生成 情報 Y(M— n, B)を生成する
管理サーバ。 第 1の秘密情報 Aと第 2の秘密情報 Bとをデータ格納装置の種類ごとに保持する秘 密情報保持手段と、
データ格納装置に格納する第 1の生成情報と第 2の生成情報を生成する生成情報 生成手段と、
前記第 1の生成情報と第 2の生成情報とから鍵情報を生成する暗号鍵生成手段と、 データ格納装置に送信する更新情報を生成する更新情報生成手段と
力 構成される管理サーバであって、
n—i番目〜n+j番目(M≥n+j≥n≥n—i≥ 1)にリリースされたデータを格納する データ格納装置に対して、 k番目(M≥k≥l)のリリースとなるデータ Pkを含む更新 情報を生成する場合に、
前記生成情報生成手段が
前記秘密情報保持手段から第 1の秘密情報 Aと第 2の秘密情報 Bを読み出し、 前記第 1の秘密情報 Aに不可逆演算 Xを k回行って第 1の生成情報 X(k, A)を生 成し、
前記第 2の秘密情報 Bに不可逆演算 Yを M— k回行って第 2の生成情報 Y(M— k
, B)を生成し、
前記暗号鍵生成手段が
前記第 1の秘密情報 Aに不可逆演算 Xを n+j回行って X(n+j, A)を生成し、 前記第 2の秘密情報 Bに不可逆演算 Yを M— n+i回行って Y(M— n+i, B)を生 成し、
更に、前記生成した X(n+k, A)と Y(M— n+i, B)と力も鍵情報 G (X(n+j, A) , Y(M— n+i, Β) ) (Gは任意の関数)を生成し、
前記更新情報生成手段が
前記データ Pkと第 1の生成情報 X(k, A)と第 2の生成情報 Y(M— k, B)とを連結 して、さらに前記鍵情報 G (X (n+j, A) , Y(M— n+i, B) )を用いて暗号ィ匕し、 さらに更新情報を受信したデータ格納装置における更新情報の処理を制御する 制御情報を連結して更新情報を生成する
管理サーバ。
[6] 前記暗号鍵生成手段が
前記生成した X(n+j, A)と Y(M—n+i, B)と前記 kから鍵情報 F (X(n+j, A) , Y(M-n+i, B) , k) (Fは任意の関数)を生成し、
前記更新情報生成手段が
前記データ Pkと第 1の生成情報 X(k, A)と第 2の生成情報 Y(M— k, B)とを連結 したデータを前記鍵情報 F (X(n+j, A) , Y(M— n+i, B) , k)を用いて暗号化する 請求項 5記載の管理サーバ。
[7] n番目(n≥ 1)にリリースされたデータ Pnを格納するデータ格納装置に搭載される 集積回路であって、
鍵情報を生成するための第 1の生成情報と第 2の生成情報とを格納する鍵生成情 報記憶手段と、
前記第 1の生成情報と第 2の生成情報とから鍵情報を生成する鍵生成手段と、 前記データ格納装置に格納されたデータと前記第 1の生成情報と第 2の生成情報 とを更新する更新手段と、
を備え、
前記鍵生成情報記憶手段に格納されて 、る
第 1の生成情報は、第 1の秘密情報 Aに不可逆演算 Xを n回行った X(n, A)、 第 2の生成情報は、第 2の秘密情報 Bに不可逆演算 Yを M— n回 (M— n≥ 1)行 つた Y(M— n, B)であり、
n—i番目〜n+j番目(M≥n+j≥n≥n—i≥ 1)にリリースされたデータが格納され ているデータ格納装置を更新対象とするデータ Pnをデータ Pk(M≥k≥ 1)に更新す る更新情報を受信した場合に、
前記鍵生成手段が、
第 1の生成情報に不可逆演算 Xを j回行って X(n+j, A)を生成し、 第 2の生成情報に不可逆演算 Yを i回行つて Y (M— n + i, B)を生成し、 更に、前記 X(n+j, A)と Y(M— n+i, B)とから鍵情報 G (X(n+j, A) , Y(M -n+i, B) ) (Gは任意の関数)を生成し、
前記更新手段が、 前記生成した鍵情報 G (X(n+j, A) , Y(M— n+i, B) )を用いて前記更新情 報の暗号を復号化して、データ Pk及び第 1の生成情報 X(k, A)と第 2の生成情報 Y (M-k, B)とを取得し、
前記データ格納装置に格納されているデータ Pnをデータ Pkに更新し、 前記鍵生成情報記憶手段に格納されている第 1の生成情報 X(n, A)と第 2の 生成情報 Y(M— n, B)とを、それぞれ、第 1の生成情報 X(k, A)と第 2の生成情報 Y (M-k, B)とに更新する
集積回路。
[8] 前記鍵生成手段が、
前記生成した X(n+j, A)及び Y(M— n+i, B)と前記 kとから鍵情報 F (X(n+j , A) , Y(M-n+i, B) , k) (Fは任意の関数)を生成し、
前記更新手段が、
前記生成した鍵情報 F (X(n+j, A) , Y(M— n+i, B) , k)を用いて前記更新 情報の暗号を復号化して、データ Pk及び第 1の生成情報 X(k, A)と第 2の生成情報 Y(M-k, B)とを取得する
請求項 7記載の集積回路。
[9] さらに、データ通信を行う通信手段と、
前記データ格納装置の識別情報を管理装置に登録する登録手段と、
を備え、
前記通信手段が通信可能になった際に、前記登録手段が前記通信手段を介して 前記データ格納装置の識別情報を前記管理装置に登録し、
前記通信手段を介して前記管理装置から前記更新情報を受信する
請求項 7記載の集積回路。
[10] n番目(n≥ 1)にリリースされたデータ Pnを格納するデータ格納装置と、
前記データ格納装置の機器情報を保持する管理装置と、
前記データ格納装置に搭載されているデータを更新する管理サーバと
力 構成されるデータ更新システムであって、
前記データ格納装置は、 データ Pnを格納するデータ格納手段と、
鍵情報を生成するための第 1の生成情報と第 2の生成情報とを格納する鍵生成 情報記憶手段と、
前記第 1の生成情報と第 2の生成情報とから鍵情報を生成する鍵生成手段と、 前記データ及び前記第 1の生成情報と第 2の生成情報とを更新する更新手段と、 を備え、
前記鍵生成情報記憶手段に格納されて 、る
第 1の生成情報は、第 1の秘密情報 Aに不可逆演算 Xを n回行った X(n, A)、 第 2の生成情報は、第 2の秘密情報 Bに不可逆演算 Yを M— n回 (M— n≥ 1)行 つた Y(M— n, B)であり、
前記管理装置は、
前記データ格納装置から登録された機器情報を保持する機器情報管理手段と、 前記データ格納装置が格納するデータを更新するデータ更新手段と
を備え、
前記管理サーバは、
第 1の秘密情報 Aと第 2の秘密情報 Bとをデータ格納装置の種類ごとに保持する 秘密情報保持手段と、
データ格納装置に格納する第 1の生成情報と第 2の生成情報を生成する生成情 報生成手段と、
前記第 1の生成情報と第 2の生成情報とから鍵情報を生成する暗号鍵生成手段と データ格納装置に送信する更新情報を生成する更新情報生成手段と を備え、
前記データ更新手段は、さらに、
更新情報に含まれる機器情報と前記機器情報管理手段が保持する機器情報とを 照合する照合手段と、
更新情報を保持する保持手段と、
前記データ格納装置との間で行う前記データ格納装置が格納するデータを更新 する処理を制御する更新処理制御手段と
を備え、
n— i番目〜n+j番目(M≥n+j≥n≥n— i≥ 1)にリリースされたデータを搭載する データ格納装置の前記データを、 k番目(M≥k≥l)のリリースとなるデータ Pkに更 新する場合に、
前記管理サーバは、
前記生成情報生成手段が
前記秘密情報保持手段から第 1の秘密情報 Aと第 2の秘密情報 Bを読み出し、 前記第 1の秘密情報 Aに不可逆演算 Xを k回行って第 1の生成情報 X(k, A)を生 成し、
前記第 2の秘密情報 Bに不可逆演算 Yを M— k回行って第 2の生成情報 Y(M— k
, B)を生成し、
前記暗号鍵生成手段が
前記第 1の秘密情報 Aに不可逆演算 Xを n+j回行って X(n+j, A)を生成し、 前記第 2の秘密情報 Bに不可逆演算 Yを M— n+i回行って Y(M— n+i, B)を生 成し、
更に、前記生成した X (n+j, A)と Y(M— n+i, B)と力も鍵情報 G (X(n+j, A) , Y(M— n+i, Β) ) (Gは任意の関数)を生成し、
前記更新情報生成手段が
前記データ Pkと第 1の生成情報 X(k, A)と第 2の生成情報 Y(M— k, B)とを連結 して、さらに前記鍵情報 G (X (n+j, A) , Y(M— n+i, B) )を用いて暗号ィ匕し、 さらに更新情報を受信したデータ格納装置における更新情報の処理を制御する 制御情報を連結して更新情報を生成し、
前記生成した更新情報を前記管理装置に配信し、
前記更新情報を受信した管理装置は、
前記照合手段が前記受信した更新情報の前記制御情報に含まれる機器情報と前 記機器情報管理手段が保持する機器情報とを照合して、機器情報が一致するデー タ格納装置の機器情報が登録されて 、た場合に、 前記更新処理制御手段が前記受信した更新情報を前記保持手段に格納し、さら に機器情報が一致したデータ格納装置に対して前記更新情報を送信し、 前記更新情報を受信したデータ格納装置は、
前記鍵生成手段が、
第 1の生成情報に不可逆演算 Xを j回行って X(n+j, A)を生成し、 第 2の生成情報に不可逆演算 Yを i回行って Y(M— n+i, B)を生成し、 更に、前記 X(n+j, A)と Y(M— n+i, B)と力ら鍵情報 G (X(n+j, A) , Y(M— n+i, B) )を生成し、
前記更新手段が、
前記生成した鍵情報 G (X(n+j, A) , Y(M— n+i, B) )を用いて前記更新情報 の暗号を復号化して、データ Pk及び第 1の生成情報 X(k, A)と第 2の生成情報 Y( M-k, B)とを取得し、
前記データ格納手段に格納されているデータ Pnをデータ Pkに更新し、 前記鍵生成情報記憶手段に格納されている第 1の生成情報 X(n, A)と第 2の生 成情報 Y(M— n, B)とを、それぞれ、第 1の生成情報 X(k, A)と第 2の生成情報 Y( M-k, B)とに更新する
データ更新システム。
[11] 現用データを新規データに更新する家電機器において、
暗号化された前記新規データと、更新対象データのシリアル番号と、を受信する受 信部と、
前記更新対象データのシリアル番号に応じた回数だけ、所定の不可逆演算を、前 記現用データに関連付けられた固有情報に施して鍵を生成する生成部と、
前記新規データを前記鍵で復号化する復号化部と、
を有する家電機器。
[12] 前記受信部は、
前記更新対象データのシリアル番号の最大値および最小値を受信し、 前記生成部は、
第 1および第 2の不可逆演算の実行により、第 1の秘密情報に前記第 1の不可逆演 算を前記最大値と同じ回数だけ繰り返し施してなる第 1の鍵成分と、第 2の秘密情報 に前記第 2の不可逆演算を所定値から前記最小値を減算して得られる値と同じ回数 だけ繰り返し施してなる第 2の鍵成分と、を取得する演算部と、
前記第 1および第 2の鍵成分を合成して前記鍵を得る合成部と、
を有する請求項 11記載の家電機器。
[13] 前記第 1の秘密情報に前記第 1の不可逆演算を、前記現用データのシリアル番号 と同じ回数だけ繰り返し施してなる第 1の固有情報と、前記第 2の秘密情報に前記第 2の不可逆演算を、前記所定値から前記現用データのシリアル番号を減算して得ら れる値と同じ回数だけ繰り返し施してなる第 2の固有情報と、を記憶する記憶部をさら に有し、
前記演算部は、
前記最大値および最小値が受信されると、前記第 1の固有情報に前記第 1の不可 逆演算を、前記最大値から前記現用データのシリアル番号を減算して得られる値と 同じ回数だけ繰り返し施すことにより前記第 1の鍵成分を取得し、前記第 2の固有情 報に前記第 2の不可逆演算を、前記現用データのシリアル番号から前記最小値を減 算して得られる値と同じ回数だけ繰り返し施すことにより前記第 2の鍵成分を取得す る、
請求項 12記載の家電機器。
[14] 現用データ力 新規データへの更新に用いるデータ更新方法において、
暗号化された前記新規データと、更新対象データのシリアル番号と、を取得する取 得ステップと、
前記更新対象データのシリアル番号に応じた回数だけ、所定の不可逆演算を、前 記現用データに関連付けられた固有情報に施して鍵を生成する生成ステップと、 前記新規データを前記鍵で復号ィヒする復号化ステップと、
を有するデータ更新方法。
[15] データの暗号ィ匕または復号ィ匕に用いる鍵を生成する喑復号鍵生成方法であって、 前記データに関連付けられた固有情報と前記データのシリアル番号と、を取得する 取得ステップと、 前記データのシリアル番号に応じた回数だけ、所定の不可逆演算を前記固有情報 に施して鍵を生成する生成ステップと、
を有する喑復号鍵生成方法。
[16] データの暗号ィ匕に用いる鍵を生成する暗号鍵生成方法であって、
前記データに関連付けられた第 1の秘密情報 Aと第 2の秘密情報 Bとを取得する取 得ステップと、
前記第 1の秘密情報 Aに不可逆演算 Xを n+j回 (n≥0、 j≥0)行って X(n+j, A) を生成するステップと、
前記第 2の秘密情報 Bに不可逆演算 Yを M— n+i回(M≥0、i≥0)行って Y(M -n+i, B)を生成するステップと、
前記 X(n+j, A)と Y(M— n+i, B)とを含む情報力も鍵を合成するステップと、 を有する暗号鍵生成方法。
[17] データの復号ィ匕に用いる鍵を生成する復号鍵生成方法であって、
前記データに関連付けられた第 1の生成情報 Caと第 2の生成情報 Cbとを取得する 取得ステップと、
前記第 1の生成情報 Caに不可逆演算 Xを j回 (j≥0)行って X(j, Ca)を生成する ステップと、
前記第 2の生成情報 Cbに不可逆演算 Yを i回 (i≥0)行って Y(i, Cb)を生成する ステップと、
前記 X(j, Ca)と Y(i, Cb)とを含む情報力 鍵を合成するステップと、 を有する復号鍵生成方法。
[18] データを暗号化する暗号化方法であって、
前記データに関連付けられた第 1の秘密情報 Aと第 2の秘密情報 Bと第 3の秘密情 報 Cと第 4の秘密情報 Dとを取得する取得ステップと、
前記第 1の秘密情報 Aに不可逆演算 Xを n+j回 (n≥0、 j≥0)行って X(n+j, A) を生成するステップと、
前記第 2の秘密情報 Bに不可逆演算 Yを M— n+i回(M≥0、i≥0)行って Y(M -n+i, B)を生成するステップと、 前記第 3の秘密情報 Cに不可逆演算 Uを N + q回 (N≥ 0、 q≥ 0)行って U (N + q , C)を生成するステップと、
前記第 4の秘密情報 Dに不可逆演算 Vを M— N + p回(p≥ 0)行って V (M— N + p, D)を生成するステップと、
前記 X(n+j, A)と Y(M— n+i, B)とを含む情報力も鍵を合成するステップと、 前記 U (N + q, C)と V(M— N + p, D)とを含む情報力も鍵を合成するステップと 暗号鍵 Kを生成するステップと、
前記暗号鍵 Kを用いてデータを暗号ィ匕するステップと、
前記 X(n+j, A)と Y(M— n+i, B)とを含む情報力も合成された鍵を用いて前記 暗号鍵 Kを暗号ィ匕するステップと、
前記 U (N + q, C)と V(M— N + p, D)とを含む情報力も合成された鍵を用いて 前記暗号鍵 Kを暗号化するステップと、
を有する暗号化方法。
データの暗号化に用 、る鍵を生成する暗号鍵生成方法であって、
前記データに関連付けられた第 1の秘密情報 Aと第 2の秘密情報 Bと第 3の秘密情 報 Cと第 4の秘密情報 Dとを取得する取得ステップと、
前記第 1の秘密情報 Aに不可逆演算 Xを n+j回 (n≥0、 j≥0)行って X(n+j, A) を生成するステップと、
前記第 2の秘密情報 Bに不可逆演算 Yを M— n+i回(M≥0、i≥0)行って Y(M -n+i, B)を生成するステップと、
前記第 3の秘密情報 Cに不可逆演算 Uを s + q回(s≥0、 q≥0)行って U (s + q, C )を生成するステップと、
前記第 4の秘密情報 Dに不可逆演算 Vを M— s + p回(p≥ 0)行って V (M— s + p , D)を生成するステップと、
前記 X(n+j, A)と Y(M— n+i, B)と U (s + q, C)と V(M— s+p, D)とを含む情 報力 鍵を合成するステップと、
を有する暗号鍵生成方法。 データの復号化に用!、る鍵を生成する復号鍵生成方法であって、
前記データに関連付けられた第 1の生成情報 Caと第 2の生成情報 Cbと第 3の生成 情報 Ccと第 4の生成情報 Cdとを取得する取得ステップと、
前記第 1の生成情報 Caに不可逆演算 Xを j回 (j≥0)行って X(j, Ca)を生成する ステップと、
前記第 2の生成情報 Cbに不可逆演算 Yを i回 (i≥0)行って Y(i, Cb)を生成する ステップと、
前記第 3の生成情報 Ccに不可逆演算 Uを q回 (q≥0)行って U (q, Cc)を生成す るステップと、
前記第 4の生成情報 Cdに不可逆演算 Vを p回 (p≥0)行って V (p, Cd)を生成す るステップと、
前記 X(j, Ca)と Y(i, Cb)と U (q, Cc)と V (p, Cd)とを含む情報力も鍵を合成す るステップと、
を有する復号鍵生成方法。
PCT/JP2007/061383 2006-06-08 2007-06-05 データ格納装置、管理サーバ、集積回路、データ更新システム、家電機器、データ更新方法、暗号化方法、および、暗復号鍵生成方法 WO2007142240A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/303,420 US8155320B2 (en) 2006-06-08 2007-06-05 Data storage device, management server, integrated circuit, data update system, home electric apparatuses, data update method, encryption method, and encryption/decryption key generation method

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2006160284 2006-06-08
JP2006-160284 2006-06-08
JP2007-146869 2007-06-01
JP2007146869A JP5090066B2 (ja) 2006-06-08 2007-06-01 データ格納装置、管理サーバ、集積回路、データ更新システム、家電機器、データ更新方法、暗号化方法、および、暗復号鍵生成方法

Publications (1)

Publication Number Publication Date
WO2007142240A1 true WO2007142240A1 (ja) 2007-12-13

Family

ID=38801491

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2007/061383 WO2007142240A1 (ja) 2006-06-08 2007-06-05 データ格納装置、管理サーバ、集積回路、データ更新システム、家電機器、データ更新方法、暗号化方法、および、暗復号鍵生成方法

Country Status (3)

Country Link
US (1) US8155320B2 (ja)
JP (1) JP5090066B2 (ja)
WO (1) WO2007142240A1 (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101445394B1 (ko) * 2008-03-28 2014-09-26 삼성전자주식회사 휴대 방송 시스템에서 단말기의 소프트웨어 업데이트 방법 및 장치
US20090254482A1 (en) * 2008-04-07 2009-10-08 Microsoft Corporation Time-based licenses
KR20110010052A (ko) * 2009-07-14 2011-01-31 삼성전자주식회사 방송 네트워크 및 인터넷 네트워크에 접속 가능한 클라이언트의 어플리케이션을 수신하는 방법 및 장치
EP2312437A1 (en) * 2009-09-30 2011-04-20 Thomson Licensing Detecting client software versions
US8971209B2 (en) * 2009-12-04 2015-03-03 Cradlepoint, Inc. System to configure and manage routers through wireless communication
US8996002B2 (en) 2010-06-14 2015-03-31 Apple Inc. Apparatus and methods for provisioning subscriber identity data in a wireless network
US8666368B2 (en) * 2010-05-03 2014-03-04 Apple Inc. Wireless network authentication apparatus and methods
US8555067B2 (en) 2010-10-28 2013-10-08 Apple Inc. Methods and apparatus for delivering electronic identification components over a wireless network
US9450759B2 (en) 2011-04-05 2016-09-20 Apple Inc. Apparatus and methods for controlling distribution of electronic access clients
US9135020B2 (en) * 2011-09-30 2015-09-15 Ncr Corporation Correlation of resources
KR101917749B1 (ko) * 2011-12-09 2018-11-14 삼성전자주식회사 방송 수신 장치, 서버, 방송 수신 장치의 제어 방법, 및 서버의 제어 방법
CN103248399A (zh) * 2012-02-08 2013-08-14 台达电子工业股份有限公司 电力线通讯方法及电力线通讯系统
US9407434B2 (en) 2013-01-07 2016-08-02 Cisco Technology, Inc. Secrets renewability
EP4290892A3 (en) * 2014-04-09 2024-01-24 Shifman, Orit Methods, platforms and systems for paying persons for use of their personal intelligence profile data
JP2015215727A (ja) * 2014-05-09 2015-12-03 富士通株式会社 ストレージ制御装置およびプログラム
US10089101B2 (en) 2016-05-11 2018-10-02 Haier Us Appliance Solutions, Inc. Updating a software configuration of an appliance
JP2018170806A (ja) * 2018-08-09 2018-11-01 Kddi株式会社 通信システム、通信方法、及びプログラム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001320357A (ja) * 2000-05-10 2001-11-16 Nippon Telegr & Teleph Corp <Ntt> データ管理方法および装置とデータ管理プログラムを記録した記録媒体

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3394569B2 (ja) * 1993-09-07 2003-04-07 松下電器産業株式会社 秘密データ配送装置
WO2002057904A1 (fr) 2001-01-19 2002-07-25 Fujitsu Limited Controleur dote d'un fonction de telechargement
JP2002290396A (ja) 2001-03-23 2002-10-04 Toshiba Corp 暗号鍵更新システムおよび暗号鍵更新方法
US20060005046A1 (en) * 2004-06-30 2006-01-05 Seagate Technology Llc Secure firmware update procedure for programmable security devices
EP1679573B1 (en) * 2005-01-07 2007-06-27 Telefonaktiebolaget LM Ericsson (publ) Updating memory contents of a processing device

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001320357A (ja) * 2000-05-10 2001-11-16 Nippon Telegr & Teleph Corp <Ntt> データ管理方法および装置とデータ管理プログラムを記録した記録媒体

Also Published As

Publication number Publication date
US20090172419A1 (en) 2009-07-02
JP5090066B2 (ja) 2012-12-05
US8155320B2 (en) 2012-04-10
JP2008017462A (ja) 2008-01-24

Similar Documents

Publication Publication Date Title
WO2007142240A1 (ja) データ格納装置、管理サーバ、集積回路、データ更新システム、家電機器、データ更新方法、暗号化方法、および、暗復号鍵生成方法
US8955158B2 (en) Method and apparatus for transmitting rights object information between device and portable storage
US9853973B2 (en) Information distribution system, and server, on-board terminal and communication terminal used therefor
US8752165B2 (en) Provisioning secrets in an unsecured environment
US9021568B2 (en) Verification method for verifying validity of program, and verification system
US20100217972A1 (en) Lock administration system
WO2013002833A2 (en) Binding of cryptographic content using unique device characteristics with server heuristics
JP2004021755A (ja) 記憶装置
CN102138300A (zh) 消息认证码预计算在安全存储器中的应用
CN102027707A (zh) 具有保密软件映像的集成电路及其方法
CN101305542B (zh) 一种数字证书与密钥下载方法
US20120036349A1 (en) Datebase server, customer terminal and protection method for digital contents
US8015369B2 (en) Updating data entries stored on a data storage unit from an authority
JP2009033721A (ja) グループ従属端末、グループ管理端末、サーバ、鍵更新システム及びその鍵更新方法
JP2007293788A (ja) 情報処理システム、情報処理装置、および集積回路チップ
JP6017392B2 (ja) 情報処理装置、ホストデバイス、及びシステム
JP7143744B2 (ja) 機器統合システム及び更新管理システム
CN103403729A (zh) 唯一代码签名密钥的安全管理和个性化
JP5391743B2 (ja) 決済処理セキュリティ情報配信方法、決済処理セキュリティ情報配信システム、そのセンタ装置、サーバ装置、決済端末、及びプログラム
CN107968764B (zh) 一种认证方法及装置
JP2008287488A (ja) データ分散保存装置
CN101174287B (zh) 数字权限管理的方法和设备
JP2003158513A (ja) Icカード、その書き込み方法及び書き込み装置並びにicカードシステム
JP2007074103A (ja) プログラム提供システム、携帯端末、サーバ、電子機器及びプログラム提供プログラム
CN101467385A (zh) 数据存储装置、管理服务器、集成电路、数据更新系统、家电设备、数据更新方法、解密方法、以及加密/解密密钥生成方法

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200780021168.9

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 07744735

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 12303420

Country of ref document: US

122 Ep: pct application non-entry in european phase

Ref document number: 07744735

Country of ref document: EP

Kind code of ref document: A1