Patent ID: 8683208

Claim:
An information processing device comprising a memory and a processor, wherein, the memory includes: a first storage area that stores a plurality of types of security functions each defining therein a protection attribute requiring that, for each argument related to an input and each argument related to an output of data that should be protected, the value of the argument is stored in a protected memory area or a non-protected memory area; a second storage area that stores therein a program list, in which the protection attribute added to a variable indicating the memory area to store the data and an execution procedure of a processing using any one or all of the security functions stored in the first storage area, are described; and a third storage area that stores function argument protection attributes, which are determined based on the presence or absence of a computational one-wayness property and based on the presence or absence of guarantee of integrity between arguments related to inputs and arguments related to outputs in a computation performed by the security function used in the processing, and dependency relations each of which is defined by a determinant set and a dependent attribute that satisfies a condition that, when, among the arguments used in the security function, values of arguments included in the determinant set are fixed, it is difficult to find two or more kinds of values that can be taken by arguments included in the dependent attribute; and wherein, the processor detects a combination of a first security function and a second security function where, among the security functions used in the processing, integrity of variables included in a determinant set of one dependency relation in the first security function are verified by the second security function, generates a third security function that adds protection attributes guaranteeing integrity, to variables included in a dependent attribute of the dependency relation in the first security function when verification of the second security function is successful and outputs the variables, without changing an action of the processing, and updates the function argument protection attribute and the dependency relation concomitantly with an addition of the third security function.