WO2005109740A1 - Icカード - Google Patents

Icカード Download PDF

Info

Publication number
WO2005109740A1
WO2005109740A1 PCT/JP2005/008657 JP2005008657W WO2005109740A1 WO 2005109740 A1 WO2005109740 A1 WO 2005109740A1 JP 2005008657 W JP2005008657 W JP 2005008657W WO 2005109740 A1 WO2005109740 A1 WO 2005109740A1
Authority
WO
WIPO (PCT)
Prior art keywords
card
encryption
key information
storage location
encryption key
Prior art date
Application number
PCT/JP2005/008657
Other languages
English (en)
French (fr)
Inventor
Fukio Handa
Yoshihiro Yano
Takayuki Chikada
Syouzou Niwata
Original Assignee
Dai Nippon Printing Co., Ltd.
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 Dai Nippon Printing Co., Ltd. filed Critical Dai Nippon Printing Co., Ltd.
Priority to US11/579,079 priority Critical patent/US20070226513A1/en
Publication of WO2005109740A1 publication Critical patent/WO2005109740A1/ja
Priority to US13/098,171 priority patent/US8595813B2/en

Links

Classifications

    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0827Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving distinctive intermediate devices or communication paths
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • H04L9/0833Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
    • H04L9/0836Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key using tree structure or hierarchical structure
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • H04L9/0897Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
    • 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/56Financial cryptography, e.g. electronic payment or e-cash

