JP4321837B2 - 暗号化処理機能を備えた可搬記録媒体 - Google Patents
暗号化処理機能を備えた可搬記録媒体 Download PDFInfo
- Publication number
- JP4321837B2 JP4321837B2 JP2000271912A JP2000271912A JP4321837B2 JP 4321837 B2 JP4321837 B2 JP 4321837B2 JP 2000271912 A JP2000271912 A JP 2000271912A JP 2000271912 A JP2000271912 A JP 2000271912A JP 4321837 B2 JP4321837 B2 JP 4321837B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- key
- des
- encryption
- processing
- 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
Images
Description
【発明の属する技術分野】
本発明は暗号化機能プログラムを搭載したICカード等の可搬記録媒体に関する。
【0002】
【従来の技術】
近年、ICカードが普及し、例えば電子財布、電子マネーとして使用すること等が提案されている。このようなICカードにおいては、データのセキュリティを確保することが極めて重要であり、そのために乱数発生機能を持たせて認証を行うとともに、暗号化処理を施すものが提案されている。
【0003】
暗号化処理としては、図5に示すように、暗号作成者(送信者)と受信者とが共通の鍵を共有し、この共通鍵を用いて平文を暗号化し、暗号文を共通鍵を用いて復号して平文を得る共通鍵暗号方式が広く知られており、代表的なものとしてDES(Data Encryption Standard)がある。DESは、7バイト(56ビット)の鍵データと1バイト(8ビット)のパリティの1ブロック8バイト(64ビット)のデータからなっていて、暗号化すべきデータ(平文)を一定の長さ(64ビット)ごとのブロックに区切って56ビットの鍵で暗号化し、64ビットの暗号文を作成するものである。
【0004】
図6はDESによる暗号処理装置の暗号化と復号の関係を示しており、1つの方向(手順)で処理して暗号化した場合、逆の方向(手順)での処理は復号となる。このようなDESによるブロック暗号処理を1個の平文ブロックに3回連続して適用することにより、データ攪拌処理段数及び鍵長を長くして暗号強度を高くし、安全性を高める方法か知られており、例えば、3重に暗号化するtriple−DESが知られている。triple−DESは、例えば、図7(a)に示すように、2つの鍵K1 、K2 を用い、鍵K1 で暗号化(E(K1 ))し、鍵K2 で逆方向の手順で復号(D(K2 ))し(実際は復号できないので暗号化と同等)、さらに、鍵K1 で暗号化する方法である。
【0005】
triple−DESの鍵オプションには、3回反復するDESアルゴリズムを3回とも異なる鍵で反復し、合計3個の鍵K1 、K2 、K3 を用いるオプション(3−key triple−DES)(図7(b))と、1回目と3回目で同じ鍵を用い、合計で2個の鍵を用いるオプション(2−key triple−DES)(図7(a))、1個の鍵を3回とも用いるオプションの3種類が定められている。なお、1個の鍵を用いるtriple−DESのオプションは、2回目の復号で平文に戻るので、単に従来のDESとの互換性のために定められているにすぎないため、ここでは対象としない。
【0006】
【発明が解決しようとする課題】
ところで、日本の公共分野で広く採用されているICカードの仕様では、2−key triple−DESを採用しており、そのため、2−key triple−DES用の鍵(合計16バイト)を格納するように鍵格納ファイルが設計されている場合が多い。2−key triple−DESでは、通常のDES(鍵長56ビット)よりも鍵長は2倍(実効112ビット)になるため、鍵の総当たり攻撃に要する計算量は256倍となり、2112 回の暗号化計算回数が必要である。
【0007】
しかし、ある条件のもとでは、攻撃者が選択した平文と、その暗号化結果の両方を入手した場合に、256個の中間暗号文記憶領域を確保し、平均255個の選択平文を試して、257回の計算量に削減することができ、全数探索に比べて大幅に計算量を削減することが可能であることが指摘されている(R.C.Merkle,M.Hellman, ”On the Security ofMultiple Encryption,”Comm ACM,vol.24,No.7,1981,pp.465-467参照)。なお、3−key triple−DESの場合は2168 回の計算量を必要とする(ただし、2−key triple−DESの場合と同様に、256個の中間暗号文記憶領域を確保して中間データを記憶することにより、2112 回の計算量に削減可能)ため、現状のコンピュータの能力では、通常の時間では解読することは困難で安全性は極めて高いが、鍵格納ファイルに24バイト必要とするため採用されていない。
【0008】
本発明は上記課題を解決するためのもので、鍵格納ファイルの容量を大きくせず、かつ3−key triple−DESの暗号強度を確保できるようにすることを目的とする。
【0009】
【課題を解決するための手段】
本発明は、3重暗号用に不揮発性メモリに設定されたDES(Data Encryption Standard)用の2つの鍵を用いて3重暗号の演算を行うデータ攪乱手段を備え、前記データ攪乱手段は、DES用の第3の鍵を生成する機能を有し、設定されたDES用の前記2つの鍵と、生成して不揮発性メモリの読み出し不能領域に格納されたDES用の第3の鍵を用いて3重暗号の演算を行う可搬記録媒体であって、
前記データ攪乱手段は、入力された平文のブロックデータを転置マップデータに基づいて初期転置し、前記DES用の鍵の1つから複数種類の鍵データを生成し、前記初期転置したブロックデータを左右半分づつに分け、分けた各データと生成した前記複数種類の鍵データの1つとにより換字表データに基づいて非線形処理し、次いで、各データを左右入れ替えて前記複数種類の鍵データの他の1つにより、換字表データに基づいて非線形処理し、以後同様の処理を前記複数種類の鍵データ全てについて行って第1の暗号化処理を実施し、次いで、第1の暗号化処理と同じ第2、第3の暗号化処理をDES用の他の2つの鍵について実施した後、転置マップデータに基づいて最終転置によりブロックデータを元の位置に戻して暗号文として出力することを特徴とする可搬記録媒体。
【0010】
【発明の実施の形態】
以下、本発明の実施の形態について説明する。なお、本発明はメモリ機能と演算処理機能を内蔵した如何なる可搬記録媒体でも適用可能であるが、以下ではICチップを内蔵したICカードを例にして説明する。
図1は本発明のICカードの構成例を説明する図である。ICカード2は演算処理機能を有するCPU21、乱数発生プログラムや暗号化処理プログラムを有するデータ攪乱手段、各種制御手段が格納されたROM22、データ処理作業領域を提供するRAM24、読み出し可能領域と読み出し不能領域からなる不揮発性メモリ25からなっていて、リーダ/ライタ1(或いはより上位のホストコンピュータ)に接触或いは非接触で接続され、リーダ/ライタ1からの書き込み、読み取り等のコマンドに応じてデータ処理を行い、処理結果をレスポンスとしてリーダ/ライタ1へ出力する機能を有している。
【0011】
本発明のICカードは、ROM22のデータ攪乱手段に含まれる暗号化処理プログラム内のデータ領域に転置マップ、換字表等が設定され、不揮発性メモリ25の読み出し可能領域に、2−key triple−DES用の鍵k1 、k2 がリーダ/ライタ1から設定される。
【0012】
転置マップは64ビットのデータをランダムに入れ換える処理(スクランブル)を行うためのものである。図2は転置マップの例を示しており、仮に、データを1〜64までの数字で表したとき、例えば、最初の「58」は入力したデータの58ビット目を1ビット目に移動すること、最後の「7」は入力したデータの7ビット目を64ビット目に移動することをそれぞれ示しており、入れ換えた後の元のデータ位置を示す表からなっている。
【0013】
換字表は、鍵による暗号化処理において入力されたデータと出力される結果との相関関係を掴むことができないようにする処理(非線型処理)を行うための表である。例えば、図3に示すように16(列)×4(行)の換字表では、0行から3行それぞれに0〜15の数字がランダムに並べられている。DESの暗号化処理では、64ビットの入力データを転置し、さらに適当数のブロックに分割して転置・重複等の演算を施した後、さらに適当数に分割したブロックのデータ(6ビット)をこの換字表に入力し、入力データの最上位ビットと最下位ビットを取り出して得られる2ビットの数値から換字表の行を選択し、最上位ビットと最下位ビットを除いた4ビットの数値から選択した行の何番目(何例目)かを選択し、該当する行と列の数値に置換して出力する。このような換字表を介在させることにより、入力データと出力される結果との相関関係を掴むことができなくなる。
【0014】
本発明においては、不揮発性メモリの読み出し可能領域に設定された2−key triple−DES用の鍵k1 、k2 の他に、暗号化に際してはデータ攪乱手段23がもつ乱数発生機能を用いて、新たにDES用の鍵k3 を生成し、鍵k1 、k2 、k3 により3−key triple−DESを行い、生成した鍵k3 は読み出し不能領域に記憶させて復号に備える。このような処理により、2−key triple−DESを前提にしても実際は3−key triple−DESのため暗号の解読はできず、万一、3−key triple−DESであることが分かったとしても鍵k3 が読みだせないため安全性は高い。また、読み出し可能領域の鍵格納ファイルの容量を大きくすることなく3−key triple−DESを実現することができる。
【0015】
次に、データ攪乱手段による暗号化処理について図4により概略説明する。
平文64ビットのブロックデータを暗号化処理部31に入力すると、まず、図2に示したような転置マップに基づいて初期転置を行う。内部鍵生成部32においては、DES用の56ビットの共通鍵から暗号処理に使用するための48ビットの16種類の鍵を生成し、この16種類の鍵を使用して初期転置後のデータに対して、順次、16ステップの暗号化処理を行う。各ステップの暗号化処理においては、64ビットのデータを左右32ビットづつに分け、このデータと48ビットの鍵データとにより図3に示した換字表を使用して暗号化関数により非線型処理し、次のステップでは前段で非線型処理した32ビットのデータを左右入れ替えて同様の処理を施す。こうして16ステップの暗号化処理を行った後、最終転置で元の位置に戻して64ビットの暗号文として出力する。本発明ではこの暗号化処理を予め設定した鍵k1 、k2 と内部的に生成した鍵k3 により、合計3回(うち1回は手順を逆方向(復号化)としてもよいし、順方向(暗号化)としてもよい)行って暗号強度を高めるようにする。
【0016】
なお、上記説明では鍵k1 、k2 を予め設定しておき、3個目の鍵k3 は内部的に生成するようにしたが、本発明はこれに限定されるものではなく、例えば、予め設定する鍵を1個とし、2個の鍵を内部的に生成して3−key triple−DESを行うようにしてもよい。
【0017】
【発明の効果】
以上のように本発明によれば、可搬記録媒体に1個または2個の鍵を記憶しておくだけで、鍵格納ファイルの容量を大きくせずに3個の鍵を用いた3−key triple−DESを行うことができ、これによって以下の効果が達成できる。
・2個の鍵から残りの1個の鍵が確定的に求まるので、鍵空間の大きさは2−key triple−DESと同様に2112 である。しかし、3個目の鍵を生成するアルゴリズムは可搬記録媒体内プログラムに実装された秘密アルゴリズムであるため、攻撃者はこれを知ることができない。したがって、鍵の全数探索を行おうとする攻撃者は本来の3−key triple−DESと同様に2168 回の計算を行わなければならない。
・内部的には3−key triple−DESを行っているため、ICカードに与える平文と、ICカードによる暗号化結果の暗号文とを用いて行う選択平文攻撃では、Merkle,M.Hellmanの攻撃法でも257回ではなく、2112 回の計算量を必要とし、より安全である。
【図面の簡単な説明】
【図1】 本発明のICカードの構成例を説明する図である。
【図2】 転置マップの例を示す図である。
【図3】 換字表の例を示す図である。
【図4】 暗号化処理を説明する図である。
【図5】 共通鍵暗号方式を説明する図である。
【図6】 暗号処理装置の暗号と復号の関係を示す図である。
【図7】 3−key triple−DES、2−key triple−DESを説明する図である。
【符号の説明】
1…リーダ/ライタ、2…ICカード、21…CPU、22…ROM、23…データ攪乱手段、24…RAM、25…不揮発性メモリ。
Claims (1)
- 3重暗号用に不揮発性メモリに設定されたDES(Data Encryption Standard)用の2つの鍵を用いて3重暗号の演算を行うデータ攪乱手段を備え、前記データ攪乱手段は、DES用の第3の鍵を生成する機能を有し、設定されたDES用の前記2つの鍵と、生成して不揮発性メモリの読み出し不能領域に格納されたDES用の第3の鍵を用いて3重暗号の演算を行う可搬記録媒体であって、
前記データ攪乱手段は、入力された平文のブロックデータを転置マップデータに基づいて初期転置し、前記DES用の鍵の1つから複数種類の鍵データを生成し、前記初期転置したブロックデータを左右半分づつに分け、分けた各データと生成した前記複数種類の鍵データの1つとにより換字表データに基づいて非線形処理し、次いで、各データを左右入れ替えて前記複数種類の鍵データの他の1つにより、換字表データに基づいて非線形処理し、以後同様の処理を前記複数種類の鍵データ全てについて行って第1の暗号化処理を実施し、次いで、第1の暗号化処理と同じ第2、第3の暗号化処理をDES用の他の2つの鍵について実施した後、転置マップデータに基づいて最終転置によりブロックデータを元の位置に戻して暗号文として出力することを特徴とする可搬記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000271912A JP4321837B2 (ja) | 2000-09-07 | 2000-09-07 | 暗号化処理機能を備えた可搬記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000271912A JP4321837B2 (ja) | 2000-09-07 | 2000-09-07 | 暗号化処理機能を備えた可搬記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002082608A JP2002082608A (ja) | 2002-03-22 |
JP4321837B2 true JP4321837B2 (ja) | 2009-08-26 |
Family
ID=18758131
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000271912A Expired - Fee Related JP4321837B2 (ja) | 2000-09-07 | 2000-09-07 | 暗号化処理機能を備えた可搬記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4321837B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6201871B1 (en) * | 1998-08-19 | 2001-03-13 | Qualcomm Incorporated | Secure processing for authentication of a wireless communications device |
US7366302B2 (en) * | 2003-08-25 | 2008-04-29 | Sony Corporation | Apparatus and method for an iterative cryptographic block |
JP4851182B2 (ja) * | 2005-12-28 | 2012-01-11 | ルネサスエレクトロニクス株式会社 | マイクロコンピュータ、マイクロコンピュータに対するプログラム書込み方法、及び書込み処理システム |
-
2000
- 2000-09-07 JP JP2000271912A patent/JP4321837B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002082608A (ja) | 2002-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1440535B1 (en) | Memory encrytion system and method | |
JP3747520B2 (ja) | 情報処理装置及び情報処理方法 | |
EP0839418B1 (en) | Cryptographic method and apparatus for non-linearly merging a data block and a key | |
EP0002579B1 (en) | A method of creating a secure data file | |
JP5306465B2 (ja) | セキュアなメモリに応用するメッセージ認証コードの事前計算 | |
EP1873960A1 (en) | Method for session key derivation in a IC card | |
CN101371286B (zh) | 密码处理装置和密码处理方法 | |
US8144865B2 (en) | Protection of the execution of a DES algorithm | |
EP0793366A2 (en) | Method and apparatus for encrypting data | |
US20050149739A1 (en) | PIN verification using cipher block chaining | |
EP1830240A1 (en) | Memory information protecting system, semiconductor memory, and method for protecting memory information | |
US20060129845A1 (en) | Memory information protection system and methods | |
WO2006033347A1 (ja) | 機密情報処理方法、機密情報処理装置、およびコンテンツデータ再生装置 | |
US20050129243A1 (en) | Encryption key hiding and recovering method and system | |
EP1646174A1 (en) | Method and apparatus for generating cryptographic sets of instructions automatically and code generation | |
JP4153665B2 (ja) | 同一の秘密鍵の暗号アルゴリズムを使用して1つまたは複数の電子装置を保護する方法、当該方法の使用および当該電子装置 | |
Abusukhon et al. | Analyzing the efficiency of Text-to-Image encryption algorithm | |
KR100456599B1 (ko) | 병렬 디이에스 구조를 갖는 암호 장치 | |
JP4321837B2 (ja) | 暗号化処理機能を備えた可搬記録媒体 | |
JPH0244389A (ja) | Icカード機器 | |
US20030103625A1 (en) | Method for Calculating Cryptographic Key Check Data | |
CN107766725B (zh) | 抗模板攻击的数据传输方法及系统 | |
JP2006025366A (ja) | 暗号化装置及び半導体集積回路 | |
WO2002089397A1 (fr) | Procede de transmission de donnees | |
KR100494560B1 (ko) | Rijndael암호를 이용한 블록 데이터 실시간암호복호화 장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070608 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080901 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080912 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081107 |
|
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: 20090529 |
|
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: 20090601 |
|
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: 20120612 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120612 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130612 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |