JP5022434B2 - IC chip supporting large capacity memory and supporting method - Google Patents
IC chip supporting large capacity memory and supporting method Download PDFInfo
- Publication number
- JP5022434B2 JP5022434B2 JP2009500298A JP2009500298A JP5022434B2 JP 5022434 B2 JP5022434 B2 JP 5022434B2 JP 2009500298 A JP2009500298 A JP 2009500298A JP 2009500298 A JP2009500298 A JP 2009500298A JP 5022434 B2 JP5022434 B2 JP 5022434B2
- Authority
- JP
- Japan
- Prior art keywords
- memory
- data
- command
- apdu
- processor
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 33
- 230000004044 response Effects 0.000 claims description 56
- 238000012546 transfer Methods 0.000 claims description 30
- 230000008569 process Effects 0.000 claims description 18
- 230000008859 change Effects 0.000 claims description 10
- 238000001514 detection method Methods 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 claims description 2
- NRZOXEUJFYCPSL-UHFFFAOYSA-N 5-(3-chloropropyl)-1-[4-hydroxy-5-(hydroxymethyl)oxolan-2-yl]pyrimidine-2,4-dione Chemical compound C1C(O)C(CO)OC1N1C(=O)NC(=O)C(CCCCl)=C1 NRZOXEUJFYCPSL-UHFFFAOYSA-N 0.000 claims 1
- 238000004891 communication Methods 0.000 description 28
- 238000010295 mobile communication Methods 0.000 description 24
- 238000010586 diagram Methods 0.000 description 17
- 238000012545 processing Methods 0.000 description 11
- 238000007726 management method Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 208000011380 COVID-19–associated multisystem inflammatory syndrome in children Diseases 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 238000002319 photoionisation mass spectrometry Methods 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000006386 memory function Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
- G06K19/06—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
- G06K19/067—Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
- G06K19/07—Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
- G06K19/077—Constructional details, e.g. mounting of circuits in the carrier
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
- G06K19/06—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
- G06K19/067—Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
- G06K19/07—Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
- G06K19/077—Constructional details, e.g. mounting of circuits in the carrier
- G06K19/0772—Physical layout of the record carrier
- G06K19/07732—Physical layout of the record carrier the record carrier having a housing or construction similar to well-known portable memory devices, such as SD cards, USB or memory sticks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Storage Device Security (AREA)
Description
本発明は、ICチップに関するもので、より詳細には、大容量メモリを支援するICチップ及び支援方法に関する。 The present invention relates to an IC chip, and more particularly to an IC chip and a support method for supporting a large capacity memory.
従来のICチップは、図1に示すようにICチップメモリを含む。ICチップメモリは、コード(Code)格納のためのROMメモリ、演算支援のためのRAMメモリ、及びアプレット(Applet)格納のためのEEPROMメモリを含むことができる。 A conventional IC chip includes an IC chip memory as shown in FIG. The IC chip memory may include a ROM memory for code storage, a RAM memory for operation support, and an EEPROM memory for applet storage.
このようなICチップ基盤のサービスが活性化され、メモリサイズに対する要求事項が多くなっているが、ICチップメモリのEEPROMは1Mbyte以上を実現し難いという短所があった。このため、既存のICチップにフラッシュ(Flash)メモリを導入して大容量メモリを支援するICチップを構成しようとする動きがICチップ製造業者から出てきている。 Although such IC chip-based services have been activated and the requirements for the memory size have increased, the EEPROM of the IC chip memory has a disadvantage that it is difficult to realize 1 Mbyte or more. For this reason, there is a movement from an IC chip manufacturer to try to construct an IC chip that supports a large capacity memory by introducing a flash memory into an existing IC chip.
しかし、従来の大容量メモリを支援するICチップは、図1に示すように、物理的に一つのチップ上に実現されているだけで、ICチップと大容量メモリとの統合された機能は提供されなかった。これにより、ICチップのセキュリティ性を活用して大容量メモリにデータを格納することや、ICチップのメモリにおける制約事項を大容量メモリを活用して補うことができないという問題点があった。 However, as shown in FIG. 1, the conventional IC chip supporting the large-capacity memory is physically realized on one chip, and the integrated function of the IC chip and the large-capacity memory is provided. Was not. As a result, there is a problem that data cannot be stored in a large-capacity memory using the security of the IC chip, and restrictions on the memory of the IC chip cannot be compensated using the large-capacity memory.
一方、GSM(Global System for Mobile communication)電話機またはW−CDMA(Wide Code Division Multi Access)電話機のような移動通信端末には、SIM(Subscriber Identity Module)カードまたはUSIM(Universal Subscriber Identity Module)カードのようなICチップが使用される。 On the other hand, a mobile communication terminal such as a GSM (Global System for Mobile communication) phone or a W-CDMA (Wide Code Division Multi Access) phone has a SIM (Subscriber Identity Module) card or a USIM (Universal Subscriber Identity Module) card. IC chip is used.
このようなICチップには、移動通信加入者情報、個人情報、金融情報などセキュリティを必要とするデータをコプロセッサ(Co-Processor)によるセキュリティアルゴリズムを用いて暗号化して格納する。 In such an IC chip, data that requires security such as mobile communication subscriber information, personal information, and financial information is encrypted and stored using a security algorithm by a coprocessor (Co-Processor).
しかし、従来のICチップは、上述したように格納容量に限界があり、大量のデータを格納できないという問題点があった。 However, the conventional IC chip has a problem that the storage capacity is limited as described above, and a large amount of data cannot be stored.
一方、端末には、様々な情報を格納するために主にフラッシュメモリが利用される。フラッシュメモリは、ICチップのメモリに比べて、大量のデータを格納するのに充分であり、格納容量を拡大するための技術開発の速度も非常に速い。 On the other hand, a flash memory is mainly used for a terminal to store various information. The flash memory is sufficient to store a large amount of data as compared with the memory of the IC chip, and the speed of technical development for expanding the storage capacity is very high.
しかし、このようなフラッシュメモリには、ICチップとは異なって、データを暗号化するためのセキュリティアルゴリズムやコプロセッサが内蔵されていないため、格納されたデータのセキュリティが非常に脆弱であった。また、フラッシュメモリが、格納されたデータのセキュリティ性を確保するためにセキュリティアルゴリズムを端末自体で実行する場合、端末機器別に暗号化方法が異なるため、復号化の互換性が保障されないという問題点があった。 However, unlike such an IC chip, such a flash memory does not include a security algorithm or a coprocessor for encrypting data, so that the security of stored data is very weak. In addition, when the flash memory executes a security algorithm on the terminal itself to ensure the security of the stored data, the encryption method differs depending on the terminal device, so that the compatibility of decryption is not guaranteed. there were.
上述したように、ICチップはセキュリティ性に優れるが、格納容量には限界があり、フラッシュメモリは格納容量は大きいが、データのセキュリティ性が脆弱で、移動通信端末自体のセキュリティアルゴリズムではデータ復号化の互換性が保証されないという問題点がある。 As described above, the IC chip is excellent in security, but the storage capacity is limited, and the flash memory has a large storage capacity, but the data security is weak, and the mobile communication terminal security algorithm itself decrypts the data. There is a problem that compatibility is not guaranteed.
本発明は、上述した従来技術の問題点を解決するためになされたものであって、ICチッププロセッサが大容量メモリに直接アクセスできる大容量メモリ支援ICチップ及び支援方法を提供することを目的とする。特に、ICチップはホスト(Host)400と高速通信することができる。
The present invention has been made to solve the above-described problems of the prior art, and an object thereof is to provide a large-capacity memory supporting IC chip and a supporting method by which an IC chip processor can directly access a large-capacity memory. . In particular, the IC chip can communicate with the
本発明の他の目的は、端末で移動通信加入者情報、個人情報、金融情報などセキュリティを必要とするデータを暗号化しながらも、データ復号化の互換性が保障される大容量メモリ支援ICチップ及び支援方法を提供することにある。 Another object of the present invention is to provide a large-capacity memory supporting IC chip in which compatibility of data decryption is ensured while encrypting data such as mobile communication subscriber information, personal information, financial information, etc. that requires security at a terminal. And providing a support method.
本発明の一実施形態によれば、大容量メモリを支援するICチップが提供される。
本発明の一実施例によるICチップは、コマンドを伝達するコマンドラインと、データトークンを伝達するデータラインと、データを格納するメモリと、接続状態に応じて上記メモリとデータをやり取りするプロセッサと、上記プロセッサの制御により上記メモリとの接続状態設定を要求するコマンドを上記コマンドライン上に出力するバスコントローラと、上記コマンドラインで受信されたコマンドに従って上記データライン、上記メモリと上記プロセッサとの間の接続を変更するメモリカードコントローラと、を含むことができる。
According to an embodiment of the present invention, an IC chip supporting a large capacity memory is provided.
An IC chip according to an embodiment of the present invention includes a command line for transmitting a command, a data line for transmitting a data token, a memory for storing data, a processor for exchanging data with the memory according to a connection state, A bus controller that outputs a command requesting connection state setting with the memory to the command line under the control of the processor, and the data line between the memory and the processor according to the command received on the command line. And a memory card controller for changing the connection.
本発明の他の実施例によるICチップは、ホストから制御信号及びデータが入出力される入出力端子と、上記入出力されるデータを暗号化及び復号化するセキュリティアルゴリズムが格納される第1格納部と、上記入出力端子を通してデータ暗号化要求信号を受信して上記データを上記セキュリティアルゴリズムを用いて暗号化し、上記入出力端子を通してデータ復号化要求信号を受信して上記暗号化されたデータを上記セキュリティアルゴリズムを用いて復号化するプロセッサと、を含むことができる。 An IC chip according to another embodiment of the present invention includes an input / output terminal that receives and outputs control signals and data from a host, and a first storage that stores a security algorithm that encrypts and decrypts the input and output data. And receiving the data encryption request signal through the input / output terminal and encrypting the data using the security algorithm, and receiving the data decryption request signal through the input / output terminal and receiving the encrypted data And a processor for decoding using the security algorithm.
本発明の他の実施形態によれば、大容量メモリを支援するICチップが含まれた移動通信端末が提供される。 According to another embodiment of the present invention, a mobile communication terminal including an IC chip that supports a large-capacity memory is provided.
本発明の一実施例による移動通信端末は、ICチップを用いてデータを暗号化して格納し、暗号化されたデータを復号化して用いる移動通信端末であって、上記ICチップは、上記移動通信端末と電気的に接続する入出力端子と、上記データを暗号化及び復号化するセキュリティアルゴリズムが格納される第1格納部と、上記入出力端子を通して上記移動通信端末からデータ暗号化要求信号を受けて上記データを上記セキュリティアルゴリズムを用いて暗号化し、上記入出力端子を通して移動通信端末からデータ復号化要求信号を受けて上記暗号化されたデータを上記セキュリティアルゴリズムを用いて復号化するプロセッサと、上記プロセッサにより暗号化されたデータを格納し、上記第1格納部より格納容量の大きい第2格納部と、を含むことができる。 A mobile communication terminal according to an embodiment of the present invention is a mobile communication terminal that encrypts and stores data using an IC chip and decrypts and uses the encrypted data. The IC chip includes the mobile communication terminal. An input / output terminal electrically connected to the terminal; a first storage unit storing a security algorithm for encrypting and decrypting the data; and receiving a data encryption request signal from the mobile communication terminal through the input / output terminal. A processor that encrypts the data using the security algorithm, receives a data decryption request signal from the mobile communication terminal through the input / output terminal, and decrypts the encrypted data using the security algorithm; A second storage unit storing data encrypted by the processor and having a larger storage capacity than the first storage unit. It is possible.
本発明のまた他の実施形態によれば、ICチップの接続状態の変更方法が提供される。
本発明の一実施例によるICチップの接続状態の変更方法は、コマンドライン及びデータラインを通してホストと通信し、メモリ及びプロセッサに接続されたメモリカードコントローラにおいて、上記コマンドラインを通してコマンドを受信するステップと、上記コマンドがAPDUコマンドである場合には、上記プロセッサが上記データラインを通したAPDUの送受信を許可するステップと、上記コマンドが接続コマンドである場合には、上記プロセッサと上記メモリを接続させるステップと、を含むことができる。
According to still another embodiment of the present invention, a method for changing the connection state of an IC chip is provided.
An IC chip connection state changing method according to an embodiment of the present invention includes a step of communicating with a host through a command line and a data line, and receiving a command through the command line in a memory card controller connected to the memory and the processor. When the command is an APDU command, the processor allows the APDU to transmit / receive APDU through the data line, and when the command is a connection command, connects the processor and the memory. And can be included.
本発明のまた他の実施形態によれば、移動通信端末におけるデータセキュリティ方法が提供される。 According to still another embodiment of the present invention, a data security method in a mobile communication terminal is provided.
本発明の一実施例による移動通信端末におけるデータセキュリティ方法は、移動通信端末からデータ暗号化要求信号を受信する第1ステップと、上記移動通信端末からセキュリティキーが入力され認証される第2ステップと、上記第2ステップでセキュリティキーの認証が成功した場合は第1格納部に格納されたセキュリティアルゴリズムを用いて上記データを暗号化する第3ステップと、上記暗号化されたデータを上記第1格納部より格納容量の大きい第2格納部に格納する第4ステップと、を含むことができる。 A data security method in a mobile communication terminal according to an embodiment of the present invention includes a first step of receiving a data encryption request signal from a mobile communication terminal, and a second step in which a security key is input from the mobile communication terminal and authenticated. When the authentication of the security key is successful in the second step, a third step of encrypting the data using a security algorithm stored in the first storage unit, and the encrypted data in the first storage And a fourth step of storing in the second storage unit having a larger storage capacity than the unit.
本発明によれば、ICチッププロセッサが大容量メモリに直接アクセスできる大容量メモリ支援ICチップ及び支援方法を提供することができる。 According to the present invention, it is possible to provide a large-capacity memory supporting IC chip and a supporting method that allow an IC chip processor to directly access a large-capacity memory.
以下、本発明の実施例を添付した図面に基づいて説明する。 Embodiments of the present invention will be described below with reference to the accompanying drawings.
以下ではMMC通信プロトコルを採用した実施例を中心に説明するが、本発明の技術的思想は、ICチップと端末との間で高速通信プロトコルを支援できるものであれば、高速通信プロトコルの種類に制限されることなく採用可能である。 In the following, the embodiment adopting the MMC communication protocol will be mainly described. However, the technical idea of the present invention is that the type of the high-speed communication protocol can be used as long as the high-speed communication protocol can be supported between the IC chip and the terminal. It is possible to adopt without limitation.
図2は、本発明を概略的に説明するための例示図である。本発明によるICチップは、ISO7816標準に従って端末との低速通信を行い、さらにフラッシュメモリのような大容量メモリを含むことができ、高速インターフェースを通して外部と高速通信を行うことができる。また、ICチップは、SIM(Subscriber Identity Module)、USIM(Universal Subscriber Identity Module)、UIM(User Identity Module)、R−UIM(Removable User Identity Module)などの移動通信加入者識別用ICチップ及び金融チップなどの電子商取引用ICチップのいずれか一つであることができる。ICチップは、低速通信と高速通信の両方ともを行うことができ、低速通信用トークンを高速通信用トークンにカプセル化(Encapsulation)して高速通信だけを行うこともできる。 FIG. 2 is an exemplary diagram for schematically explaining the present invention. The IC chip according to the present invention performs low-speed communication with a terminal according to the ISO 7816 standard, and can further include a large-capacity memory such as a flash memory, and can perform high-speed communication with the outside through a high-speed interface. The IC chip is a mobile communication subscriber identification IC chip such as a SIM (Subscriber Identity Module), USIM (Universal Subscriber Identity Module), UIM (User Identity Module), or R-UIM (Removable User Identity Module), and a financial chip. Or any one of electronic commerce IC chips. The IC chip can perform both low-speed communication and high-speed communication, and can perform only high-speed communication by encapsulating a low-speed communication token into a high-speed communication token.
高速通信プロトコルとしてMMC(MultiMediaCard)プロトコルが採用された場合には、 二つのラインを通してホスト400とICチップとが通信する。ホスト400からメモリカードコントローラ(Memory Card Controller)100へのコマンド転送及びメモリカードコントローラ100からホスト400への応答転送はコマンドライン(CMD)を通して行われる。ホスト400とメモリカードコントローラ100との間のデータ転送はデータライン(DATA)を通して行われる。
When the MMC (MultiMediaCard) protocol is adopted as a high-speed communication protocol, the
図2に示されたホスト400とメモリカードコントローラ100との間の接続はデータラインである。メモリカードコントローラ100は、ICチッププロセッサ(IC Chip Processor)200、メモリ300、及びホスト400の相互間の接続状態を変更することにより、ICチッププロセッサ200がホスト400またはメモリ300に接続できるようにする。通常、メモリカードコントローラ100は、メモリ300と直接アクセスできる接続状態を維持する。すなわち、データラインを通して入力されたデータはメモリ300に格納されるか、またはメモリ300から読み取られたデータはデータラインを通してホスト400へ転送される。
The connection between the
メモリカードコントローラ100がメモリ300に対するアクセス権限をICチッププロセッサ200に渡すか、またはデータラインを通して受信したデータトークンをICチッププロセッサ200に渡すためには、メモリカードコントローラ100内部の接続状態を変更しなくてはならない。ホスト400とメモリカードコントローラ100との間のデータラインは、スイッチ1がオン(ON)状態であり、かつ、スイッチ2及びスイッチ3がオフ(OFF)状態であれば、メモリ300に接続される。この接続状態で、メモリカードコントローラ100はメモリ300にデータを書き込むことやデータを読み取ることができる。一方、データラインは、スイッチ2がオン状態であり、かつ、スイッチ1及びスイッチ3がオフ状態であれば、ICチッププロセッサ200に接続される。ICチッププロセッサ200は、スイッチ3がオン状態であり、かつ、スイッチ1及びスイッチ2がオフ状態であればメモリ300に接続される。
In order to pass the access authority to the
メモリカードコントローラ100の接続状態はコマンドラインを通して受信されるコマンドに従って変更される。コマンドは表1に示すように四つに区分される。
The connection state of the
APDUコマンドは、ホスト400で生成され、メモリカードコントローラ100に転送されるコマンドであって、APDUをデータラインを通して送受信するために定義されたコマンドである。APDUコマンドは、ホスト400に接続されたICチップホスト(図示せず)からAPDUが入力されると、生成される。APDUコマンドとこれに対する応答(APDU Response)の間にデータラインを通してホスト400から、またはホスト400へ一つ以上のデータトークンが伝達される。
The APDU command is a command generated by the
APDUコマンドに従って、データラインを通して転送されるデータトークンは、ホスト400またはメモリカードコントローラ100によりカプセル化(encapsulation)されたコマンドAPDU(C−APDU)または応答APDU(R−APDU)を含む。
The data token transferred through the data line according to the APDU command includes a command APDU (C-APDU) or a response APDU (R-APDU) encapsulated by the
C−APDUまたはR−APDUが48ビット以下である場合には、一つのデータトークンにより伝達でき、それ以上である場合には、一つのデータストリーム(sequential read/write operation)または複数のデータトークン(multiple block read/write operation)により伝達できる。 If the C-APDU or R-APDU is 48 bits or less, it can be transmitted by one data token, and if it is more than that, one data stream (sequential read / write operation) or a plurality of data tokens ( multiple block read / write operation).
APDUコマンドを受信すると、メモリカードコントローラ100は、スイッチ2をオンし、スイッチ1及びスイッチ3をオフして、データラインを通して受信されたデータトークンをICチッププロセッサ200に転送する。ここで、データトークンはカプセル開放(decapsulation)過程でC−APDUに変換された後にICチッププロセッサ200に転送され、R−APDUはデータトークンにカプセル化されてホスト400に転送されることができる。
When the APDU command is received, the
接続コマンドは、ICチッププロセッサ200で生成され、メモリカードコントローラ100に転送されるコマンドであって、ICチッププロセッサ200とメモリ300との間でデータを送受信するためのコマンドである。接続コマンドを受信すると、メモリカードコントローラ100はスイッチ3をオンし、スイッチ1及び2をオフして、ICチッププロセッサ200はメモリ300にデータを書き込むことやデータを読み取ることができる。
The connection command is a command that is generated by the
解除コマンドは、ICチッププロセッサ200で生成され、メモリカードコントローラ100に転送されるコマンドであって、ICチッププロセッサ200とメモリ300との間でデータ送受信が完了されたことをメモリカードコントローラ100に通知するためのコマンドである。解除コマンドが受信されると、メモリカードコントローラ100は接続コマンドが受信される前の接続状態または予め指定された接続状態に戻る。他の実施例では、解除コマンドの代りに、ICチッププロセッサ200とメモリ300との間でデータが送受信されたか否かを確認してメモリカードコントローラ100が以前の接続状態または予め指定された接続状態に戻るか、または一定時間の経過後、メモリカードコントローラ100が以前の接続状態または予め指定された接続状態に戻ることができる。
The release command is a command generated by the
以上、高速通信プロトコルとしてMMCプロトコルを用いた場合を例に挙げて説明したが、USBプロトコルを用いる場合にも容易に採用できることは明らかである。USBプロトコルを用いてAPDUを送受信する方式はISO7816−12を参照する。一方、本発明の特徴である、APDUを含んだデータトークンをICチッププロセッサに伝達するために、高速通信プロトコルを支援するコントローラ(例えば、メモリカードコントローラ100)の接続状態を変更する追加コマンド及びICチッププロセッサがメモリにアクセスできるようにする追加コマンドを定義して使用することは、高速通信プロトコルとしてUSBを使用する場合においても、本発明が属する分野で通常の知識を有する者であれば容易に実現できる。 As described above, the case where the MMC protocol is used as the high-speed communication protocol has been described as an example. However, it is obvious that the USB protocol can be easily adopted. Refer to ISO7816-12 for the method of transmitting and receiving APDU using the USB protocol. On the other hand, in order to transmit a data token including an APDU to the IC chip processor, which is a feature of the present invention, an additional command for changing a connection state of a controller (for example, the memory card controller 100) that supports a high-speed communication protocol and an IC Defining and using additional commands that allow the chip processor to access the memory is easy for those who have normal knowledge in the field to which the present invention belongs, even when using USB as a high-speed communication protocol. realizable.
ICチッププロセッサ200は、セキュリティアルゴリズムを駆動してメモリ300に暗号化されたデータを格納し、メモリに暗号化されて格納されたデータを復号化してホスト400に提供することができる。ICチッププロセッサ200は、セキュリティアルゴリズムを担当するコプロセッサ(Co-Processor)を含むことができる。
The
ICチッププロセッサ200は、ホスト400からコマンド信号を受信してメモリ300にデータを書き込むことやデータを読み取ることを行う場合、該データに対するセキュリティ処理を行う。これについては、図9乃至図12を参照してより詳細に説明する。
When the
図3は、本発明の一実施例によるICチップを示すブロック図である。
メモリカードコントローラ100及びICチッププロセッサ200は、すべてICチップに含まれる。メモリ300が、ICチップ及びメモリ300の二つのモジュールを一つの統合ICチップで実現したコンビタイプである場合には、ICチップに含まれてもよく、それぞれのモジュールがインターフェースを通して連動するハイブリッドタイプである場合にはICチップに含まれなくてもよい。
FIG. 3 is a block diagram showing an IC chip according to an embodiment of the present invention.
The
メモリカードコントローラ100とは高速通信プロトコルによりデータを送受信するホスト400、及び、ホスト400に接続されてAPDUをICチップのICチッププロセッサ200と送受信するICチップホストは端末に含まれる。
ここで、端末は無線通信機能付き携帯電話のような移動通信端末、PDA、またはノートパソコンのような携帯用情報処理装置であることができる。
The terminal includes a
Here, the terminal can be a mobile communication terminal such as a mobile phone with a wireless communication function, or a portable information processing device such as a PDA or a notebook computer.
ICチップホスト及びICチッププロセッサ200は、転送側からAPDUを高速通信プロトコルが支援するデータトークンにカプセル化(encapsulation)して転送すれば、受信側はこれをカプセル開放(decapsulation)することにより相互通信する。
When the IC chip host and the
本発明の一実施例によるICチップは、大容量のデータを格納するメモリ300と、メモリにおけるデータ読み取り/書き込み、及び接続状態を変更して他の構成部間のデータを中継するメモリカードコントローラ100と、メモリカードコントローラ100を通してICチップホストと通信し、メモリのデータの読み取りや書き込み動作を行うICチッププロセッサ200と、ICチッププロセッサ200の制御によりメモリカードコントローラ100がICチッププロセッサ200のメモリにアクセスできるようにするバスコントローラ210とを含むことができる。
An IC chip according to an embodiment of the present invention includes a
接続状態を変更してICチップの他の構成部間の通信を中継するメモリカードコントローラ100は、インターフェースドライバ110、カードインターフェースコントローラ120、スイッチ130、レジスタ140、メモリコアインターフェース150、及び電源検知部160を含む。
The
インターフェースドライバ110は、ICチップの一側に位置したデータラインピン及びコマンドラインピンにより電気的に接続されたホスト400との間で、データライン及びコマンドラインを通してデータトークン及びコマンドを送受信する。
それぞれのデータライン及びコマンドラインを通して物理的レベルで送信された電気的信号は、インターフェースドライバ110によりデータトークン及びコマンドにそれぞれカプセル化されて、カードインターフェースコントローラ120に伝達される。
一方、カードインターフェースコントローラ120から出力されたデータトークン及びコマンドも物理的レベルの電気的信号にカプセル開放されて、データライン及びコマンドラインを通してホスト400に転送される。
The
The electrical signals transmitted at the physical level through the respective data lines and command lines are encapsulated into data tokens and commands by the
On the other hand, the data token and command output from the
カードインターフェースコントローラ120は、ホスト400から受信したコマンドの種類に応じて、それに対応する動作を行う。すなわち、コマンドの種類に応じて、接続状態が変更される必要がある場合は接続状態の変更信号を出力する。
The
NON APDUコマンドを受信した場合、カードインターフェースコントローラ120は、高速通信プロトコルによる基本動作である、メモリ300のデータの読み取り及び書き込み動作を行い、スイッチ130を制御してカードインターフェースコントローラ120がメモリ300にアクセスできる接続状態を維持する(表1参照)。
When the NON APDU command is received, the
ここで、メモリ300は、メモリカードコントローラ100のみにより利用可能なメモリカード領域と、ICチッププロセッサ200のみによりアクセス可能なICチップ領域とに分けることができ、NON APDUコマンドにより、カードインターフェースコントローラ120がアクセスするメモリ300の特定領域はメモリカード領域に限定される。
Here, the
また、メモリ300は、ICチッププロセッサ200によりセキュリティアルゴリズムを用いてセキュリティデータが格納されるセキュリティメモリ領域、セキュリティアルゴリズムを用いない、一般のデータが格納されるユーザメモリ領域、及びメモリ領域を管理するための情報が格納されるシステムメモリ領域に分けることができる。これについては、図9を参照してより詳細に説明する。
The
APDUコマンドを受信した場合、カードインターフェースコントローラ120は、スイッチ130を制御し、データラインを通して受信されるデータトークンのコンテンツがICチッププロセッサ200に伝達されるようにする(表1参照)。
When receiving the APDU command, the
APDUコマンドを受信した後、データラインを通して受信されるデータトークンは、メモリーカードホスト400から生成されたC−APDUを含んでおり、高速通信プロトコルによりカプセル化されている。
After receiving the APDU command, the data token received through the data line includes the C-APDU generated from the
カードインターフェースコントローラ120は、データトークンからヘッダ及びテールを除去してコンテンツだけを出力する。出力されたコンテンツはC−APDUであり、スイッチ130によりICチッププロセッサ200に伝達される。
The
複数のデータトークンにより一つのC−APDUが転送される場合、カードインターフェースコントローラ120は、コンテンツを順次結合して完全なC−APDUが生成されたら、ICチッププロセッサ200に伝達することができる。
When one C-APDU is transferred by a plurality of data tokens, the
複数のデータトークンにより一つのC−APDUが転送される場合は、C−APDUがコマンドを含んでおり、一つのデータトークンにカプセル化できない場合である。 When one C-APDU is transferred by a plurality of data tokens, the C-APDU includes a command and cannot be encapsulated in one data token.
APDUコマンドにより、カードインターフェースコントローラ120の出力がICチッププロセッサ200に適用されるようにスイッチ130の接続状態が維持された後、データラインを通して受信されたC−APDUがICチッププロセッサ200に伝達される。
After the connection state of the
C−APDUを受信したICチッププロセッサ200は、それに対応する処理を行う。処理が終わったら、ICチッププロセッサ200は処理結果のR−APDUをカードインターフェースコントローラ120に伝達する。
The
R−APDUを受信したカードインターフェースコントローラ120は、APDU応答をコマンドラインを通してホスト400に伝達する。R−APDUに応答データが含まれていない場合は、R−APDUがAPDU応答に含まれて転送されることができる。しかし、R−APDUに応答データが含まれている場合は、応答データの存在を示す応答データ識別子をAPDU応答に含ませることができる。応答データ識別子を受信したホスト400は、データ読み取りコマンドに従ってR−APDUをメモリカードコントローラ100から読み取ることができる。
Upon receiving the R-APDU, the
APDU応答が転送されると、カードインターフェースコントローラ120は、次のコマンドを受信するためにスイッチ130の接続状態を変更することができる。APDU応答の転送前または転送後のスイッチ130の接続状態は、予め設定されたポリシーにより変更される。
When the APDU response is transferred, the
第1に、スイッチ130の接続状態は、次のコマンドが受信されるまで現在状態を維持できる。したがって、APDU応答転送後、NON APDUコマンドまたは接続コマンドが受信されてからスイッチ130の接続状態が変更可能になる。第2に、スイッチ130は、APDUコマンド受信前の接続状態に変更されることができる。したがって、カードインターフェースコントローラ120とメモリ300との間、またはICチッププロセッサ200とメモリ300との間の接続状態に戻る。第3に、予め決められている接続状態にしか戻ることができない。
First, the current connection state of the
従って、NON APDUコマンドによる接続状態を基本接続状態と設定した場合、APDU応答転送前後及び接続コマンドによる処理終了後にカードインターフェースコントローラ120とメモリ300との間の接続状態に戻る。
Therefore, when the connection state by the NON APDU command is set to the basic connection state, the connection state between the
接続コマンドを受信した場合、カードインターフェースコントローラ120は、スイッチ130を制御してICチッププロセッサ200とメモリ300とが接続できるようにする(表1参照)。
When the connection command is received, the
接続コマンドは、ICチッププロセッサ200の制御信号によりバスコントローラ210を生成し、生成された接続コマンドは、バスコントローラ210が接続されたコマンドラインを通してカードインターフェースコントローラ120に伝達される。
The connection command generates the
カードインターフェースコントローラ120はスイッチ130の接続状態をICチッププロセッサ200とメモリ300との間でデータの送受信ができるように変更する。ICチッププロセッサ200は、スイッチ130で接続されたメモリ300の特定アドレスにアクセスして、格納されたデータを読み取ったり書き込んだりする。
The
ICチッププロセッサ200が、メモリ読み取り/書き込み作業の終了したことをカードインターフェースコントローラ120に知らせる必要がある場合、バスコントローラ210を通して解除コマンドを出力する。
When the
カードインターフェースコントローラ120は、解除コマンドに従って、ICチッププロセッサ200からR−APDUを受信するために、または次のコマンドによる処理を行うために、スイッチ130の接続状態を変更する。
In accordance with the release command, the
ICチッププロセッサ200がホスト400から転送されたC−APDUを処理するためにメモリにアクセスした場合にはR−APDUが転送されなければならないため、カードインターフェースコントローラ120はスイッチを制御して接続状態を変更することによりICチッププロセッサ200からR−APDUを受信する。
Since the R-APDU must be transferred when the
一方、ICチッププロセッサ200がR−APDUを生成するためにメモリ300にアクセスした場合を除き、カードインターフェースコントローラ120は、現在の接続状態を維持するか、予め決められた接続状態に転換する。
On the other hand, except when the
R−APDUの生成のほか、ICチッププロセッサ200がメモリ300にアクセスする理由は、メモリ300のデータをセキュリティアルゴリズムを用いて暗号化/復号化したり、ファイル管理したりするなど、多様な場合が存在できる。
In addition to R-APDU generation, there are various reasons why the
特に、別途のセキュリティ機能が具備されない高速通信プロトコルの場合は、セキュリティアルゴリズムを用いてデータセキュリティを確保できる。このために、ホスト400またはメモリカードコントローラ100は、メモリ300の特定領域などにアドレスを指定してデータセキュリティ処理を行うようにするC−APDUを生成し、ICチッププロセッサ200に適用することができる。ここで、メモリ300の特定領域とは、メモリカードコントローラ100のみによりアクセスできるメモリカード領域であることができる。
データセキュリティ処理を行うためにC−APDUを受信したICチッププロセッサ200は、該領域にアクセスするための接続コマンドをバスコントローラ210を通して出力し、接続状態の変更を要求する。その後、ICチッププロセッサ200は、特定領域に対するデータセキュリティ処理を行うことができる。これについては、図9乃至図12を参照してより詳細に説明する。
In particular, in the case of a high-speed communication protocol that does not have a separate security function, data security can be ensured using a security algorithm. For this purpose, the
The
他の実施例で、カードインターフェースコントローラ120は所定時間(例えば、一周期)が経過すると、ICチッププロセッサ200とメモリ300との間の接続状態を解除し、以前の接続状態または予め決められた接続状態に戻るようにスイッチ130を制御する。
In another embodiment, the
また他の実施例では、カードインターフェースコントローラ120は、ICチッププロセッサ200とメモリ300との間のデータ送受信状態をモニタリングして、データのやり取りがもうない場合は、以前の接続状態または予め決定された接続状態に戻るようにスイッチ130を制御する。
In another embodiment, the
スイッチ130は、カードインターフェースコントローラ120、ICチッププロセッサ200、及びメモリ300とそれぞれ結合し、カードインターフェースコントローラ120の制御により三つの構成部間のデータ送受信を可能とさせる。
The
スイッチ130は、多様な方式で実現でき、その構成は、本発明が属する分野で通常の知識を有する者であれば誰でも容易に実現することができる。スイッチ130の接続状態の変更方式は図2及び表1を参照する。
The
レジスタ140は、基本レジスタ(mandatory)と選択レジスタ(optional)で構成され、カードインターフェースコントローラ120の動作に必要とされる状態情報を格納する。レジスタ140は、識別のためのカード個別番号を格納する128ビットのCID(Card Identification number)と、初期化過程でホスト400により動的に割り当てられたカードシステムアドレスを格納する16ビットのRCA(Relative Card Address)と、カード動作状態に関する情報を格納する128ビットのCSD(Card Specific Data)と、カードの電圧形式を識別する特定の放送コマンド(broadcast command)により用いられる32ビットのOCR(Operation Condition Register)と、を含み、選択的にカードの出力ドライバを構成する16ビットのDSR(Driver Stage Register)をさらに含むことができる。
The
メモリコアインターフェース150は、カードインターフェースコントローラ120またはICチッププロセッサ200から要求されたメモリの特定アドレスにアクセスしてデータを読み取ったり書き込んだりする。
The memory core interface 150 accesses a specific address of the memory requested from the
電源検知部160は、ICチップが端末のソケットに挿入されると、印加された電源を検知し、ICチップの構成部を駆動させるリセット信号(Reset signal)を生成して各構成部に適用する。 When the IC chip is inserted into the socket of the terminal, the power detection unit 160 detects the applied power, generates a reset signal (Reset signal) that drives the component of the IC chip, and applies it to each component. .
ICチッププロセッサ200は、ICチップの基本動作を行うが、基本動作の実行に必要とされるモジュール(例えば、コード、アプレットなど)及びデータは、メモリ300、例えば、メモリ300のシステムメモリ領域にアクセスして得ることができる。
The
メモリカードコントローラ100を通してホスト400からC−APDUを受信すると、ICチッププロセッサ200はメモリ300にアクセスする必要があるかどうかを、C−APDUの種類及びC−APDUにデータが含まれているか否かに基づいて判断する。
When the C-APDU is received from the
判断の結果、メモリ300からデータを読み取ったり書き込んだりする必要がある場合、バスコントローラ210に制御信号が出力される。制御信号から生成された接続コマンドに従ってICチッププロセッサ200とメモリ300とが接続されると、ICチッププロセッサ200は、予め割り当てられたメモリ300のICチップ領域に従来方式で接続してデータを読み取ったり書き込んだりする。
As a result of the determination, when it is necessary to read or write data from the
ここで、メモリ300のICチップ領域は、ICチッププロセッサ200のみでアクセスできるように設定された領域であって、モジュール及びデータが格納される。ここで、ICチップ領域は、従来ICチップのメモリ管理システムのアドレス体系がそのまま採用されることが好ましい。この場合、ICチッププロセッサ200は、従来メモリアドレスをそのまま使用してもメモリ300を自由に利用できる。勿論、大容量のデータを書き込むためにはより多いアドレスが必要となるため、それだけアドレス体系を拡張することができる。
Here, the IC chip area of the
メモリ300を用いた作業の終了後、ICチッププロセッサ200は解除コマンドを発生するようにバスコントローラ210を制御し、メモリ300のアクセス権限をカードインターフェースコントローラ120に渡す。
After completion of the work using the
勿論、他の実施例では、ICチッププロセッサ200が予め決められた所定時間だけメモリ300へアクセスできる権限を与えるか、または、ICチッププロセッサ200とメモリ300との間のデータやり取り状態をモニタリングして、ICチッププロセッサ200の作業が終了したか否かを決定することもできる。ICチッププロセッサ200は、作業結果をR−APDUで構成し、カードインターフェースコントローラ120に伝達する。
Of course, in another embodiment, the
判断の結果、メモリ300からデータを読み取ったり書き込んだりする必要がない場合、ICチッププロセッサ200は、接続コマンドを生成せず、作業結果をカードインターフェースコントローラ120に伝達する。
If it is not necessary to read or write data from the
一方、ICチッププロセッサ200は、すべての作業実行に必要なメモリリソースをメモリ300を通して確保でき、基本動作実行時の演算結果をRAM(図示せず)に一時的に格納することもできる。
On the other hand, the
バスコントローラ210は、ICチッププロセッサ200とコマンドラインとの間に結合され、ICチッププロセッサ200からの制御信号により接続コマンドまたは解除コマンドを生成してメモリカードコントローラ100に伝達する。
The
メモリ300は、電気的にデータを書き込んだり削除したりすることができるフラッシュメモリのような固体記憶素子、あるいは他の形態の記憶素子であることができる。
The
メモリ300は、メモリカード領域とICチップ領域とに分割でき、各領域はメモリカードコントローラ100及びICチッププロセッサ200のみが利用することができる。
The
メモリカード領域にはホスト400から転送されたデータが格納され、ICチップ領域にはICチッププロセッサ200の基本動作実行に必要とされるモジュールが格納される
ことができる。
Data transferred from the
また、メモリ300は、セキュリティデータを格納するセキュリティメモリ領域、一般のデータが格納されるユーザメモリ領域、及びICチップメモリを管理するシステムメモリ領域に分割できる。これについては、図9を参照してより詳細に説明する。
The
図4は、本発明の一実施例によるAPDUコマンドの動作を説明するための例示図である。先ず、ホスト400とICチップとの間のAPDU転送方式を概略的に説明した後、MMCプロトコルを採用した実施例を説明する。
FIG. 4 is an exemplary diagram for explaining an operation of an APDU command according to an embodiment of the present invention. First, an APDU transfer method between the
ICチップホストにより生成されたC−APDUは、4バイトのヘッダと可変長のボディで構成される。ヘッダは1バイトのCLA(Class of Instruction)、1バイトのINS(Instruction code)、1バイトのP1(parameter 1)、及び1バイトのP2(Parameter 2)で構成される。ボディは選択的ボディまたはデータフィールドの長さを特定する1バイトのLc、可変長のコマンドパラメータまたはデータを含むデータフィールド、返還データの予想長さを特定する1バイトのLeで構成される。ICチッププロセッサ200により生成されたR−APDUは、可変長のボディと二つの状態ワードSW1,SW2で構成される。ボディは選択的ボディまたはデータフィールドの長さを特定するLe、可変長さのデータで構成される。
The C-APDU generated by the IC chip host is composed of a 4-byte header and a variable-length body. The header is composed of 1-byte CLA (Class of Instruction), 1-byte INS (Instruction code), 1-byte P1 (parameter 1), and 1-byte P2 (Parameter 2). The body is composed of a 1-byte Lc that specifies the length of the selective body or data field, a data field that includes a command parameter or data of variable length, and a 1-byte Le that specifies the expected length of the return data. The R-APDU generated by the
ホスト400はICチップホストにより生成されたC−APDUに、C−APDUの長さを特定するLBヘッダを結合させて、これを複数のデータトークンにカプセル化する。
The
カプセル化された複数のデータトークンは、高速通信プロトコルを支援するホスト400と端末のメモリカードコントローラ100との間に形成された物理的階層を通してメモリカードコントローラ100に伝達される。受信された複数のデータトークンは、カードインターフェースコントローラ120によりLBヘッダ値を参照してAPDUにカプセル開放される。
The plurality of encapsulated data tokens are transmitted to the
以下では、MMCプロトコルによる高速通信プロトコルを用いた動作を詳細に説明する。 Hereinafter, an operation using a high-speed communication protocol based on the MMC protocol will be described in detail.
MMCプロトコルの場合、コマンド及び応答のコマンドトークン及びコマンドトークンに関連付けられたデータトークンがそれぞれコマンドライン及びデータラインを通して送受信される。データ読み取り/書き込みコマンド(ホスト400からICチップへの)及びこれに対する応答(ICチップからホスト400への)は、コマンドラインを通して送受信され、コマンドに従うデータは、データラインを通して送受信される。MMCプロトコルにおいて、データ読み取り/書き込みコマンドは、連続(sequential)コマンドとブロック指向(Block-oriented)コマンドに区別される。連続コマンドは、連続的データストリームを転送し、コマンドライン上に中止(stop)コマンドが出現するまで転送が続けられる。ブロック指向コマンドは、CRC(cyclic redundancy checking)を有する連続ブロック(トークン)を転送し、コマンドライン上に中止コマンドが出現するまでブロックの転送が続けられる。コマンドは、ホスト400からICチップに転送され、応答はICチップからホスト400に転送される。データはホスト400とICチップとの間で転送される。
In the case of the MMC protocol, a command token of a command and a response and a data token associated with the command token are transmitted and received through the command line and the data line, respectively. Data read / write commands (from the
コマンドトークンは全長が48ビットであって、開始ビット(start bit)と終了ビット(end bit)は、常に0と1である。開始ビットの次に位置した送信器ビット(transmitter bit)は、端末からのコマンドであることを示すビットであって、1であり、コマンド内容(content)は、送信器ビットの次に位置し、7ビットのCRCチェックサムビットにより保護される。 The command token has a total length of 48 bits, and the start bit (start bit) and the end bit (end bit) are always 0 and 1. The transmitter bit located after the start bit is a bit indicating a command from the terminal and is 1, and the command content is located next to the transmitter bit. It is protected by a 7-bit CRC checksum bit.
応答トークンは全長が48または136ビットであって、開始ビットと終了ビットは、常に0と1である。開始ビットの次に位置した送信器ビットは、ICチップからの応答であることを示すビットであって、0であり、応答内容は、送信器ビットの次に位置し、7ビットのCRCチェックサムビットにより保護される。 The response token has a total length of 48 or 136 bits, and the start and end bits are always 0 and 1. The transmitter bit located next to the start bit is a bit indicating that it is a response from the IC chip and is 0, and the response content is located next to the transmitter bit and is a 7-bit CRC checksum. Protected by bits.
ブロック指向データトークンは、開始ビットと終了ビットが常に0と1である。開始ビット、終了ビット、CRCチェックサムを除いた残り部分の長さは512バイトであって、APDUの長さを示す2バイトのLBフィールドと510バイトのAPDUフィールドで構成される。APDUフィールドにはホスト400またはICチップからのC−APDUまたはR−APDUが含まれる。510バイトを超えるAPDUは、2以上のブロック指向データトークンに分割されて転送され、最後のブロック指向データトークンの満たされなかった残りのバイトには00hが挿入される。
A block-oriented data token always has a start bit and an end bit of 0 and 1. The remaining length excluding the start bit, end bit, and CRC checksum is 512 bytes, and is composed of a 2-byte LB field indicating the length of the APDU and a 510-byte APDU field. The APDU field includes C-APDU or R-APDU from the
図4を参照して説明すると、APDU通信は次の4種類のケースを含む。 Referring to FIG. 4, APDU communication includes the following four types of cases.
ケース1:C−APDUのデータフィールド値及びR−APDUのデータフィールド値が両方とも存在しないケース
ケース2:C−APDUのデータフィールド値は存在しないが、R−APDUのデータフィールド値は存在するケース
ケース3:C−APDUのデータフィールド値は存在するが、R−APDUのデータフィールド値は存在しないケース
ケース4:C−APDUのデータフィールド値及びR−APDUのデータフィールド値が両方とも存在するケース
C−APDUのデータフィールド値が存在しない場合には、C−APDUはAPDUコマンド410に含まれるか、またはAPDUトークン420に含まれることができる(ケース1及びケース2)。一方、C−APDUのデータフィールド値が存在する場合には、C−APDUはAPDUトークン420に含まれて転送される(ケース3及びケース4)。上記二つのケースにおいて、C−APDUを含むAPDUトークン420は、APDUコマンド410とAPDU応答430との間で転送される。これは、R−APDUのデータフィールド値が存在しない場合、R−APDUをAPDU応答430から受信するためである。一方、C−APDUを転送するためのAPDUコマンド410が受信されたメモリカードコントローラ100は、スイッチ130の接続状態をメモリカードコントローラ−メモリ415からメモリカードコントローラ−ICチッププロセッサ425に変更する。
Case 1: Case where neither C-APDU data field value nor R-APDU data field value exists Case 2: Case where C-APDU data field value does not exist, but R-APDU data field value exists Case 3: C-APDU data field value exists but R-APDU data field value does not exist Case 4: C-APDU data field value and R-APDU data field value both exist In the absence of a C-APDU data field value, the C-APDU may be included in the
R−APDUのデータフィールド値が存在しない場合(ケース1及びケース3)や、サイズが十分に小さい場合、R−APDUはAPDU応答430に含まれる。
When the data field value of the R-APDU does not exist (
R−APDUのデータフィールド値が存在し、サイズがR−APDUを通して転送できない場合は次のように処理する。R−APDUのデータフィールド値が存在する場合には、ICチッププロセッサ200はR−APDUそれ自体、R−APDUが格納されたメモリのアドレス、または転送するR−APDUの存在を示す情報をメモリカードコントローラ100に伝達する。これを受信したメモリカードコントローラ100は、APDU応答430にR−APDU読み取り識別子を挿入して転送する。R−APDU読み取り識別子は、ホスト400に転送するR−APDUの存在を示す情報であって、一つ以上のビットを用いて単に存在するか否かだけを示したり、R−APDUが格納されたメモリ300のアドレスを示したり、またはこれらの組み合わせたことを示したりすることができる。R−APDU読み取り識別子が含まれたAPDU応答430を受信したホスト400は、読み取りコマンドに従ってR−APDUをICチップから読み取る。一方、APDU応答の転送前または転送後に、メモリカードコントローラ100はスイッチ130の接続状態を以前の接続状態または予め指定された接続状態に変更する。図4には、メモリカードコントローラ−メモリ間の接続状態に変更されることが示されている。
When the data field value of the R-APDU exists and the size cannot be transferred through the R-APDU, the following process is performed. When the data field value of the R-APDU exists, the
図5は、本発明の一実施例による接続コマンドの動作を説明するための例示図である。 FIG. 5 is an exemplary diagram for explaining an operation of a connection command according to an embodiment of the present invention.
メモリカードコントローラ100を通してICチップホストからC−APDUを受信すると、ICチッププロセッサ200は、メモリ300にアクセスする必要があるかどうかをC−APDUの種類及びC−APDUにデータが含まれているか否かに基づいて判断し、メモリ300からデータを読み取ったり書き込んだりする必要がある場合には、バスコントローラ210を通して接続コマンド500をデータライン上に出力する。データラインを通して接続コマンド500を受信したメモリカードコントローラ100は、接続状態をメモリカードコントローラ−メモリ505からICチッププロセッサ−メモリ515に変更する。ICチッププロセッサ200がメモリ300に接続されると、ICチッププロセッサ200は、予め割り当てられたメモリ300のICチップ領域を従来方式で接続してデータを読み取ったり書き込んだりする。従って、データライン上には何らの信号も発生しない。
When receiving the C-APDU from the IC chip host through the
メモリ300を用いた作業が終了すると、ICチッププロセッサ200は解除コマンドを発生するようにバスコントローラ210を制御し、メモリ300アクセス権限をカードインターフェースコントローラ120に渡す。勿論、他の実施例では、ICチッププロセッサ200が所定時間だけメモリ300へアクセスできる権限を与えるか、またはICチッププロセッサ200とメモリ300との間のデータやり取り状態をモニタリングしてICチッププロセッサ200の作業が終了したか否かを決定することもできる。したがって、解除コマンド520は、選択事項である。メモリ300を用いた作業が終了すると、メモリカードコントローラ100は、以前の接続状態または予め指定された接続状態に戻る。図5には、メモリカードコントローラ−メモリ間の接続状態に変更されることが示されている。
When the work using the
図6は、本発明の一実施例によるAPDUコマンド及び接続コマンドを用いたICチップの動作を説明するための例示図である。 FIG. 6 is an exemplary diagram for explaining an operation of an IC chip using an APDU command and a connection command according to an embodiment of the present invention.
ICチップホストからC−APDUが受信されたホスト400は、APDUコマンド600をコマンドラインを通してメモリカードコントローラ100に転送する。その後、C−APDUをAPDUトークン610にカプセル化し、データラインを通してメモリカードコントローラ100に転送する。APDUコマンド600の受信前に、メモリカードコントローラ100とメモリ300とは605のように接続されている。APDUコマンド600を受信したメモリカードコントローラ100は、接続状態を変更して、メモリカードコントローラ−ICチッププロセッサが615のように接続されるようにする。その後、データラインを通してAPDUトークン610が受信されと、メモリカードコントローラ100は、C−APDUにカプセル開放してICチッププロセッサ200に伝達する。C−APDUを受信したICチッププロセッサ200は、メモリ200アクセスが必要であるか否かを判断し、必要であれば接続コマンド620をコマンドラインに出力する。接続コマンド620を受信したメモリカードコントローラ100は、625のように接続状態をICチッププロセッサ−メモリに変更する。その後、メモリカードコントローラ100は、ICチッププロセッサ200からR−APDUが受信されると、これをAPDU応答630に変換してホスト400に転送する。APDU応答630の転送前後に、メモリカードコントローラ100の接続状態は現在の接続状態を維持するか、以前の接続状態または予め指定された接続状態に変更される。
The
図7及び図8は、本発明の一実施例によるAPDUコマンド及び接続コマンドを用いたICチップの動作であって、データフィールド値を有するR−APDUを転送するICチップの動作を説明するための例示図である。図面符号「700」〜「730」及び図面符号「800」〜「830」は図6の図面符号「600」〜「630」と同じであるため、以下では他の部分を中心に説明する。 7 and 8 are diagrams illustrating an operation of an IC chip using an APDU command and a connection command according to an embodiment of the present invention, and transferring an R-APDU having a data field value. It is an illustration figure. Since the reference numerals “700” to “730” and the reference numerals “800” to “830” are the same as the reference numerals “600” to “630” in FIG. 6, the following description will focus on other parts.
以後、メモリカードコントローラ100は、ICチッププロセッサ200からR−APDUまたはこれに対応する応答(R−APDUが格納されたメモリアドレス、転送するR−APDUの存在を示す情報など)が受信されると、これをAPDU応答730に変換してホスト400に転送する。メモリカードコントローラ100は、APDU応答730にR−APDU読み取り識別子を挿入して転送する。一方、APDU応答730の転送前後に、メモリカードコントローラ100の接続状態は735のように現在の接続状態を維持するか、以前の接続状態または予め指定された接続状態に変更される。
Thereafter, when the
R−APDU読み取り識別子が含まれたAPDU応答730を受信したホスト400は、読み取りコマンド740を通してR−APDUをICチップから読み取る。読み取りコマンド740を受信したメモリカードコントローラ100は、読み取り応答750をホスト400に転送し、R−APDUをデータトークン760にカプセル化してホスト400に転送する。データトークン760の転送が完了されると、ホスト400は中止コマンド770をメモリカードコントローラ100に転送し、メモリカードコントローラ100は、これに対する応答として中止応答780をホスト400に転送する。
The
ICチッププロセッサ200がR−APDUの存在を示す情報だけをメモリカードコントローラ100に転送する実施例では、APDUコマンド840は読み取りコマンドであって、ICチッププロセッサ200からデータを読み取るコマンドである。従って、メモリカードコントローラ100は、APDUコマンド840により接続状態をメモリカードコントローラ−ICチッププロセッサに変更し(855)、ICチッププロセッサ200は、接続状態変更に応じて一時的に格納していたR−APDUをメモリカードコントローラ100に転送する。メモリカードコントローラ100は、R−APDUをデータトークン850にカプセル化してホスト400に転送し、865のように接続状態を変更する。
In the embodiment in which the
図9は、本発明の一実施例によるセキュリティアルゴリズムの実行を説明するための図面である。 FIG. 9 is a diagram for explaining the execution of a security algorithm according to an embodiment of the present invention.
ICチップは、データ入出力端子910、ICチッププロセッサ200、及びICチップメモリ920を含むことができる。
The IC chip can include a data input / output terminal 910, an
データ入出力端子910は、端末の外部から入力されるデータをICチップに入出力するための端子であって、上述したデータライン及びコマンドラインに接続される。データ入出力端子910は、ISO7816、RF、MMC、USB規格などの多様な形態で入出力することができる。 The data input / output terminal 910 is a terminal for inputting / outputting data input from the outside of the terminal to / from the IC chip, and is connected to the above-described data line and command line. The data input / output terminal 910 can be input / output in various forms such as ISO7816, RF, MMC, USB standards.
ICチッププロセッサ200は上述したように、接続状態に応じてメモリ300とデータをやり取りし、ICチップの機能を行うためにICチップを制御し、ホスト400の要求により、データラインを通して伝達されるデータに対して暗号化することを望む場合は、セキュリティアルゴリズムを駆動してデータを暗号化されたセキュリティデータに変更する。ICチッププロセッサ200は、暗号化されたセキュリティデータをメモリ300のセキュリティメモリ領域310に格納する。
As described above, the
セキュリティアルゴリズムをICチッププロセッサ200により駆動し、暗号化されたセキュリティデータに変更してメモリ300のセキュリティメモリ領域310に格納し、同じセキュリティアルゴリズムを用いて格納されたセキュリティデータを復号化された一般のデータに変更してホスト400に伝達する過程をセキュリティ処理(Secure Processing)過程という。
The security algorithm is driven by the
ホスト400から、制御信号により暗号化されることなく、一般のデータとして管理されることが要求された場合は、ICチッププロセッサ200によるセキュリティアルゴリズムを駆動せずに、メモリ300のユーザメモリ領域320に格納し、これを照会時、復号化過程を経ずにホスト400に伝達する過程を一般処理過程という。
When it is requested from the
セキュリティアルゴリズムは、上述したように当該技術分野で広く知られたものを利用でき、例えば、DES、3−DES、AESの何れか一つであることができる。 As the security algorithm, those widely known in the technical field can be used as described above, and for example, any one of DES, 3-DES, and AES can be used.
本発明でセキュリティアルゴリズムは、データラインを通して入出力される全てのデータに対して実行されるものではなく、ホスト400から要求されたデータに対して実行されることができ、制御プログラムにより予め設定された種類のデータに対して実行されることができる。
In the present invention, the security algorithm is not executed for all data input / output through the data line, but can be executed for data requested by the
セキュリティアルゴリズムは、ICチップメモリ920内に搭載された制御プログラムにより実行されることができる。制御プログラムは、データラインを通して入力されるデータを暗号化するか否か、及び、メモリ300に格納されたデータを復号化するか否かを制御したり、メモリ上のアドレスをICチップメモリ920またはシステムメモリ領域330に格納したりすることができる。また、制御プログラムは、メモリ300のシステムメモリ領域330に格納されることができる。
The security algorithm can be executed by a control program installed in the
制御プログラムは、グラフィックユーザインターフェース(GUI)を通して端末のユーザにデータを暗号化するか否かを問うことができる。この時、ユーザが暗号化を要求する場合、制御プログラムはセキュリティアルゴリズムを実行して該データを暗号化して、これをメモリ300に格納し、ICチップメモリ920またはシステムメモリ領域330にデータが暗号化されたという情報及び格納されたデータのメモリ上のアドレスを格納することができる。
The control program can ask the user of the terminal whether to encrypt data through a graphic user interface (GUI). At this time, if the user requests encryption, the control program executes a security algorithm to encrypt the data, stores it in the
一方、ユーザが暗号化を要求しなかった場合、制御プログラムはセキュリティアルゴリズムを実行せずに、該データをメモリ300に格納する。ICチップの格納領域にはデータが暗号化されなかったという情報及び格納されたデータのメモリ上のアドレスを格納する。このように、データが暗号化されたか否かのことやメモリ上のアドレスは、後で制御プログラムがメモリ300に格納されたデータを検索する場合に必要な情報である。
On the other hand, when the user does not request encryption, the control program stores the data in the
グラフィックユーザインターフェース(GUI)は、制御プログラム内に一つのモジュールで含まれてもよく、端末上で実行される様々なアプリケーション内に別途に具備されてもよい。アプリケーションの例については、図12を参照してより詳細に説明する。 The graphic user interface (GUI) may be included in the control program as a single module, or may be separately provided in various applications executed on the terminal. An example of the application will be described in more detail with reference to FIG.
メモリ300は、ICチップと一つのモジュールで構成された統合ICチップで構成されることができ、ICチップと別途のモジュールで連動される形態で構成されることもできる。
The
メモリ300が統合ICチップ形態で構成される場合、ICチップとメモリ300との間には、データ転送のためにアドレスバス(Address Bus)及びデータバス(Data Bus)を構成することができる。
When the
メモリ300がICチップと別途の形態で構成される場合、ISO7816、MMC規格、ISO14443、ISO15693、ISO18092の何れか一つの方式でICチップとメモリ300との間のデータがやり取りされる。統合ICチップ形態が、別途で連動される形態に比べて、動作速度がより速いという長所がある。
When the
GSM方式のSIMカードや、W−CDMA方式のUSIMカードのような形態で具体化されたICチップは、移動通信加入者情報を格納したものであって、移動通信端末に装着するだけで、自分の移動通信端末として使用可能である。また、ICチップには個人情報、金融情報などセキュリティを必要とする情報が格納される。 An IC chip embodied in a form such as a GSM SIM card or a W-CDMA USIM card stores mobile communication subscriber information. It can be used as a mobile communication terminal. The IC chip stores information that requires security, such as personal information and financial information.
本発明の一実施例によるメモリ300は、ICチッププロセッサ200によりセキュリティアルゴリズムを駆動して、メモリ300に暗号化されたデータを格納するセキュリティメモリ領域310、暗号化されない一般のデータを格納するユーザメモリ領域320、及びICチップメモリ920を管理するシステムメモリ領域330を含むことができる。ここで、ICチッププロセッサ200は、セキュリティ処理を担当するコプロセッサを含むことができる。
The
メモリ300は、メモリアドレスを予め区画指定し物理的に区分してセキュリティデータ及び一般のデータを格納できるが、メモリ300の効率的な管理のために、上述したように領域を予め分割して設定することが好ましい。メモリ300は、例えば、大容量データを格納できるフラッシュメモリを使用できる。
The
上述したメモリ領域分割は、ユーザが端末のメモリ管理プログラムを用いて、自分が所望する割合でメモリ300をセキュリティメモリ領域及びユーザメモリ領域に分けて利用することができる。システムメモリ領域はメモリ領域を全体的に管理するので、一般的にはアクセスできない領域である。
In the memory area division described above, the user can use the
ユーザが端末のメモリ管理プログラムを用いて、自分が所望する割合でメモリ領域を分割する場合、最初にメモリが端末に接続されると、システムメモリ領域に格納されている初期設定アプレットがローディングされてメモリ領域を設定できるように駆動される。 When the user divides the memory area at the desired ratio using the memory management program of the terminal, the initial setting applet stored in the system memory area is loaded when the memory is first connected to the terminal. Driven to set the memory area.
ユーザが、一般的にメモリ機能を多く使用する場合には、ユーザメモリ領域をより多く使用できるように設定でき、モバイルコンテンツを多く使用する場合には、セキュリティメモリ領域をより多く設定することができる。 In general, when the user uses a lot of memory functions, the user memory area can be set to be used more. When the user uses a lot of mobile content, the security memory area can be set more. .
設定方式は、例えば、ユーザメモリ:セキュリティメモリ=50%:50%の割合で設定すれば、システムメモリ領域にてメモリ300の全体の物理的アドレスを管理するユーザ領域とセキュリティ領域を分割することができる。
For example, if setting is performed at a ratio of user memory: security memory = 50%: 50%, the user area for managing the entire physical address of the
分割された各領域には、アクセスポリシーが別に適用されて、ユーザが制御できる部分はユーザメモリ領域部分となる。端末には、メモリ管理プログラムを採用して、ICチップのシステムメモリ領域に格納されているメモリ管理アプレットを駆動してメモリ領域をリセットできるようにする。 An access policy is separately applied to each divided area, and a portion that can be controlled by the user is a user memory area portion. The terminal employs a memory management program to drive a memory management applet stored in the system memory area of the IC chip so that the memory area can be reset.
この場合もシステムメモリにより管理されているメモリアドレスリセットから、アクセスポリシーを利用してユーザのアクセス可能な部分を設定することができる。 In this case as well, a user accessible part can be set using an access policy from a memory address reset managed by the system memory.
一方、各領域は、固有サイズを有してもよいが、各領域のサイズを動的に変更できることが好ましい。 On the other hand, each region may have a unique size, but it is preferable that the size of each region can be dynamically changed.
図10は、本発明の一実施例によるデータセキュリティアルゴリズムを用いてデータを暗号化する過程を説明するためのフローチャートである。 FIG. 10 is a flowchart illustrating a process of encrypting data using a data security algorithm according to an embodiment of the present invention.
図10を参照すると、ステップS1010で、制御プログラムがICチップの入出力端子を通して入力されたデータを暗号化するか否かを端末のユーザに確認する。 Referring to FIG. 10, in step S1010, the control program confirms with the user of the terminal whether or not the data input through the input / output terminal of the IC chip is encrypted.
ステップS1020で、ユーザがデータの暗号化を選択した場合、制御プログラムはユーザからセキュリティキーの入力を受けてこれを認証する。ここで、認証方法としては、PINまたは暗証番号を利用することができる。 If the user selects data encryption in step S1020, the control program receives the security key input from the user and authenticates it. Here, as an authentication method, a PIN or a personal identification number can be used.
ステップS1030で、セキュリティキーの認証が成功したら、制御プログラムはICチッププロセッサ200によりセキュリティアルゴリズムを実行し、データを暗号化する。セキュリティキーの認証に失敗した場合は、そのままプロセスは終了する。
If the authentication of the security key is successful in step S1030, the control program executes a security algorithm by the
一方、ユーザがデータの暗号化を選択しなかった場合には、データを暗号化するステップS1030を経ないで、ステップS1040に進む。 On the other hand, if the user does not select data encryption, the process proceeds to step S1040 without going through step S1030 for encrypting data.
ステップS1040で、データをメモリ300に格納し、格納されたデータを暗号化したか否か、及び格納されたデータのメモリ上のアドレスをICチップ内のICチップメモリ920に格納する。ここで、「データを暗号化したか否か」は、ステップS1030を経た場合にはデータが暗号化されたという情報をステップS1040で格納し、ステップS1030を経なかった場合にはデータが暗号化されなかったという情報をステップS1040で格納する。
In step S1040, the data is stored in the
ステップS1050で、制御プログラムはデータの格納結果を端末の表示部を通してユーザに提供する。 In step S1050, the control program provides the data storage result to the user through the display unit of the terminal.
図11は、本発明の一実施例によるデータセキュリティアルゴリズムを用いてデータを復号化する過程を説明するためのフローチャートである。 FIG. 11 is a flowchart illustrating a process of decrypting data using a data security algorithm according to an embodiment of the present invention.
図11を参照すると、ステップS1110で、ユーザから移動通信端末のグラフィックユーザインターフェースを通して制御プログラムに、メモリ300に格納されているデータの検索が要求される。
Referring to FIG. 11, in step S1110, the user is requested to search for data stored in the
ステップS1120で照会したデータが暗号化されたデータである場合、制御プログラムはユーザのセキュリティキーを認証する。セキュリティキーの認証はPINまたは暗証番号を利用することができる。 If the data inquired in step S1120 is encrypted data, the control program authenticates the user's security key. Authentication of the security key can use a PIN or a password.
ステップS1130で、セキュリティキーの認証が成功したら、ステップS1140で、制御プログラムはメモリ上のアドレスから検索したデータを、ICチッププロセッサ200によりセキュリティアルゴリズムを実行して復号化する。若しステップS1120でデータが暗号化されなかったと照会された場合、ステップS1140は行われない。一方、ステップS1130で、セキュリティキーの認証が失敗された場合、そのままプロセスは終了する。
If the authentication of the security key is successful in step S1130, in step S1140, the control program decrypts the data retrieved from the address on the memory by executing a security algorithm by the
ステップS1150で、制御プログラムにより、復号化されたデータまたは暗号化されなかったデータが移動通信端末の表示部を通してユーザに提供される。 In step S1150, the control program provides the decrypted data or unencrypted data to the user through the display unit of the mobile communication terminal.
図12は、本発明の一実施例によるメモリのセキュリティメモリ領域に格納可能なデータのブロック図である。 FIG. 12 is a block diagram of data that can be stored in a security memory area of a memory according to an embodiment of the present invention.
図12に示すデータは、端末の設定情報及び端末ユーザの個人情報を項目別に区分して構造化したものである。 The data shown in FIG. 12 is structured by classifying terminal setting information and terminal user personal information by item.
このように構造化されたデータは、図12に示すように、個人ユーザインターフェース(MY UI)項目、個人日程管理システム(PIMS:Personal Information Management System)項目、ブラウザ(Browser)項目、金融(Finance)項目、及びアプリケーション(Application)項目に区分されることができる。 As shown in FIG. 12, the data structured in this way includes a personal user interface (MY UI) item, a personal schedule management system (PIMS) item, a browser item, a browser item, and a finance. It can be divided into items and application items.
個人ユーザインターフェース項目には、ユーザが移動通信端末を便宜に使う目的や、飾る目的で設定された情報として待受画面、ベル音(着信音など)、時間設定、フォント、自分のアバタ、たまごっちなどの情報が含まれる。 Personal user interface items include standby screens, bell sounds (such as ringtones), time settings, fonts, own avatars, Tamagotchi, etc., as information set for the purpose of the user using the mobile communication terminal for convenience and decorating purposes. Information is included.
PIMS項目には、電話番号、スケジュール管理、アラーム、SMS発信/着信、電子メールなどの情報が含まれる。ブラウザ項目には、お気に入り、履歴情報などが含まれる。 The PIMS item includes information such as a telephone number, schedule management, alarm, SMS transmission / reception, and e-mail. The browser item includes favorites, history information, and the like.
金融項目には、口座番号、暗証番号、使用履歴、送金口座番号などの情報が含まれる。 The financial items include information such as account number, personal identification number, usage history, and remittance account number.
アプリケーション項目には、移動通信端末上で実行されるメッセンジャ、テレメトリ、DMB、オフィス、及びIDが含まれることができる。 Application items can include messenger, telemetry, DMB, office, and ID executed on the mobile communication terminal.
メッセンジャ項目には、チャットのために用いられるメッセンジャに主に用いられる情報、例えば、私のID、友人リスト、遮断リスト、履歴情報などが含まれることができる。 The messenger item may include information mainly used for messenger used for chatting, for example, my ID, friend list, blocking list, history information, and the like.
テレメトリ項目には、例えば、端末上で道案内サービスを受けるために必要とされる情報で、お気に入り、我が家などの出発ポイント、設定情報、履歴情報などが含まれることができる。 The telemetry item is, for example, information necessary for receiving a route guidance service on the terminal, and may include favorites, departure points such as home, setting information, history information, and the like.
DMB項目には、端末上で放送サービスを受けるために必要とされる情報、例えば、チャンネルリスト、プログラムリスト、設定情報などが含まれることができる。 The DMB item may include information required for receiving a broadcast service on the terminal, such as a channel list, a program list, and setting information.
オフィス項目には、端末上でオフィスグループウェアなどに接続するために格納される情報、例えば、VPN(Virtual Private Network)、設定情報などが含まれることができる。 The office item can include information stored for connecting to office groupware on the terminal, for example, VPN (Virtual Private Network), setting information, and the like.
ID項目には、家または職場の出入り口キー値、または端末上で電車や航空機を予約する場合に発生する仮予約番号などの情報が含まれることができる。 The ID item may include information such as an entrance / exit key value at home or work, or a temporary reservation number generated when a train or an aircraft is reserved on the terminal.
図12に示されたデータ以外にも暗号化を必要とする情報が含まれることができることは、本発明が属する技術分野で通常の知識を有する者であれば容易に理解できるだろう。 It will be easily understood by those skilled in the art to which the present invention belongs that information that requires encryption can be included in addition to the data shown in FIG.
このように暗号化を必要とする情報を構造化して格納し、これを端末のユーザに提供することにより、端末のユーザは設定情報や個人情報をより簡単に暗号化して格納し、これを利用することができる。また、端末などを交替する場合にも新規端末に本発明のデータが格納されたICチップまたはメモリ300を装着することにより、既存の情報をそのまま利用でき、PINや暗証番号のようなセキュリティキーで個人情報や設定情報を管理するので、移動通信端末を失った場合や盗まれた場合にも個人情報の流出の恐れはない。
In this way, information that requires encryption is structured and stored, and this is provided to the user of the terminal, so that the terminal user can more easily encrypt and store the setting information and personal information and use it. can do. In addition, even when a terminal is changed, existing information can be used as it is by attaching an IC chip or
上述したように本発明によれば、ICチップが基本動作を実行するために大容量メモリを利用することができるので従来に比べてメモリ容量の物理的限界を克服することができる。これにより、サイズの大きい認証書またはセキュリティアルゴリズムコードのような、従来には搭載が不可能であったデータを格納することができる。 As described above, according to the present invention, since the large capacity memory can be used for the IC chip to perform the basic operation, the physical limit of the memory capacity can be overcome as compared with the conventional case. As a result, it is possible to store data such as a large certificate or security algorithm code that could not be mounted conventionally.
一方、ホスト400との通信が高速通信プロトコルで行われるので、従来に比べてデータ送受信が速くなる。
On the other hand, since communication with the
また、データを大容量メモリに格納時、ICチップのセキュリティアルゴリズムを用いて格納したり使用したりすることができるので、高速通信プロトコルだけを用いた場合より大容量メモリのセキュリティ性が向上される。 Further, when data is stored in a large-capacity memory, it can be stored and used using the security algorithm of the IC chip, so that the security performance of the large-capacity memory is improved as compared with the case where only the high-speed communication protocol is used. .
以上、本発明の実施例を参照して説明したが、当該技術分野で通常の知識を有する者であれば、特許請求の範囲に記載された本発明の思想及び領域から脱しない範囲内で本発明を多様に修正及び変更させることができることを理解できよう。 The present invention has been described with reference to the embodiments of the present invention. However, those who have ordinary knowledge in the technical field are within the scope of the spirit and scope of the present invention described in the claims. It will be understood that the invention can be modified and changed in various ways.
100 メモリカードコントローラ
110 インターフェースドライバ
120 カードインターフェースコントローラ
130 スイッチ
140 レジスタ
150 メモリコアインターフェース
160 電源検知部
200 ICチッププロセッサ
210 バスコントローラ
300 メモリ
400 ホスト
100
Claims (13)
データトークンを伝達するデータラインと、
データを格納するメモリと、
接続状態に応じて前記メモリと前記データをやり取りするプロセッサと、
前記プロセッサの制御により、前記メモリとの接続状態設定を要求するコマンドを前記コマンドライン上に出力するバスコントローラと、
前記コマンドラインで受信されたコマンドに応じて、前記データライン、前記メモリ、及び前記プロセッサとの間の接続を変更するメモリカードコントローラと、
を含み、
前記コマンドは、前記メモリカードコントローラと前記プロセッサとの間の接続を設定するAPDU(Application Protocol Data Unit)コマンド、及び、前記プロセッサと前記メモリとの間の接続を設定する接続コマンドを含み、
前記メモリカードコントローラは、APDUコマンドの応答データの転送が完了したことに応じて、予め設定されたポリシーにより前記接続の状態を変更することを特徴とするICチップ。A command line that communicates commands,
A data line carrying a data token;
Memory to store data,
A processor for exchanging the data with the memory according to a connection state;
A bus controller that outputs a command requesting connection state setting with the memory on the command line under the control of the processor;
A memory card controller that changes a connection between the data line, the memory, and the processor in response to a command received on the command line;
Including
The command includes an APDU (Application Protocol Data Unit) command for setting a connection between the memory card controller and the processor, and a connection command for setting a connection between the processor and the memory,
The IC chip, wherein the memory card controller changes the connection state according to a preset policy in response to completion of transfer of response data of an APDU command .
前記コマンドライン及び前記データラインを通してホストと通信するインターフェースドライバと、
前記コマンドラインで受信されたコマンドの種類を判断し、それに対応する接続状態の変更信号を出力するカードインターフェースコントローラと、
前記カードインターフェースコントローラの状態情報を格納するレジスタと、
前記接続状態の変更信号に応じて、前記カードインターフェースコントローラ、前記プロセッサ、及び前記メモリとの間の接続を変更するスイッチと、
前記スイッチに接続され、前記メモリにアクセスしてデータの読み取りや書き込みを行うメモリコアインターフェースと、
電源供給の際、前記カードインターフェースコントローラ及び前記メモリコアインターフェースにリセット信号を適用する電源検知部と、
を含むことを特徴とする請求項1に記載のICチップ。The memory card controller
An interface driver communicating with the host through the command line and the data line;
A card interface controller that determines the type of command received on the command line and outputs a corresponding connection state change signal;
A register for storing status information of the card interface controller;
A switch for changing a connection between the card interface controller, the processor, and the memory in response to the connection state change signal;
A memory core interface connected to the switch and accessing the memory to read and write data;
A power detection unit that applies a reset signal to the card interface controller and the memory core interface when power is supplied;
The IC chip according to claim 1, comprising:
前記コマンドラインでコマンドを受信するステップと、
前記コマンドがAPDUコマンドである場合には、前記プロセッサが前記データラインを通したAPDUの送受信を許可するステップと、
前記コマンドが接続コマンドである場合には、前記プロセッサと前記メモリを接続させるステップと、
前記メモリカードコントローラが、APDUコマンドの応答データの転送が完了したことに応じて、予め設定されたポリシーにより前記接続の状態を変更するステップとを含み、
前記コマンドは、前記メモリカードコントローラと前記プロセッサとの間の接続を設定するAPDU(Application Protocol Data Unit)コマンド、及び、前記プロセッサと前記メモリとの間の接続を設定する接続コマンドを含むことを特徴とする接続状態の変更方法。A memory card controller that communicates with a host through a command line and a data line and is connected to a memory and a processor, and changes a connection state between the memory and the processor.
Receiving a command on the command line;
If the command is an APDU command, allowing the processor to send and receive APDUs through the data line;
If the command is a connection command, connecting the processor and the memory;
The memory card controller changing the state of the connection according to a preset policy in response to completion of transfer of response data of the APDU command ,
The command includes an APDU (Application Protocol Data Unit) command for setting a connection between the memory card controller and the processor, and a connection command for setting a connection between the processor and the memory. How to change the connection status.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2006-0024337 | 2006-03-16 | ||
KR1020060024337A KR20070094108A (en) | 2006-03-16 | 2006-03-16 | Data security device and method and mobile terminal including the same |
KR10-2006-0026954 | 2006-03-24 | ||
KR1020060026954A KR100738032B1 (en) | 2006-03-24 | 2006-03-24 | Smart card of supporting large size memory and method thereof |
PCT/KR2007/001295 WO2007105926A1 (en) | 2006-03-16 | 2007-03-16 | Ic chip of supporting large size memory and method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009529745A JP2009529745A (en) | 2009-08-20 |
JP5022434B2 true JP5022434B2 (en) | 2012-09-12 |
Family
ID=38509707
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009500298A Expired - Fee Related JP5022434B2 (en) | 2006-03-16 | 2007-03-16 | IC chip supporting large capacity memory and supporting method |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP5022434B2 (en) |
WO (1) | WO2007105926A1 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8613087B2 (en) | 2010-12-06 | 2013-12-17 | Samsung Electronics Co., Ltd. | Computing system |
KR20190075363A (en) | 2017-12-21 | 2019-07-01 | 삼성전자주식회사 | Semiconductor memory device, memory system and memory module including the same |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6385955A (en) * | 1986-09-30 | 1988-04-16 | Toshiba Corp | Transfer controller for direct memory access |
JPH0749817A (en) * | 1993-08-06 | 1995-02-21 | Hitachi Ltd | Dma transfer controller |
JP2000251035A (en) * | 1999-02-26 | 2000-09-14 | Hitachi Ltd | Memory card |
JP4053704B2 (en) * | 2000-01-05 | 2008-02-27 | 株式会社東芝 | IC card with built-in wireless interface function, antenna module, information processing device |
JP4207404B2 (en) * | 2001-06-27 | 2009-01-14 | ソニー株式会社 | Mobile terminal, control method therefor, and IC card |
JP4185680B2 (en) * | 2001-07-09 | 2008-11-26 | 株式会社ルネサステクノロジ | Storage device |
JP2004104539A (en) * | 2002-09-11 | 2004-04-02 | Renesas Technology Corp | Memory card |
KR20040085793A (en) * | 2003-04-01 | 2004-10-08 | 이상은 | Smart mobile storage device with embedded application programs |
JP2004334471A (en) * | 2003-05-07 | 2004-11-25 | Matsushita Electric Ind Co Ltd | Information card |
KR100618814B1 (en) * | 2003-07-04 | 2006-08-31 | 삼성전자주식회사 | Movable storage apparatus combined use of smart card capable of interfacing multi hosts and interfacing method of the same |
JP4648196B2 (en) * | 2003-11-06 | 2011-03-09 | パナソニック株式会社 | Information recording medium, access device for information recording medium, and area setting method |
TW200604810A (en) * | 2004-02-20 | 2006-02-01 | Renesas Tech Corp | Nonvolatile memory and data processing system |
WO2005122070A1 (en) * | 2004-06-09 | 2005-12-22 | Renesas Technology Corp. | Ic card module |
-
2007
- 2007-03-16 JP JP2009500298A patent/JP5022434B2/en not_active Expired - Fee Related
- 2007-03-16 WO PCT/KR2007/001295 patent/WO2007105926A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2007105926A1 (en) | 2007-09-20 |
JP2009529745A (en) | 2009-08-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9462470B2 (en) | Dual interface device for access control and a method therefor | |
US9141904B2 (en) | RFID device, host, RFID-embedded apparatus, and method of controlling RFID device | |
JP4681314B2 (en) | Wireless communication system, reader / writer device, key management method, and computer program | |
JP6088664B2 (en) | Method for realizing selection of secure element in short-range wireless communication, mobile terminal, and POS machine | |
CN102026187B (en) | Subscriber identification module and transmission method and system based on subscriber identification module | |
JP5499913B2 (en) | COMMUNICATION DEVICE, COMMUNICATION METHOD, AND COMMUNICATION SYSTEM | |
US20090206984A1 (en) | Application control method in an nfc chipset comprising several host processors | |
JP2002329180A (en) | Memory card having radio communication function and its data communication method | |
JP2007317170A (en) | Ic module and cellular phone | |
JP2008210301A (en) | Storage medium, communication system, and control device | |
JP6334551B2 (en) | NFC device with configurable notification means | |
EP1703408A1 (en) | Data communicating apparatus and method for managing memory of data communicating apparatus | |
US10085268B2 (en) | Communications device and communications system | |
CN101401113B (en) | Ic chip of supporting large size memory and method thereof | |
JP5022434B2 (en) | IC chip supporting large capacity memory and supporting method | |
JP4236830B2 (en) | Storage device with upload function | |
KR100738032B1 (en) | Smart card of supporting large size memory and method thereof | |
JP4590201B2 (en) | Data carrier and data carrier program | |
US8965299B2 (en) | Method and system for the processing control of multiple radio frequency communication streams by an integrated circuit card | |
EP2947600A1 (en) | Portable electronic device, program, terminal device and method of controlling decoding of data | |
CN112613872A (en) | Type 4NFC tag as protocol interface | |
JP2012008888A (en) | Communication system, communication method, and portable electronic equipment | |
JP3911153B2 (en) | Multi-application IC card and writing method thereof | |
JP7444197B2 (en) | Electronic information storage medium, cryptographic operation method selection method, and program | |
JP2007316865A (en) | Memory card |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110726 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110802 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111102 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20111206 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120404 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20120411 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20120522 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120615 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150622 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |