US 7,577,851 B2
Multitask execution apparatus and multitask execution method
Yu Inamura, Kawasaki (Japan); Toru Egashira, Yokohama (Japan); and Atsushi Takeshita, Yokohama (Japan)
Assigned to NTT DoCoMo, Inc., Tokyo (Japan)
Filed on Jul. 01, 2005, as Appl. No. 11/171,290.
Claims priority of application No. 2004-197157 (JP), filed on Jul. 02, 2004.
Prior Publication US 2006/0020941 A1, Jan. 26, 2006
Int. Cl. G06F 11/30 (2006.01)
U.S. Cl. 713—189  [713/190; 713/193; 380/44; 380/264; 711/102; 718/100; 718/107] 10 Claims
OG exemplary drawing
 
1. A multitask execution apparatus for executing a plurality of tasks in parallel, comprising:
an encryption processor configured to generate a key stream unique to each task, by using key data, a task ID for identifying each task, and an output value, the number of the key data being smaller than the number of the plurality of tasks, the output value being output from a monotonic incremental counter when each task is generated, a value of the monotonic incremental counter configured to continue to be increased without being decreased, and to encrypt data stored in a protected area in a memory space for each task by using the generated key stream, the encryption processor comprising:
a key stream generating function configured to generate the key stream by encrypting a counter value including the task ID and the output value by means of a predetermined encryption mode using the key data;
a blocking function configured to divide the data stored in the protected area into predetermined blocks; and
an exclusive-OR calculation function configured to calculate an exclusive-OR between a bit string of the generated key stream and a bit string of a predetermined divided block, and to store the calculated exclusive-OR in the protected area.