JP2003110540A - 暗号鍵更新方法 - Google Patents

暗号鍵更新方法

Info

Publication number
JP2003110540A
JP2003110540A JP2001305280A JP2001305280A JP2003110540A JP 2003110540 A JP2003110540 A JP 2003110540A JP 2001305280 A JP2001305280 A JP 2001305280A JP 2001305280 A JP2001305280 A JP 2001305280A JP 2003110540 A JP2003110540 A JP 2003110540A
Authority
JP
Japan
Prior art keywords
key
encryption key
communication
encryption
updating
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.)
Granted
Application number
JP2001305280A
Other languages
English (en)
Other versions
JP3695526B2 (ja
Inventor
Mariko Hagita
真理子 萩田
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.)
Keio University
Original Assignee
Keio University
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 Keio University filed Critical Keio University
Priority to JP2001305280A priority Critical patent/JP3695526B2/ja
Publication of JP2003110540A publication Critical patent/JP2003110540A/ja
Application granted granted Critical
Publication of JP3695526B2 publication Critical patent/JP3695526B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 暗号通信における鍵更新の処理時間と通信コ
ストを削減する。 【解決手段】 暗号通信の利用者は、最初に、Diffie-H
ellman鍵交換方式などにより、基本鍵kを交換して共有
する。基本鍵kのサイズを、暗号鍵サイズより大きくと
っておく。基本鍵kから、同じ一方向性関数に従って、
それぞれ別々に暗号鍵gを生成する。通信終了後に、次
の暗号通信のための鍵更新を行う。最初の基本鍵交換の
みで、以後は暗号鍵更新のための通信をせずに、i番目
の暗号鍵g(k,i)を生成する。鍵更新を通信終了後に
行えるようになり、鍵更新のための通信中の待ち時間と
通信コストを削減できる。次の暗号鍵を生成できること
が本人であることの証明にもなり、認証としての役割を
得ることもできる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、暗号鍵更新方法に
関し、特に、共有鍵暗号を用いた暗号通信において、暗
号鍵を簡単かつ安全に更新する暗号鍵更新方法に関す
る。
【0002】
【従来の技術】インターネットを用いて電子商取引を行
う時には、第3者に知られることなく、安全に2点A,
B間で通信を行うために、データは暗号化して伝送され
ている。その時に利用される暗号技術として、現在広く
使用されているのは、AESやDESに代表される共有鍵暗号
方式である。これは、通信を行うA,B間でのみ共有し
ている共通暗号鍵をもとに、送信するデータを第3者に
分からないデータに変換する方法である。
【0003】DES(Data Encryption Standard)は、これ
までアメリカ合衆国政府の国立標準研究所(NIST)が、デ
ータ暗号の標準として推奨してきた共有鍵暗号方式であ
る。AES(Advanced Encryption Standard)は、DESに代わ
るデータ暗号の標準としてNISTが公募し、数学者J.Daem
en,V.Rijmenによって開発されたRijndaelと呼ばれる暗
号化方式である。どちらも共有鍵を利用して、固定サイ
ズのブロックに区切られたデータを高速に暗号化する共
有鍵暗号方式であり、ブロックサイファーと呼ばれる。
この変換に必要な計算量は大変小さい。8ビットの2数
の積を求める計算と、鍵と同じビット数(64,128,196,2
56ビットのいずれか)の2数の和を求める計算が必要な
だけである。
【0004】ここで使われる共有鍵は、第3者に知られ
てはならないものである。しかし、同じ鍵を何度も使い
続けると、知られてしまう可能性がある。これを避ける
ために、通信を何度か行うごとに、鍵を交換し直してい
る。この鍵交換では、最も安全とされるDiffie-Hellman
(1976)の鍵交換方式が利用されることが多い。すなわ
ち、公開された大きな素数pと、位数pの有限体GF(p)
の乗法群の生成元gを用いて、AとBがそれぞれ乱数
a,bを発生させる。AはBに(ga modp)を送り、Bは
Aに(gb modp)を送る。それぞれ、 k=(gb)a mod p=(ga)b modp を計算し、秘密鍵として共有する。この鍵交換方法は、
DES,AESの変換に比べ大変安全だが、256ビット(128また
は512ビットの場合もある)の数同士の冪乗を計算するた
め、計算量がとても大きく、低速である。
【0005】安全性を維持しながら、鍵交換の負荷を少
なくするために、各種の方法が提案されている。特開20
00-278258号公報に開示された「共通鍵交換方法」は、
共通鍵暗号方式を用いた秘密通信を行うための通信量が
少なく、効率的で安全な鍵交換方法である。1回目の鍵
交換は、Diffie-Hellman鍵交換方式において必要な全て
のパラメータの生成を行ない、公開情報の共有処理を行
った上で、鍵交換処理を行う。2回目以降の鍵交換にお
いては、既に共有されている秘密情報を、新たな鍵交換
における公開情報の一つとして使用し、このパラメータ
の生成および共有処理は行わずに、鍵交換処理を行う。
2回目以降の鍵交換処理時に、共有すべき公開情報の一
部を生成する必要が無いため、鍵交換処理において任意
数発生の処理が省略できる。また、通知すべきパラメー
タが少なくなるため、共有すべき公開情報を含むパケッ
トのサイズが小さくなる。ひいては、通信量を少なくす
ることができ、通信路に公開情報を送信する必要をなく
すことができる。
【0006】また、特開2001-60256号公報に開示された
「データ更新機能付きICカード」は、鍵更新のための特
別なカード処理のためのセンターを不要にし、安全に鍵
更新できるようにするものである。ICカードに暗号用鍵
の更新予定日を登録しておき、外部からの時間情報と更
新予定日に基づいて更新時期を判別し、更新予定日以降
に、現在の暗号用鍵データと取引回数データとから演算
して新しい鍵を生成し、更新する。
【0007】
【発明が解決しようとする課題】しかし、従来の暗号鍵
更新方法においては、Diffie-Hellman鍵交換方式で通信
中に鍵交換を行うと、その計算を行っている間、電子商
取引をストップさせることになり、定期的に待ち時間と
通信コストが生じるという問題があった。
【0008】本発明は、上記従来の問題を解決して、通
信を必要としない効率的で安全な鍵更新方法により、鍵
更新を通信終了後に行うことで、待ち時間と通信コスト
を削減することを目的とする。
【0009】
【課題を解決するための手段】上記の課題を解決するた
めに、本発明では、共有鍵暗号方式で暗号通信を行う二
点間の共有秘密情報に基づいて、更新暗号鍵を同じ一方
向性関数に従って二点それぞれで別々に生成することに
より、通信をせずに暗号鍵更新を行う暗号鍵更新方法
を、暗号鍵のサイズより大きい共有秘密情報を二点で共
有し、共通秘密情報を含む情報から、一方向性関数によ
り共通秘密情報よりも情報量が少ない新しい暗号鍵を生
成する構成とした。
【0010】このように構成したことにより、簡単かつ
安全に暗号鍵を更新することができる。また、暗号鍵交
換のためのデータのやり取りをしない代わりに、最初に
交換する共通秘密情報のサイズを、暗号鍵サイズより大
きくとっておくことで、通信時に共通秘密情報の一部し
か外に現れないようにして、暗号鍵を更新するごとに、
その前の暗号鍵にはなかった新たな情報が加わるように
して、新たに選び直すことに相当する安全性を得てい
る。通信では元の共通秘密情報の一部しか見せないこと
で、新規に暗号鍵を生成したと同様な状態を作り出し、
安全性を高めることができる。また、暗号鍵更新のため
の情報を通信しないため、その情報を漏らさないための
処理が不要となる。さらに、次の暗号鍵を生成できるこ
とが本人であることの証明にもなり、認証としての役割
を得ることもできる。
【0011】また、一方向性関数を、あらかじめ取り決
めた合成数Nを法とする剰余環における乗算を行う関数
としたので、素数を法とした場合に比べ乱数度と強度を
高めることができる。暗号鍵更新のための計算量も、通
信を利用して新たな鍵を安全に交換するよりも少なくで
きる。
【0012】また、一回の通信を終了するごとに暗号鍵
を更新するので、暗号鍵更新を通信終了後に行えるよう
になり、暗号鍵更新のための通信中の待ち時間と通信コ
ストを削減できる。
【0013】
【発明の実施の形態】以下、本発明の実施の形態につい
て、図1〜図6を参照しながら詳細に説明する。
【0014】(第1の実施の形態)本発明の第1の実施
の形態は、最初にDiffie-Hellman鍵交換方式で256ビッ
トの基本鍵を交換して、基本鍵を二乗して1とならない
ことを確認し、これを更新基本鍵とし、そのうちの64ビ
ットをDESの暗号鍵とし、2回目からは、更新基本鍵を
二乗した新更新基本鍵のうちの64ビットをDESの暗号鍵
とする暗号鍵更新方法である。
【0015】図1は、本発明の第1の実施の形態におけ
る暗号鍵更新方法の概念図である。図2は、本発明の第
1の実施の形態における暗号鍵更新方法の概略の流れ図
である。この方法は、平方剰余により疑似乱数を生成す
るBlum-Blum-Shub(BBS)法を利用した方法であるの
で、仮にBBS法と呼ぶ。最初に、図1と図2を参照し
て、本発明の第1の実施の形態における暗号鍵更新方法
の概略を説明する。
【0016】図1に示すように、256ビットの基本鍵k
を二乗して、更新基本鍵hを求める。更新基本鍵hのう
ちの64ビットを抽出して、暗号鍵gとする。図2の流れ
図に示すステップ1で、剰余計算に使う法Nと鍵交換に
使う乱数rを用意する。ステップ2で、Diffie-Hellman
鍵交換方式により256ビットの基本鍵kを、通信相手と
交換する。ステップ3で、基本鍵kを二乗して更新基本
鍵hとする。ステップ4で、更新基本鍵hのうちの64ビ
ットを抽出して、暗号鍵gとする。ステップ5で、暗号
鍵gをDESの暗号鍵として、暗号通信を行う。ステップ
6で、更新基本鍵hを二乗して新しい更新基本鍵hとす
る。ステップ7で、新しい更新基本鍵hのうちの64ビッ
トを抽出して、次の暗号鍵gとする。ステップ5に戻
り、暗号通信を行う。これを繰り返す。
【0017】以下、各ステップについて、詳しく説明す
る。DES方式の暗号を用いて暗号通信を行う場合を例と
して説明する。DESでは64ビットの暗号鍵を用いる。送
りたいデータ(平文)を64ビットに区切って、暗号鍵で
暗号文に変換する。DESを利用した通信では、同じ暗号
鍵を長く使い続けると、暗号鍵が破られて、その後のす
べての文書を解読されてしまう。これを回避するため、
一回の通信を終了する度に暗号鍵を更新して、安全性を
確保する。
【0018】暗号鍵の更新における計算は、素数pを法
とする剰余での計算(GF(p)での計算)ではなく、合成
数N(=s×t)を法とする剰余環での計算とする。GF
(p)での演算では除算及び平方根を求める簡単な計算方
法が存在するが、合成数を法とする剰余環では、与えら
れた元に逆元があっても因数分解を知らずにこれを求め
るには膨大な計算量がかかるため、除算及び平方根を求
めることも事実上不可能で、因数を求める効率の良い計
算方法も見つかっていないので、暗号鍵の逆算が困難に
なるためである。
【0019】あらかじめ、合成数Nを準備しておく。12
8ビットの素数s,tで、(s−1)/2も(t−1)/2も
素数となるものを選び、N=s×t(256ビット)とす
る。例えば、2進125ビットの乱数xを次々に発生させ
る。1x1(乱数xのMSBの上位桁に1を連接し、LSBの下位
桁にも1を連接した127ビットの数、すなわち、2126
2x+1)に素数検定をかける。これが素数ならば、1x1
1(さらにLSBの下位桁に1を連接した128ビットの数、
127+4x+3)に素数検定をかける。これが素数検
定に合格すれば、この数を使う。これを、2回の素数検
定に合格するまで繰り返す。このようにして、素数s=
1x11を見つけることができる。素数tも同様にして見つ
ける。
【0020】また、256ビットの乱数rで、 r(s-1)≠1 modN r(t-1)≠1 modN となるものを選んで装備しておく。s,tは非公開とす
る。この場合には、 re=1 modN をみたす最小の正の整数eは(s−1)(t−1)/2とな
り、十分に大きく、s,tを知らない人が、eを求める
ことは難しい。
【0021】通信を行う人も、以下の計算過程でs,t
を知る必要はないので、N,rは、システムとしてあら
かじめ装備しておく。利用者それぞれが複数の通信相手
を持つ場合にも、積の計算はすべて同じmodNで行うこ
とにする。
【0022】最初の基本鍵kの交換には、最も安全な方
法と考えられているDiffie-Hellman鍵交換方式を、素数
での剰余の代わりに合成数Nでの剰余に置き換えたもの
を用いる。ここでは、有限体上のDiffie-Hellman鍵交換
方式と同様な剰余環上の鍵交換方式も、Diffie-Hellman
鍵交換方式と呼ぶことにする。すなわち、以下の方法
で、256ビットの基本鍵kを交換する。
【0023】通信を行うAとBは、それぞれ256ビット
の乱数a,bを発生させて、AはBに、(ra modN)を
送り、BはAに、(rb modN)を送り、それぞれが、 k=(rb)a modN=(ra)b modN を計算し、kを基本鍵として秘密に共有する。Diffie-H
ellman鍵交換方式以外の方法で、基本鍵kを交換しても
よい。例えば、公開鍵方式で基本鍵kを相手に送ること
もできる。
【0024】基本鍵kをこのように選ぶと、合成数Nを
法とする剰余環において、基本鍵kのべき乗で生成され
る乗法群の位数e、すなわち、 ke=1 modN をみたす最小の正の整数eは、 k2≠1 modN であれば、(s−1)(t−1)/2,(s−1)(t−1)/
4,(s−1),(t−1),(s−1)/2,(t−1)/2
のいずれかであり、どれも十分に大きい。また、s,t
を知らない人がこれを求めるには、Nを因数分解する
か、全数チェックすることが必要となる。この計算量は
十分に多いため、現在の技術では事実上求めることがで
きないものとみなせる。
【0025】1回目の通信に用いる暗号鍵g(k,1)
は、 h(k,1)=k2 modN の最初の64ビットとする。すなわち、基本鍵kを二乗し
て更新基本鍵hを求め、256ビットの更新基本鍵の最初
の64ビットを取り出して、暗号鍵gとする。i回目の通
信に利用する暗号鍵g(k,i)は、 h(k,i)=h(k,i−1)2 modN のi(mod 256)ビット目(MSBを1ビット目とする)か
ら、mod 256ビットで見て連続する64ビットとする。
【0026】i番目の暗号鍵g(k,i)を用いての通信
時には、暗号鍵g(k,i)の他に、更新基本鍵h(k,i)
を保存しておき、その通信の終了後、次の通信までの間
に、それぞれが、 h(k,i+1)=h(k,i)2 modN を計算し、(i+1)番目の暗号鍵g(k,i+1)を生
成し、次の通信に用いる。もちろん、速度に問題がなけ
れば、通信中に並行して次の暗号鍵gを計算しておき、
必要となった場合、すぐに暗号鍵gを更新するようにし
てもよい。
【0027】2回目以降の鍵更新を、通信中には行わな
いので、暗号鍵更新のための待ち時間と通信コストを削
減できる。また、2回目以降の暗号鍵gを生成するため
の計算量も、256ビットの数2つの積の計算1回分に相
当し、冪乗の計算を行うDiffie-Hellman鍵交換方式を用
いる場合に比べれば、はるかに小さい。そのため、通信
の度に暗号鍵gを取り替えることが可能となり、DESの
ように十分に安全とは言えなくなった暗号方式で通信を
行っても、通信相手以外の者が暗号鍵を推定することは
困難となる。
【0028】さらに、i番目の暗号鍵g(k,i)を用い
ての通信のデータから、第三者がDESを解読して暗号鍵
g(k,i)を推定できたとしても、更新基本鍵h(k,i)
を推定するには、残りのビットに相当する2192通りの
可能性を考えなくてはならず、DESの64ビット鍵を求め
る以上の計算量が必要となる。
【0029】また、このように基本鍵kを次々に二乗し
て、未知の2つの素数の積Nでの剰余h(k,i)を作
り、これを並べて作った列が、乱数として大変優れたも
の、すなわち連続するいくつものデータを集めても、次
のビットをランダムより良い確率で予測することが難し
い、という性質をもつ乱数列になっていることは、文献
[L. Blum, M. Blum, M. Shub: "A Simple Unpredictab
le Psudo-Random NumberGenerator", SIAM J. Comput.
Vol15, No.2, May 1986]で示されている。よって、い
くつかの暗号鍵g(k,i)を推定しても、法則を見つけ
ることは大変に難しく、他の暗号鍵を推定するには、や
はり全数チェック相当の計算が必要となると考えられ、
安全に通信を行うことができる。
【0030】上記のように、本発明の第1の実施の形態
では、暗号鍵更新方法を、最初にDiffie-Hellman鍵交換
方式で256ビットの基本鍵を交換して、基本鍵を二乗し
て更新基本鍵とし、そのうちの64ビットをDESの暗号鍵
とし、2回目からは、更新基本鍵を二乗した新更新基本
鍵のうちの64ビットをDESの暗号鍵とする構成としたの
で、暗号鍵の交換のための通信をすることなく、簡単な
計算で安全に暗号鍵を更新できる。
【0031】(第2の実施の形態)本発明の第2の実施の
形態は、最初に、鍵管理センターから256ビットの基本
鍵を取得して共有し、基本鍵から加減算で64ビットのDE
S暗号鍵を生成し、2回目からは、32ビットの加減乗算
で基本鍵を更新し、更新した基本鍵から加減算で64ビッ
トのDES暗号鍵を生成する暗号鍵更新方法である。
【0032】図3は、本発明の第2の実施の形態におけ
る暗号鍵更新方法の概念図である。図4は、本発明の第
2の実施の形態における暗号鍵更新方法の概略の流れ図
である。この方法は、加減算により暗号鍵を生成するの
で、仮に加減算法と呼ぶ。携帯端末やICカードなどで
は、電子商取引を行うために信頼できる暗号処理が必要
にもかかわらず、メモリやCPUや待ち時間の上限等の制
約がある。大きな暗号鍵データをいくつも保存すること
も、32ビット以上の2つの数の冪乗の計算を行うことも
難しい。十分に安全な暗号方式でデータを暗号化するこ
とが困難である。データの変換方式を簡易なものに変え
るかわりに、暗号鍵の更新を、計算量も少なく、しかも
頻繁に、例えば、電子商取引を行うたびに行うことで、
十分な安全性を確保する。図3と図4を参照して、本発
明の第2の実施の形態における暗号鍵更新方法の概略を
説明する。
【0033】図3に示すように、256ビットの基本鍵k
を32ビットずつに分け、上位128ビットについて32ビッ
トずつの加減算を行い、64ビットの暗号鍵gの上位32ビ
ットとする。下位128ビットについて32ビットずつの加
減算を行い、64ビットの暗号鍵gの下位32ビットとす
る。図4の流れ図に示すステップ12で、センターから25
6ビットの基本鍵kを取得する。ステップ13で、基本鍵
kから加減算により暗号鍵gを計算する。ステップ14
で、暗号鍵gをDESの暗号鍵として、暗号通信を行う。
ステップ15で、加減乗算により、基本鍵kから新しい基
本鍵kを生成する。ステップ16で、新しい基本鍵kから
加減算により暗号鍵gを計算する。ステップ14に戻り、
暗号通信を行う。これを繰り返す。
【0034】以下、各ステップについて、詳しく説明す
る。商取引には、64ビットの暗号鍵を用いたDESまたは
ストリームサイファーで情報の変換をする。上記のよう
な制約がある場合には、暗号鍵情報を、通信路を利用し
て安全に交換することはできないため、一回目の電子商
取引を始める前には、鍵管理センターに直接アクセスし
てデータを取り込むことで、256ビットの基本鍵kを共
有しておく。
【0035】しかし、鍵管理センターに頻繁に直接アク
セスして256ビットの基本鍵を共有させるのは、手間が
かかりすぎて実用上問題があるため、現在保有している
情報から、実現可能な計算量で次回の通信に使う暗号鍵
を生成する。
【0036】商取引を始める直前に、共有する基本鍵k
から、通信に用いる64ビットの暗号鍵gを得るため、次
のような計算をする。まず、図3に示すように、基本鍵
kを32ビットごとに区切り、x1,x2,x3,x4,x5,x6,x7,x8
とする。以下、計算はすべてmod232で行う。商取引に
用いる64ビット鍵gは、上位32ビットを、x1-x2+x3(EXO
R)x4で求める。下位32ビットを、x5(EXOR)x6+x7-x8で求
める。ここで、(EXOR)は、ビットごとに排他的論理和を
とる関数とする。基本鍵kから64ビットの暗号鍵gを求
める計算は、和と(EXOR)だけからなる。これは大変簡単
な計算で、時間もほとんどかからない。
【0037】商取引終了直後に、基本鍵kを更新するた
めの計算を、次のように行う。すなわち、 y1=x1×x5 2=x2×x7 3=x3(EXOR)x8 4=x4−x6 5=x3×x6 6=x4×x8 7=x1(EXOR)x7 8=x2(EXOR)x5 として、xiをyiに代えて基本鍵kを更新し、次の通信
まで保存しておく。携帯端末なら、通信終了後に計算す
れば良い。ICカードなら、電子商取引終了時に上の計算
をして基本鍵kを更新し、書き換えておくようにすれば
良い。
【0038】32ビットの積を4回計算する他は、和と(E
XOR)しか計算していないため、かなり制約の大きい通信
装置でも、簡単に計算することができる。また、自身が
保有するデータだけを利用して、通信することなく次の
暗号鍵を生成できるため、暗号鍵の更新が容易に行え
る。
【0039】さらに、通信及び電子商取引終了後には、
必ず自動的に暗号鍵を更新しているため、次の暗号鍵を
生成できることが、本人であることの証明にもなる。第
三者によるなりすまし、すなわち、取引のために暗号化
して送ったデータをそのまま送ることで同じ取引を実現
すること、を防止することも可能になる。
【0040】上記のように、本発明の第2の実施の形態
では、暗号鍵更新方法を、最初に、鍵管理センターから
256ビットの基本鍵を取得して共有し、基本鍵から加減
算で64ビットのDES暗号鍵を生成し、2回目からは、32
ビットの加減乗算で基本鍵を更新し、更新した基本鍵か
ら加減算で64ビットのDES暗号鍵を生成する構成とした
ので、1回通信するのみで、きわめて簡単な計算で安全
に暗号鍵を更新できる。
【0041】(第3の実施の形態)本発明の第3の実施の
形態は、最初に、Diffie-Hellman鍵交換方式で512ビッ
トの基本鍵kを交換し、基本鍵kのうちの下位256ビッ
トをS-box処理してk乗した結果の下位256ビットをAES
の暗号鍵とし、2回目からは、前回の暗号鍵をS-box処
理したものをk乗した結果の下位256ビットをAESの暗号
鍵とする暗号鍵更新方法である。
【0042】図5は、本発明の第3の実施の形態におけ
る暗号鍵更新方法の概念図である。図6は、本発明の第
3の実施の形態における暗号鍵更新方法の概略の流れ図
である。この方法は、べき乗により暗号鍵を生成するの
で、仮にべき乗法と呼ぶ。これからの共有鍵暗号方式の
標準として推奨されるAES暗号方式のうち、もっとも安
全性の高い256ビット暗号鍵を用いた暗号化方式を用い
る。ある程度の計算量はかかっても良いから、更に安全
性を強化して、できるだけ外部に情報を漏らさずに通信
を行いたい場合の暗号鍵更新方法である。図5と図6を
参照して、本発明の第3の実施の形態における暗号鍵更
新方法の概略を説明する。
【0043】図5に示すように、512ビットの基本鍵k
の下位256ビットを抽出して、最初の暗号鍵gとする。
暗号鍵gをS-box処理して、f(g)とする。これをk乗
して、512ビットの法Nの剰余を求め、その下位256ビッ
トを次回の暗号鍵gとする。図6の流れ図に示すステッ
プ21で、剰余計算に使う法Nと鍵交換に使う乱数rを用
意する。ステップ22で、Diffie-Hellman鍵交換方式によ
り512ビットの基本鍵kを、通信相手と交換する。ステ
ップ23で、基本鍵kの下位256ビットをS-box処理してk
乗した結果の下位256ビットを暗号鍵gとする。ステッ
プ24で、暗号鍵gをDESの暗号鍵として、暗号通信を行
う。ステップ25で、基本鍵kと暗号鍵gのビットパター
ンに応じて暗号鍵gの更新を行うかどうかを判断する。
更新を行う場合は、ステップ26で、暗号鍵gをS-box処
理してk乗した結果の下位256ビットを新しい暗号鍵g
とする。ステップ24に戻り、暗号通信を行う。これを繰
り返す。
【0044】以下、各ステップについて、詳しく説明す
る。第1の実施の形態と同様に、256ビットの素数s,t
で、(s−1)/2も(t−1)/2も素数となるものを生
成する。計算は、N=s×t(512ビット)を法とする
剰余環で行う。通信を行うA,Bは、最初の基本鍵k
を、Diffie-Hellman鍵交換方式で交換する。交換し共有
した512ビットの基本鍵kは、それぞれ秘密に保存し続
ける。
【0045】AESにおけるデータの変換には、S-boxと呼
ばれる8ビットの情報の一対一対応を与える関数を使
う。256ビットの2進数を8ビットごとに区切り、それ
ぞれにS-boxを施す関数をfとする。また、任意の数に
対して、mod2256をとる関数をM256とし、modNをとる
関数をMNとする。
【0046】まず、基本鍵kの下位256ビットを取り出
し、g(k,0)とする。すなわち、 g(k,0)=M256(k) とする。実際の通信に用いる最初の暗号鍵g(k,1)
は、g(k,0)をS-box処理し、その結果のk乗の法Nで
の剰余を求め、その下位256ビットを使う。すなわち、 g(k,1)=M256(MN(f(g(k,0))k)) とする。2回目以降の暗号鍵は、それぞれが、 g(k,i+1)=M256(MN(f(g(k,i))k)) を計算することにより、i番目の鍵g(k,i)から(i
+1)番目の鍵g(k,i+1)を生成する。
【0047】次回に使う暗号鍵gは、通信中でもそうで
なくても、暗号鍵更新後1時間以内に計算しておく。i
番目の暗号鍵g(k,i)を利用している間に保存してお
く情報は、g(k,i),g(k,i+1),kの合わせて1024
ビットである。
【0048】暗号鍵更新のタイミングは、AESを用いた
通信をスタートさせるときに、A,Bの時計を同期させ
ることで決める。通信中でもそれ以外でも、1時間ごと
に基本鍵kと暗号鍵gを見て、最後に暗号鍵更新をして
からi時間目には、基本鍵kのi番目のビットと、その
時に共有鍵としている暗号鍵gのi番目のビットを比べ
て、一致している場合に、次の暗号鍵に取り替える。24
時間経過したら、一致しなくても取り替える。
【0049】ここで用いるS-boxは、AESのために装備さ
れているものなので、新たに大きな関数を書き加える必
要はない。2回目以降の暗号鍵を生成するための計算量
は、冪計算を行っているので、Diffie-Hellman鍵交換方
式を用いるのと同程度に大きくなるが、暗号鍵の安全性
も同程度に高くなる。また、暗号鍵更新のための信号を
送らないため、暗号鍵更新のタイミングも第三者にはわ
からず、機密性の高い暗号通信装置を実現することがで
きる。
【0050】上記のように、本発明の第3の実施の形態
では、暗号鍵更新方法を、最初に、Diffie-Hellman鍵交
換方式で512ビットの基本鍵kを交換し、基本鍵kのう
ちの下位256ビットをS-box処理してk乗した結果の下位
256ビットをAESの暗号鍵とし、2回目からは、前回の暗
号鍵をS-box処理したものをk乗した結果の下位256ビッ
トをAESの暗号鍵とする構成としたので、通信すること
なく、安全に暗号鍵を更新できる。
【0051】
【発明の効果】以上の説明から明らかなように、本発明
では、共有鍵暗号方式で暗号通信を行う二点間の共有秘
密情報に基づいて、次に使う暗号鍵を同じ一方向性関数
に従って二点それぞれで別々に生成することにより、通
信をせずに暗号鍵更新を行う暗号鍵更新方法を、共通秘
密情報を一方向性関数により更新し、更新した共通秘密
情報の情報量を削減することにより新しい暗号鍵を生成
する構成としたので、暗号鍵更新を、高い安全性を損な
うことなく、通信をせずに行うことが可能となり、待ち
時間と通信コストの削減を実現できるという効果が得ら
れる。
【0052】また、暗号鍵更新のための情報を通信しな
いため、その情報を漏らさないための処理が不要とな
る。暗号鍵更新のための計算量も、通信を利用して新た
な鍵を安全に交換するよりも少なくできる。これによ
り、頻繁に共有鍵を取り替えることが可能となり、同じ
コストで、これまで以上に信頼性の高い暗号通信装置を
実現することができる。
【0053】また、携帯端末やICカードを用いて電子商
取引を行う場合など、信頼できる暗号処理が必要にもか
かわらず、メモリやCPUの制約により、AES等の十分に安
全な共有鍵暗号方式でデータを変換することが困難な場
合にも、データの変換方式を簡易なものに変えるかわり
に、鍵の更新を頻繁に行うことで、高い安全性を確保す
ることが可能となる。
【0054】すでに設計済みの暗号を強化したい場合に
も、用いる鍵の倍のサイズの鍵を共有して、通常より頻
繁に鍵更新を行うことで、通信を必要とする鍵交換の回
数は増やさずに、同じ暗号で安全性を高めることもでき
る。この場合、鍵更新に必要な情報を通信する必要がな
いため、あらかじめ取り決めた鍵情報がなければわから
ないタイミングで鍵更新を行えば、鍵更新したことすら
気づかせずに鍵を代えることもできる。
【0055】さらに、大切な電子商取引を行う場合に
は、終了後には必ず自動的に鍵を更新することにより、
次の鍵を生成できることが本人であることの証明にもな
り、第三者によるなりすまし、すなわち、取引のために
暗号化して送ったデータをそのまま送ることで同じ取引
を実現することを防止する効果も得られる。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態における暗号鍵更新
方法の概念図、
【図2】本発明の第1の実施の形態における暗号鍵更新
方法の概略の流れ図、
【図3】本発明の第2の実施の形態における暗号鍵更新
方法の概念図、
【図4】本発明の第2の実施の形態における暗号鍵更新
方法の概略の流れ図、
【図5】本発明の第3の実施の形態における暗号鍵更新
方法の概念図、
【図6】本発明の第3の実施の形態における暗号鍵更新
方法の概略の流れ図である。
【符号の説明】
k 基本鍵 h 更新基本鍵 g 暗号鍵

Claims (13)

    【特許請求の範囲】
  1. 【請求項1】 共有鍵暗号方式で暗号通信を行う二点間
    の共有秘密情報に基づいて、更新暗号鍵を同じ一方向性
    関数に従って前記二点それぞれで別々に生成することに
    より、通信をせずに暗号鍵更新を行う暗号鍵更新方法に
    おいて、暗号鍵のサイズより大きい共有秘密情報を前記
    二点で共有し、前記共通秘密情報を含む情報から、前記
    一方向性関数により前記共通秘密情報よりも情報量が少
    ない新しい暗号鍵を生成することを特徴とする暗号鍵更
    新方法。
  2. 【請求項2】 最初の共有秘密情報をDiffie-Hellman鍵
    交換方式により前記二点間で交換することを特徴とする
    請求項1記載の暗号鍵更新方法。
  3. 【請求項3】 一回の通信を終了するごとに前記暗号鍵
    を更新することを特徴とする請求項1記載の暗号鍵更新
    方法。
  4. 【請求項4】 前記暗号鍵は、DES方式の暗号鍵である
    ことを特徴とする請求項1記載の暗号鍵更新方法。
  5. 【請求項5】 前記暗号鍵は、AES方式の暗号鍵である
    ことを特徴とする請求項1記載の暗号鍵更新方法。
  6. 【請求項6】 前記共有秘密情報のビット数は、前記暗
    号鍵のビット数の2倍または4倍であるであることを特
    徴とする請求項1記載の暗号鍵更新方法。
  7. 【請求項7】 前記一方向性関数は、あらかじめ取り決
    めた合成数Nを法とする剰余環における乗算を行う関数
    であることを特徴とする請求項1記載の暗号鍵更新方
    法。
  8. 【請求項8】 前記一方向性関数は、あらかじめ取り決
    めた合成数Nを法とする剰余環において前記共通秘密情
    報を二乗し、その結果の所定部分を暗号鍵として出力す
    る関数であることを特徴とする請求項1記載の暗号鍵更
    新方法。
  9. 【請求項9】 前記一方向性関数は、あらかじめ取り決
    めた合成数Nを法とする剰余環における乗算を行う関数
    であり、前記合成数Nは素数sと素数tの積であり、前
    記素数sは(s−1)/2が素数となり、前記素数tは
    (t−1)/2が素数となる素数であることを特徴とす
    る請求項1記載の暗号鍵更新方法。
  10. 【請求項10】 請求項1〜9のいずれかに記載の暗号
    鍵更新方法を実行する手順を記述したことを特徴とする
    コンピュータプログラム。
  11. 【請求項11】 請求項10記載のコンピュータプログ
    ラムを格納したことを特徴とする記録媒体。
  12. 【請求項12】 請求項10記載のコンピュータプログ
    ラムを実行する演算手段と、前記演算手段により更新し
    た暗号鍵を使って暗号通信を行う通信手段とを具備する
    ことを特徴とする通信装置。
  13. 【請求項13】 請求項10記載のコンピュータプログ
    ラムを実行する演算手段と、前記演算手段により更新し
    た暗号鍵を使って暗号通信を行う通信手段とを具備する
    ことを特徴とするICカード。
