Patent ID: 8413230

Claim:
An API checking device disposed in a closed execution environment in a device including: an open execution environment in which a program other than a trusted program can also be executed freely or under a given restriction; and the closed execution environment in which predetermined processing is executed on the basis of an API call that calls an application program interface from the open execution environment and only the trusted program is executed, the API checking device comprising: a processor; an API check request receiver, provided by the processor, that receives a determination request to request determination of whether to permit the API call within the closed execution environment from the open execution environment; a state information acquirer, implemented by the processor, that acquires state information showing a state of the device; a check mode setter, implemented by the processor, that sets a check mode for the API call on the basis of the state information acquired by the state information acquirer; a determiner, implemented by the processor, that determines whether to permit the API call on the basis of the check mode set by the check mode setter, and generates a check result of the API call; and a check result outputter, implemented by the processor, that outputs the check result generated by the determiner, wherein the state information acquirer acquires, as the state information on the device, at least any one of a local lock state, a remote lock state, and a no-input operation state being a state in which the device receives no user key input operation thereto for a predetermined period, the check mode setter sets the check mode to a user operation inhibit mode when the state information is the local lock state, the remote lock state, or the no-input operation state, and when the check mode has been set to the user operation inhibit mode and a type of the API call is permitted only when requested by operation of a user of the device, the determiner prohibits the API call.