Definitions

  • the present invention relates to a cryptographic communication system and a cryptographic communication method, and more particularly, to a technology for performing cryptographic communication using an IC card for encryption or decryption processing. Background technology
  • IC cards have been used for a variety of purposes as portable information recording media with extremely high confidentiality since ancient times. ing.
  • a portable information recording medium having such confidentiality is most suitable for use in encryption processing or decryption processing.
  • a secret encryption key or an encryption key table (herein, collectively referred to as encryption key information) is used as a seed in the encryption algorithm.
  • encryption key information is used as a seed in the encryption algorithm.
  • Predetermined plaintext In the encryption process of converting data into ciphertext data, processing using this secret encryption key information is executed.
  • the secret encryption key information used in the encryption process is an indispensable element in the decryption process that returns the ciphertext data to plaintext data. That is, decryption cannot be performed without secret encryption key information. Therefore, if this secret key information is stored in the IC card, it will be extremely difficult to access the encryption key by unauthorized means, and the security of the key itself will be improved. Can be planned.
  • Cryptographic communication using an IC card can be realized by preparing two sets of IC cards that store the same encryption key information. That is, the sender holds the first IC card and the receiver holds the second IC card, and the sender uses the encryption key information in the first IC card to perform the encryption process. Then, the receiver may perform the decryption process using the encryption key information in the second IC card.
  • the sender holds the first IC card and the receiver holds the second IC card
  • the sender uses the encryption key information in the first IC card to perform the encryption process.
  • the receiver may perform the decryption process using the encryption key information in the second IC card.
  • signal communication between members belonging to the group can be performed. Becomes possible.
  • a system that uses a plurality of IC cards to perform cryptographic communication between many has already been proposed.
  • No. ⁇ communication system is a system for exchanging encrypted data so that only members belonging to a predetermined group can decrypt it in the first place, and outsiders who do not belong to the group can decrypt encrypted data. It is assumed that measures will be taken that will not be taken. However, in a relatively large company, the members of a particular group often change frequently.
  • An object of the present invention is to provide a cryptographic communication system and a cryptographic communication method, and to provide an IC card usable for the cryptographic communication system and the cryptographic communication method. Disclosure of the invention
  • a first aspect of the present invention relates to an IC card used to execute an encryption process or a decryption process using unique encryption key information
  • a memory a CPU for performing predetermined processing based on data and programs stored in the memory, and an IZO unit for exchanging information with the outside,
  • a first storage location, a second storage location, and a third storage location are secured in the memory, and a predetermined fixed code is stored in the first storage location in advance, and the fixed code is rewritten.
  • variable code In the second storage location, an arbitrary variable code can be written from outside, and this variable code is configured to be rewritable.
  • the memory has fixed code stored in the first storage location and a second storage location. By performing an arithmetic operation based on a predetermined algorithm using the variable code stored in the location, cryptographic key information uniquely determined according to the two codes is generated, and this is stored in the third storage location.
  • a second aspect of the present invention relates to an IC card used for executing an encryption process or a decryption process using unique encryption key information
  • a memory a CPU for executing a predetermined process based on data and a program stored in the memory, and an I unit for exchanging information with the outside,
  • a first storage location, a second storage location, and a third storage location are secured in the memory, and a predetermined fixed code is stored in the first storage location in advance, and the fixed code is rewritten.
  • variable code In the second storage location, an arbitrary variable code can be written from outside, and this variable code is configured to be rewritable.
  • the fixed code stored in the first storage location and the variable code stored in the second storage location are used to perform an arithmetic operation based on a predetermined algorithm, thereby responding to the two codes.
  • a key information generation program that generates cryptographic key information that is uniquely determined by a third party and stores it in a third storage location, and a third key that executes encryption or decryption processing outside the IC card.
  • a key reading program for reading out the encryption key information or a part thereof stored in the storage place,
  • the third aspect of the present invention provides the IC card for encryption or decryption processing according to the first or second aspect described above,
  • the key information generation program performs a process of generating an encryption key itself used for encryption or decryption as encryption key information.
  • a fourth aspect of the present invention provides the IC card for encryption or decryption according to the first or second aspect
  • the key information generation program performs a process of generating a key table which is used as encryption key information, a part of which is used as an encryption key used for encryption or decryption.
  • a fifth aspect of the present invention is a cryptographic communication system using an IC card for encryption or decryption processing according to the first to fourth aspects,
  • a first IC card and a second IC card each storing the same fixed code
  • a sixth aspect of the present invention is the cryptographic communication method using an IC card for encryption or decryption according to the first to fourth aspects
  • the receiver writes the transmitted variable code on the second IC card. And generating encryption key information by using the generated encryption key information, and performing a process of decoding the transmitted transmission target data using the generated encryption key information;
  • the encryption key information necessary for the encryption or decryption processing is internally processed in the IC card by an arithmetic processing based on two codes, a fixed code and a variable code, stored in the IC card.
  • the fixed code is data written in advance on the IC card, and is configured so as not to be rewritten. Therefore, for example, if the same fixed code unique to the company is written on an IC card issued to a specific company, the fixed code will be stored in the IC card held by the employee of the company. Since only the stored data is stored overnight, sufficient security measures can be taken against an unspecified number of people outside the company.
  • the variable code is freely rewritable code, it can be flexibly dealt with by rewriting it every time the members of the project team are changed.
  • FIG. 1 is a block diagram illustrating the configuration of a general IC card that is currently widely used and a process of encryption processing using the IC card.
  • FIG. 2 is a block diagram showing an embodiment in which the encryption / decryption processing is performed not in the IC card 100 but in an external arithmetic processing unit 200.
  • FIG. 3 is a diagram showing the concept of a key table used for the encryption Z decryption processing.
  • FIG. 4 is a block diagram showing a processing process of a key information generation program prepared in the IC card according to the present invention.
  • FIG. 5 is a block diagram showing a basic configuration of an IC card according to the present invention.
  • FIG. 6 is a block diagram showing an IC card issuing mode according to the present invention.
  • FIG. 7 is a block diagram showing a configuration example of a cryptographic communication system according to the present invention.
  • FIG. 1 is a block diagram illustrating a configuration of a general IC card 100 that is currently widely used and a process of an encryption process using the IC card 100.
  • the IC card 100 has a memory 110, a CPU 120, and an I / O unit 130.
  • the memory 110 includes a ROM 111 that is a non-rewritable nonvolatile memory, an EEPROM 112 that is a rewritable nonvolatile memory, and a RAM 113 that is a rewritable volatile memory.
  • the ROM 111 stores programs for executing basic processing functions of the IC card 100
  • the EEPROM 112 stores various data to be recorded on the IC card 100. One night is stored.
  • the RAMI 13 is used as a work area when the CPU 120 executes various processes.
  • the memory 110 can be accessed only by the CPU 120, and cannot be directly accessed from outside. Access from outside is performed via the I0 unit 130. That is, the CPU 120 executes a command externally applied through the IZO unit 130 based on the program in the ROM 1111 and returns the execution result as a response to the outside through the 10 unit 130.
  • the illustrated example is an example of an IC card having a function of executing an encryption process for converting plaintext data into ciphertext data and a conversely, a decryption process for converting ciphertext data into plaintext data.
  • the EEPROM 112 stores an encryption key used by the program.
  • the CPU 120 sends the given encryption command based on the program in the ROM 111.
  • a command is executed, a given encryption process is performed on the given plaintext data, and a process of outputting the obtained encrypted data together with a response to the outside via the IZO unit 130 is performed.
  • an encryption key stored in the EEPROM 112 is used.
  • the CPU 120 receives the given command based on the program in the ROM 111.
  • the encryption / decryption processing program is prepared in the ROM 111
  • this program may be prepared in the EEPROM 112. If a processing program for encryption and Z-decryption is prepared in the EEPROM 112, this processing program can be rewritten as necessary.
  • the IC card 100 having only the processing functions of encryption and decryption is shown, but in practice, since the IC card 100 is used for various purposes, the ROM 111 or the EE
  • the PROM 112 stores programs for executing various processes in these various applications.
  • FIG. 2 is a block diagram showing an embodiment when the processing is performed in the arithmetic processing device 200 of FIG.
  • plaintext data is given to the external arithmetic processing unit 200
  • ciphertext data is given, it will be output as plaintext data.
  • a program for encryption and decryption is provided in the external arithmetic processing unit 200, and the program uses the encryption key read from the IC card 100 to perform encryption and Z decryption. Will be executed. ⁇
  • the encryption key stored in the EEPROM 112 since the encryption key stored in the EEPROM 112 is read out of the IC card 100, the encryption key shown in FIG. The embodiment is better. In the embodiment shown in FIG. 1, since the encryption key stored in the EEPROM 112 is not read out of the IC card 100, the encryption key is stored in the EEPROM 112. After that, it is extremely unlikely to be known by illicit means.
  • FIGS. 1 and 2 show an example in which encryption processing and decryption processing are performed using an encryption key stored in an IC card, practically, encryption processing and decryption are performed.
  • an encryption key table may be stored.
  • FIG. 3 is a diagram illustrating the concept of such a key table.
  • one cell indicates one byte of data
  • a key table is constituted by a data string of a total of 20 bytes. If such a key table is stored in an IC card, a desired part of the key table can be extracted and used as an encryption key as needed, and a plurality of types of varieties can be obtained. It can be used as a cryptographic key with one option.
  • the key table shown in Fig. 3 can be said to be part of data used as a key for encryption used for encryption or decryption. Therefore, in the present application, the encryption key itself and the key table as shown in FIG. 3 are collectively referred to as “encryption key information”.
  • FIG. 4 is a block diagram showing a processing process of the key information generation program.
  • the key information generation program used in the present invention executes an arithmetic process based on a predetermined algorithm A using two data, a fixed code F and a variable code V, and generates encryption key information K Is generated.
  • the advantage of generating the encryption key information K by an algorithm using two data, the fixed code F and the variable code V, will be described later.
  • any algorithm may be used as the predetermined algorithm A, but in the figure, as an example, a fixed code F consisting of four digits and a variable code V consisting of four digits are shown. And sum the last 4 digits of this sum A simple algorithm for key information K is shown. For example, if the fixed code F is a number “6 7 8 9” and the variable code V is a number “5 1 5 1”, as shown in the figure, an encryption key consisting of the number “1 9 4 0” Information ⁇ will be generated. By adopting such an algorithm, given two data F and V, it is possible to generate cryptographic key information ⁇ ⁇ uniquely determined according to the two data.
  • the encryption key information K having an arbitrary number of digits is generated. It is possible. Therefore, the encryption key information K generated by such a method can be sufficiently used as the key table described above.
  • the algorithm for generating the encryption key information K is not necessarily limited to the arithmetic processing based on two sets of data. At least two data, a fixed code F and a variable code V, are used. An algorithm using the third data or the fourth data may be used as long as the algorithm can obtain the key information K for symbol ⁇ which is uniquely determined according to the data. In any case, in order to obtain the encryption key information K, two codes, a fixed code F and a variable code V, are required, and it is not possible to generate the encryption key information K with only one of them. Can not.
  • FIG. 5 is a block diagram showing a basic configuration of the IC card 100 according to one embodiment of the present invention.
  • the IC card 100 also exchanges information with the memory 110, the CPU 120, and the outside.
  • the memory 110 comprises a ROM 111, an EEPROM 112, and a RAM 113.
  • a basic program P 1, a key information generation program P 2, and an encryption / decryption program P 3 are stored in the ROM 110 1.
  • the first storage location L 1 is A location for storing the fixed code F
  • the CPU 120 executes a predetermined process based on the program stored in the ROM 111 and the data stored in the EEPROM 112 and the RAMI 13. As described above, the processing content executed by the CPU 120 is determined according to a command externally provided through the I / O unit 130, and the execution result is output to the outside as a response.
  • the fixed code F, the variable code V, and the encryption key information K stored in the EEPROM 112 correspond to each block shown in FIG.
  • the purpose of the IC card 100 is to execute an encryption process or a decryption process, and data necessary for the original purpose is the encryption key information K.
  • the fixed code F and the variable code V are data necessary for generating the encryption key information K based on the process shown in FIG.
  • the basic program P1 stored in the ROM 111 is a program necessary for the basic operation of the IC card 100, and is usually a program incorporated as an OS program for the IC card.
  • the process of writing the fixed code F in the first storage location L1 and the process of writing the variable code V in the second storage location L2 are executed by the basic program P1.
  • the actual writing operation is performed by performing an operation of giving a predetermined writing command and data to be written (fixed code F or variable code V) from outside via the IZ # unit 130.
  • variable code V is a freely writable code and can be rewritten at any time, but the fixed code F needs to be a fixed code so that it cannot be rewritten.
  • fixed so that rewriting is not possible means that the IC card 100 is fixed so that it cannot be rewritten by the user. In other words, this IC power
  • the fixed code F only needs to be in a state where it cannot be rewritten. If necessary, the fixed code F An operation that can rewrite F is also possible.
  • the first storage location L1 should be reserved in a special address area managed by the OS, and follow special procedures known only to the IC card manufacturer and provider. For example, an access control that does not allow data to be written to this special address area may be incorporated in the OS program. Alternatively, the configuration may be such that the write processing is permitted only once for this special address area. In any case, the process of writing the fixed code into the first storage location is performed by the manufacturer or provider of the IC card, and a general user holds the IC card 100 in his hand. Then, the predetermined fixed code F is already written in the first storage location.
  • the key information generation program P 2 is a program for generating the encryption key information K by executing the process shown in FIG. 4, and the fixed code F stored in the first storage location L 1
  • the program P2 is executed by giving a predetermined key information generation command from the outside via the I / O unit 130.
  • the encryption / decryption program P 3 executes encryption or decryption processing inside the IC card 100 using the encryption key information K stored in the third storage location L 3. It is a program to do.
  • This program P 3 When executing the encryption process, a command for the encryption process and plaintext data to be encrypted may be given from the outside via the 1/0 unit 130. The ciphertext data generated by the encryption process is output to the outside via the IZO unit 130 as a response.
  • a command for the decryption process and the ciphertext data to be decrypted are externally transmitted via the first unit 130. Just give it.
  • the plaintext data generated by the decryption processing is output to the outside via the IZO unit 130 as a response.
  • FIG. 6 is a block diagram showing an issuing mode of the IC card 100 according to the present invention.
  • the IC card provider X entrusted by the client company A and the client company B sends each employee belonging to each company a This is an example of issuing an Ic card.
  • the IC card provider X defines a fixed code F for each company.
  • a fixed code F (a) is defined for customer company A
  • a fixed code F (b) is defined for customer company B.
  • These codes F (a) and F (b) may be any codes as long as they are different from each other.
  • these fixed codes F (c) and F ( d) is defined.
  • the fixed code F is a unique code commonly assigned to one group (in the example shown, one company).
  • IC card provider X writes fixed code F (a) on the IC card that should be delivered to customer company A, and delivers it to customer company B.
  • the fixed code F (b) is written to the IC card to be processed.
  • the same fixed code F (a) is stored in the IC card 10 Oa issued to the employee of the company A, and the IC card 100 b issued to the employee of the company B , The same fixed code F (b) is stored.
  • IC card provider X will never deliver IC card 100a with fixed code F (a) written to other than company A, and fixed code F (b) for companies other than company B. None ship an IC card 10 Ob on which is written. If this operation is performed, the person holding the IC card 100a with the fixed code F (a) written is limited to employees of company A, and the IC card 10 O with the fixed code F (b) written. The person who possesses b is limited to the employees of company b, so at least it is possible to construct a signal communication system that ensures sufficient security outside the company.
  • An object of the present invention is to perform encrypted communication between members belonging to a predetermined group.
  • FIG. 7 is a block diagram showing a configuration example of the cryptographic communication system according to the present invention.
  • employee a who is at the Tokyo head office of company A
  • employee ⁇ who is at the Osaka branch office
  • a case where the encrypted communication according to the present invention is used will be considered.
  • each employee of Company I is provided with an IC card 100a. Therefore, employees Q! And i3 also have this IC card 100a, in which the same fixed code F (a) is stored.
  • two IC cards having the functions described in ⁇ 2 and storing the same fixed code are prepared, and one of the IC cards is used. It is necessary to place the other IC card on the sender side (employee ⁇ side) and the other IC card on the receiver side (employee 3 side).
  • the employee a who is the sender writes the predetermined variable code V on the IC card to generate the encryption key information ⁇ .
  • employee 0 inputs a variable code V (1) to his / her IC card 100a and generates encryption key information K (a1). It is shown.
  • the process of writing the variable code V (1) to the second storage location L2 can be performed by executing the write process function of the basic program P1 using a predetermined write command.
  • the process of generating the encryption key information K (a1) can be performed by executing a key information generation program by a predetermined key information generation command. it can. As shown in FIG.
  • the encryption key information K (a 1) is generated by performing an arithmetic operation on the fixed code F (a) and the variable code V (1) based on a predetermined algorithm.
  • the variable code V (1) may be any code, but should be kept secret so that it cannot be known to anyone other than the members of the project team.
  • the encryption processing using the encryption key information K (a1) is executed, whereby the plaintext to be transmitted is transmitted. Encrypt the data D1 and create a ciphertext data D2. As described above, this encryption processing can be performed by executing the encryption / decryption program P3 with a predetermined encryption processing command.
  • the employee transmits the created ciphertext data D2 to the Osaka branch via the transmission means T.
  • the ciphertext data D2 is transmitted from the transmitting means at the Tokyo head office to the receiving means R at the Osaka branch office.
  • the transmitting means T and the receiving means R may be constituted by any device having a general transmitting / receiving function.
  • a dedicated line connecting the head office and branch of Company A may be used, or transmission using a public transmission network such as the Internet (for example, data transfer using a protocol such as FTP, or as an attached document of e-mail) May be used. Since the ciphertext data D2 is encrypted, security at the time of transmission can be sufficiently ensured.
  • the employee transmits the variable code V (1) to the employee; 8 by any means. Specifically, it can be communicated using e-mail, telephone, or fax. Of course, it is not always necessary to transmit the variable code V (1) itself, and if / 3 can be understood, only the hint that can infer the variable code V (1) can be transmitted. It doesn't matter. For example, if the leader name of the project team is used as the variable code V (1), it is sufficient to pass on the information "leader name" to / 3. Or use the same variable code V (1) as before If so, the information "same as last time" can be sent to] 3.
  • the receiving means R executes the decryption process using the encryption key information K (a 1), thereby Decrypt the received ciphertext data D2 to create plaintext data D3.
  • this decoding process can be performed by executing the decoding / decoding program P3 with a predetermined decoding process command.
  • the obtained plaintext data D3 is the same as the original plaintext data D1.
  • the above shows an example in which employee Q! Sends an encrypted message to an employee. If the project team consists of four members, for example, employee Q !, ⁇ completed, and ⁇ , employee Q and employee ⁇ Can be transmitted in a similar manner. Now, let's say that the employee gets out of the project team.
  • variable code V (1) may be changed to another variable code V (2) when the employee is removed.
  • the operation may be performed such that the variable code is changed each time, and the employee who has left may not be notified of the new variable code.
  • each company corresponds to a group of a higher hierarchy.
  • Company A and Company B are respectively separate groups as upper-level groups.
  • the project team established in Company A can be called a lower-level group.
  • an IC card 100a containing a fixed code F (a) is available only to employees of company A, and is not available to employees of company B or other ordinary people. Therefore, in the process of transmitting the variable code V (1) in the example of FIG. 7, even if the variable code V (1) might leak, The ciphertext data D2 cannot be decrypted.
  • variable code V (1) if the variable code V (1) is leaked, if the employee of Company A is an employee who does not belong to the project team, he can decrypt the ciphertext data D2 It is possible that However, in general, the risk of being deciphered by people inside the company is smaller than the risk of being deciphered by people outside the company.
  • the purpose of the present invention is to ensure sufficient security between upper-layer groups when a group definition having a hierarchical structure is made, but to allow some security between lower-layer groups. The point is that even if security deteriorates, it can flexibly respond to member fluctuations.
  • the IC card described so far is suitable for constructing such an intended cryptographic communication system.
  • the key table shown in FIG. 3 is used as the encryption key information K stored in the third storage location L3 shown in FIG. It is also possible. In this case, an instruction to “use 8 bytes from the 7th byte as an encryption key” together with the variable code V may be transmitted from the sender to the receiver.
  • the IC card 100 shown in FIG. 5 is an embodiment used when an encryption process or a decryption process is performed inside the IC card, but as shown in FIG. There may be cases where encryption or decryption is performed externally. In the case where the present invention is applied to such a case, instead of the encryption / decryption program P3 shown in FIG. When a key table as shown in FIG. 3 is used as the key information, a key reading program P 4 for reading a part of the key table may be prepared.
  • one company is treated as one group (the above-mentioned higher-level group) and issued to employees in the same company: All the same fixed codes F are stored in the Ic card.
  • departments and sections within the same company can be treated as one group. In this case, even in the same company, different fixed codes will be allocated according to the department or section to which they belong. Conversely, multiple companies can be treated as a group. In this case, the same fixed code is allocated to different companies.