JP2001305280A 2001-10-01 2001-10-01 暗号鍵更新方法 Expired - Fee Related JP3695526B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001305280A JP3695526B2 (ja) 2001-10-01 2001-10-01 暗号鍵更新方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001305280A JP3695526B2 (ja) 2001-10-01 2001-10-01 暗号鍵更新方法

Publications (2)

Publication Number Publication Date
JP2003110540A true JP2003110540A (ja) 2003-04-11
JP3695526B2 JP3695526B2 (ja) 2005-09-14

Family

ID=19125092

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001305280A Expired - Fee Related JP3695526B2 (ja) 2001-10-01 2001-10-01 暗号鍵更新方法

Country Status (1)

Country Link
JP (1) JP3695526B2 (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007508778A (ja) * 2003-10-14 2007-04-05 テレフオンアクチーボラゲット エル エム エリクソン(パブル) 暗号用鍵の世代の効率的な管理
JP2007512721A (ja) * 2003-08-25 2007-05-17 ソニー エレクトロニクス インク 反復暗号化ブロックのための装置及び方法
JP2007194866A (ja) * 2006-01-18 2007-08-02 Ricoh Co Ltd 通信システム、通信方法および通信装置
JP2011155650A (ja) * 1998-08-19 2011-08-11 Qualcomm Inc 無線通信装置の認証のための安全な処理
JP2013236397A (ja) * 2013-07-23 2013-11-21 Nti Corp 送受信システム、送信装置、受信装置、それらで実行される方法、並びにプログラム
JP2014175970A (ja) * 2013-03-12 2014-09-22 Fuji Xerox Co Ltd 情報配信システム、情報処理装置及びプログラム
WO2016035793A1 (ja) * 2014-09-02 2016-03-10 大日本印刷株式会社 通信装置、鍵データ更新方法、及び鍵データ更新処理プログラム
JP2016165158A (ja) * 2016-06-14 2016-09-08 富士ゼロックス株式会社 情報配信システム、情報処理装置及びプログラム
KR20170051259A (ko) * 2015-10-30 2017-05-11 팔로 알토 리서치 센터 인코포레이티드 제한된 대역폭을 갖는 채널들을 통한 효율적이고 의미론적으로 안전한 대칭 암호화를 위한 시스템 및 방법
WO2022085243A1 (ja) * 2020-10-22 2022-04-28 住友電気工業株式会社 車載装置、暗号化通信方法および暗号化通信プログラム

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011155650A (ja) * 1998-08-19 2011-08-11 Qualcomm Inc 無線通信装置の認証のための安全な処理
JP2007512721A (ja) * 2003-08-25 2007-05-17 ソニー エレクトロニクス インク 反復暗号化ブロックのための装置及び方法
JP2011055541A (ja) * 2003-08-25 2011-03-17 Sony Electronics Inc 反復暗号化ブロックのための装置及び方法
JP4794443B2 (ja) * 2003-08-25 2011-10-19 ソニー エレクトロニクス インク 反復暗号化ブロックのための装置及び方法
JP2007508778A (ja) * 2003-10-14 2007-04-05 テレフオンアクチーボラゲット エル エム エリクソン(パブル) 暗号用鍵の世代の効率的な管理
JP4855940B2 (ja) * 2003-10-14 2012-01-18 テレフオンアクチーボラゲット エル エム エリクソン(パブル) 暗号用鍵の世代の効率的な管理
JP2007194866A (ja) * 2006-01-18 2007-08-02 Ricoh Co Ltd 通信システム、通信方法および通信装置
JP2014175970A (ja) * 2013-03-12 2014-09-22 Fuji Xerox Co Ltd 情報配信システム、情報処理装置及びプログラム
US9244864B2 (en) 2013-03-12 2016-01-26 Fuji Xerox Co., Ltd. Information providing system, information processing apparatus, computer readable medium, and information providing method for providing encrypted information
JP2013236397A (ja) * 2013-07-23 2013-11-21 Nti Corp 送受信システム、送信装置、受信装置、それらで実行される方法、並びにプログラム
WO2016035793A1 (ja) * 2014-09-02 2016-03-10 大日本印刷株式会社 通信装置、鍵データ更新方法、及び鍵データ更新処理プログラム
JPWO2016035793A1 (ja) * 2014-09-02 2017-06-22 大日本印刷株式会社 通信装置、鍵データ更新方法、及び鍵データ更新処理プログラム
KR20170051259A (ko) * 2015-10-30 2017-05-11 팔로 알토 리서치 센터 인코포레이티드 제한된 대역폭을 갖는 채널들을 통한 효율적이고 의미론적으로 안전한 대칭 암호화를 위한 시스템 및 방법
JP2017085559A (ja) * 2015-10-30 2017-05-18 パロ アルト リサーチ センター インコーポレイテッド 制限帯域幅を有するチャネルにおける効率的かつ強秘匿性の対称暗号化のためのシステムおよび方法
KR102368749B1 (ko) 2015-10-30 2022-03-02 팔로 알토 리서치 센터 인코포레이티드 제한된 대역폭을 갖는 채널들을 통한 효율적이고 의미론적으로 안전한 대칭 암호화를 위한 시스템 및 방법
JP2016165158A (ja) * 2016-06-14 2016-09-08 富士ゼロックス株式会社 情報配信システム、情報処理装置及びプログラム
WO2022085243A1 (ja) * 2020-10-22 2022-04-28 住友電気工業株式会社 車載装置、暗号化通信方法および暗号化通信プログラム

Also Published As

Publication number Publication date
JP3695526B2 (ja) 2005-09-14

Similar Documents

Publication Publication Date Title
JP3421950B2 (ja) 非決定論的ミクスチャー発生器ストリーム暗号化システム
CA2218148C (en) Generating unique and unpredictable values
JP4596686B2 (ja) Dpaに対して安全な暗号化
KR101387799B1 (ko) 메시지 인증 방법
JP5544355B2 (ja) 共有の秘密の確認の方法およびシステム
US6640303B1 (en) System and method for encryption using transparent keys
US20030149876A1 (en) Method and system for performing perfectly secure key exchange and authenticated messaging
EP1330702B1 (en) Method and system of using an insecure crypto-accelerator
Lamba Design and analysis of stream cipher for network security
JP3695526B2 (ja) 暗号鍵更新方法
WO2014205571A1 (en) Signature protocol
JP2004054128A (ja) 暗号化装置
JP2002217898A (ja) 擬似乱数生成システム
Hafsa et al. Secure transmission of medical images using improved hybrid cryptosystem: authentication, confidentiality and integrity
JP3358953B2 (ja) 擬似ランダムビット列生成器及びそれを使用する暗号通信方法
RU2277759C2 (ru) Способ формирования ключа шифрования-дешифрования
AU7659598A (en) Pseudo-random generator based on a hash coding function for cryptographic systems requiring random drawing
JP2000286830A (ja) 暗号通信システムにおける暗号化処理方法
Simmons Symmetric and asymmetric encryption
RU2186467C2 (ru) Способ блочного итеративного шифрования
Singh A Note on Symmetric Key Cryptosystems
Fernandes et al. VLSI Implementation of Cryptographic Algorithms & Techniques: A Literature Review
RU2140714C1 (ru) Способ итеративного шифрования блоков данных
Malek et al. High Securing Cryptography System for Digital Image Transmission
Owolabi et al. Improved Data Security System Using Hybrid Cryptosystem

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040913

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20040913

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041019

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20041013

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041208

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050104

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050203

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20050221

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20050324

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: 20050621

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050621

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: 20090708

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090708

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100708

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110708

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110708

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120708

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees