The object of the present invention is to provide a semiconductor memory
which executes executing multiple application programs and duplicating
important data from one application program into another application
program in security. An IC card (200) is one example of the semiconductor
memory of the present invention, and executes executing multiple
application programs. The IC card (200) includes: a memory area (331) for
storing data relating to a library APL (301); a memory area (332) for
storing data relating to a public pool APL (302); a security level
setting unit (603) which identifies respective security levels of the
library APL (301) and the public pool APL (302) for the data relating to
these application programs, based on a criterion for identifying the
security level of an application program for the data relating to it; and
a data operation unit (608) which duplicates data A stored in the memory
area (331) and stores the duplicated data A into the memory area (332),
without taking the data A outside of the IC card (200), in the case where
the relationship between the two security levels identified by the
security level setting unit (603) meets a predetermined condition.