JP2002049310A - 暗復号装置、認証装置及び記憶媒体 - Google Patents

暗復号装置、認証装置及び記憶媒体

Info

Publication number
JP2002049310A
JP2002049310A JP2000237268A JP2000237268A JP2002049310A JP 2002049310 A JP2002049310 A JP 2002049310A JP 2000237268 A JP2000237268 A JP 2000237268A JP 2000237268 A JP2000237268 A JP 2000237268A JP 2002049310 A JP2002049310 A JP 2002049310A
Authority
JP
Japan
Prior art keywords
data
encryption
key
key data
authenticator
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.)
Pending
Application number
JP2000237268A
Other languages
English (en)
Inventor
Fumihiko Sano
文彦 佐野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2000237268A priority Critical patent/JP2002049310A/ja
Priority to US09/920,737 priority patent/US20020025037A1/en
Publication of JP2002049310A publication Critical patent/JP2002049310A/ja
Pending legal-status Critical Current

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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3242Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • 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/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/125Parallelization or pipelining, e.g. for accelerating processing of cryptographic operations

Abstract

(57)【要約】 【課題】 特定パターンの入力の除去装置を設けずに、
互いに異なる鍵データの生成を保証でき、安全性を向上
させる。 【解決手段】 鍵データKg2〜Kgmは、平文ブロッ
クP1〜Pmや中間結果i〜im-1とは独立に入力さ
れる変数v〜vm-1に基づき、共通鍵Kが変換されて
作成される。このため、暗復号装置は、平文ブロックP
1〜Pmの各ブロックを互いに同一データとして入力す
る暗号解読手法に攻撃されても、鍵データKg2〜Kg
mを互いに異なる値に作成できる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ブロック暗号にお
ける暗号化連鎖方式を用いた暗復号装置、認証装置及び
記憶媒体に係り、特に、各ブロック間での連鎖のさせ方
を全体で2種類以上設けて安全性を向上し得る暗復号装
置、認証装置及び記憶媒体に関する。
【0002】
【従来の技術】近年、計算機や通信技術の分野では、送
信データを暗号化して送信し、受信データを復号して受
信内容を得る暗号技術が広く知られている。この種の暗
号技術では、暗号化と復号に同じ秘密鍵(以下、共通鍵
という)を用いる暗号化アルゴリズムが共通鍵暗号方式
と呼ばれている。共通鍵暗号方式では、一般に、入力さ
れる平文データが固定長の入力ブロックに分割され、各
ブロックが共通鍵から生成される鍵に基づいて攪拌処理
され、暗号文に変換されている。
【0003】ここで、平文データが暗号化アルゴリズム
のブロック長よりも長い場合、入力データがブロック長
で分割され、暗号化された結果がCBCモード(cipher
block chaining mode; 暗号文連鎖モード)、インナー
CBCモード(inner CBCmode)、CBCMモード
(CBC message mode)といった周知の暗号化連鎖方
式により、結合される。
【0004】図7はこの種の暗号化連鎖方式の適用され
た暗復号装置の構成を示す模式図である。この暗復号装
置では、入力された平文データが一定長のm個の平文ブ
ロックP1〜Pmに分割され、各平文ブロックP1〜P
mが、互いに並列配置されたm個の暗号化関数F1〜F
mのいずれかに入力される。各暗号化関数F1〜Fm
は、入力された平文ブロックP1〜Pmを共通鍵Kに基
づく鍵データにより暗号化し、それぞれ暗号文ブロック
C1〜Cmに変換して出力する。なお、暗復号装置は、
暗号文ブロックC1〜Cmが入力されると、この暗号文
ブロックC1〜Cmを上記暗号化と逆の処理にて復号
し、それぞれ平文ブロックP1〜Pmに変換して出力す
る。
【0005】ここで、1番目の暗号化関数F1は、1番
目の平文ブロックP1と共通鍵Kが入力されると、1番
目の中間出力iを1番目の変換関数fに入力する一
方、暗号文C1を出力する。
【0006】1番目の変換関数fは、例えば非線形な
関数が用いられ、暗号化関数F1の中間出力iを変換
し、得られた変換結果sを1番目の変換関数gに入
力する。なお、2番目〜(m-1)番目の変換関数f〜f
m-1も同様である。
【0007】1番目の変換関数gは、例えば排他的論
理和又は加算といった線形関数が用いられ、別途入力さ
れた共通鍵Kを、変換関数fの変換結果sにより変
換し、得られた変換結果Kg2を2番目の暗号化関数F
2に入力する。また、2番目〜(m-1)番目の変換関数g
〜gm-1も同様である。
【0008】以下同様に、共通鍵Kは、(n-1)番目の暗
号化関数F(n-1)による中間出力in- 1と、(n-1)番目の
変換関数fn-1,gn-1とに基づいて、鍵データKgn
(但し2≦n≦m)に変換され、鍵データKgnとして
n番目の暗号化関数Fnに入力される。係る前段の中間
出力in-1と共通鍵Kから次段の鍵データKgnを生成
する処理は、m番目の暗号化関数Fmに鍵データKgm
を入力するまで行なわれる。なお、各変換関数g〜g
m-1に入力される共通鍵Kは、1番目の暗号化関数F1
に入力された共通鍵Kと同一である。
【0009】係る暗号化連鎖方式では、m個の暗号化関
数F1〜Fmに使用される鍵K,Kg2〜Kgmが互い
に異なるため、高い安全性を有している。しかしなが
ら、以上のような暗号化連鎖方式では、互いに同一の平
文ブロックP1〜Pmが入力された場合、全ての変換関
数f〜fm-1の変換結果s〜sm -1が0となり、共通
鍵Kを変換関数g〜gm-1で変換した変換結果Kg2
〜Kgmと、共通鍵Kとが一致してしまう。
【0010】なお、各鍵K,Kg2〜Kgmが一致した
場合、m個の暗号化関数F1〜Fmにて同一の暗号化が
実行され、同一のm個の暗号文ブロックC1,C2,C
3,…,Cmが出力される。この現象は、暗号解読の大
きな手がかりとなり、暗号解読手法に対する安全性を低
下させてしまう。
【0011】
【発明が解決しようとする課題】以上説明したように従
来の暗号化連鎖方式を用いた暗復号装置では、特定パタ
ーンの平文ブロックP1〜Pmの入力により、全ての変
換関数f〜fm-1の出力が0となって共通鍵Kが変換
されない場合がある。これを阻止するには、変換関数f
〜fm-1の出力が0にならないよう、平文ブロックP
1〜Pmや鍵Kg2〜Kgmを注意深く検査する必要が
ある。
【0012】係る検査は、特定パターンをもつ平文ブロ
ックP1〜Pmの入力を除去する装置などを付加すれば
実現可能である。しかしながら、この種の除去装置を付
加する解決手法では、暗号化連鎖方式の価格を上昇させ
ると共に、暗号化連鎖方式の規模を増大させてしまう問
題が生じる。
【0013】また、係る除去装置は、暗号強度の向上に
は寄与しない。すなわち、費用対効果の観点からは、暗
号強度を向上し得る他の解決手法が望まれている。
【0014】本発明は上記実情を考慮してなされたもの
で、特定パターンの入力の除去装置を設けずに、互いに
異なる鍵データの生成を保証でき、安全性を向上し得る
暗復号装置、認証装置及び記憶媒体を提供することを目
的とする。
【0015】
【課題を解決するための手段】第1の発明は、互いに並
列に設けられ、鍵データに基づいて平文データをブロッ
ク毎に暗号化して暗号文データを出力し、及び/又は鍵
データに基づいて暗号文データをブロック毎に復号して
平文データを出力する複数の暗号化関数部と、いずれか
の暗号化関数部の中間的な処理結果に基づいて共通鍵を
変換し、得られた鍵データを処理開始前のいずれかの暗
号化関数部に個別に入力する複数の鍵データ生成手段と
を備えた暗復号装置であって、前記各鍵データ生成手段
としては、互いに異なる2つ以上の変換処理のうち、い
ずれかの変換処理を用いて前記共通鍵を変換する暗復号
装置である。
【0016】また、第2の発明は、メッセージから認証
子を生成する認証子生成手段を備え、前記認証子生成手
段により生成された認証子に基づいて前記メッセージの
認証を行なう認証装置であって、前記認証子生成手段と
しては、互いに並列に設けられ、鍵データに基づいて前
記メッセージをブロック毎に暗号化して暗号文データを
作成する複数の暗号化関数部と、いずれかの暗号化関数
部の中間的な処理結果、及び互いに異なる2つ以上の変
換処理のうちのいずれかの変換処理に基づいて共通鍵を
変換し、得られた鍵データを処理開始前のいずれかの暗
号化関数部に個別に入力する複数の鍵データ生成部と、
最終段の暗号化関数部により作成された暗号文データに
基づいて、前記認証子を作成する認証子作成部とを備え
た認証装置である。
【0017】ここで、第1の発明における各鍵生成手
段、及び/又は第2の発明における各データ生成部は、
互いに異なる2つ以上の変数データのうち、いずれかの
変数データに基づいて前記共通鍵を変換する構成として
もよい。
【0018】また、第1及び第2の発明は、前述した機
能を記述したプログラムを記憶したコンピュータ読取り
可能な記憶媒体を用い、当該記憶媒体をコンピュータに
インストールして実現させてもよい。
【0019】(作用)従って、第1の発明は以上のよう
な手段を講じたことにより、暗号化連鎖方式に用いられ
る各鍵データ生成手段が、互いに異なる2つ以上の変換
処理のうち、いずれかの変換処理を用いて共通鍵を変換
する。
【0020】これにより、共通鍵の変換結果である鍵デ
ータが平文データから一義的には決まらなくなるので、
特定パターンの入力の除去装置を設けずに、互いに異な
る鍵データの生成を保証でき、安全性を向上させること
ができる。
【0021】また、第2の発明は、認証子を作成する際
に、第1の発明の暗復号装置を用いるので、第1の発明
の作用を奏する認証技術を実現させることができる。
【0022】
【発明の実施の形態】以下、本発明の各実施形態につい
て図面を参照しながら説明する。 (第1の実施形態)図1は本発明の第1の実施形態に係
る暗号化連鎖方式の適用された暗復号装置の構成を示す
模式図であり、図7と同種の要素には同一符号を付して
その詳しい説明を省略し、ここでは異なる要素について
主に述べる。なお、以下の各実施形態も同様にして重複
した説明を省略する。すなわち、本実施形態は、互いに
同一の平文ブロックP1〜Pmが入力されても、異なる
鍵データKg2〜Kgmを生成させ、安全性の向上を図
るものであって、具体的には、各変換関数g〜gm-1
に個別に変数v〜vm-1を入力するための変数入力部
〜Vm-1を設けている。
【0023】ここで、(m-1)個の変数入力部V〜Vm-1
は、それぞれ変数v〜vm-1を個別に変換関数g
m-1に入力する機能をもっている。各変数v〜vm-1
は、全体として2種類以上〜(m-1)種類以下の範囲で異
なる値が設定可能であり、全体として種類が多いほど、
攪拌性向上の観点から好ましい。各変数v〜v
m-1は、例えば図2に示すように、初期値(例、システ
ム固有の値)IVをレジスタに格納し、同一の変換関数
で順次変換することにより、生成可能となっている。ま
た、変数v〜vm-1の種類が例えば3種類の場合、v
〜v(m-1)/3が第1の値、v{(m-1)/3}+1〜v
(m-1)・2/3が第2の値、v{(m-1)・2/3}+1〜vm-1が第3
の値という設定よりも、vが第1の値、vが第2の
値、vが第3の値、v が第1の値、…という設定の
方が攪拌性向上の観点から好ましい。すなわち、各変数
〜vm-1は、t種類の値を取り得る場合、互いに隣
接する任意のt個の変数(例、v〜v,v〜v
t+1,…,vm-t〜vm-1)を互いに異なる値とする設定
の方が好ましい。
【0024】なお、各変換関数g〜gm-1は、変数入
力部V〜Vm-1から入力された変数v〜vm-1と変換
関数f〜fm-1から入力された変換結果s〜sm-1
に基づいて、別途入力された共通鍵Kを変換し、得られ
た変換結果Kg2〜Kgmを次段の暗号化関数F2〜F
mに入力する機能をもっている。なお、各変換関数g
〜gm-1における変換機能としては、前述した通り、例
えば排他的論理和又は加算の如き、線形関数が用いられ
ている。
【0025】また、変換関数f〜fm-1は、例えば次
の変換処理(1)〜(8)のうち、任意の1種類の変換
処理が使用されている。 (1)入力から任意のビット長を切り落として出力する
ビット切落し処理。 (2)入力のビット長を必要なビット長とするまでダミ
ービットを埋込むパディング処理。なお、ダミービット
は、ブランクなどの冗字や0などが使用可能である。 (3)入力のビットを反転させて出力するビット反転処
理。 (4)入力のビットを逆順に並べ換えて出力するビット
逆順処理。 (5)入力のビット同士を任意に置換して出力するビッ
ト置換処理。 (6)入力をハッシュ関数で変換したものから任意のビ
ット長を切り落として出力するハッシュ関数(例、SH
A−1,MD5等)+ビット切落し処理。 (7)入力に定数を加算して出力する定数加算処理。 (8)入力を恒等変換して出力する恒等変換処理。
【0026】また、係る暗復号装置は、ハードウェア及
び/又はソフトウェアにて実現可能なものであり、ソフ
トウェアにより実現される場合にはその動作を示すプロ
グラムが予め記憶媒体からインストールされている。
【0027】次に、以上のように構成された暗復号装置
の動作を説明する。いま、暗復号装置では、前述同様
に、入力された平文データが一定長のm個の平文ブロッ
クP1〜Pmに分割され、各平文ブロックP1〜Pm
が、互いに並列配置されたm個の暗号化関数F1〜Fm
のいずれかに入力される。
【0028】また、各暗号化関数F1〜Fmは、入力さ
れた平文ブロックP1〜Pmを共通鍵Kに基づく鍵デー
タにより暗号化し、それぞれ暗号文ブロックC1〜Cm
に変換して出力する。
【0029】例えば1番目の暗号化関数F1は、1番目
の平文ブロックP1と共通鍵Kが入力されると、1番目
の中間出力iを1番目の変換関数fに入力する一
方、暗号文C1を出力する。
【0030】1番目の変換関数fは、暗号化関数F1
の中間出力iを変換し、得られた変換結果sを1番
目の変換関数gに入力する。ここまでの過程は、鍵デ
ータの生成に関し、従来と同様である。次に、本実施形
態では、従来とは異なり、1番目の変数入力部Vが1
番目の変数vを1番目の変換関数gに入力する。
【0031】これにより、1番目の変換関数gは、変
数入力部Vからの変数vと変換関数fからの変換
結果sとに基づいて、別途入力された共通鍵Kを変換
し、得られた変換結果Kg2を次段の暗号化関数F2に
入力する。
【0032】従って、1番目の暗号化関数F1の中間出
力iが0であり、これに伴い、1番目の変換関数f
の変換結果sが0であったとしても、1番目の変換関
数g への入力は0にならず、変数vとなる。
【0033】すなわち、1番目の変換関数fの変換結
果sが0であっても、1番目の変換関数gから出力
される鍵データKg2は、共通鍵Kが変数vにより変
換された値となって次段の暗号化関数F2に入力され
る。
【0034】以下同様に、共通鍵Kは、(n-1)番目の暗
号化関数F(n-1)による中間出力in- 1と、(n-1)番目の
変数入力部Vn-1による変数vn-1と、(n-1)番目の変換
関数fn -1,gn-1とに基づいて、鍵データKgnに変換
され、鍵データKgnとしてn番目の暗号化関数Fnに
入力される。
【0035】係る前段の中間出力in-1と、前段の変数
n-1と、共通鍵Kとから次段の鍵データKgnを生成
する処理は、m番目の暗号化関数Fmに鍵データKgm
を入力するまで行なわれる。
【0036】ここで、鍵データKg2〜Kgmは、平文
ブロックP1〜Pmや中間結果i〜im-1とは独立に
入力される変数v〜vm-1に基づき、共通鍵Kが変換
されたものである。このため、暗復号装置は、平文ブロ
ックP1〜Pmの各ブロックを互いに同一データとして
入力する暗号解読手法に攻撃されても、鍵データKg2
〜Kgmを互いに異なる値に作成するので、安全性の低
下を阻止することができる。上述したように本実施形態
によれば、暗号化連鎖方式において、鍵データKg2〜
Kgmの生成の際に、不確定要素として変数v〜v
m-1を入力することにより、鍵データKg2〜Kgmを
平文ブロックP1〜Pmから一義的には決まらないよう
にしたので、特定パターンの入力の除去装置を設けず
に、互いに異なる鍵データの生成を保証でき、安全性を
向上させることができる。また、ある暗号化関数Fjに
鍵データKgjとして弱鍵(week key)、双対鍵(dual ke
y)又はやや弱い鍵(semi-week key)が入力された場合で
あっても、以後の暗号化関数F(j+1)〜F(m-1)には弱鍵
とは異なる鍵データKg(j+1)〜Kg(m-1)が入力される
ので、安全性を向上させることができる。
【0037】(第2の実施形態)図3は本発明の第2の
実施形態に係る暗号化連鎖方式の適用された暗復号装置
の構成を示す模式図である。すなわち、本実施形態は、
第1の実施形態の変形例であり、具体的には、各変数入
力部V〜Vm-1に代えて、各変換関数f’〜fm-1
が、互いに異なる2以上の変換関数のいずれかとして構
成されている。
【0038】ここで、互いに異なる変換関数(変換処
理)とは、(a)違う関数を用いる場合と、(b)同じ
関数を異なるビット位置に作用させる場合(例、ビット
の置換関数)と、(c)同じ関数を異なる定数で作用さ
せる場合(例、加算関数で加える定数)と、のいずれか
の場合又はこれらを組合せた場合が適用可能となってい
る。なお、第1の実施形態は、変換関数g〜gm-1
対し、上記(c)により異なる変換関数(変換処理)g
〜gm-1とした例に該当する。
【0039】また、各変換関数f’〜fm-1’は、例
えば前述した変換処理(1)〜(8)のうち、任意の1
種類以上の変換処理が使用可能となっている。
【0040】なお、各変換関数f’〜fm-1’は、t
種類の異なる関数が適用される場合、互いに隣接する任
意のt個の変換関数(例、f’〜f’,f’〜f
t+1’,…,fm-t’〜fm-1’)を互いに異なる関数と
する設定の方が好ましい。
【0041】以上のような構成としても、第1の実施形
態と同様に、特定パターンの入力の除去装置を設けず
に、互いに異なる鍵データの生成を保証でき、安全性を
向上させることができる。また同様に、ある暗号化関数
Fjに鍵データKgjとして弱鍵などが入力された場合
でも、以後の暗号化関数F(j+1)〜F(m-1)には弱鍵とは
異なる鍵データKg(j+1)〜Kg(m-1)が入力されるの
で、安全性を向上させることができる。
【0042】(第3の実施形態)図4は本発明の第3の
実施形態に係る認証方式の適用された第1及び第2のエ
ンティティ装置の構成を示す模式図であり、図5は各エ
ンティティ装置に用いられるMAC計算部の構成を代表
して示す模式図である。
【0043】すなわち、本実施形態は、第1の実施形態
の暗復号装置をMAC計算部に用いた認証方式を示し、
第1及び第2のエンティティ装置10A,20Bを備え
ている。
【0044】ここで、第1のエンティティ装置10A
は、メッセージ送信部11A、共通鍵記憶部12A、M
AC計算部13A及びMAC送信部14Aを備えてい
る。
【0045】メッセージ送信部11Aは、メッセージM
を第2のエンティティ装置20Bに送信する機能と、自
己のMAC計算部13Aに送出する機能とをもってい
る。
【0046】共通鍵記憶部12Aは、第1及び第2のエ
ンティティ装置10A,20Bの両者で共有された共通
鍵Kが記憶される領域であり、MAC計算部13Aから
読出可能となっている。
【0047】MAC計算部13Aは、共通鍵記憶部12
A内の共通鍵K及びメッセージ送信部11Aからのメッ
セージMに基づいて、第1のMAC認証子#1を算出
(作成)する機能と、この第1のMAC認証子#1をM
AC送信部14Aに送出する機能とをもっている。
【0048】MAC送信部14Aは、MAC計算部13
Aから送出された第1のMAC認証子#1を第2のエン
ティティ装置20Bに送信する機能をもっている。
【0049】一方、第2のエンティティ装置20Bは、
メッセージ受信部21B、共通鍵記憶部22B、MAC
計算部23B及び照合部24Bを備えている。メッセー
ジ受信部21Bは、第1のエンティティ装置10Aから
送信されたメッセージMを受信し、このメッセージMを
自己のMAC計算部23Bに送出する機能をもってい
る。
【0050】共通鍵記憶部22Bは、第1及び第2のエ
ンティティ装置10A,20Bの両者で共有された共通
鍵Kが記憶される領域であり、MAC計算部23Bから
読出可能となっている。
【0051】MAC計算部23Bは、共通鍵記憶部22
B内の共通鍵K及びメッセージ受信部21Bからのメッ
セージMに基づいて、第2のMAC認証子#2を算出
(作成)する機能と、この第2のMAC認証子#2を照
合部24Bに送出する機能とをもっている。
【0052】照合部24Bは、自己のMAC計算部23
Bから送出された第2のMAC認証子#2と、第1のエ
ンティティ装置10Aから受信した第1のMAC認証子
#1とを比較照合する機能と、両認証子#1,#2が一
致するときに、第1のエンティティ装置10Aにより作
成されたメッセージMが改竄されずにメッセージ受信部
21Bに受信された旨を認証する機能と、両認証子#
1,#2が不一致のときに、第1のエンティティ装置1
0Aにより作成されたメッセージMが改竄された旨を検
出する機能とをもっている。
【0053】続いて、第1及び第2のエンティティ装置
10A,20Bにおける各MAC計算部13A,23B
の構成について説明する。なお、係るMAC計算部13
A,23Bは、ハードウェア及び/又はソフトウェアに
て実現可能なものであり、ソフトウェアにより実現され
る場合にはその動作を示すプログラムが予め記憶媒体か
らインストールされている。また、両MAC計算部13
A,23Bは互いに同一構成なので、ここでは第1のエ
ンティティ装置10A内のMAC計算部13Aを例に挙
げて述べる。
【0054】MAC計算部13Aは、図5に示すよう
に、図1に示した暗復号装置に対し、メッセージMが平
文データとして入力された際に、第1の実施形態で述べ
た通りに得られるm個目(最終)の暗号文ブロックCm
のうち、所定ビット位置のデータを選択するビット選択
部Bsが付加された構成となっている。
【0055】なお、ビット選択部Bsは、選択したデー
タを第1のMAC認証子#1としてMAC送信部14A
に送出する機能をもっている。また、メッセージM自体
は、平文データに限らず、図1の暗復号装置と同じ又は
別の暗号化装置により暗号化された暗号文データであっ
ても良い。
【0056】また、以上のような第1及び第2のエンテ
ィティ装置10A,20Bは、ハードウェア及び/又は
ソフトウェアにて実現可能なものであり、ソフトウェア
により実現される場合にはその動作を示すプログラムが
予め記憶媒体からインストールされている。
【0057】次に、以上のように構成された第1及び第
2のエンティティ装置10A,20Bの動作を説明す
る。第1のエンティティ装置10Aは、メッセージ送信
部11AがメッセージMを第2のエンティティ装置20
Bに送出すると共に、このメッセージMと共通鍵Kとに
基づき、MAC計算部13Aが第1のMAC認証子#1
を算出し、MAC送信部14Aがこの第1のMAC認証
子#1を第2のエンティティ装置20Bに送信する。
【0058】第2のエンティティ装置20Bは、第1の
エンティティ装置10AからメッセージM並びに第1の
MAC認証子#1を受信すると、このメッセージMと共
通鍵Kとに基づき、MAC計算部23Bが第2のMAC
認証子#2を算出する。
【0059】次に、照合部24Bは、この第2のMAC
認証子#2と受信された第1のMAC認証子#1とを比
較照合し、両認証子#1,#2が一致するときに、第1
のエンティティ装置10Aにより作成されたメッセージ
Mが改竄されずにメッセージ受信部21Bに受信された
旨を認証する。また、照合部24Bは、両認証子#1,
#2が不一致のときに、第1のエンティティ装置10A
により作成されたメッセージMが改竄された旨を検出す
る。
【0060】このような認証方式において、MAC計算
部13A,23Bは、第1の実施形態と同様に、共通鍵
Kを各鍵データKg2〜Kgmにそれぞれ変換する過程
で各変数入力部V〜Vm-1から変数v〜vm-1を入力
している。従って、前述同様に、メッセージMが各ブロ
ック毎に同一の平文(メッセージ)ブロックP1〜Pm
となっていても、鍵データKg2〜Kgmが互いに異な
る値となるので、安全性を向上させることができる。
【0061】上述したように本実施形態によれば、認証
方式において、MAC認証子#1,#2を算出する際
に、第1の実施形態の暗復号装置を用いたので、第1の
実施形態の効果を有する認証方式を実現することができ
る。
【0062】(第4の実施形態)図6は本発明の第4の
実施形態に係る暗号化連鎖方式の適用されたMAC計算
部の構成を示す模式図である。すなわち、本実施形態
は、第3の実施形態の変形例であり、具体的にはMAC
計算部13A,23Bにおいて、各変数入力部V〜V
m-1に代えて、各変換関数f’〜fm-1’が、互いに異
なる2以上の変換関数のいずれかとして構成されてい
る。なお、図6は前述同様に一方のMAC計算部13A
を例に挙げて示しているが、他方のMAC計算部23B
も同様の構成となっている。ここで、互いに異なる変換
関数とは、第2の実施形態に述べた通りである。また、
各変換関数f’〜fm-1’に関しても、第2の実施形
態に述べた通りである。以上のような構成としても、第
3の実施形態と同様の効果を得ることができる。
【0063】なお、上記各実施形態に記載した装置は、
記憶媒体に格納したプログラムをコンピュータに読み込
ませることで実現させることができる。
【0064】ここで、本発明における記憶媒体として
は、磁気ディスク、フロッピー(登録商標)ディスク、
ハードディスク、光ディスク(CD−ROM、CD−
R、DVD等)、光磁気ディスク(MO等)、半導体メ
モリ等、プログラムを記憶でき、かつコンピュータが読
み取り可能な記憶媒体であれば、その記憶形式は何れの
形態であっても良い。
【0065】また、記憶媒体からコンピュータにインス
トールされたプログラムの指示に基づきコンピュータ上
で稼働しているOS(オペレーティングシステム)や、
データベース管理ソフト、ネットワークソフト等のMW
(ミドルウェア)等が本実施例を実現するための各処理
の一部を実行しても良い。
【0066】さらに、本発明における記憶媒体は、コン
ピュータと独立した媒体に限らず、LANやインターネ
ット等により伝送されたプログラムをダウンロードして
記憶または一時記憶した記憶媒体も含まれる。
【0067】また、記憶媒体は1つに限らず、複数の媒
体から本実施例における処理が実行される場合も本発明
における記憶媒体に含まれ、媒体構成は何れの構成であ
っても良い。
【0068】尚、本発明におけるコンピュータは、記憶
媒体に記憶されたプログラムに基づき、本実施例におけ
る各処理を実行するものであって、パソコン等の1つか
らなる装置、複数の装置がネットワーク接続されたシス
テム等の何れの構成であっても良い。
【0069】また、本発明におけるコンピュータとは、
パソコンに限らず、情報処理機器に含まれる演算処理装
置、マイコン等も含み、プログラムによって本発明の機
能を実現することが可能な機器、装置を総称している。
【0070】なお、本願発明は、上記各実施形態に限定
されるものでなく、実施段階ではその要旨を逸脱しない
範囲で種々に変形することが可能である。また、各実施
形態は可能な限り適宜組み合わせて実施してもよく、そ
の場合、組み合わされた効果が得られる。さらに、上記
各実施形態には種々の段階の発明が含まれており、開示
される複数の構成用件における適宜な組み合わせにより
種々の発明が抽出され得る。例えば実施形態に示される
全構成要件から幾つかの構成要件が省略されることで発
明が抽出された場合には、その抽出された発明を実施す
る場合には省略部分が周知慣用技術で適宜補われるもの
である。
【0071】その他、本発明はその要旨を逸脱しない範
囲で種々変形して実施できる。
【0072】
【発明の効果】以上説明したように本発明によれば、特
定パターンの入力の除去装置を設けずに、互いに異なる
鍵データの生成を保証でき、安全性を向上し得る暗復号
装置、認証装置及び記憶媒体を提供できる。
【図面の簡単な説明】
【図1】本発明の第1の実施形態に係る暗号化連鎖方式
の適用された暗復号装置の構成を示す模式図
【図2】同実施形態における各変数の生成方法の一例を
示すフローチャート
【図3】本発明の第2の実施形態に係る暗号化連鎖方式
の適用された暗復号装置の構成を示す模式図
【図4】本発明の第3の実施形態に係る認証方式の適用
された第1及び第2のエンティティ装置の構成を示す模
式図
【図5】同実施形態におけるMAC計算部の構成を代表
して示す模式図
【図6】本発明の第4の実施形態に係る暗号化連鎖方式
の適用されたMAC計算部の構成を示す模式図
【図7】従来の暗号化連鎖方式の適用された暗復号装置
の構成を示す模式図
【符号の説明】
平文ブロックP1〜Pm 暗号化関数F1〜Fm 暗号文ブロックC1〜Cm K…共通鍵 Kg2〜Kgm…鍵データ f〜fm-1,f’〜fm-1’,g〜gm-1…変換関
数 i〜im-1…中間出力 v〜vm-1…変数 V〜Vm-1…変数入力部 10A,20B…エンティティ装置 11A…メッセージ送信部 12A,22B…共通鍵記憶部 13A,23B…MAC計算部 14A…MAC送信部 21B…メッセージ受信部 24B…照合部 #1,#2…MAC認証子 Bs…ビット選択部

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 互いに並列に設けられ、鍵データに基づ
    いて平文データをブロック毎に暗号化して暗号文データ
    を出力し、及び/又は鍵データに基づいて暗号文データ
    をブロック毎に復号して平文データを出力する複数の暗
    号化関数部と、 いずれかの暗号化関数部の中間的な処理結果に基づいて
    共通鍵を変換し、得られた鍵データを処理開始前のいず
    れかの暗号化関数部に個別に入力する複数の鍵データ生
    成手段とを備えた暗復号装置であって、 前記各鍵データ生成手段は、互いに異なる2つ以上の変
    換処理のうち、いずれかの変換処理を用いて前記共通鍵
    を変換することを特徴とする暗復号装置。
  2. 【請求項2】 請求項1に記載の暗復号装置において、 前記各鍵データ生成手段は、互いに異なる2つ以上の変
    数データのうち、いずれかの変数データに基づいて前記
    共通鍵を変換することを特徴とする暗復号装置。
  3. 【請求項3】 メッセージから認証子を生成する認証子
    生成手段を備え、前記認証子生成手段により生成された
    認証子に基づいて前記メッセージの認証を行なう認証装
    置であって、 前記認証子生成手段は、 互いに並列に設けられ、鍵データに基づいて前記メッセ
    ージをブロック毎に暗号化して暗号文データを作成する
    複数の暗号化関数部と、 いずれかの暗号化関数部の中間的な処理結果、及び互い
    に異なる2つ以上の変換処理のうちのいずれかの変換処
    理に基づいて共通鍵を変換し、得られた鍵データを処理
    開始前のいずれかの暗号化関数部に個別に入力する複数
    の鍵データ生成部と、 最終段の暗号化関数部により作成された暗号文データに
    基づいて、前記認証子を作成する認証子作成部とを備え
    たことを特徴とする認証装置。
  4. 【請求項4】 請求項3に記載の認証装置において、 前記各鍵データ生成部は、互いに異なる2つ以上の変数
    データのうち、いずれかの変数データに基づいて前記共
    通鍵を変換することを特徴とする認証装置。
  5. 【請求項5】 暗復号装置のコンピュータを、 互いに並列に設けられ、鍵データに基づいて平文データ
    をブロック毎に暗号化して暗号文データを出力し、及び
    /又は鍵データに基づいて暗号文データをブロック毎に
    復号して平文データを出力する複数の暗号化関数部、 いずれかの暗号化関数部の中間的な処理結果、及び互い
    に異なる2つ以上の変換処理のうちのいずれかの変換処
    理に基づいて共通鍵を変換し、得られた鍵データを処理
    開始前のいずれかの暗号化関数部に個別に入力する複数
    の鍵データ生成手段、 として機能させるためのプログラムが記憶されたコンピ
    ュータ読取り可能な記憶媒体。
  6. 【請求項6】 請求項5に記載のコンピュータ読取り可
    能な記憶媒体において、 前記各鍵データ生成手段は、互いに異なる2つ以上の変
    数データのうち、いずれかの変数データに基づいて前記
    共通鍵を変換することを特徴とするコンピュータ読取り
    可能な記憶媒体。
  7. 【請求項7】 メッセージから認証子を生成し、この認
    証子に基づいて前記メッセージの認証を行なう認証装置
    に使用されるコンピュータ読取り可能な記憶媒体であっ
    て、 前記認証装置のコンピュータを、 互いに並列に設けられ、鍵データに基づいて前記メッセ
    ージをブロック毎に暗号化して暗号文データを作成する
    複数の暗号化関数部、 いずれかの暗号化関数部の中間的な処理結果、及び互い
    に異なる2つ以上の変換処理のうちのいずれかの変換処
    理に基づいて共通鍵を変換し、得られた鍵データを処理
    開始前のいずれかの暗号化関数部に個別に入力する複数
    の鍵データ生成部、 最終段の暗号化関数部により作成された暗号文データに
    基づいて、前記認証子を作成する認証子作成部、 として機能させるためのプログラムが記憶されたコンピ
    ュータ読取り可能な記憶媒体。
  8. 【請求項8】 請求項7に記載のコンピュータ読取り可
    能な記憶媒体において、 前記各鍵データ生成部は、互いに異なる2つ以上の変数
    データのうち、いずれかの変数データに基づいて前記共
    通鍵を変換することを特徴とするコンピュータ読取り可
    能な記憶媒体。