Abstract

グループ内のメンバー間で暗号通信を行う場合に、メンバーに変動が生じても柔軟に対応し、十分なセキュリティを確保する。企業Aの社員全員に、同一の固定コードF(a)が格納されたICカードを配付する。同じプロジェクトグループに所属する社員α,β間で暗号通信を行う場合、送信側のαは、任意の可変コードV(1)をICカード100aに書き込み、ICカード内部でF(a)とV(1)に基づき暗号用鍵情報K(a1)を発生させ、K(a1)を用いて、データD1を暗号化する。受信側のβは、αから伝達を受けた可変コードV(1)を、ICカード100bに書き込み、暗号用鍵情報K(a1)を発生させる。このK(a1)を用いて、受信した暗号文データD2を復号化してデータD3を得る。固定コードF(a)は企業ごとに異ならせ、書換不能とすることにより、セキュリティを確保する。

Description

I Cカード
技 術 分 野
本発明は、 暗号通信システムおよび暗号通信方法に関し、 特に、 暗号化もし くは復号化処理用の I Cカードを利用して暗号通信を行う技術に関する。 背 景 技 術
近年、 コンピュータネットワークの普及により、 暗号通信の技術は、 極めて 重要かつ不可欠の技術となっている。 一般的な暗号通信の方法では、 送信者側 において、 送信対象デ一夕を暗号化し、 暗号文データとして受信者側へと送信 し、 受信者側では、 送信されてきた暗号文データを復号化して元の送信対象デ 一夕を得る、 という手順が実行される。 したがって、 両者間で暗号通信を行う には、 データの送受信を行う手段を設けるとともに、 送信者側に暗号化処理を 実行する手段を設け、 受信者側に復号化処理を実行する手段を設ける必要があ る。
このような暗号化処理あるいは復号化処理を実行する方法として、 I Cカー ドを利用する方法が脚光を浴びている。 I Cカードは、 極めて機密性の高い携 帯型情報記録媒体として古くから様々な用途に利用されており、 最近では、 社 員証を兼ねた多機能の I Cカードを各社員に配付する企業も増えている。 この ような機密性を有する携帯型情報記録媒体は、 暗号化処理あるいは復号化処理 に利用するのに最適である。 一般的な暗号化の手法では、 暗号化アルゴリズム における種(Seed)として秘密の暗号用キ一や暗号用キーテーブル(ここでは、 これらを総称して暗号用鍵情報と呼ぶ) が用いられることが多い。 所定の平文 データを暗号文データに変換する暗号化プロセスでは、 この秘密の暗号用鍵情 報を用いた処理が実行される。 この場合、 暗号文デ一夕を平文データに戻す復 号化プロセスでは、 暗号化プロセスで用いた秘密の暗号用鍵情報が不可欠の要 素となる。 すなわち、 秘密の暗号用鍵情報がない限り、 復号化を行うことがで きない。 そこで、 この秘密の喑号用鍵情報を I Cカードに格納しておくように すれば、 不正な手段で暗号用キーにアクセスすることが非常に困難になり、 喑 号文自身のセキュリティの向上を図ることができる。
I Cカードを利用した暗号通信は、 同一の暗号用鍵情報を格納した 2組の I Cカードを用意することにより実現できる。 すなわち、 第 1の I Cカードを送 信者が所持し、 第 2の I Cカードを受信者が所持するようにし、 送信者は第 1 の I Cカード内の暗号用鍵情報を利用して暗号化処理を行い、 受信者は第 2の I Cカード内の暗号用鍵情報を利用して復号化処理を行えばよい。 もちろん、 同一の暗号用鍵情報が格納された多数の I Cカードを用意し、 これを所定のグ ループに所属するメンバーに配付するようにすれば、 当該グループに所属する メンバー間での喑号通信が可能になる。 このように、 複数の I Cカードを利用 して多数間での暗号通信を行うシステムは、 既に提案されている。
喑号通信システムは、 そもそも所定のグループに所属するメンバーに限って 解読が可能となるように、 暗号データをやりとりするシステムであり、 グルー プに所属しない部外者には、 暗号データの解読が行われることのないような対 策がとられることを前提としている。 しかしながら、 比較的大規模な企業など では、 特定のグループに所属するメンバーが、 頻繁に変動するケースも少なく ない。
たとえば、 社内で、 ある特定のプロジェクトを遂行するために、 特定のメン パーからなるプロジェクトチームを発足させたとしょう。 この場合、 当該プロ ジェクトチームのメンバーのみを対象として、 暗号通信を行いたい、 という状 況が起こりうるであろう。 このような場合、 もちろん、 当該特定のプロジェク トに関与しない社員には、 解読を行うことができないような態様で暗号通信を 行うことが、 従来の暗号通信技術でも可能である。 ただ、 社内のプロジェクト チームは、 一定の期間が経過すると、 解散したり、 合併したり、 新規メンバー が加わったり、 既存メンバーが抜けたりと、 頻繁にメンバ一の変動が起こりや すい。 したがって、 実用上は、 メンバ一の変動に応じて、 柔軟に対処可能な喑 号通信システムが必要になる。 しかし、 柔軟性とセキュリティとは、 一般的に は相反する要素であり、 柔軟性をもたせれば、 それだけセキュリティは低下せ ざるを得ない。 '
そこで本発明は、 所定のグループに所属するメンバー間で暗号通信を行う場 合に、 メンバーに変動が生じても柔軟な対応が可能であり、 かつ、 十分なセキ ュリティを確保することが可能な暗号通信システムおよび暗号通信方法を提供 することを目的とし、 また、 これに利用可能な I Cカードを提供することを目 的とする。 発 明 の 開 示
(1) 本発明の第 1の態様は、 固有の暗号用鍵情報を用いた暗号化処理もしく は復号化処理を実行するために利用される I Cカードにおいて、
メモリと、 このメモリ内に格納されているデータおよびプログラムに基づい て所定の処理を実行する C P Uと、 外部に対して情報のやりとりを行う I ZO 部と、 を設け、
メモリには、 第 1の格納場所、 第 2の格納場所、 第 3の格納場所を確保し、 第 1の格納場所には、 予め所定の固定コードを格納しておき、 この固定コー ドは書き換えができないように構成しておき、
第 2の格納場所には、 外部から任意の可変コ一ドを書き込むことができるよ うにし、 この可変コードは書き換えができるように構成しておき、
メモリには、 第 1の格納場所に格納されている固定コードおよび第 2の格納 場所に格納されている可変コードを用いて、 所定のアルゴリズムに基づく演算 処理を行うことにより、 2つのコードに応じて一義的に定まる暗号用鍵情報を 発生させ、 これを第 3の格納場所に格納する鍵情報発生プログラムと、 第 3の 格納場所に格納されている暗号用鍵情報を利用して I C力一ド内部で暗号化処 理もしくは復号化処理を実行する暗号化ノ復号化プログラムと、
を格納しておくようにしたものである。
(2) 本発明の第 2の態様は、 固有の暗号用鍵情報を用いた暗号化処理もしく は復号化処理を実行するために利用される I Cカードにおいて、
メモリと、 このメモリ内に格納されているデータおよびプログラムに基づい て所定の処理を実行する C P Uと、 外部に対して情報のやりとりを行う I 部と、 を設け、
メモリには、 第 1の格納場所、 第 2の格納場所、 第 3の格納場所を確保し、 第 1の格納場所には、 予め所定の固定コードを格納しておき、 この固定コー ドは書き換えができないように構成しておき、
第 2の格納場所には、 外部から任意の可変コードを書き込むことができるよ うにし、 この可変コードは書き換えができるように構成しておき、
メモリには、 第 1の格納場所に格納されている固定コードおよび第 2の格納 場所に格納されている可変コードを用いて、 所定のアルゴリズムに基づく演算 処理を行うことにより、 2つのコードに応じて一義的に定まる暗号用鍵情報を 発生させ、 これを第 3の格納場所に格納する鍵情報発生プログラムと、 I C力 ―ド外部で暗号化処理もしくは復号化処理を実行するために第 3の格納塲所に 格納されている暗号用鍵情報もしくはその一部を外部へ読み出す鍵読出プログ ラムと、 '
を格納しておくようにしたものである。
(3) 本発明の第 3の態様は、 上述の第 1または第 2の態様に係る暗号化もし くは復号化処理用の I Cカードにおいて、 鍵情報発生プログラムが、 暗号用鍵情報として、 暗号化もしくは復号化に用 いる暗号用キー自身を発生させる処理を行うようにしたものである。
(4) 本発明の第 4の態様は、 上述の第 1または第 2の態様に係る暗号化もし くは復号化処理用の I Cカードにおいて、
鍵情報発生プログラムが、 暗号用鍵情報として、 その一部分が、 暗号化もし くは復号化に用いる暗号用キーとして利用されるキーテーブルを発生させる処 理を行うようにしたものである。
(5) 本発明の第 5の態様は、 上述の第 1〜第 4の態様に係る暗号化もしくは 復号化処理用の I Cカードを利用した暗号通信システムにおいて、
互いに同一の固定コードが格納されている第 1の I Cカードおよび第 2の I Cカードと、
第 1の I C力一ドを用いて暗号化された暗号文データを送信する送信手段と、 送信されてきた暗号文デ一夕を受信し、 これを復号化するために第 2の I C カードに与える受信手段と、
を設けるようにしたものである。
(6) 本発明の第 6の態様は、 上述の第 1〜第 4の態様に係る暗号化もしくは 複号化処理用の I Cカードを利用した暗号通信方法において、
互いに同一の固定コードが格納されている第 1の I Cカードおよび第 2の I Cカードを用意し、 第 1の I Cカードを送信者側に、 第 2の I Cカードを受信 者側に、 それぞれ配置する準備段階と、
送信者側において、—第 1の I C力一ドに所定の可変コードを書き込んで暗号 用鍵情報を発生させ、 発生させた暗号用鍵情報を利用して、 送信対象データを 暗号化する処理を行う暗号化段階と、
送信者側から受信者側に、 暗号化された送信対象データを送信するとともに、 第 1の I Cカードに書き込んだ可変コードを伝達する送信伝達段階と、
受信者側において、 伝達されてきた可変コードを、 第 2の I Cカードに書き 込んで暗号用鍵情報を発生させ、 発生させた暗号用鍵情報を利用して、 送信さ れてきた送信対象データを復号化する処理を行う復号化段階と、
を行うようにしたものである。
本発明によれば、 暗号化処理あるいは復号化処理に必要な暗号用鍵情報は、 I Cカード内部に格納されている固定コードおよび可変コードなる 2つのコー ドに基づく演算処理によって、 I Cカード内部で発生される。 ここで、 固定コ ードは、 I Cカードに予め書き込まれたデ一夕であり、 書き換えができないよ う構成されている。 したがって、 たとえば、 特定の企業に対して発行する I C カードに、 当該企業に固有の同一の固定コードを書き込んでおくようにすれば、 当該固定コードは、 当該企業の社員が所持する I cカードにのみ格納されたデ 一夕となるので、 社外の不特定多数の者に対しては十分なセキュリティ対策を 施すことができる。 一方、 可変コードは、 自由に書き換えが可能なコードであ るので、 プロジェクトチームのメンバ一改変などがあるたびに、 新たに書き換 えるようにすれば、 柔軟な対応が可能になる。 図 面 の 簡 単 な 説 明
図 1は、 現在広く利用されている一般的な I Cカードの構成と、 この I C力 ードを利用した暗号化処理のプロセスを説明するブロック図である。
図 2は、 暗号化/復号化の処理を、 I C力 ド 1 0 0の内部ではなく、 外部 の演算処理装置 2 0 0内で行う場合の実施形態を示すブロック図である。
図 3は、 暗号化 Z復号化処理に利用されるキーテーブルの概念を示す図であ る。
図 4は、 本発明に係る I Cカード内に用意される鍵情報発生プログラムの処 理プロセスを示すブロック図である。
図 5は、 本発明に係る I Cカードの基本構成を示すブロック図である。
図 6は、 本発明に係る I Cカードの発行形態を示すブロック図である。 図 7は、 本発明に係る暗号通信システムの構成例を示すブロック図である 発明を実施するための最良の形態
«< § 1. 暗号用鍵情報を格納した一般的な I Cカード >>> 本発明に係る暗号通信システムは、 暗号化もしくは復号化処理用の I Cカー ドを利用して暗号通信を行うシステムである。 そこで、 はじめに、 暗号用鍵情 報を格納した一般的な I Cカードの構成と、 この I Cカードを利用した暗号化 および復号化のプロセスを簡単に説明しておく。 図 1は、 現在広く利用されて いる一般的な I Cカード 100の構成と、 この I Cカード 100を利用した暗 号化処理のプロセスを説明するブロック図である。 図示のとおり、 この I C力 —ド 1 00は、 メモリ 1 10と、 CPU120と、 I 0部 130とを有して いる。 ここに示す例では、 メモリ 1 10は、 書換不能な不揮発性メモリである ROM11 1と、 書換可能な不揮発性メモリである EEPROM1 12と、 書 換可能な揮発性メモリである RAM 113から構成されている。 ROM1 1 1 には、 この I Cカード 100が備えている基本的な処理機能を実行するための プログラムが格納されており、 EEPROM1 12には、 この I Cカード 10 0に記録しておくべき種々のデ一夕が格納されている。また、 RAMI 13は、 CPU 120が種々の処理を実行する際の作業領域として利用される
メモリ 1 10は、 CPU120によってのみアクセス可能であり、 外部から 直接メモリ 1 10へアクセスすることはできない。 外部からのアクセスは、 I 0部 130を介して行われる。 すなわち、 CPU120は、 IZO部 130 を介して外部から与えられるコマンドを、 ROM1 1 1内のプログラムに基づ いて実行し、 実行結果をレスポンスとして、 1 0部 130を介して外部へと 返す。 図示の例は、平文データを暗号文データに変換する暗号化処理と、逆に、 暗号文データを平文データに変換する復号化処理とを実行する機能を有する I Cカードの例であり、 ROM11 1内には、 この暗号化および復号化を行うた めのプログラムが格納されており、 EEPROM 1 12内には、 このプログラ ムが利用する暗号用キーが格納されている。
この I Cカード 100に対して、 I/O部 130を介して、 所定の暗号化コ マンドと平文データを与えると、 CPU 120は、 ROM1 1 1内のプログラ ムに基づいて、 与えられた暗号化コマンドを実行し、 与えられた平文データに 対して所定の暗号化処理を施し、 得られた暗号文データを、 IZO部 130を 介して、 レスポンスとともに外部へ出力する処理を行う。 この暗号化処理を行 う際に、 EEPROM1 12内に格納されている暗号用キーが利用される。 逆 に、 この I Cカード 100に対して、 I/O部 130を介して、 所定の復号化 コマンドと暗号文データを与えると、 CPU 120は、 ROM11 1内のプロ グラムに基づいて、 与えられた復号化コマンドを実行し、 与えられた暗号文デ 一夕に対して所定の復号化処理を施し、 元の平文データを復元し、 この平文デ 一夕を、 I/O部 130を介して、 レスポンスとともに外部へ出力する処理を 行う。 この復号化処理を行う際にも、 EEPROM112内に格納されている 暗号用キーが利用される。 このとき、 暗号化処理に用いた暗号用キーと同一の キーを用いないと、 平文データの復元を正しく行うことはできない。
なお、 ここでは、 暗号化/復号化の処理プログラムが ROM11 1内に用意 されている例を示したが、 このプログラムは EEPROM1 12に用意してお くことも可能である。 暗号化 Z復号化の処理プログラムを EEPROM 1 12 内に用意しておくようにすると、 必要に応じて、 この処理プログラムを書き換 えることも可能である。 また、 ここでは説明の便宜上、 暗号化および復号化の 処理機能のみをもった I Cカード 100を示すが、 実用上は、 I Cカード 10 0は様々な用途に利用されるので、 ROM1 1 1あるいは EE PROM 1 12 内には、 これら様々な用途における様々な処理を実行するためのプログラムが 格納されていることになる。
図 2は、 暗号化/復号化の処理を、 I Cカード 100の内部ではなく、 外部 の演算処理装置 2 0 0内で行う場合の実施形態を示すブロック図である。 この 例では、 外部の演算処理装置 2 0 0に平文データを与えると、 暗号文データと して出力されることになり、 逆に、 暗号文データを与えると、 平文データとし て出力されることになる。 このように、 暗号化/復号化の処理を外部の演算処 理装置 2 0 0で行う場合、 E E P R OM 1 1 2内に格納されている暗号用キ一 が、 I 〇部 1 3 0を介して、外部の演算処理装置 2 0 0側へと読み出される。 暗号化および復号化のためのプログラムは、 外部の演算処理装置 2 0 0側に用 意されており、 当該プログラムが、 I Cカード 1 0 0から読み出した暗号用キ —を用いて暗号化 Z復号化の処理を実行することになる。 ·
図 2に示す実施形態では、 E E P R O M 1 1 2内に格納されている暗号用キ —が、 I Cカード 1 0 0の外部へと読み出されてしまうため、 セキュリティの 観点からは、図 1に示す実施形態の方が優れている。図 1に示す実施形態では、 E E P R O M 1 1 2に格納された暗号用キ一が I Cカード 1 0 0の外部に読み 出されることはないので、 暗号用キ一が E E P R OM 1 1 2に格納された後は、 不正な手段で知られる可能性は極めて低い。
なお、 図 1および図 2では、 I Cカード内に格納されている暗号用キ一を用 いて、 暗号化処理および復号化処理を行う例を示したが、 実用上は、 暗号化処 理および復号化処理に用いる暗号用キーそのものを I C力一ド内に格納する代 わりに、 暗号用キ一テーブルを格納する場合もある。 図 3は、 このようなキー テ一ブルの概念を示す図である。 図示の例では、 1つのマス目は 1バイトのデ 一夕を示しており、 合計 2 0バイトのデータ列によって、 キ一テーブルが構成 されている。 このようなキーテーブルを I Cカード内に格納しておくようにす れば、 必要に応じて、 このキーテーブルの所望の一部分を暗号用キーとして抽 出して利用することができ、 複数通りのバリエ一シヨンをもった暗号用キーと して利用することができるようになる。
たとえば、 暗号化処理の際に、 「7バイト目から 8バイト分を暗号用キ一とし て用いよ」 なる指示を外部から与えて暗号化処理を実行させたとすれば、 図示 の例のように、 キーテーブルから指定された一部分のみが抽出されて暗号用キ 一として利用されることになる。 このような方法で暗号化されたデータを復号 化する際には、 暗号化処理の際と同じ 「7バイト目から 8バイト分を暗号用キ 一として用いよ」 なる指示を与えて、 暗号用キーを特定する必要があるので、 セキュリティを更に向上させることが可能になる。
結局、 図 3に示すキーテーブルは、 その一部分が、 暗号化もしくは復号化に 用いる暗号用キ一として利用されるデータということができる。 そこで、 本願 では、 暗号用キー自身と、 図 3に示すようなキーテーブルと、 を総称して 「暗 号用鍵情報」 と呼ぶことにする。
«< § 2 . 本発明に係る I Cカードの構成 >>>
上述した § 1では、 暗号化および復号化に利用される一般的な I Cカードの 構成を説明したが、 ここでは、 本発明に係る I Cカードの構成を説明する。 本 発明に係る I Cカードの特徴は、 2つのコードを用いて、 所定のアルゴリズム に基づく演算処理を行うことにより、 これら 2つのコードに応じて一義的に定 まる暗号用鍵情報を発生させる鍵情報発生プログラムを内蔵している点である。 そこで、 まず、 この鍵情報発生プログラムの処理プロセスの概念を説明する。 図 4は、 この鍵情報発生プログラムの処理プロセスを示すブロック図である。 本発明で用いられる鍵情報発生プログラムは、 図示のとおり、 固定コード Fと 可変コード Vという 2つのデ一夕を用いて、 所定のアルゴリズム Aに基づく演 算処理を実行し、 暗号用鍵情報 Kを生成する機能を有している。 このように、 固定コード Fと可変コード Vという 2つのデータを用いたアルゴリズムによつ て暗号用鍵情報 Kを生成させるメリッ卜については後述する。
ここで、 所定のアルゴリズム Aとしては、 どのようなアルゴリズムを用いて もかまわないが、 図には、 一例として、 4桁の数字からなる固定コード Fと、 同じく 4桁の数字からなる可変コード Vとの和を求め、 この和の下 4桁を暗号 用鍵情報 Kとする単純なアルゴリズムが示されている。 たとえば、 固定コード Fが 「6 7 8 9」 なる数字、 可変コード Vが 「5 1 5 1」 なる数字であった場 合、 図示のとおり、 「1 9 4 0」 なる数字からなる暗号用鍵情報 Κが生成される ことになる。 このようなアルゴリズムを採用すれば、 2つのデータ Fおよび V が与えられると、 この 2つのデータに応じて一義的に定まる暗号用鍵情報 Κを 発生させることができる。 固定コード Fの桁数や可変コード Vの桁数を適当に 設定することにより、 あるいはアルゴリズム Αとして特定のアルゴリズムを採 用することにより、 任意の桁数をもつた暗号用鍵情報 Kを発生させることが可 能である。 したがって、 このような方法で発生させた暗号用鍵情報 Kは、 前述 したキーテーブルとして利用することも十分に可能である。
なお、 暗号用鍵情報 Kを発生させるアルゴリズムは、 必ずしも 2つのデ一夕 に基づく演算処理に限定されるものではなく、 固定コード Fと可変コード Vと いう 2つのデータが少なくとも用いられ、 これら 2つのデ一夕に応じて一義的 に定まる喑号用鍵情報 Kが得られるアルゴリズムであれば、 第 3のデータや第 4のデータを用いる演算であってもかまわない。 いずれにしても、 暗号用鍵情 報 Kを得るためには、 固定コード Fと可変コード Vとの 2つのコードが必要に なり、 どちらか一方だけでは、 暗号用鍵情報 Kを生成することはできない。 図 5は、 本発明の一実施形態に係る I Cカード 1 0 0の基本構成を示すプロ ック図である。 § 1で述べた従来の一般的な I Cカードと同様に、 図 5の実施 形態に係る I Cカード 1 0 0も、 メモリ 1 1 0と、 C P U 1 2 0と、 外部に対 して情報のやりとりを行う I ZO部 1 3 0と、を有しており、メモリ 1 1 0は、 R OM 1 1 1、 E E P R OM 1 1 2、 RAM 1 1 3から構成されている。
この実施形態の場合、 図示のとおり、 R OM 1 1 1内には、 基本プログラム P 1 , 鍵情報発生プログラム P 2, 暗号化 復号化プログラム P 3が格納され ており、 E E P R OM 1 1 2内には、 第 1の格納場所 L 1、 第 2の格納場所 L 2、 第 3の格納場所 L 3が確保されている。 ここで、 第 1の格納場所 L 1は、 固定コード Fを格納するための場所であり、 第 2の格納場所 L 2は、 可変コー ド Vを格納するための場所であり、 第 3の格納場所 L 3は、 暗号用鍵情報 Kを 格納するための場所である。 CPU120は、 ROM1 1 1内に格納されてい るプログラムおよび EEPROM 1 12や RAMI 13内に格納されているデ 一夕に基づいて所定の処理を実行することになる。 前述したとおり、 CPU1 20が実行する処理内容は、 I/O部 130を介して外部から与えられるコマ ンドに応じて決定され、 実行結果はレスポンスとして外部へと出力される。
EEPROM1 12内に格納されている固定コード F、 可変コード V、 暗号 用鍵情報 Kは、 図 4に示す各ブロックに対応するものである。 この I Cカード 100の目的は、 暗号化処理もしくは復号化処理を実行することにあり、 この 本来の目的のために必要なデータは、 暗号用鍵情報 Kである。 これに対して、 固定コード Fおよび可変コード Vは、 図 4に示すプロセスに基づいて、 暗号用 鍵情報 Kを生成するために必要なデータということになる。
ROM1 11に格納されている基本プログラム P 1は、 この I Cカード 10 0の基本的な動作に必要なプログラムであり、 通常、 この I Cカード用の OS プログラムとして組み込まれるプログラムである。 本実施形態の場合、 第 1の 格納場所 L 1に固定コード Fを書き込む処理や、 第 2の格納場所 L 2に可変コ —ド Vを書き込む処理は、 この基本プログラム P 1によって実行される。 実際 の書込作業は、 外部から IZ〇部 130を介して、 所定の書込コマンドと書込 対象データ (固定コード Fもしくは可変コード V) とを与える操作を行うこと によりなされる。
なお、 後述するように、 可変コード Vは、 自由に書き込みが可能なコードで あり、 随時、 書き換えることができるが、 固定コード Fは、 書き換えができな いように固定されたコードにしておく必要がある。 もっとも、 ここで、 「書き換 えができないように固定された」 とは、 この I Cカード 100の利用者にとつ て書き換えができないように固定されていればよい。 別言すれば、 この I C力 ード 1 0 0が通常の利用環境下にある限りは、 固定コード Fの書き換えができ ない状態になっていればよいので、 必要があれば、 製造者あるいは提供者につ いては、 固定コード Fを書き換えることができるような運用も可能である。 このように、 固定コード Fの書き換えができないような構成をとるためには、 通常の環境下では、 書込コマンド (いわゆる WR I T Eコマンド) による第 1 の格納場所 L 1への書き込みが禁止されるような手段を講じておけばよい。 具 体的には、 第 1の格納場所 L 1を、 O Sによって管理される特別なアドレス領 域に確保するようにし、 I Cカードの製造者や提供者のみが知っている特別な 手順を踏まなければ、 この特別なァドレス領域へのデータ書き込みができない ようなアクセス制御を、 O Sプログラムに組み込んでおけばよい。 あるいは、 この特別なアドレス領域に対しては、 書込処理が 1回のみ許されるような構成 にしておいてもよい。 いずれにしても、 この第 1の格納場所に対する固定コー ドの書込処理は、 I Cカードの製造者あるいは提供者側で行われるようにし、 一般の利用者が、 I Cカード 1 0 0を手にしたときには、 既に、 第 1の格納場 所に所定の固定コード Fが書き込まれている状態となるようにする。
一方、 鍵情報発生プログラム P 2は、 図 4に示すプロセスを実行することに より暗号用鍵情報 Kを発生させるためのプログラムであり、 第 1の格納場所 L 1に格納されている固定コード Fおよび第 2の格納場所 L 2に格納されている 可変コード Vを用いて、 所定のアルゴリズム Aに基づく演算処理を行うことに より、 これら 2つのコードに応じて一義的に定まる暗号用鍵情報 Kを発生させ、 これを第 3の格納場所 L 3に格納する処理が行われる。 実際には、 外部から I /0部 1 3 0を介して、 所定の鍵情報発生コマンドを与えることにより、 プロ グラム P 2が実行されることになる。
また、 暗号化ノ復号化プログラム P 3は、 第 3の格納場所 L 3に格納されて いる暗号用鍵情報 Kを利用して I Cカード 1 0 0の内部で暗号化処理もしくは 復号化処理を実行するためのプログラムである。 このプログラム P 3により暗 号化処理を実行する際には、 外部から 1/0部130を介して、 暗号化処理の ためのコマンドと、 暗号化の対象となる平文データとを与えればよい。 暗号化 処理により生成された暗号文データは、 レスポンスとして、 IZO部 130を 介して外部へ出力される。 同様に、 このプログラム P 3により復号化処理を実 行する際には、 外部から 1 〇部130を介して、 復号化処理のためのコマン ドと、 復号化の対象となる暗号文データとを与えればよい。 復号化処理により 生成された平文デ一夕は、 レスポンスとして、 IZO部 130を介して外部へ 出力される。
なお、 この図 5に示す実施形態では、 説明の便宜上、 各プログラム P 1〜P 3がすべて ROM 11 1内に用意されている例を示したが、 これらのプロダラ ムは EE PROM 112に用意しておくことも可能である。 また、 前述したと おり、 I Cカード 100は様々な用途に利用されるので、 実用上は、 ROM1 1 1あるいは EE PROM 1 12内には、 これら様々な用途における様々な処 理を実行するためのプログラムも格納されることになる。 一方、 データに関し ても、 図 5に示す実施形態では、 可変コード Vおよび暗号用鍵情報 Kを EE P ROM 112内に格納した例を示したが、 可変コード Vの入力作業、 暗号用鍵 情報 Kの発生作業 (プログラム P 2の実行)、 暗号化もしくは復号化の処理作業 (プログラム P 3の実行) を、 I Cカード 100に対する電源供給を停止させ ることなく連続して実行するのであれば、 可変コード Vを格納する第 2の格納 場所 2および暗号用鍵情報 Kを格納する第 3の格納場所 L 3を、 揮発性メモ リである RAMI 13内に確保することも可能である。
«< § 3. 本発明に係る暗号通信システム >>>
続いて、 § 2で述べた I Cカード 100を利用した暗号通信システムの運用 例を説明する。 図 6は、 本発明に係る I Cカード 100の発行形態を示すプロ ック図である。 ここに示す形態は、 顧客企業 Aおよび顧客企業 Bからの委託を 受けた I Cカード提供業者 Xが、 それぞれの企業に所属する個々の社員に対し て、 それぞれ I cカードを発行する事例である。
この事例では、 まず、 I Cカード提供業者 Xは、 各企業ごとに、 それぞれ固 定コ一ド Fを定義する。 .図示の例では、 顧客企業 Aに対しては、 固定コード F (a) が定義され、 顧客企業 Bに対しては、 固定コード F (b) が定義された 例が示されている。 これらコード F (a), F (b) は、 互いに異なるコードで あれば、 どのようなコードであってもかまわない。 また、 図には示されていな いが、 第 3の顧客企業 C, 第 4の顧客企業 Dなどがあれば、 これらの企業に対 しても、それぞれ異なる固定コード F (c), F (d) を定義する。 このように、 固定コード Fは、 1つのグループ (図示の例の場合は、 1つの企業) に対して 共通して付与されるユニークなコードになる。
結局、 図 6に示す発行プロセスでは、 I Cカード提供業者 Xは、 顧客企業 A に納品すべき I C力一ドには、 固定コード F (a) を書き込む処理を行い、 顧 客企業 Bに納品すべき I Cカードには、 固定コード F (b) を書き込む処理を 行うことになる。 その結果、 企業 Aの社員に対して発行された I Cカード 10 O aには、 すべて同一の固定コード F (a) が格納されており、 企業 Bの社員 に対して発行された I Cカード 100 bには、 すべて同一の固定コード F (b) が格納されていることになる。
なお、 I Cカード提供業者 Xは、 企業 A以外には、 固定コード F (a) が書 き込まれた I Cカード 100 aを決して納品しないようにし、 企業 B以外には、 固定コード F (b) が書き込まれた I Cカード 10 O bを決して納品しないよ うにする。 このような運用を行えば、 固定コード F (a) が書き込まれた I C カード 100 aを所持する者は、 企業 Aの社員に限られ、 固定コード F (b) が書き込まれた I Cカード 10 O bを所持する者は、 企業 bの社員に限られる ことになるので、 少なくとも、 社外に対して十分なセキュリティを確保した喑 号通信システムの構築が可能になる。
本発明の目的は、 所定のグループに所属するメンバ一間で暗号通信を行う場 合に、 メンバ一に変動が生じても柔軟な対応が可能であり、 かつ、 十分なセキ ュリティを確保することが可能な暗号通信システムを提供することにある。 そ こで、 ここでは、 企業 A内に、 特別なプロジェクトチームが編成され、 当該プ ロジェクトチームの構成メンバ一である社員間で暗号通信を行うための喑号通 信システムを構築し、 当該システムを利用して、 実際に暗号通信を行う方法を 説明しょう。
図 7は、 本発明に係る暗号通信システムの構成例を示すブロック図である。 ここでは、 企業 Aの東京本社に在籍する社員 aおよび大阪支社に在籍する社員 βが、 特別なプロジェクトチームの所属メンバーであり、 社員 0;から社員) 3に 対して、 所定のデータを送信する際に、 本発明に係る暗号通信を利用する場合 を考える。図 6に示す発行プロセスにおいて述べたとおり、企業 Αの社員には、 それぞれ I C力一ド 1 0 0 aが配付されている。 したがって、 社員 Q!および i3 も、 この I Cカード 1 0 0 aを所持しており、 その中には、 同一の固定コード F ( a ) が格納されている。
このように、 本発明に係る暗号通信方法では、 § 2で述べた機能を有し、 か つ、 互いに同一の固定コードが格納されている 2つの I Cカードを用意し、 一 方の I Cカードを送信者側 (社員 α側) に、 他方の I Cカードを受信者側 (社 員) 3側) に、 それぞれ配置する必要がある。
続いて、 送信者である社員 a側において、 I Cカードに所定の可変コード V を書き込んで暗号用鍵情報 Κを発生させる作業を行う。 図 7の左半分には、 社 員 0;が、 自己の I Cカード 1 0 0 aに対して可変コード V ( 1 ) を入力して、 暗号用鍵情報 K ( a 1 ) を発生させた例が示されている。 前述したとおり、 可 変コード V ( 1 ) を第 2の格納場所 L 2に書き込む処理は、 所定の書込コマン ドにより基本プログラム P 1の書込処理機能を実行させることにより行うこと ができる。 また、 暗号用鍵情報 K ( a 1 ) を発生させる処理は、 所定の鍵情報 発生コマンドにより鍵情報発生プログラムを実行させることにより行うことが できる。 暗号用鍵情報 K (a 1) は、 図 4に示すとおり、 固定コード F (a) と可変コード V (1) とに所定のアルゴリズムに基づく演算処理を施すことに より生成される。 可変コード V (1) は、 任意のコードでかまわないが、 当該 プロジェク卜チームの構成メンバー以外には知られることのないよう、 秘密に 管理するようにする。
こうして、 I Cカード 100 a内に暗号用鍵情報 K (a 1)が生成できたら、 この暗号用鍵情報 K (a 1) を利用した暗号化処理を実行することにより、 送 信対象となる平文データ D 1を暗号化し、 暗号文デ一夕 D 2を作成する。 この 暗号化処理は、 前述したとおり、 所定の暗号化処理コマンドにより暗号化/復 号化プログラム P 3を実行させることにより行うことができる。
続いて、 社員 は、 作成された暗号文デ一夕 D 2を、 送信手段 Tを介して、 大阪支社へと送信する作業を行う。 図示のとおり、 暗号文データ D 2は、 東京 本社の送信手段丁から、 大阪支社の受信手段 Rへと送信される。 送信手段 Tや 受信手段 Rは、 一般的な送受信機能をもった装置であれば、 どのような装置で 構成してもかまわない。 企業 Aの本支店間を接続する専用線を用いてもよいし、 インターネットなどの公衆伝達網を利用した送信 (たとえば、 FTPなどのプ 口トコルを利用したデータ転送や、 電子メールの添付書類としての転送など) を用いてもよい。 暗号文データ D 2は、 暗号化されているため、 送信時のセキ ュリティは十分に確保することができる。
また、 社員 は、 可変コード V (1) を何らかの手段で社員 ;8に伝達する。 具体的には、 電子メール、 電話、 FAXなどを利用して伝えればよい。 もちろ ん、 可変コード V (1) そのものを必ずしも伝達する必要はなく、 /3が理解可 能な態様であれば、 可変コード V (1) を類推可能なヒントのみを伝達するよ うにしてもかまわない。 たとえば、 プロジェクトチームのリーダー名を可変コ —ド V (1) として用いた場合であれば、 「リーダーの名前」 という情報を /3に 伝えれば用が足りる。 あるいは、 前回と同じ可変コード V (1) をそのまま用 いている場合には、 「前回と同じ」 という情報を ]3に伝えればよい。
一方、 社員 ι8は、 こうして伝達された可変コード V (1) を、 自己の I C力 ード 1 0 0 aに入力して、 暗号用鍵情報 K (a 1) を発生させる。 こうして発 生された暗号用鍵情報 K (a 1) は、 当然、 社員 α側の I Cカード 1 0 0 a内 で発生された暗号用鍵情報 K (a 1) と同一になる。 なお、 可変コード V (1) が前回と同じ場合には、 既に、 I Cカード 1 0 0 a内に暗号用鍵情報 K (a 1) が格納された状態となっているので、 この手順は省略することができる。
こうして、 I Cカード 1 00 a内に暗号用鍵情報 K (a 1)が用意できたら、 この暗号用鍵情報 K (a 1) を利用した復号化処理を実行することにより、 受 信手段 Rが受け取った暗号文データ D 2を復号化し、 平文データ D 3を作成す る。 この復号化処理は、 前述したとおり、 所定の復号化処理コマンドにより喑 号化/復号化プログラム P 3を実行させることにより行うことができる。 得ら れた平文データ D 3は、 オリジナルの平文データ D 1と同一のものになる。 以上、 社員 Q!から社員 に対して暗号送信を行う例を示したが、 プロジェク トチームの構成メンバーが、 たとえば、 社員 Q!、 βヽ 了、 δの 4名の場合、 社 員ァ, 社員 δに対しても、 同様の方法で暗号送信を行うことが可能である。 こ こで、 もし、 社員ァが当該プロジェクトチームから脱けることになつたとしょ う。 この場合、 もはや社員ァには、 当該プロジェクトチームに関する暗号解読 の権限を与えることは適切ではない。 そのような場合でも、 本発明に係る暗号 通信システムは適切に対処することが可能である。 すなわち、 社員ァが脱けた 時点で、 可変コード V (1) を別な可変コード V (2) に変更すればよい。 あ るいは、 暗号通信を行う度に、 毎回、 可変コードを変更するような運用を行う ようにし、 脱けた社員ァには、 新たな可変コードを知らせないようにしてもよ い。
結局、 本発明によれば、 階層構造をもったグループ定義がなされている場合 に、 上位階層のグループ間では十分なセキュリティを確保することができ、 下 位階層のグループに関してはメンバーに変動が生じても柔軟な対応が可能にな る。上述の例の場合、個々の企業が上位階層のグループに相当する。すなわち、 企業 Aと企業 Bとは、 それぞれ上位階層のグループとして、 それぞれ別々のグ ループということになる。 一方、 企業 A内に発足したプロジェクトチームは、 下位階層のグループということができる。
本発明では、 上位階層のグループ間、 すなわち、 上述の例におげる異なる企 業間におけるセキュリティは十分に確保することができる。 たとえば、 固定コ —ド F ( a ) が格納された I Cカード 1 0 0 aは、 企業 Aの社員のみが入手可 能であり、企業 Bの社員や他の一般人は入手することができない。したがって、 図 7の例における可変コード V ( 1 ) を伝達するプロセスにおいて、 万一、 可 変コード V ( 1 ) が漏えいすることがあったとしても、 少なくとも企業 Aの社 員以外の者が、 暗号文データ D 2を解読することはできない。 これは、 裏を返 せば、 可変コード V ( 1 ) が漏えいすると、 企業 Aの社員であれば、 当該プロ ジェクトチームに所属していない社員であっても、 暗号文データ D 2を解読す る可能性があることを示している。 ただ、 一般的には、 社外の人間に暗号解読 されるリスクに比べて、 社内の人間に暗号解読されるリスクは小さい。
このように、 本発明の狙いは、 階層構造をもったグループ定義がなされてい る場合に、 上位階層のグループ間では、 十分なセキュリティを確保できるよう にするが、 下位階層のグループ間では、 若干、 セキュリティが低下しても、 メ ンバー変動に柔軟に対応できるようにする、 という点にある。 これまで述べて きた I Cカードは、 このような狙いにかなった暗号通信システムを構築するの に適している。
«< § 4. 本発明の変形例 »>
以上、 本発明を図示する基本的な実施形態について説明したが、 ここでは、 本発明のいくつかの変形例を述べておく。
(1) 暗号用鍵情報としてキーテーブルを用いる場合 § 1で述べたとおり、 図 5に示す第 3の格納場所 L 3に格納する暗号用鍵情 報 Kとして、 暗号用キ一そのものを用いる代わりに、 図 3に示すようなキーテ 一ブルを用いることも可能である。 この場合、 可変コード Vとともに、 「7バイ ト目から 8バイト分を暗号用キーとして用いよ」 なる指示を、 送信者側から受 信者側へ伝達するようにすればよい。
(2) 外部で暗号化処理もしくは復号化処理を行う場合
図 5に示す I Cカード 1 0 0は、 I Cカードの内部で暗号化処理もしくは復 号化処理を行う場合に用いる実施形態であるが、 図 2に示す形態のように、 I Cカード 1 0 0の外部で暗号化処理もしくは復号化処理を行うケースもあり得 る。 このようなケースに本発明を適用する場合は、 図 5に示す暗号化 復号化 プログラム P 3の代わりに、 '「第 3の格納場所 L 3に格納されている暗号用鍵情 報を(暗号用鍵情報として、図 3に示すようなキーテーブルを用いる場合には、 その一部を)、 外部へ読み出す鍵読出プログラム P 4」 を用意しておくようにす ればよい。
(3) グループ構成
これまで述べた実施形態では、 1企業を 1グループ (前述した上位階層のグ ループ) として取り扱い、 同一企業内の社員に発行: る I cカードには、 すべ て同一の固定コード Fを格納する例を示したが、 同一企業内の部や課を 1ダル ープとして取り扱うことも可能である。 この場合、 同一企業であっても、 所属 する部や課に応じて、 それぞれ異なる固定コードが割り振られることになる。 逆に、 複数企業をまとめて 1グループとして取り扱うことも可能である。 この 場合、 異なる企業であっても、 同一の固定コードが割り振られることになる。

