WO2010116666A1 - メモリ装置、メモリ認証システム、及びメモリ認証プログラム - Google Patents

メモリ装置、メモリ認証システム、及びメモリ認証プログラム Download PDF

Info

Publication number
WO2010116666A1
WO2010116666A1 PCT/JP2010/002256 JP2010002256W WO2010116666A1 WO 2010116666 A1 WO2010116666 A1 WO 2010116666A1 JP 2010002256 W JP2010002256 W JP 2010002256W WO 2010116666 A1 WO2010116666 A1 WO 2010116666A1
Authority
WO
WIPO (PCT)
Prior art keywords
authentication
authentication information
memory
writing
storage means
Prior art date
Application number
PCT/JP2010/002256
Other languages
English (en)
French (fr)
Inventor
熊本乃親
杉本隆利
高橋正志
Original Assignee
株式会社クオカード
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社クオカード filed Critical 株式会社クオカード
Publication of WO2010116666A1 publication Critical patent/WO2010116666A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/79Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/34User authentication involving the use of external additional devices, e.g. dongles or smart cards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/069Authentication using certificates or pre-shared keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless

Definitions

  • the present invention relates to a memory device, a memory authentication system, and a memory authentication program.
  • This application is based on Japanese Patent Application No. 2009-082363 filed in Japan on March 30, 2009 and incorporates the contents thereof.
  • semiconductor memories are widely used in non-contact IC cards, mobile phones, portable game machine media, and the like.
  • This semiconductor memory stores data that should be protected from unauthorized access by third parties, such as IC card and mobile phone ID numbers, user personal information, and data that should be protected from unauthorized copying, such as game content. Is done. Therefore, in order to protect these data stored in the semiconductor memory from unauthorized access and unauthorized copying, the following protection methods are conventionally used.
  • the semiconductor memory transmits challenge data such as a random number to the external device. Based on the challenge data, the external device generates response data using a specific function, and transmits the generated response data to the semiconductor memory.
  • the semiconductor memory compares the response data separately generated from the challenge data transmitted to the external device and the response data received from the external device, and authenticates the external device based on whether or not they match. As a result, only an external device having a specific function can access the semiconductor memory (see, for example, Patent Document 1).
  • the present invention has been made in view of the above, and a memory device and a memory that can perform authentication of writing and reading with respect to a semiconductor memory by using an access unit that is mounted on an external device as a standard
  • An object is to provide an authentication system and a memory authentication program.
  • the memory device includes a first storage unit capable of reading and writing information, first authentication information related to authentication, and And a second storage means capable of reading and writing the second authentication information, and the external device writes the second authentication written in the second storage means by the memory device that has read the first authentication information from the second storage means Authenticate based on information. Therefore, it is possible to authenticate the memory device via the second storage means using the access means that is standardly mounted on the external device.
  • the first storage means is a nonvolatile memory
  • the second storage means is a register to which a memory address outside the memory space of the nonvolatile memory is assigned.
  • the non-volatile memory includes a dummy memory to which the same memory address as that of the register is allocated, and the authentication information generation unit and the authentication request unit write the authentication information in the register.
  • the dummy memory is also written.
  • FIG. 9 is a block diagram functionally conceptually showing an electrical configuration of a memory authentication system according to a third embodiment. It is a flowchart of an authentication process.
  • the present invention is not limited to each embodiment.
  • the application target of the memory device, the memory authentication system, and the memory authentication program is arbitrary.
  • the memory device according to the present invention is applied to a memory device such as a contactless IC card, a portable information terminal, and a medium for a portable game machine. can do.
  • the memory authentication system according to the present invention includes a non-contact IC card, a portable information terminal, a portable game machine medium, or the like as a memory device, and a card processing device, a terminal information processing device as an external device corresponding to the memory device. Or a memory authentication system including a portable game machine or the like.
  • a non-contact IC card is used as a memory device and a card processing device and a card processing system are used as external devices.
  • FIG. 1 is a functional block diagram showing the electrical configuration of the memory authentication system.
  • the memory authentication system 1 includes a non-contact IC card 10, a card processing device 20, and a card processing system 30.
  • the non-contact IC card 10 is a memory device that receives and reads data from the card processing device 20, and includes a communication unit 11, a nonvolatile memory 12, a data exchange register 13, and a control unit 14 via a system bus 15. It is configured to be communicable.
  • the communication unit 11 is a communication unit that performs non-contact communication of information with the card processing device 20.
  • the communication unit 11 is configured as a known RF front end, for example.
  • the non-volatile memory 12 is a memory that can read information by a read command and write information by a write command to the card processing device 20 only when authentication with the card processing device 20 is performed. This corresponds to the first storage means in the claims.
  • the nonvolatile memory 12 for example, an EEPROM (Electrically Erasable and Programmable Read Only Memory) is used. In the first embodiment, it is assumed that the nonvolatile memory 12 is mapped from addresses 0x00 to 0xEF.
  • the data exchange register 13 is a register that can read and write information related to authentication by a read and write command similar to the command for the non-volatile memory 12, and corresponds to the second storage means in the claims.
  • the control unit 14 is a control unit that performs control related to authentication between the contactless card and the card processing device 20, and includes, for example, an analog circuit, a digital circuit, and various programs that operate on the circuit.
  • it includes an authentication information generation unit 14a, an authentication control unit 14b, and an access management unit 14c.
  • the authentication information generation unit 14 a is authentication information generation means for generating first authentication information related to authentication and writing the generated first authentication information into the data exchange register 13. This “first authentication information” corresponds to challenge data in the conventional challenge / response method.
  • the authentication control unit 14b reads the second authentication information related to authentication written from the card processing device 20 to the data exchange register 13 from the data exchange register 13, and performs authentication based on the read second authentication information.
  • the access management unit 14 c is an access management unit that manages access from the card processing device 20 to the nonvolatile memory 12 and the data exchange register 13 based on the authentication result.
  • FIG. 2 is a diagram conceptually illustrating the circuit configuration of the access management unit 14c. As shown in FIG. 2, the access management unit 14c includes a comparator 14d, a first AND gate 14e, and a second AND gate 14f.
  • the comparator 14d receives the input of the address of the nonvolatile memory 12 and the address to be written from the card processing device 20, and the comparison result (For example, “1” when both match, “0” when they do not match) is output.
  • the first AND gate 14e has an output flag from the comparator 14d and an authenticated flag corresponding to the authentication result by the authentication control unit 14b (for example, “1” when authenticated, “0” when authentication is denied). ) And.
  • the output value from the first AND gate 14e and the write control signal (for example, “1” when there is a write request) are input to the second AND gate 14f.
  • the comparator 14 d receives an input of the address of the nonvolatile memory 12 and the address to be read from the card processing device 20. .
  • the output value from the first AND gate 14e and the read control signal are input to the second AND gate 14f.
  • the card processing device 20 is an external device that reads and writes information from and to the contactless IC card 10, and includes a communication power supply unit 21, a network interface (hereinafter “network IF”) 22, and a control unit 23. Are communicably connected via a system bus 24.
  • network IF network interface
  • the communication power supply unit 21 is a communication power supply unit that performs information communication with the non-contact IC card 10 and supplies power to the non-contact IC card 10 by a known method such as electromagnetic induction.
  • the network IF 22 is a communication control interface for the card processing device 20 to communicate with the card processing system 30 via the network 2.
  • the network IF 22 is configured as a network board, for example (the same applies to a network IF 31 described later).
  • the control unit 23 is a control unit that controls each unit of the card processing device 20, and includes a CPU and various programs that are interpreted and executed on the CPU (control programs such as an OS, programs that define various processing procedures, and the like. ), And an internal memory for storing required programs and required data (the same applies to the control unit 32 described later).
  • the card processing system 30 is configured such that a network IF 31 and a control unit 32 are communicably connected via a system bus 33.
  • the network IF 31 is a communication control interface for the card processing system 30 to communicate with the card processing apparatus 20 via the network 2.
  • the control unit 32 is a control unit that controls each unit of the card processing system 30, and includes an authentication request unit 32a in terms of functional concept.
  • the authentication request unit 32a reads the first authentication information from the data exchange register 13 via the communication power supply unit 21 of the card processing device 20, generates second authentication information based on the read first authentication information, Authentication request means for writing the generated second authentication information into the data exchange register 13 via the communication power supply unit 21 of the card processing device 20.
  • FIG. 3 is a flowchart of the authentication process. This authentication process is started, for example, when an access request is made from the card processing device 20 to the control unit 14 of the non-contact IC card 10 via the communication unit 11.
  • the authentication information generation unit 14a of the contactless IC card 10 When the authentication process is activated, the authentication information generation unit 14a of the contactless IC card 10 generates first authentication information (SA1). For example, the authentication information generation unit 14a generates a pseudo random number as the first authentication information. This pseudo-random number is obtained, for example, by encrypting variable information stored in the non-volatile memory 12 (for example, deposit balance information stored in a cash card) using a fixed random number generation key. It is done.
  • the authentication information generation unit 14a writes the first authentication information generated in SA1 to the data exchange register 13 and transfers it to the authentication control unit 14b (SA2).
  • the control unit 23 of the card processing device 20 reads the first authentication information stored in the addresses 0xF0 to 0xFF corresponding to the data exchange register 13 through the communication power supply unit 21 using a read command,
  • the read first authentication information is transferred to the card processing system 30 via the network IF 22 (SA3).
  • the authentication request unit 32a of the card processing system 30 converts the first authentication information transferred from the card processing device 20 into second authentication information, and transfers the second authentication information to the card processing device 20 via the network IF 31. (SA4).
  • the authentication request unit 32a encrypts the first authentication information into the second authentication information using the authentication key stored in the card processing system 30 as an encryption key.
  • it is possible to perform encryption using the function F that performs encryption using an AES (Advanced Encryption Standard) encryption algorithm as second authentication information F (first authentication information, encryption key).
  • the control unit 23 of the card processing device 20 corresponds to the data exchange register 13 by using the write-only command for the second authentication information transferred from the card processing system 30 via the network IF 31 using the communication power supply unit 21. Write from address 0xF0 to 0xFF (SA5).
  • the authentication control unit 14b of the non-contact IC card 10 reads the second authentication information written in the data exchange register 13 (SA6). Then, using the authentication key stored in the contactless IC card 10 as an encryption key, the read second authentication information is decrypted into the first authentication information (SA7).
  • the authentication control unit 14b compares the first authentication information decrypted in SA7 with the first authentication information transferred from the authentication information generation unit 14a in SA2, and determines whether or not they match. (SA8). As a result, when it is determined that the two match (SA8, Yes), the authentication control unit 14b determines that the access by the card processing device 20 is valid, and authenticates the reading and writing by the card processing device 20 to the nonvolatile memory 12. Perform (SA9). In this case, the access management unit 14c enables reading and writing of information from the card processing device 20 to the nonvolatile memory 12.
  • the authentication control unit 14b authenticates reading and writing in SA9
  • “1” is input to the first AND gate 14e as the authenticated flag shown in FIG. If the address to be written input from the card processing device 20 matches the address of the nonvolatile memory 12, “1” is input from the comparator 14d to the first AND gate 14e. In this case, “1” is input from the first AND gate 14e to the second AND gate 14f. Accordingly, when “1” is input as the write control signal to the second AND gate 14f, the write control signal “1” is output from the second AND gate 14f, and information is written to the address to be written.
  • the authentication control unit 14b performs card processing.
  • the access by the device 20 is illegal, and the read / write authentication by the card processing device 20 with respect to the nonvolatile memory 12 is rejected (SA10).
  • the access management unit 14 c disables reading and writing of information from the card processing device 20 to the nonvolatile memory 12.
  • the authentication control unit 14b rejects the read / write authentication in SA10, “0” is input to the first AND gate 14e as the authenticated flag shown in FIG. If the address to be written input from the card processing device 20 matches the address of the nonvolatile memory 12, “1” is input from the comparator 14d to the first AND gate 14e. In this case, “0” is input from the first AND gate 14e to the second AND gate 14f. Therefore, even if “1” is input as the write control signal to the second AND gate 14f, the write control signal “0” is output from the second AND gate 14f, so that information is written to the address to be written. It will never be.
  • the non-contact IC card 10 After the process of SA9 or SA10, the non-contact IC card 10, the card processing device 20, and the card processing system 30 end the authentication process.
  • FIG. 4 is a block diagram conceptually showing the electrical configuration of the non-contact IC card 10.
  • the communication unit 11 includes a clock generation unit 11a.
  • the clock generation unit 11a outputs a clock signal having a constant period.
  • the non-volatile memory 12 includes a memory cell 12a and a charge pump 12b.
  • the memory cell 12a is a storage element that stores information.
  • the charge pump 12b is a booster circuit for generating a write voltage necessary for writing information to the memory cell 12a.
  • the charge pump 12b is configured by combining a capacitor and a switch, for example.
  • nonvolatile memory 12 includes a dummy memory 12c to which the same address as the data exchange register 13 is assigned.
  • the control unit 14 includes a counter 14g in addition to the authentication information generation unit 14a, the authentication control unit 14b, and the access management unit 14c in the first embodiment.
  • the counter 14g counts the clock signal output from the clock generation unit 11a, and outputs a latch signal when the counter overflows beyond a preset maximum value.
  • a programmable counter using a shift register or the like can be used as the counter 14g.
  • the system bus 15 includes a bus A15a and a bus B15b.
  • FIG. 5 is a diagram conceptually showing the bus configuration of the bus A15a.
  • the bus configuration of the bus B15b is the same as that of the bus A15a.
  • the bus A 15a includes a data bus 15c, an address bus 15d, and a control bus 15e.
  • the data bus 15c is a bus for transferring data, and has an 8-bit bus width from D0 to D7, for example, as shown in FIG.
  • the address bus 15d is a bus for transferring addresses, and has an 8-bit bus width from A0 to A7, for example, as shown in FIG.
  • the control bus 15e is a bus for transferring control information of peripheral devices such as the nonvolatile memory 12 and the data exchange register 13.
  • a chip enable signal (CE) that is an activation signal of the peripheral device
  • an output enable signal (OE) that is a read instruction signal to the peripheral device
  • a write that is a write instruction signal to the peripheral device
  • An enable signal (WE) is included.
  • these signals are output in negative logic (TRUE when the signal is at a low level, FALSE when the signal is at a high level).
  • FIG. 6 is a timing chart of the system bus 15 in reading from the nonvolatile memory 12
  • FIG. 7 is a timing chart of the system bus 15 in writing to the nonvolatile memory 12.
  • the non-volatile memory 12 acquires the address to be read from the address bus 15d at the fall of the next clock (t4), Information stored corresponding to the address is output to the data bus 15c at the fall of the next clock (t5). The information output to the data bus 15c is acquired by the control unit 14.
  • the nonvolatile memory 12 acquires the address to be written from the address bus 15d at the falling edge of the next clock and the write target signal at the falling edge of the next clock. Information is acquired from the data bus 15c (t9). Then, a write voltage is generated by operating the charge pump 12b at the fall of the next clock, and the acquired information is written into the memory cell 12a (t10).
  • a time on the order of 1 millisecond is generally required.
  • the charge accumulation time is measured using, for example, a counter 14g.
  • Reading information from the data exchange register 13 is the same as reading information from the nonvolatile memory 12. That is, after the chip enable signal for the data exchange register 13 is set to a low level, the address to be read is output to the address bus 15d, and the output enable signal for the data exchange register 13 is set to a low level. The information is read from the data exchange register 13.
  • control unit 14 sets the chip enable signal for the data exchange register 13 to a low level, then outputs the address to be written to the address bus 15d and writes the address to be written. Is output to the data bus 15c, and the write enable signal for the data exchange register 13 is set to a low level.
  • the data exchange register 13 acquires the address to be written from the address bus 15d at the falling edge of the next clock when the write enable signal is at a low level, and Is obtained from the data bus 15 c and written to the data exchange register 13.
  • the data exchange register 13 unlike the writing to the memory cell 12a, it is not necessary to generate a high voltage and the writing itself is high speed. Thus, writing is completed for a very short time.
  • the control unit 14 sets the chip enable signal to the nonvolatile memory 12 at a low level.
  • information is also written to the dummy memory 12c having the same address as the data exchange register 13 to be written.
  • the operation of the charge pump 12b for writing to the nonvolatile memory 12 occurs, and the same power consumption and writing time as the information writing to the nonvolatile memory 12 described above occur.
  • FIG. 8 is a flowchart of the authentication process. Note that the processing from SB3 to SB12 of the authentication processing in the second embodiment is the same as SA1 to SA10 of the authentication processing in the first embodiment, and thus the description thereof is omitted.
  • the authentication information generation unit 14a sets a maximum value for the counter 14g to output a latch signal (SB1). This maximum value is generated as a pseudo random number, for example.
  • the authentication information generation unit 14a determines whether or not a latch signal is input from the counter 14g (SB2), and when no latch signal is input (SB2, No), waits until the latch signal is input. To do. And when it determines with the latch signal having been input (SB2, Yes), the authentication information production
  • the time required for the first authentication information to be generated after the access request is made from the card processing device 20 to the control unit 14 of the non-contact IC card 10 via the communication unit 11 is the time required for the authentication process. Each time it is executed, it changes randomly according to the maximum value of the counter 14g.
  • Embodiment 3 Next, Embodiment 3 will be described.
  • the memory device is authenticated.
  • the configuration of the third embodiment is substantially the same as the configuration of the first embodiment unless otherwise specified.
  • the configuration substantially the same as the configuration of the first embodiment is the same as that used in the first embodiment.
  • the same reference numerals and / or names are attached as necessary, and the description thereof is omitted.
  • FIG. 9 is a block diagram functionally conceptually showing the electrical configuration of the memory authentication system 1 according to the third embodiment.
  • the control unit 14 of the non-contact IC card 10 includes an authentication request unit 14h instead of the authentication information generation unit 14a and the authentication control unit 14b in the control unit 14 of the first embodiment.
  • the authentication request unit 14h reads the first authentication information written from the card processing device 20 from the data exchange register 13, generates second authentication information based on the read first authentication information, and generates the generated first authentication information.
  • the control unit 32 of the card processing system 30 includes an authentication information generation unit 32b and an authentication control unit 32c instead of the authentication request unit 32a in the control unit 32 of the first embodiment.
  • the authentication information generation unit 32 b is authentication information generation means for generating first authentication information and writing the generated first authentication information to the data exchange register 13 via the card processing device 20.
  • the authentication control unit 32c reads the second authentication information written by the authentication request unit 14h from the data exchange register 13 via the card processing device 20, and performs authentication control based on the read second authentication information. Means.
  • FIG. 10 is a flowchart of the authentication process. This authentication process is activated, for example, when an access request is made from the non-contact IC card 10 to the control unit 23 of the card processing device 20 via the communication power supply unit 21.
  • the authentication information generation unit 32b of the card processing system 30 When the authentication process is activated, the authentication information generation unit 32b of the card processing system 30 generates the first authentication information, transfers it to the authentication control unit 32c, and transfers it to the card processing device 20 via the network IF 31 (SC1). For example, the authentication information generation unit 32b generates a pseudo random number as the first authentication information. This pseudo-random number is obtained, for example, by encrypting variable information such as date, using a fixed random number generation key.
  • control unit 23 of the card processing device 20 transfers the first authentication information transferred in SC1 from the address 0xF0 to 0xFF corresponding to the data exchange register 13 using a write-only command via the communication power supply unit 21.
  • Write (SC2) the control unit 23 of the card processing device 20 transfers the first authentication information transferred in SC1 from the address 0xF0 to 0xFF corresponding to the data exchange register 13 using a write-only command via the communication power supply unit 21.
  • the authentication request unit 14h of the contactless IC card 10 reads the first authentication information written in the data exchange register 13 (SC3), and encrypts the authentication key stored in the contactless IC card 10. The key is converted into second authentication information (SC4). Then, the authentication request unit 14h writes the converted second authentication information to the data exchange register 13 (SC5).
  • the control unit 23 of the card processing device 20 reads the second authentication information stored in the addresses 0xF0 to 0xFF corresponding to the data exchange register 13 using the read command via the communication power supply unit 21, and reads the read
  • the second authentication information is transferred to the card processing system 30 via the network IF 22 (SC6).
  • the authentication control unit 32c of the card processing system 30 decrypts the read second authentication information into the first authentication information using the authentication key stored in the card processing system 30 as an encryption key (SC7).
  • the authentication control unit 32c compares the first authentication information decrypted in SC7 with the first authentication information transferred from the authentication information generation unit 32b in SC2, and determines whether or not they match. (SC8). As a result, when it is determined that the two match (SC8, Yes), the authentication control unit 32c authenticates the noncontact IC card 10 assuming that the access by the noncontact IC card 10 is valid (SC9).
  • the non-contact IC card 10 After the processing of SC9 or SC10, the non-contact IC card 10, the card processing device 20, and the card processing system 30 end the authentication processing.
  • the first embodiment and the third embodiment described above may be combined to perform mutual authentication between the non-contact IC card 10 and the card processing system 30.
  • the authentication information generation unit, the authentication control unit, and the authentication request unit are provided in both the control unit 14 of the non-contact IC card 10 and the control unit 32 of the card processing system 30, and the authentication process described in the first embodiment.
  • the authentication process described in the third embodiment the non-contact IC card 10 can be used only when the read / write authentication by the card processing system 30 for the non-contact IC card 10 and the authentication of the non-contact IC card 10 for accessing the card processing system 30 are performed together.
  • the controller 14 and the card processing system 30 can be mutually accessible.
  • the control unit 14 of the non-contact IC card 10 of each embodiment described above an element that consumes more power than the authentication control unit 14b, the authentication information generation unit 14a, or the authentication request unit 14h is mounted.
  • the power may be operated so as to constantly change. Thereby, when the power consumption of the non-contact IC card 10 is measured from the outside, it is possible to prevent the presence or absence of execution of processing related to authentication such as the output of the first authentication information from the power consumption.
  • the first method is a method of writing a different address for each card or lot for each contactless IC card 10 at the time of manufacture or issue as the address of the data exchange register 13.
  • the second method is a method of giving a different address for each session in the same non-contact IC card 10 as the address of the data exchange register 13, and as the first authentication information every time power is received by electromagnetic induction or the like.
  • the address is set by such two methods, when the address is designated from the outside of the non-contact IC card 10, the data exchange register 13 is accessed based on the address, Communication with higher secrecy can be performed.
  • the address of the data exchange register 13 may be changed for each communication session between the contactless IC card 10 and the card processing device 20. For example, for each communication session, the address of the data exchange register 13 is updated using a random number generated using a known random number generation unit, and the address of the updated data exchange register 13 is updated to the data exchange register 13.
  • the authentication information generating unit 14a, the authentication control unit 14b, and the card processing device 20 perform writing to and reading from the data exchange register 13, separately stored in an address storage register provided in the non-contact IC card 10.
  • the address of the data exchange register 13 stored in the address storage register may be referred to.
  • Each electrical component described above is functionally conceptual and does not necessarily need to be physically configured as illustrated.
  • the specific form of distribution / integration of each part is not limited to the one shown in the figure, and all or a part thereof may be functionally or physically distributed / integrated in arbitrary units according to various loads and usage conditions. Can be configured.
  • the card processing device 20 and the card processing system 30 may be integrated with each other.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

