Patent ID: 9501646
Filing Date: 2016-11-22
CPC Classification: G06F

Claim Text:
1. A program verification apparatus comprising: a program input circuit that inputs a program using variables, an output function, and an encrypting function and including an assignment statement; an output variable extraction circuit that extracts from the program an output variable to which output information to be output to an outside from the program by the output function is set; an encryption variable extraction circuit that extracts from the program an encryption variable to which encrypted information encrypted by the encrypting function is set; an encrypted state variable extraction circuit that refers to the assignment statement included in the program and extracts from the program an encrypted state variable to which the encrypted information is assigned, the encrypted information being set to the encryption variable extracted by the encryption variable extraction circuit; an encrypted state determination circuit that determines whether or not the encrypted state variable extracted by the encrypted state variable extraction circuit and the output variable extracted by the output variable extraction circuit are the same variable; and a verification result output circuit that outputs a verification result of the program, based on a result of determination by the encrypted state determination circuit, wherein when the encrypted state variable and the output variable are not the same variable, the verification result output circuit adds, to the verification result, information indicating that the output information is output to the outside from the program without being encrypted.