JP2000237268A 2000-08-04 2000-08-04 暗復号装置、認証装置及び記憶媒体 Pending JP2002049310A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2000237268A JP2002049310A (ja) 2000-08-04 2000-08-04 暗復号装置、認証装置及び記憶媒体
US09/920,737 US20020025037A1 (en) 2000-08-04 2001-08-03 Encryption/decryption apparatus, authenticating apparatus, program and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000237268A JP2002049310A (ja) 2000-08-04 2000-08-04 暗復号装置、認証装置及び記憶媒体

Publications (1)

Publication Number Publication Date
JP2002049310A true JP2002049310A (ja) 2002-02-15

Family

ID=18729161

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000237268A Pending JP2002049310A (ja) 2000-08-04 2000-08-04 暗復号装置、認証装置及び記憶媒体

Country Status (2)

Country Link
US (1) US20020025037A1 (ja)
JP (1) JP2002049310A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007105709A1 (ja) * 2006-03-14 2007-09-20 Nec Corporation 情報処理システム、情報処理方法および情報処理プログラム
JP2008501253A (ja) * 2004-01-08 2008-01-17 エンクリプション ソリューションズ,インク. データを暗号化し送信する方法および暗号化されたデータを送信するためのシステム

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060023875A1 (en) * 2004-07-30 2006-02-02 Graunke Gary L Enhanced stream cipher combining function
US8260259B2 (en) * 2004-09-08 2012-09-04 Qualcomm Incorporated Mutual authentication with modified message authentication code
US20080019517A1 (en) * 2006-04-06 2008-01-24 Peter Munguia Control work key store for multiple data streams
KR20080072345A (ko) * 2007-02-02 2008-08-06 삼성전자주식회사 암호화 장치 및 그 방법
US8634549B2 (en) * 2008-05-07 2014-01-21 Red Hat, Inc. Ciphertext key chaining
US8396209B2 (en) 2008-05-23 2013-03-12 Red Hat, Inc. Mechanism for chained output feedback encryption
DE102012201164B4 (de) * 2012-01-26 2017-12-07 Infineon Technologies Ag Vorrichtung und verfahren zur erzeugung eines nachrichtenauthentifizierungscodes
CN104335218B (zh) * 2012-03-30 2017-08-11 爱迪德技术有限公司 使用基函数编码来保护可访问的系统
JP2014209677A (ja) * 2013-04-16 2014-11-06 株式会社東芝 データ管理装置、電力使用量計算システム、データ管理方法、及びデータ管理プログラム
RU2647685C2 (ru) * 2013-08-02 2018-03-16 Нек Корпорейшн Устройство аутентифицированного шифрования, способ аутентифицированного шифрования и программа для аутентифицированного шифрования
US9594928B1 (en) * 2014-10-14 2017-03-14 Altera Corporation Multi-channel, multi-lane encryption circuitry and methods
US11297054B1 (en) 2020-10-06 2022-04-05 International Business Machines Corporation Authentication system(s) with multiple authentication modes using one-time passwords of increased security

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5230020A (en) * 1991-10-16 1993-07-20 Motorola, Inc. Algorithm independent cryptographic key management
US5673319A (en) * 1995-02-06 1997-09-30 International Business Machines Corporation Block cipher mode of operation for secure, length-preserving encryption
US5796830A (en) * 1996-07-29 1998-08-18 International Business Machines Corporation Interoperable cryptographic key recovery system
CA2302784A1 (en) * 1997-09-17 1999-03-25 Frank C. Luyster Improved block cipher method
US6061449A (en) * 1997-10-10 2000-05-09 General Instrument Corporation Secure processor with external memory using block chaining and block re-ordering
US6185304B1 (en) * 1998-02-23 2001-02-06 International Business Machines Corporation Method and apparatus for a symmetric block cipher using multiple stages
US6226742B1 (en) * 1998-04-20 2001-05-01 Microsoft Corporation Cryptographic technique that provides fast encryption and decryption and assures integrity of a ciphertext message through use of a message authentication code formed through cipher block chaining of the plaintext message
US6351539B1 (en) * 1998-09-18 2002-02-26 Integrated Device Technology, Inc. Cipher mixer with random number generator
US6490353B1 (en) * 1998-11-23 2002-12-03 Tan Daniel Tiong Hok Data encrypting and decrypting apparatus and method

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008501253A (ja) * 2004-01-08 2008-01-17 エンクリプション ソリューションズ,インク. データを暗号化し送信する方法および暗号化されたデータを送信するためのシステム
WO2007105709A1 (ja) * 2006-03-14 2007-09-20 Nec Corporation 情報処理システム、情報処理方法および情報処理プログラム
US8121284B2 (en) 2006-03-14 2012-02-21 Nec Corporation Information processing system, information processing method, and information processing program
JP5131187B2 (ja) * 2006-03-14 2013-01-30 日本電気株式会社 情報処理システム、情報処理方法および情報処理プログラム

Also Published As

Publication number Publication date
US20020025037A1 (en) 2002-02-28

Similar Documents

Publication Publication Date Title
CN1682479B (zh) 用于数据处理系统的加密和认证/解密和验证的方法和设备
KR101520617B1 (ko) 메시지의 무결성 유지를 위한 메시지 암호화 방법 및 장치,메시지의 무결성 유지를 위한 메시지 복호화 방법 및 장치
EP1876748B1 (en) Privacy-preserving concatenation of strings
CN101202623B (zh) 消息验证码产生方法、验证/加密和验证/解密方法
KR101091246B1 (ko) 간단하고 효율적인 원패스 인증 암호화 방법
WO2006080165A1 (ja) ファイルの暗号化・復号化方法、装置、プログラム、及びこのプログラムを記録したコンピュータ読み取り可能な記録媒体
US7894608B2 (en) Secure approach to send data from one system to another
JP2002049310A (ja) 暗復号装置、認証装置及び記憶媒体
WO2016067524A1 (ja) 認証付暗号化装置、認証付復号装置、認証付暗号システム、認証付暗号化方法、プログラム
US11463235B2 (en) Encryption device, encryption method, program, decryption device, and decryption method
US8804953B2 (en) Extensive ciphertext feedback
JP5324813B2 (ja) 鍵生成装置、証明書生成装置、サービス提供システム、鍵生成方法、証明書生成方法、サービス提供方法およびプログラム
CN114640443B (zh) 一种在线工程报价安全交互方法和系统
JPH02110491A (ja) 記憶装置
CN114036541A (zh) 一种复合加密存储用户私密内容的应用方法
Singh et al. A des, aes, dss, and rsa-based security system for protecting sensitive information during communication and providing fast, reliable file identification
JP2004297755A (ja) 暗号システムにおける鍵管理サーバおよび復号装置を制御するプログラム,ならびに署名/検証システムにおける鍵管理サーバおよび検証装置を制御するプログラム
JP2001194991A (ja) 暗号化方法及び暗号通信方法
JP2007521676A (ja) ディフィー・ヘルマン・ディジタル署名の生成及び検証
Labbi et al. Symmetric encryption algorithm for RFID systems using a dynamic generation of key
JP2000004223A (ja) 暗号・認証システム
JP4000899B2 (ja) 認証付暗号方法及び認証付復号方法及び装置及びプログラム及びコンピュータが読み取り可能な記録媒体
JP2001222218A (ja) 暗号化装置、方法、復号装置、方法、暗号システム及びプログラムを記憶した記憶媒体
JP4777501B2 (ja) 暗号化方式
JP2004347885A (ja) 暗号化装置処理方法、暗号復号装置処理方法、これらの装置及びプログラム