【課題】外部装置に標準的に実装されているアクセス手段を利用して、半導体メモリに対する書込み及び読出しの認証を行うことができる、メモリ装置を提供すること。 【解決手段】 非接触ICカード10は、カード処理装置20からの読出し及び書込みを受ける非接触ICカード10であって、カード処理装置20による読出し及び書込みの認証が行われた場合にのみ、情報の読出し及び書込みが可能な不揮発性メモリ12と、認証に関する第1認証情報及び第2認証情報の読出し及び書込みが可能なデータ交換用レジスタ13と、第1認証情報を生成し、当該生成した第1認証情報をデータ交換用レジスタ13に書込む、認証情報生成部14aと、カード処理装置20からデータ交換用レジスタ13に書込まれた第2認証情報を当該データ交換用レジスタ13から読出し、当該読出した第2認証情報に基づいて認証を行う認証制御部14bとを備える。

Description

メモリ装置、メモリ認証システム、及びメモリ認証プログラム
 本発明は、メモリ装置、メモリ認証システム、及びメモリ認証プログラムに関する。
 この出願は、2009年3月30日付けで日本国で出願された特願2009-082363を基礎とし、その内容を取り込むものである。
 近年、半導体メモリの高密度化・小型化に伴い、非接触型ICカード、携帯電話、携帯ゲーム機用メディア等において半導体メモリが広く用いられている。この半導体メモリには、ICカードや携帯電話のID番号、ユーザの個人情報等、第三者による不正なアクセスから保護すべきデータや、ゲームのコンテンツ等、不正なコピーを防ぐべきデータ等が格納される。従って、半導体メモリに格納されるこれらのデータを不正アクセスや不正コピーから保護するため、次のような保護方法が従来用いられている。
 例えば、半導体メモリに対する外部装置による不正アクセス等を防ぐため、半導体メモリと外部装置との間で認証を行う方法がある。この認証方式としては、例えばチャレンジ/レスポンス方式がある。このチャレンジ/レスポンス方式においては、半導体メモリにアクセスをしようとする外部装置が認証要求を半導体メモリに送信すると、半導体メモリは外部装置に対して乱数等のチャレンジデータを送信する。このチャレンジデータに基づき、外部装置は特定の関数を用いてレスポンスデータを生成し、当該生成したレスポンスデータを半導体メモリに送信する。半導体メモリは、外部装置に送信したチャレンジデータから別途生成したレスポンスデータと、外部装置から受信したレスポンスデータとを比較し、両者が一致するか否かに基づいて外部装置の認証を行う。これにより、特定の関数を有する外部装置のみが半導体メモリへアクセス可能となる(例えば、特許文献1参照)。
 また、半導体メモリと外部装置との間でデータの通信を行なう際に、データ自体を公開鍵暗号方式等の暗号技術を用いて暗号化することにより、第三者によるデータのコピーや閲覧等を防止する方法や、電子署名が付されていない不正コピーされたデータの利用を禁止する方法等も利用されている。