Claims

請 求 の 範 囲
1 · 固有の暗号用鍵情報を用いた暗号化処理もしくは復号化処理を実行する ために利用される I Cカードであって、
メモリ (110) と、 このメモリ内に格納されているデータおよびプロダラ ムに基づいて所定の処理を実行する CPU (120) と、 外部に対して情報の やりとりを行う IZO部 (130) と、 を有し、
前記メモリには、 第 1の格納場所、 第 2の格納場所、 第 3の格納場所が確保 されており、
前記第 1の格納場所 (L 1) には、 予め所定の固定コード (F) が格納され ており、 前記固定コードは書き換えができないように構成されており、 前記第 2の格納場所 (L2) には、 外部から任意の可変コード (V) を書き 込むことができ、 前記可変コードは書き換えができるように構成されており、 前記メモリには、 前記第 1の格納場所に格納されている固定コードおよび前 記第 2の格納場所に格納されている可変コードを用いて、 所定のアルゴリズム に基づく演算処理を行うことにより、 前記 2つのコードに応じて一義的に定ま る暗号用鍵情報 (K) を発生させ、 これを前記第 3の格納場所 (L 3) に格納 する鍵情報発生プログラムと、 前記第 3の格納場所に格納されている暗号用鍵 情報を利用して I Cカード内部で暗号化処理もしくは復号化処理を実行する暗 号化 Z復号化プログラムと、
が格納されていることを特徴とする暗号化もしくは復号化処理用の Γ C力一 ド、。
2. 固有の暗号用鍵情報を用いた暗号化処理もしくは復号化処理を実行する ために利用される I Cカードであって、
メモリ (1 10) と、 このメモリ内に格納されているデ一夕およびプロダラ ムに基づいて所定の処理を実行する C P U ( 1 2 0 ) と、 外部に対して情報の やりとりを行う I ZO部 (1 3 0 ) と、 を有し、
前記メモリには、 第 1の格納場所、 第 2の格納場所、 第 3の格納場所が確保 されており、
前記第 1の格納場所 (L 1 ) には、 予め所定の固定コード (F ) が格納され ており、 前記固定コードは書き換えができないように構成されており、 前記第 2の格納場所 (L 2 ) には、 外部から任意の可変コード (V) を書き 込むことができ、 前記可変コードは書き換えができるように構成されており、 前記メモリには、 前記第 1の格納場所に格納されている固定コードおよび前 記第 2の格納場所に格納されている可変コードを用いて、 所定のアルゴリズム に基づく演算処理を行うことにより、 前記 2つのコードに応じて一義的に定ま る暗号用鍵情報 (K) を発生させ、 これを前記第 3の格納場所 (L 3 ) に格納 する鍵情報発生プログラムと、 I Cカード外部で暗号化処理もしくは復号化処 理を実行するために前記第 3の格納場所に格納されている暗号用鍵情報もしく はその一部を外部へ読み出す鍵読出プログラムと、
が格納されていることを特徴とする暗号化もしくは復号化処理用の I Cカー ド。 '
3 . 請求項 1または 2に記載の I Cカードにおいて、
鍵情報発生プログラムが、 暗号用鍵情報 (K) として、 暗号化もしくは復号 化に用いる暗号用キー自身を発生させる機能を有することを特徴とする暗号化 もしくは復号化処理用の I Cカード。
4. 請求項 1または 2に記載の I Cカードにおいて、
鍵情報発生プログラムが、 暗号用鍵情報 (K) として、 その一部分が、 暗号 化もしくは復号化に用いる暗号用キ一として利用されるキ一テーブルを発生さ せる機能を有することを特徴とする暗号化もしくは復号化処理用の I Cカード。
5. 請求項 1〜4のいずれかに記載された I Cカードであって、 互いに同一 の固定コード (F (a)) が格納されている第 1の I Cカードおよび第 2の I C カード (100 a) と、
前記第 1の I C力一ドを用いて暗号化された暗号文データを送信する送信手 段 (T) と、
送信されてきた前記暗号文データを受信し、 これを復号化するために前記第 2の I Cカードに与える受信手段 (R) と、
を備えることを特徴とする暗号通信システム。
6. 請求項.1〜4のいずれかに記載された I Cカードであって、 互いに同一 の固定コードが格納されている第 1の I Cカードおよび第 2の I Cカード (1 00 a) を用意し、 前記第 1の I Cカードを送信者側に、 前記第 2の I Cカー ドを受信者側に、 それぞれ配置する準備段階と、
前記送信者側において、前記第 1の I Cカードに所定の可変コード (V (1)) を書き込んで暗号用鍵情報 (K (a 1)) を発生させ、 発生させた暗号用鍵情報 を利用して、 送信対象データ (D 1) を暗号化する処理を行う暗号化段階と、 前記送信者側から前記受信者側に、 暗号化された前記送信対象データ (D2) を送信するとともに、 前記可変コードを伝達する送信伝達段階と、
前記受信者側において、 伝達されてきた前記可変コードを、 前記第 2の I C カードに書き込んで暗号用鍵情報 (K (a 1)) を発生させ、 発生させた暗号用 鍵情報を利用して、 送信されてきた前記送信対象データを復号化する処理を行 う復号化段階と、
を有することを特徴とする暗号通信方法。
PCT/JP2005/008657 2004-05-06 2005-05-02 Icカード WO2005109740A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US11/579,079 US20070226513A1 (en) 2004-05-06 2005-05-02 Ic Card for Encryption or Decryption Process and Encrypted Communication System and Encrypted Communication Method Using the Same
US13/098,171 US8595813B2 (en) 2004-05-06 2011-04-29 IC card for encryption or decryption process and encrypted communication system and encrypted communication method using the same

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004-137193 2004-05-06
JP2004137193A JP4582619B2 (ja) 2004-05-06 2004-05-06 暗号化もしくは復号化処理用のicカードならびにこれを用いた暗号通信システムおよび暗号通信方法

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US11/579,079 A-371-Of-International US20070226513A1 (en) 2004-05-06 2005-05-02 Ic Card for Encryption or Decryption Process and Encrypted Communication System and Encrypted Communication Method Using the Same
US13/098,171 Division US8595813B2 (en) 2004-05-06 2011-04-29 IC card for encryption or decryption process and encrypted communication system and encrypted communication method using the same

Publications (1)

Publication Number Publication Date
WO2005109740A1 true WO2005109740A1 (ja) 2005-11-17

Family

ID=35320551

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2005/008657 WO2005109740A1 (ja) 2004-05-06 2005-05-02 Icカード

Country Status (3)

Country Link
US (2) US20070226513A1 (ja)
JP (1) JP4582619B2 (ja)
WO (1) WO2005109740A1 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2259738C (en) * 1999-01-20 2012-10-16 Certicom Corp. A resilient cryptographic scheme
JP2009505521A (ja) * 2005-08-18 2009-02-05 エントロピック テクノロジーズ ピーティーワイ エルティーディー コード生成方法
JP4670585B2 (ja) * 2005-10-26 2011-04-13 ソニー株式会社 設定装置および方法、並びにプログラム
US7747861B2 (en) * 2005-11-09 2010-06-29 Cisco Technology, Inc. Method and system for redundant secure storage of sensitive data by using multiple keys
US20100005317A1 (en) * 2007-07-11 2010-01-07 Memory Experts International Inc. Securing temporary data stored in non-volatile memory using volatile memory
US20090202081A1 (en) * 2008-02-08 2009-08-13 Ayman Hammad Key delivery system and method
WO2010035202A1 (en) * 2008-09-26 2010-04-01 Koninklijke Philips Electronics N.V. Authenticating a device and a user
KR100910303B1 (ko) * 2009-01-09 2009-08-03 이순구 가변코드 테이블을 이용한 데이터 암복호화 장치 및 그 방법
US8842840B2 (en) 2011-11-03 2014-09-23 Arvind Gidwani Demand based encryption and key generation and distribution systems and methods
JP6228761B2 (ja) * 2013-06-28 2017-11-08 株式会社エヌ・ティ・ティ・データ Icカード、icカードの認証処理方法、及びプログラム
JP6320091B2 (ja) * 2014-03-13 2018-05-09 株式会社東芝 Icカード、携帯可能電子装置、icカード処理装置、及び、icカード処理システム
US10579786B2 (en) * 2014-04-02 2020-03-03 Sony Corporation Information processing system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01233851A (ja) * 1988-03-14 1989-09-19 Nec Corp 暗号装置
JPH09106445A (ja) * 1995-10-12 1997-04-22 Dainippon Printing Co Ltd 情報記録媒体のキー変更方法および情報記録媒体

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2588672A (en) * 1946-04-27 1952-03-11 Universal Oil Prod Co Liquid level control
US5227613A (en) * 1989-01-24 1993-07-13 Matsushita Electric Industrial Co., Ltd. Secure encrypted data communication system having physically secure ic cards and session key generation based on card identifying information
US5065429A (en) * 1989-04-03 1991-11-12 Lang Gerald S Method and apparatus for protecting material on storage media
JPH0386469U (ja) * 1989-12-21 1991-09-02
JPH0568033A (ja) * 1991-09-06 1993-03-19 Nippon Telegr & Teleph Corp <Ntt> 暗号通信装置
US5559887A (en) * 1994-09-30 1996-09-24 Electronic Payment Service Collection of value from stored value systems
US5937068A (en) * 1996-03-22 1999-08-10 Activcard System and method for user authentication employing dynamic encryption variables
EP0966810A2 (en) * 1997-03-10 1999-12-29 Guy L. Fielder Secure deterministic encryption key generator system and method
JP4268690B2 (ja) * 1997-03-26 2009-05-27 ソニー株式会社 認証システムおよび方法、並びに認証方法
TW381057B (en) * 1997-08-07 2000-02-01 Hitachi Ltd Semiconductor device
EP1239411B1 (en) * 1999-11-30 2006-09-06 Kabushiki Kaisha Toshiba Ic card and method for managing volatile memory of the ic card
US7093128B2 (en) * 2000-04-06 2006-08-15 Sony Corporation Information recording/reproducing apparatus and method
US7093129B1 (en) * 2000-06-19 2006-08-15 International Business Machines Corporation Secured encrypted communications in a voice browser
JP2004519874A (ja) * 2000-08-04 2004-07-02 ファースト データ コーポレイション 信頼された認証デジタル署名(tads)システム
GB2369202B (en) * 2000-08-31 2003-03-19 Sun Microsystems Inc Computer system and method of operating a computer system
WO2002099742A1 (fr) * 2001-06-04 2002-12-12 Renesas Technology Corp. Carte memoire
EP1830317A1 (en) * 2001-06-11 2007-09-05 Sony Corporation Electronic money system
JP4234916B2 (ja) * 2001-08-16 2009-03-04 システムニーズ株式会社 独立型本人認証装置におけるメモリレンタルサービスシステム
JP2003168093A (ja) * 2001-11-30 2003-06-13 Hitachi Ltd カードシステム、カードへのアプリケーション搭載方法及びアプリケーション実行確認方法
JP4646050B2 (ja) * 2004-05-06 2011-03-09 大日本印刷株式会社 Icカードを発行して暗号化/復号化を行う方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01233851A (ja) * 1988-03-14 1989-09-19 Nec Corp 暗号装置
JPH09106445A (ja) * 1995-10-12 1997-04-22 Dainippon Printing Co Ltd 情報記録媒体のキー変更方法および情報記録媒体

Also Published As

Publication number Publication date
US20110213973A1 (en) 2011-09-01
US20070226513A1 (en) 2007-09-27
JP4582619B2 (ja) 2010-11-17
JP2005322963A (ja) 2005-11-17
US8595813B2 (en) 2013-11-26

Similar Documents

Publication Publication Date Title
WO2005109740A1 (ja) Icカード
JP5178839B2 (ja) メモリチップ
US8099771B2 (en) Method for issuing IC card storing encryption key information
TWI222609B (en) A method of producing a decrypting apparatus having a cryptographic device and cryptographic information, a system for providing such device and information, and the decrypting apparatus produced by the production method
CN1312876C (zh) 用不可访问的唯一密钥对储存的数据进行加密/解密
JP3717176B2 (ja) 暗号化/復号装置および方法
US20070206786A1 (en) Rfid security system
US20080104417A1 (en) System and method for file encryption and decryption
CN100524265C (zh) 在便携式存储装置和数字装置之间运行多个应用的设备和方法
JPH11510678A (ja) セキュリティモジュールにおいて秘密情報を記憶し使用するための方法及び関連するセキュリティモジュール
EP0983541A1 (en) Method and apparatus for signing and sealing objects
CN100462988C (zh) 定制客户标志信息的方法
JP2002185443A (ja) 秘密鍵管理方法
JP2007108833A (ja) 複数パスワード記憶装置及びパスワード管理方法
JP4843563B2 (ja) 情報記録媒体のセキュリティ方法、情報処理装置及びプログラム
JP2005196730A (ja) 携帯可能電子装置
US20080084998A1 (en) Encryption key management device and encryption key management method
JP2003091240A (ja) 暗号化された情報の管理方法
JP2001125481A (ja) 暗号通信端末、暗号通信センター装置及び暗号通信システム並びに記録媒体
JP2005051479A (ja) 時限暗号化/復号システム
JP4829864B2 (ja) 情報記録媒体のセキュリティ方法、プログラム及び記録媒体
KR20020025343A (ko) 기본키와 일회용키를 이용한 파일 암호 와 복호 방법 및그 장치
US20200204339A1 (en) Portable electronic device and ic module
JPH06236147A (ja) セキュリテイ装置
JP5395937B2 (ja) メモリチップ

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS KE KG KM KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 11579079

Country of ref document: US

Ref document number: 2007226513

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

WWW Wipo information: withdrawn in national office

Country of ref document: DE

122 Ep: pct application non-entry in european phase
WWP Wipo information: published in national office

Ref document number: 11579079

Country of ref document: US