特開2007-183991(段落0057)
 しかし、上述の如き従来のチャレンジ/レスポンス方式では、チャレンジ/レスポンス方式による認証専用のコマンドを用いなければならない等、通常のメモリシステムにおけるメモリへのアクセス手段とは異なるアクセス手段を用いる必要があった。従って、NFC(Near Field Communication)規格等、認証専用のコマンドがない通信規格を利用する機器においては、従来のチャレンジ/レスポンス方式を利用して認証を行うことが困難であった。
 本発明は、上記に鑑みてなされたものであって、外部装置に標準的に実装されているアクセス手段を利用して、半導体メモリに対する書込み及び読出しの認証を行うことができる、メモリ装置、メモリ認証システム、及びメモリ認証プログラムを提供することを目的とする。
 この請求項1に記載のメモリ装置、請求項3に記載のメモリ認証システム又は請求項7に記載のメモリ認証プログラムによれば、メモリ装置は、外部装置による読出し及び書込みの認証が行われた場合にのみ、情報の読出し及び書込みが可能な第1記憶手段と、認証に関する第1認証情報及び第2認証情報の読出し及び書込みが可能な第2記憶手段とを備え、第2記憶手段から第1認証情報を読出した外部装置によって当該第2記憶手段に書込まれた第2認証情報に基づいて認証を行う。従って、外部装置に標準的に実装されているアクセス手段を利用して、第2記憶手段を介してメモリ装置に対する書込み及び読出しの認証を行うことができる。
 また、請求項2に記載のメモリ装置、又は請求項4に記載のメモリ認証システムによれば、メモリ装置は、情報の読出し及び書込みが可能な第1記憶手段と、認証に関する第1認証情報及び第2認証情報の読出し及び書込みが可能な第2記憶手段とを備え、外部装置は、第2記憶手段から第1認証情報を読出したメモリ装置によって第2記憶手段に書込まれた第2認証情報に基づいて認証を行う。従って、外部装置に標準的に実装されているアクセス手段を利用して、第2記憶手段を介してメモリ装置の認証を行うことができる。
 また、請求項5に記載のメモリ認証システムによれば、第1記憶手段は不揮発性メモリであり、第2記憶手段は不揮発性メモリのメモリ空間外のメモリ番地が割り当てられたレジスタであるので、外部装置に標準的に実装されている、不揮発性メモリへのアクセス手段を利用して、レジスタを介してメモリ装置に対する書込み及び読出しの認証を行うことができる。
 また、請求項6に記載のメモリ認証システムによれば、不揮発性メモリは、レジスタと同じメモリ番地が割り当てられたダミーメモリを含み、認証情報生成手段や認証要求手段は、認証情報をレジスタに書込む際にダミーメモリへの書込みも行う。これにより、レジスタに情報を書き込む場合でも不揮発性メモリへの情報の書込み時と同様の電力消費、及び書込み時間を発生させることができ、外部から観測した消費電力や書き込み時間に基づいて第1認証情報の出力等の認証に関する処理の実行の有無を推測されることを防止できる。
メモリ認証システムの電気的構成を機能概念的に示したブロック図である。 アクセス管理部の回路構成を概念的に例示した図である。 認証処理のフローチャートである。 非接触ICカードの電気的構成を機能概念的に示したブロック図である。 バスAのバス構成を概念的に示した図である。 不揮発性メモリからの読出しにおけるシステムバスのタイミングチャートである。 不揮発性メモリへの書込みにおけるシステムバスのタイミングチャートである。 認証処理のフローチャートである。 実施の形態3に係るメモリ認証システムの電気的構成を機能概念的に示したブロック図である。 認証処理のフローチャートである。
 以下に添付図面を参照して、この発明に係るメモリ装置、メモリ認証システム、及びメモリ認証プログラムの各実施の形態を詳細に説明する。
 まず、〔I〕各実施の形態の具体的内容について順次説明し、次に、〔II〕各実施の形態に対する変形例について説明する。ただし、各実施の形態によって本発明が限定されるものではない。なお、メモリ装置、メモリ認証システム、及びメモリ認証プログラムの適用対象は任意で、例えば、この発明に係るメモリ装置を、非接触ICカード、携帯情報端末、携帯ゲーム機用メディア等のメモリ装置に適用することができる。また、この発明に係るメモリ認証システムを、メモリ装置として非接触ICカード、携帯情報端末、又は携帯ゲーム機用メディア等を備え、当該メモリ装置に対応する外部装置としてカード処理装置、端末情報処理装置、又は携帯ゲーム機等を備えるメモリ認証システムに適用することができる。以下の実施の形態では、メモリ装置として非接触ICカードが用いられ、外部装置としてカード処理装置及びカード処理システムが用いられる場合を例示して説明する。
〔I〕各実施の形態の具体的内容
 まず、各実施の形態の具体的内容について説明する。
〔実施の形態1〕
 最初に、実施の形態1について説明する。この形態は、メモリ装置に対する外部装置による読出し及び書込みの認証を行う形態である。
(構成)
 まず、メモリ認証システムの構成を説明する。図1はメモリ認証システムの電気的構成を機能概念的に示したブロック図である。図1に示すようにメモリ認証システム1は、非接触ICカード10、カード処理装置20、及びカード処理システム30を備えている。
(構成-非接触ICカード)
 非接触ICカード10は、カード処理装置20からの読出し及び書込みを受けるメモリ装置であって、通信部11、不揮発性メモリ12、データ交換用レジスタ13、及び制御部14を、システムバス15にて通信可能に接続して構成されている。
 通信部11は、カード処理装置20との間で情報の非接触通信を行なう通信手段である。この通信部11は、例えば公知のRFフロントエンドとして構成されている。
 不揮発性メモリ12は、カード処理装置20との間における認証が行われた場合にのみ、当該カード処理装置20に対する読出しコマンドによる情報の読出し及び書込みコマンドによる情報の書き込みが可能なメモリであり、特許請求の範囲における第1記憶手段に対応する。この不揮発性メモリ12としては、例えばEEPROM(Electrically Erasable and Programmable Read Only Memory)が用いられる。本実施の形態1では、不揮発性メモリ12はアドレス0x00から0xEFにマッピングされているものとする。
 データ交換用レジスタ13は、不揮発性メモリ12に対するコマンドと同様の読出し及び書込みコマンドによって、認証に関する情報の読出し及び書込みが可能なレジスタであり、特許請求の範囲における第2記憶手段に対応する。このデータ交換用レジスタ13としては、例えばフリップフロップ等の回路素子を用いた公知のレジスタが用いられる。本実施の形態1では、データ交換用レジスタ13は不揮発性メモリ12のアドレスとは異なるアドレス0xF0から0xFFにマッピングされている。
 制御部14は、非接触カードとカード処理装置20との間の認証に関する制御を行う制御手段であり、例えばアナログ回路やデジタル回路、及び当該回路上で動作する各種のプログラムによって構成されており、機能概念的に、認証情報生成部14a、認証制御部14b、及びアクセス管理部14cを備える。認証情報生成部14aは、認証に関する第1認証情報を生成し、当該生成した第1認証情報をデータ交換用レジスタ13に書込む、認証情報生成手段である。この「第1認証情報」は、従来のチャレンジ/レスポンス方式におけるチャレンジデータに対応する。認証制御部14bは、カード処理装置20からデータ交換用レジスタ13に書込まれた、認証に関する第2認証情報を当該データ交換用レジスタ13から読出し、当該読出した第2認証情報に基づいて認証を行う認証制御手段である。この「第2認証情報」は、従来のチャレンジ/レスポンス方式におけるレスポンスデータに対応する。アクセス管理部14cは、認証結果に基づき、カード処理装置20からの不揮発性メモリ12やデータ交換用レジスタ13に対するアクセスの管理を行うアクセス管理手段である。図2は、アクセス管理部14cの回路構成を概念的に例示した図である。図2に示すように、アクセス管理部14cは、コンパレータ14d、第1ANDゲート14e、及び第2ANDゲート14fを備える。例えばアクセス管理部14cが不揮発性メモリ12に対する書込みの管理を行う場合、コンパレータ14dは、不揮発性メモリ12のアドレスと、カード処理装置20からの書込み対象となるアドレスとの入力を受け、その比較結果(例えば、両者が一致した場合に「1」、不一致の場合に「0」)を出力する。第1ANDゲート14eには、コンパレータ14dからの出力値と、認証制御部14bによる認証結果に対応する認証済みフラグ(例えば、認証された場合に「1」、認証が拒否された場合に「0」)とが入力される。第2ANDゲート14fには、第1ANDゲート14eからの出力値と、書込み制御信号(例えば、書込み要求がある場合に「1」)とが入力される。あるいは、アクセス管理部14cが不揮発性メモリ12からの読出しの管理を行う場合には、コンパレータ14dは、不揮発性メモリ12のアドレスと、カード処理装置20からの読出し対象となるアドレスとの入力を受ける。また、第2ANDゲート14fには、第1ANDゲート14eからの出力値と、読出し制御信号とが入力される。
(構成-カード処理装置)
 図1に戻り、カード処理装置20は、非接触ICカード10に対する情報の読出し及び書込みを行う外部装置であって、通信給電部21、ネットワークインタフェース(以下「ネットワークIF」)22、及び制御部23を、システムバス24にて通信可能に接続して構成されている。
 通信給電部21は、非接触ICカード10との間で情報の通信を行なうとともに、当該非接触ICカード10に電磁誘導等の公知の方法で給電する通信給電手段である。
 ネットワークIF22は、カード処理装置20がカード処理システム30との間でネットワーク2を介した通信を行うための通信制御インターフェースである。このネットワークIF22は、例えばネットワークボードとして構成されている(後述するネットワークIF31についても同じ)。
 制御部23は、カード処理装置20の各部を制御する制御手段であり、CPUや、このCPU上で解釈実行される各種のプログラム(OSなどの制御プログラムや、各種の処理手順などを規定したプログラム)、及び所要プログラムや所要データを格納するための内部メモリを備えて構成される(後述する制御部32についても同じ)。
(構成-カード処理システム)
 カード処理システム30は、ネットワークIF31及び制御部32を、システムバス33にて通信可能に接続して構成されている。
 ネットワークIF31は、カード処理システム30がカード処理装置20との間でネットワーク2を介した通信を行うための通信制御インターフェースである。
 制御部32は、カード処理システム30の各部を制御する制御手段であり、機能概念的に認証要求部32aを備える。認証要求部32aは、第1認証情報をカード処理装置20の通信給電部21を介してデータ交換用レジスタ13から読出し、当該読出した第1認証情報に基づいて第2認証情報を生成し、当該生成した第2認証情報をカード処理装置20の通信給電部21を介してデータ交換用レジスタ13に書込む、認証要求手段である。
(処理)
 次に、図1に示したメモリ認証システム1にて行われる認証処理について説明する。図3は認証処理のフローチャートである。この認証処理は、例えば、カード処理装置20から非接触ICカード10の制御部14に対して通信部11を介してアクセス要求が行われた場合に起動される。
 認証処理が起動すると、非接触ICカード10の認証情報生成部14aは第1認証情報を生成する(SA1)。例えば、認証情報生成部14aは第1認証情報として擬似乱数を生成する。この擬似乱数は、例えば、不揮発性メモリ12に格納されている可変情報(例えば、キャッシュカードに格納されている預金残高の情報等)を、固定の乱数生成鍵を用いて暗号化することによって得られる。
 続いて、認証情報生成部14aは、SA1で生成した第1認証情報をデータ交換用レジスタ13に書込むとともに、認証制御部14bに転送する(SA2)。
 次に、カード処理装置20の制御部23は、データ交換用レジスタ13に対応するアドレス0xF0から0xFFに格納されている第1認証情報を、通信給電部21を介して読出しコマンドを用いて読出し、当該読出した第1認証情報をネットワークIF22を介してカード処理システム30に転送する(SA3)。
 カード処理システム30の認証要求部32aは、カード処理装置20から転送された第1認証情報を、第2認証情報に変換し、第2認証情報をネットワークIF31を介してカード処理装置20に転送する(SA4)。例えば、認証要求部32aは、カード処理システム30に格納されている認証鍵を暗号鍵として、第1認証情報を第2認証情報に暗号化する。例えば、AES(Advanced Encryption Standard)暗号アルゴリズムにより暗号化を行う関数Fを使用して、第2認証情報=F(第1認証情報、暗号鍵)として暗号化を行うことができる。
 カード処理装置20の制御部23は、カード処理システム30からネットワークIF31を介して転送された第2認証情報を、通信給電部21を介して書込み専用コマンドを用いてデータ交換用レジスタ13に対応するアドレス0xF0から0xFFに書込む(SA5)。
 非接触ICカード10の認証制御部14bは、データ交換用レジスタ13に書込まれた第2認証情報を読出す(SA6)。そして、当該非接触ICカード10に格納されている認証鍵を暗号鍵として、読出した第2認証情報を第1認証情報に復号化する(SA7)。
 続いて、認証制御部14bは、SA7で復号化した第1認証情報と、SA2で認証情報生成部14aから転送された第1認証情報とを比較し、両者が一致するか否かを判定する(SA8)。その結果、両者が一致すると判定した場合(SA8、Yes)、認証制御部14bは、カード処理装置20によるアクセスは正当であるとし、不揮発性メモリ12に対するカード処理装置20による読出し及び書込みの認証を行う(SA9)。この場合、アクセス管理部14cは、カード処理装置20からの不揮発性メモリ12に対する情報の読出し及び書込みを可能とする。
 例えば、SA9において認証制御部14bにより読出し及び書込みの認証が行われた場合、図2に示した認証済みフラグとして「1」が第1ANDゲート14eに入力される。また、カード処理装置20から入力された書込み対象となるアドレスと、不揮発性メモリ12のアドレスとが一致している場合、コンパレータ14dから「1」が第1ANDゲート14eに入力される。この場合、第1ANDゲート14eから第2ANDゲート14fには「1」が入力される。従って、第2ANDゲート14fに書込み制御信号として「1」が入力された場合、第2ANDゲート14fからは書込み制御信号「1」が出力され、書込み対象となるアドレスに情報の書込みが行われる。
 一方、SA7で復号化した第1認証情報と、SA2で認証情報生成部14aから転送された第1認証情報とが一致しないと判定した場合(SA8、No)、認証制御部14bは、カード処理装置20によるアクセスは不正であるとし、不揮発性メモリ12に対するカード処理装置20による読出し及び書込みの認証を拒否する(SA10)。この場合、アクセス管理部14cは、カード処理装置20からの不揮発性メモリ12に対する情報の読出し及び書込みを不可とする。
 例えば、SA10において認証制御部14bにより読出し及び書込みの認証が拒否された場合、図2に示した認証済みフラグとして「0」が第1ANDゲート14eに入力される。また、カード処理装置20から入力された書込み対象となるアドレスと、不揮発性メモリ12のアドレスとが一致している場合、コンパレータ14dから「1」が第1ANDゲート14eに入力される。この場合、第1ANDゲート14eから第2ANDゲート14fには「0」が入力される。従って、第2ANDゲート14fに書込み制御信号として「1」が入力されたとしても、第2ANDゲート14fからは書込み制御信号「0」が出力されるため、書込み対象となるアドレスに情報の書込みが行われることはない。
 SA9又はSA10の処理の後、非接触ICカード10、カード処理装置20、及びカード処理システム30は、認証処理を終了する。
〔実施の形態2〕
 次に、実施の形態2について説明する。この形態は、第1認証情報や第2認証情報をデータ交換用レジスタ13に書込む際、レジスタと同じメモリ番地が割り当てられたダミーメモリにも書込む形態である。なお、実施の形態2の構成は、特記する場合を除いて実施の形態1の構成と略同一であり、実施の形態1の構成と略同一の構成についてはこの実施の形態1で用いたものと同一の符号及び/又は名称を必要に応じて付して、その説明を省略する。
(構成-非接触ICカード)
 まず、非接触ICカード10の構成を説明する。図4は、非接触ICカード10の電気的構成を機能概念的に示したブロック図である。図4に示したように、本実施の形態2に係る通信部11は、クロック生成部11aを備えている。クロック生成部11aは、一定周期のクロック信号を出力する。
 不揮発性メモリ12は、メモリセル12a及びチャージポンプ12bを備えている。メモリセル12aは、情報の記憶を行う記憶素子である。チャージポンプ12bは、メモリセル12aへの情報の書込みを行う際に必要な書込み電圧を発生させるための、昇圧回路である。このチャージポンプ12bは、例えばコンデンサとスイッチとを組合わせて構成される。
 また、本実施の形態2に係る不揮発性メモリ12は、データ交換用レジスタ13と同じアドレスが割り当てられたダミーメモリ12cを含む。
 制御部14は、実施の形態1における認証情報生成部14a、認証制御部14b、及びアクセス管理部14cに加えて、カウンタ14gを備える。カウンタ14gは、クロック生成部11aから出力されたクロック信号を計数し、予め設定された最大値を超えてオーバーフローした時にはラッチ信号を出力する。このカウンタ14gとしては、例えば、シフトレジスタ等を用いたプログラマブル・カウンタを用いることができる。
 システムバス15は、バスA15a及びバスB15bを備えている。図5は、バスA15aのバス構成を概念的に示した図である。なお、バスB15bのバス構成もバスA15aと同様である。図5に示したように、バスA15aは、データバス15c、アドレスバス15d、及びコントロールバス15eを備える。データバス15cはデータを転送するためのバスであり、例えば図5に示したように、D0からD7までの8ビットのバス幅を有している。アドレスバス15dはアドレスを転送するためのバスであり、例えば図5に示したように、A0からA7までの8ビットのバス幅を有している。コントロールバス15eは不揮発性メモリ12やデータ交換用レジスタ13等の周辺装置の制御情報を転送するためのバスである。この制御情報として、周辺装置の活性化信号であるチップ・イネーブル信号(CE)、周辺装置への読出し指示信号であるアウトプット・イネーブル信号(OE)、及び周辺装置への書込み指示信号であるライト・イネーブル信号(WE)が含まれる。なお、以下の説明ではこれらの信号は負論理(信号が低レベルの場合にTRUE、高レベルの場合にFALSE)で出力されるものとする。
 また、バスB15bには、バスA15aを流れる信号を公知のインバータ(図示省略)により反転した信号が常時流される。これにより、システムバス15全体としての消費電力は、バスA15a及びバスB15bを流れる信号の内容、信号の出力元や出力先のアドレス、用いられたコマンド等に関わらず、一定に保たれる。
(動作)
 次に、非接触ICカード10の内部における情報の読出し及び書込みの動作について説明する。図6は不揮発性メモリ12からの読出しにおけるシステムバス15のタイミングチャート、図7は不揮発性メモリ12への書込みにおけるシステムバス15のタイミングチャートである。
(動作-不揮発性メモリからの情報の読出し)
 図6に示すように、不揮発性メモリ12から情報の読出しを行う場合、制御部14は、読出し対象である不揮発性メモリ12を活性化するため、不揮発性メモリ12に対するチップ・イネーブル信号を低レベルとする(t1)。続いて、読出し対象のアドレスをアドレスバス15dに出力し(t2)、更に不揮発性メモリ12に対するアウトプット・イネーブル信号を低レベルとする(t3)。
 不揮発性メモリ12は、チップ・イネーブル信号が低レベルの場合、アウトプット・イネーブル信号が低レベルになると、その次のクロックの立下りで読出し対象のアドレスをアドレスバス15dから取得し(t4)、当該アドレスに対応して格納されている情報を次のクロックの立下りでデータバス15cに出力する(t5)。データバス15cに出力された情報は、制御部14によって取得される。
(動作-不揮発性メモリへの情報の書込み)
 図7に示すように、不揮発性メモリ12への情報の書込みを行う場合、制御部14は、書込み対象である不揮発性メモリ12を活性化するため、不揮発性メモリ12に対するチップ・イネーブル信号を低レベルとする(t6)。続いて、書込み対象のアドレスをアドレスバス15dに出力するとともに、書込み対象の情報をデータバス15cに出力する(t7)。その後、不揮発性メモリ12に対するライト・イネーブル信号を低レベルとする(t8)。
 不揮発性メモリ12は、チップ・イネーブル信号が低レベルの場合、ライト・イネーブル信号が低レベルになると、その次のクロックの立下りで書込み対象のアドレスをアドレスバス15dから取得するとともに、書込み対象の情報をデータバス15cから取得する(t9)。そして、さらに次のクロックの立下りでチャージポンプ12bを動作させることで書込み電圧を発生させ、取得した情報をメモリセル12aに書込む(t10)。
 なお、メモリセル12aに書込みを行うためには十分な電荷を蓄積する必要があるため、一般的には1ミリ秒オーダの時間が必要となる。この電荷の蓄積時間は、例えばカウンタ14gを用いて計時される。
(動作-データ交換用レジスタからの情報の読出し)
 データ交換用レジスタ13からの情報の読出しは、不揮発性メモリ12からの情報の読出しと同様である。すなわち、データ交換用レジスタ13に対するチップ・イネーブル信号を低レベルとした後、読出し対象のアドレスをアドレスバス15dに出力し、更にデータ交換用レジスタ13に対するアウトプット・イネーブル信号を低レベルとすることにより、データ交換用レジスタ13からの情報の読出しが行われる。
(動作-データ交換用レジスタへの情報の書込み)
 データ交換用レジスタ13への情報の書込みを行う場合、制御部14は、データ交換用レジスタ13に対するチップ・イネーブル信号を低レベルとした後、書込み対象のアドレスをアドレスバス15dに出力とともに、書込み対象の情報をデータバス15cに出力し、更にデータ交換用レジスタ13に対するライト・イネーブル信号を低レベルとする。
 データ交換用レジスタ13は、チップ・イネーブル信号が低レベルの場合、ライト・イネーブル信号が低レベルになると、その次のクロックの立下りで書込み対象のアドレスをアドレスバス15dから取得するとともに、書込み対象の情報をデータバス15cから取得し、当該データ交換用レジスタ13への書込みを行う。データ交換用レジスタ13への書込みの場合は、メモリセル12aへの書込みと異なり、高圧の書込み電圧を発生させる必要がなく、書込み自体も高速であるため、不揮発性メモリ12への書込みと比較して極めて短時間書込みが終了する。例えば、EEPROMへの書込み(厳密には消去+書込み)の時間は、EEPROMのセル構造や書込みプロセスによって異なるが、概ね数msオーダであるのに対して、データ交換用レジスタ13への書込みは、受信キャリア(fc=13.56MHz)を4分周してバス・クロックとし、4クロック(ステート)で書き込みを行う場合を想定すると、4×4/(13.56×10-6)≒1.18μsとなる。
 更に、データ交換用レジスタ13への情報の書込みを行う際、制御部14は不揮発性メモリ12に対してもチップ・イネーブル信号を低レベルとする。これにより、書き込み対象であるデータ交換用レジスタ13と同じアドレスのダミーメモリ12cに対しても、情報の書込みが行われる。これに伴い、不揮発性メモリ12に書込みを行うためのチャージポンプ12bの動作が発生し、上述の不揮発性メモリ12への情報の書込み時と同様の電力消費、及び書込み時間が発生する。
(処理)
 次に、本実施の形態2に係るメモリ認証システム1にて行われる認証処理について説明する。図8は認証処理のフローチャートである。なお、本実施の形態2における認証処理のSB3からSB12の各処理は、実施の形態1における認証処理のSA1からSA10と同様であるので、説明を省略する。
 認証処理が起動すると、認証情報生成部14aは、カウンタ14gがラッチ信号を出力するための最大値を設定する(SB1)。この最大値は、例えば擬似乱数として生成される。
 続いて、認証情報生成部14aは、カウンタ14gからラッチ信号が入力されたか否かを判定し(SB2)、ラッチ信号が入力されていない場合(SB2、No)、ラッチ信号が入力されるまで待機する。そして、ラッチ信号が入力されたと判定した場合(SB2、Yes)、認証情報生成部14aは第1認証情報を生成する(SB3)。
 これにより、カード処理装置20から非接触ICカード10の制御部14に対して通信部11を介してアクセス要求が行われてから第1認証情報が生成されるまでに要する時間は、認証処理が実行される毎に、カウンタ14gの最大値に応じてランダムに変化することになる。
〔実施の形態3〕
 次に、実施の形態3について説明する。この形態は、メモリ装置の認証を行う形態である。なお、実施の形態3の構成は、特記する場合を除いて実施の形態1の構成と略同一であり、実施の形態1の構成と略同一の構成についてはこの実施の形態1で用いたものと同一の符号及び/又は名称を必要に応じて付して、その説明を省略する。
(構成)
 まず、メモリ認証システム1の構成を説明する。図9は実施の形態3に係るメモリ認証システム1の電気的構成を機能概念的に示したブロック図である。
(構成-非接触ICカード)
 本実施の形態3においては、非接触ICカード10の制御部14は、実施の形態1の制御部14における認証情報生成部14a及び認証制御部14bに代えて、認証要求部14hを備える。認証要求部14hは、カード処理装置20から書込まれた第1認証情報をデータ交換用レジスタ13から読出し、当該読出した第1認証情報に基づいて第2認証情報を生成し、当該生成した第2認証情報をデータ交換用レジスタ13に書込む、認証要求手段である。
(構成-カード処理システム)
 本実施の形態3においては、カード処理システム30の制御部32は、実施の形態1の制御部32における認証要求部32aに代えて、認証情報生成部32b及び認証制御部32cを備える。認証情報生成部32bは、第1認証情報を生成し、当該生成した第1認証情報を、カード処理装置20を介してデータ交換用レジスタ13に書込む、認証情報生成手段である。認証制御部32cは、認証要求部14hによって書込みされた第2認証情報を、カード処理装置20を介してデータ交換用レジスタ13から読出し、当該読出した第2認証情報に基づいて認証を行う認証制御手段である。
(処理)
 次に、図9に示したメモリ認証システム1にて行われる認証処理について説明する。図10は認証処理のフローチャートである。この認証処理は、例えば、非接触ICカード10からカード処理装置20の制御部23に対して通信給電部21を介してアクセス要求が行われた場合に起動される。
 認証処理が起動すると、カード処理システム30の認証情報生成部32bは第1認証情報を生成し、認証制御部32cに転送するとともに、ネットワークIF31を介してカード処理装置20に転送する(SC1)。例えば、認証情報生成部32bは第1認証情報として擬似乱数を生成する。この擬似乱数は、例えば、年月日等の可変情報を、固定の乱数生成鍵を用いて暗号化することによって得られる。
 続いて、カード処理装置20の制御部23は、SC1で転送された第1認証情報を、通信給電部21を介して書込み専用コマンドを用いてデータ交換用レジスタ13に対応するアドレス0xF0から0xFFに書込む(SC2)。
 次に、非接触ICカード10の認証要求部14hは、データ交換用レジスタ13に書込まれた第1認証情報を読出し(SC3)、当該非接触ICカード10に格納されている認証鍵を暗号鍵として、第2認証情報に変換する(SC4)。そして、認証要求部14hは、変換した第2認証情報をデータ交換用レジスタ13に書込む(SC5)。
 カード処理装置20の制御部23は、データ交換用レジスタ13に対応するアドレス0xF0から0xFFに格納されている第2認証情報を、通信給電部21を介して読出しコマンドを用いて読出し、当該読出した第2認証情報をネットワークIF22を介してカード処理システム30に転送する(SC6)。カード処理システム30の認証制御部32cは、当該カード処理システム30に格納されている認証鍵を暗号鍵として、読出した第2認証情報を第1認証情報に復号化する(SC7)。
 続いて、認証制御部32cは、SC7で復号化した第1認証情報と、SC2で認証情報生成部32bから転送された第1認証情報とを比較し、両者が一致するか否かを判定する(SC8)。その結果、両者が一致すると判定した場合(SC8、Yes)、認証制御部32cは、非接触ICカード10によるアクセスは正当であるとし、非接触ICカード10の認証を行う(SC9)。
 一方、SC7で復号化した第1認証情報と、SC2で認証情報生成部32bから転送された第1認証情報とが一致しないと判定した場合(SC8、No)、認証制御部32cは、非接触ICカード10によるアクセスは不正であるとし、非接触ICカード10の認証を拒否する(SC10)。
 SC9又はSC10の処理の後、非接触ICカード10、カード処理装置20、及びカード処理システム30は、認証処理を終了する。
〔II〕各実施の形態に対する変形例
 以上、本発明に係る各実施の形態について説明したが、本発明の具体的な構成及び手段は、特許請求の範囲に記載した各発明の技術的思想の範囲内において、任意に改変及び改良することができる。以下、このような変形例について説明する。
(変形例-相互認証について)
 上述した実施の形態1と実施の形態3とを組合わせて、非接触ICカード10とカード処理システム30との間で相互に認証を行うように構成してもよい。例えば、非接触ICカード10の制御部14とカード処理システム30の制御部32との双方に、認証情報生成部、認証制御部、及び認証要求部を設け、実施の形態1で説明した認証処理と、実施の形態3で説明した認証処理とを実行させる。これにより、非接触ICカード10に対するカード処理システム30による読出し及び書込みの認証と、カード処理システム30にアクセスする非接触ICカード10の認証とが共に行われた場合にのみ、非接触ICカード10の制御部14とカード処理システム30とを相互にアクセス可能とすることができる。
(変形例-認証情報生成部について)
 上述した各実施の形態の非接触ICカード10の制御部14に、認証制御部14b、認証情報生成部14a、又は認証要求部14h等と比較して消費電力の大きい素子を実装し、当該消費電力が常時変動するように動作させてもよい。これにより、非接触ICカード10の消費電力が外部から計測された場合に、当該消費電力に基づいて第1認証情報の出力等の認証に関する処理の実行の有無を推測されることを防止できる。
(変形例-データ交換用レジスタについて)
 上述した各実施の形態では、データ交換用レジスタ13に一定のアドレス(0xF0から0xFF)が割り当てられているが、異なるアドレスを各非接触カード10のデータ交換用レジスタ13に割り当ててもよい。このような異なるアドレスの割り当て方法としては、例えば、以下の2つの方法が挙げられる。第1の方法は、データ交換用レジスタ13のアドレスとして、各非接触ICカード10の製造時や発行時に、カード毎又はロット毎に異なるアドレスを書き込む方法である。第2の方法は、データ交換用レジスタ13のアドレスとして、同一の非接触ICカード10においてセッション毎に異なるアドレスを持たせる方法であり、電磁誘導等による給電を受ける毎に、第1認証情報として使用する擬似乱数又はその一部を新規なアドレスとして使用する方法である。このような2つの方法によりアドレスの設定を行った場合においては、当該アドレスが非接触ICカード10の外部から指定された際に、当該アドレスに基づいてデータ交換用レジスタ13にアクセスすることで、一層秘匿性の高い通信を行うことが可能となる。
 あるいは、非接触ICカード10とカード処理装置20との間の通信セッション毎に、データ交換用レジスタ13のアドレスを変更するようにしてもよい。例えば、通信セッション毎に、公知の乱数生成手段を用いて生成した乱数を用いてデータ交換用レジスタ13のアドレスを更新すると共に、当該更新したデータ交換用レジスタ13のアドレスを、データ交換用レジスタ13とは別に非接触ICカード10に設けたアドレス格納用レジスタに格納し、認証情報生成部14a、認証制御部14b、及びカード処理装置20がデータ交換用レジスタ13に対する書込みや読出しを行う際に、そのアドレス格納用レジスタに格納されたデータ交換用レジスタ13のアドレスを参照するようにしてもよい。
 このような方法を実現するためには、非接触ICカード10に持たせるアドレスとカード処理装置20に保持させるアドレスを相互に一致させる必要があるが、例えば同一の計算方法を利用してアドレス値を変化させることで、常に同一のアドレスを保持することが可能となる。
(変形例-分散や統合について)
 また、上述した各電気的構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各部の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成できる。例えば、カード処理装置20とカード処理システム30とを相互に統合してもよい。
 1 メモリ認証システム
 2 ネットワーク
 10 非接触ICカード
 11 通信部
 11a クロック生成部
 12 不揮発性メモリ
 12a メモリセル
 12b チャージポンプ
 12c ダミーメモリ
 13 データ交換用レジスタ
 14、23、32 制御部
 14a、32b 認証情報生成部
 14b、32c 認証制御部
 14c アクセス管理部
 14d コンパレータ
 14e 第1ANDゲート
 14f 第2ANDゲート
 14g カウンタ
 14h、32a 認証要求部
 15、24、33 システムバス
 15a バスA
 15b バスB
 15c データバス
 15d アドレスバス
 15e コントロールバス
 20 カード処理装置
 21 通信給電部
 22、31 ネットワークIF
 30 カード処理システム

Claims (7)

  1.  外部装置からの読出し及び書込みを受けるメモリ装置であって、
     前記外部装置による読出し及び書込みの認証が行われた場合にのみ、情報の読出し及び書込みが可能な第1記憶手段と、
     前記認証に関する第1認証情報及び第2認証情報の読出し及び書込みが可能な第2記憶手段と、
     前記第1認証情報を生成し、当該生成した第1認証情報を前記第2記憶手段に書込む、認証情報生成手段と、
     前記外部装置から前記第2記憶手段に書込まれた第2認証情報を当該第2記憶手段から読出し、当該読出した第2認証情報に基づいて前記認証を行う認証制御手段と、
     を備えることを特徴とするメモリ装置。
  2.  外部装置からの読出し及び書込みを受けるメモリ装置であって、
     情報の読出し及び書込みが可能な第1記憶手段と、
     前記外部装置による当該メモリ装置の認証に関する、第1認証情報及び第2認証情報の読出し及び書込みが可能な第2記憶手段と、
     前記外部装置から書込まれた前記第1認証情報を前記第2記憶手段から読出し、当該読出した前記第1認証情報に基づいて第2認証情報を生成し、当該生成した第2認証情報を前記第2記憶手段に書込む、認証要求手段と、
     を備えることを特徴とするメモリ装置。
  3.  メモリ装置と、前記メモリ装置に対する情報の読出し及び書込みを行う外部装置とを備え、前記メモリ装置に対する前記外部装置による読出し及び書込みの認証を行う、メモリ認証システムであって、
     前記メモリ装置は、
     前記認証が行われた場合にのみ、情報の読出し及び書込みが可能な第1記憶手段と、
     前記認証に関する第1認証情報及び第2認証情報の読出し及び書込みが可能な第2記憶手段と、
     前記第1認証情報を生成し、当該生成した第1認証情報を前記第2記憶手段に書込む、認証情報生成手段と、
     前記外部装置から前記第2記憶手段に書込まれた第2認証情報を当該第2記憶手段から読出し、当該読出した第2認証情報に基づいて前記認証を行う認証制御手段と、を備え、
     前記外部装置は、
     前記第1認証情報を前記第2記憶手段から読出し、当該読出した前記第1認証情報に基づいて第2認証情報を生成し、当該生成した第2認証情報を前記第2記憶手段に書込む、認証要求手段を備えること、
     を特徴とするメモリ認証システム。
  4.  メモリ装置と、前記メモリ装置に対する情報の読出し及び書込みを行う外部装置とを備え、前記メモリ装置の認証を行う、メモリ認証システムであって、
     前記メモリ装置は、
     情報の読出し及び書込みが可能な第1記憶手段と、
     前記認証に関する第1認証情報及び第2認証情報の読出し及び書込みが可能な第2記憶手段と、
     前記外部装置から書込まれた前記第1認証情報を前記第2記憶手段から読出し、当該読出した前記第1認証情報に基づいて第2認証情報を生成し、当該生成した第2認証情報を前記第2記憶手段に書込む、認証要求手段を備え、
     前記外部装置は、
     前記第1認証情報を生成し、当該生成した第1認証情報を前記第2記憶手段に書込む、認証情報生成手段と、
     前記認証要求手段によって書込みされた前記第2認証情報を前記第2記憶手段から読出し、当該読出した第2認証情報に基づいて前記認証を行う認証制御手段と、を備えること、
     を特徴とするメモリ認証システム。
  5.  前記第1記憶手段は、
     不揮発性メモリであり、
     前記第2記憶手段は、
     前記不揮発性メモリのメモリ空間外のメモリ番地が割り当てられたレジスタであること、
     を特徴とする請求項3又は4に記載のメモリ認証システム。
  6.  前記不揮発性メモリは、
     前記レジスタと同じメモリ番地が割り当てられたダミーメモリを含み、
     前記認証情報生成手段は、
     前記第1認証情報を前記レジスタに書込む際、当該第1認証情報を前記ダミーメモリに書込み、
     前記認証要求手段は、
     前記第2認証情報を前記レジスタに書込む際、当該第2認証情報を前記ダミーメモリに書込むこと、
     を特徴とする請求項5に記載のメモリ認証システム。
  7.  外部装置からの読出し及び書込みを受けるメモリ装置としてのコンピュータに実行させるメモリ認証プログラムであって、
     前記コンピュータに、
     前記外部装置による読出し及び書込みの認証が行われた場合にのみ、前記メモリ装置が備える第1記憶手段に対して情報の読出し及び書込みを行う第1記憶ステップと、
     前記メモリ装置が備える第2記憶手段に対して、前記認証に関する第1認証情報及び第2認証情報の読出し及び書込みを行う第2記憶ステップと、
     前記第1認証情報を生成し、当該生成した第1認証情報を前記第2記憶手段に書込む、認証情報生成ステップと、
     前記外部装置から前記第2記憶手段に書込まれた第2認証情報を当該第2記憶手段から読出し、当該読出した第2認証情報に基づいて前記認証を行う認証制御ステップと、
     を実行させることを特徴とするメモリ認証プログラム。
PCT/JP2010/002256 2009-03-30 2010-03-29 メモリ装置、メモリ認証システム、及びメモリ認証プログラム WO2010116666A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009-082363 2009-03-30
JP2009082363A JP2010237772A (ja) 2009-03-30 2009-03-30 メモリ装置、メモリ認証システム、及びメモリ認証プログラム

Publications (1)

Publication Number Publication Date
WO2010116666A1 true WO2010116666A1 (ja) 2010-10-14

Family

ID=42935965

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/002256 WO2010116666A1 (ja) 2009-03-30 2010-03-29 メモリ装置、メモリ認証システム、及びメモリ認証プログラム

Country Status (3)

Country Link
JP (1) JP2010237772A (ja)
TW (1) TW201035759A (ja)
WO (1) WO2010116666A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5659068B2 (ja) 2011-04-04 2015-01-28 オリンパス株式会社 無線通信装置、無線通信方法および無線通信プログラム
CN102664737B (zh) * 2012-04-16 2016-05-04 北京奥信通科技发展有限公司 存储卡管理系统和存储卡
JP2014053675A (ja) * 2012-09-05 2014-03-20 Sony Corp セキュリティチップ、プログラム、情報処理装置及び情報処理システム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001249849A (ja) * 2000-03-03 2001-09-14 Ntt Docomo Inc メモリデバイス
JP2004038318A (ja) * 2002-06-28 2004-02-05 Toshiba Corp レジスタ回路及びこれを用いた暗号演算回路
JP2006031540A (ja) * 2004-07-20 2006-02-02 Matsushita Electric Ind Co Ltd アクセス制御システム
JP2007183991A (ja) * 2007-03-19 2007-07-19 Nippon Telegr & Teleph Corp <Ntt> Icカードサービス情報表示システム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001249849A (ja) * 2000-03-03 2001-09-14 Ntt Docomo Inc メモリデバイス
JP2004038318A (ja) * 2002-06-28 2004-02-05 Toshiba Corp レジスタ回路及びこれを用いた暗号演算回路
JP2006031540A (ja) * 2004-07-20 2006-02-02 Matsushita Electric Ind Co Ltd アクセス制御システム
JP2007183991A (ja) * 2007-03-19 2007-07-19 Nippon Telegr & Teleph Corp <Ntt> Icカードサービス情報表示システム

Also Published As

Publication number Publication date
TW201035759A (en) 2010-10-01
JP2010237772A (ja) 2010-10-21

Similar Documents

Publication Publication Date Title
US9100187B2 (en) Authenticator
CN105814590B (zh) 使用电子设备的个人对个人支付
RU2251726C2 (ru) Микропроцессорное устройство с шифрованием
US10148648B1 (en) Virtual smart card to perform security-critical operations
KR100676087B1 (ko) 유에스비 인터페이스를 구비한 보안 데이터 저장 장치 및방법
CN105684009A (zh) 针对基于nfc的支付使用生物特征认证
US10425821B2 (en) Mobile data storage device with access control functionality
KR100526650B1 (ko) 전자 가치 데이터 통신방법, 통신 시스템, ic카드,휴대단말 및 통신단말
KR20100080857A (ko) 스마트 저장 장치
JP2004199138A (ja) メモリデバイスとそれを使用する電子機器
CA2448301C (en) Electronic payment terminal, smart card adapted to such a terminal and method for loading a secret key in such a terminal
CN104504563A (zh) 一种移动信息安全设备及其工作方法
JP2000194799A (ja) 携帯型信号処理装置
JP2004266360A (ja) 認証処理装置及びセキュリティ処理方法
JP2005196412A (ja) データ通信装置及びデータ通信装置のメモリ管理方法
US7500110B2 (en) Method and arrangement for increasing the security of circuits against unauthorized access
Van Damme et al. Offline NFC payments with electronic vouchers
JP2004078495A (ja) 非接触式icカード
WO2010116666A1 (ja) メモリ装置、メモリ認証システム、及びメモリ認証プログラム
JP2008003976A (ja) メモリアクセス制御装置および方法、並びに、通信装置
JPWO2005122070A1 (ja) Icカードモジュール
KR200401587Y1 (ko) 원 타임 패스워드 생성용 스마트카드 리더 장치
KR100574234B1 (ko) 외부 메모리 카드의 삽입이 가능한 usb 보안 데이터저장 장치 및 그 저장 방법
JP2006227679A (ja) Usbメモリキー
KR100574238B1 (ko) Usb 인터페이스를 갖는 보안 칩을 구비한 데이터 저장장치 및 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10761372

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10761372

Country of ref document: EP

Kind code of ref document: A1