JP2006189607A - 復号装置とそのプログラム - Google Patents

復号装置とそのプログラム Download PDF

Info

Publication number
JP2006189607A
JP2006189607A JP2005001314A JP2005001314A JP2006189607A JP 2006189607 A JP2006189607 A JP 2006189607A JP 2005001314 A JP2005001314 A JP 2005001314A JP 2005001314 A JP2005001314 A JP 2005001314A JP 2006189607 A JP2006189607 A JP 2006189607A
Authority
JP
Japan
Prior art keywords
plaintext
decoding
candidate
vector
decryption
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
JP2005001314A
Other languages
English (en)
Inventor
Yasumichi Murakami
恭通 村上
Takeshi Nasako
健 名迫
Mitsuko Yokoyama
晃子 横山
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.)
Murata Machinery Ltd
Original Assignee
Murata Machinery Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Murata Machinery Ltd filed Critical Murata Machinery Ltd
Priority to JP2005001314A priority Critical patent/JP2006189607A/ja
Publication of JP2006189607A publication Critical patent/JP2006189607A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【構成】 平文を符号語に変換し,ベクトルVの全成分の和Sよりも小さな法Pを用いて,ナップザック暗号に変換し送信する.復号側では,中間平文の候補に変換し,この候補に中間平文の欠損部を推定して復号し,符号語が得られると復号に成功したものとし,符号語が得られないと欠損部の推定値を変更して,再度復号する.
【効果】 ナップザック暗号の強度を増すことができる.
【選択図】 図3

Description

この発明は暗号通信に関し,特に法PをベクトルVの全成分の和Sよりも小さくした新規なナップザック暗号システムに関し,特にこのような暗号を効率的に復号するための復号装置とそのプログラムとに関する.
MerkleとHellmanは,暗号化処理が加算のみにより実行し得る公開鍵暗号として,超増加数列をトラップドアに用いたナップザック暗号(MH暗号)を提案した(非特許文献1).しかしながら,ナップザック暗号は,Shamirの攻撃(非特許文献2)や低密度攻撃(非特許文献3〜5)によって,容易に解読できることが知られている.このため,ナップザック暗号の安全性は疑問視されている.
しかしながら,量子コンピュータが実現すると,素因数分解や離散対数問題の困難性に基礎を置く,多くの公開鍵暗号は解読されることが知られている.従って,安全なナップザック暗号を探求することは非常に重要な意味を持つ.このような観点から発明者らは,ナップザック暗号を改良して,暗号化や復号を高速で行えるとの利点を維持しながら,安全性を向上することを検討してきた(特許文献1).
ナップザック暗号の構成法を以下に示す.またナップザック暗号の鍵等を,表1に示す.
表1
ナップザック暗号の鍵 他
秘密鍵: P(素数),
V(超増加ベクトルでその全成分の和をSとする),
w(秘密の数)
公開鍵: a(超増加ベクトルVと同じ次元のベクトル)
平文: m(ブロック長n)
復号側のBobは以下に述べる手順に従って鍵を生成する.まず,秘密鍵の超増加ベクトルV=(V,V,…,V)を生成する.すなわち,V1を正整数の乱数とし,Vi
(i=2,3,…,n)を(1)式を充たす正整数の乱数となるように,生成する.
>Si−1 (1)
ただし,
=ΣV (k=1〜i) (2)
とする.任意のi(i≧2)について,(1)式が成立することを超増加性という.このとき,(7)式で表される密度の損失を最小限にするために,
=Si−1+σ, 1<<σ<<Si−1 とするのが望ましい.次に,
P>S=S (3)
を満たすように素数Pを生成する.さらに,秘密鍵w∈Z をランダムに生成し,(4)式に従って,超増加ベクトルVをモジュラ変換することにより,公開鍵ベクトルaを得る.
a=wV mod P (4)
暗号化は次のようにして行う.送信者のAliceは,平文m=(m,m,…,m)∈
{0,1}と公開鍵ベクトルaを用いて,(5)式により暗号化を行い,暗号文Cを得る.
C=ma=Σ(m) i=1〜n (5)
暗号文Cを受信したBobは,まず中間平文Mを(6)式により求める.ここにw−1は体Z でのwの逆数である.
M=w−1C mod P (6)
Bobは次いで,表2のアルゴリズムにより復号を行う.この過程で,各miの値がnから始めて1までの順に定まる.復号が可能なのは,P>S で暗号文Cに平文mが1:1に対応し,かつ超増加ベクトルVを用いているので,miの値を一意に決定できるからである.
表2
ナップザック暗号の復号アルゴリズム
for i=n downto 1
{if (M≧Vi) {m=1,M←M−V} else{mi=0}}
次にナップザック暗号の強度,特に低密度攻撃への強度を決定する密度について,説明する.ナップザック暗号の密度は,平文mの次元をn,最大の暗号文をCmaxとすると,(7)式で表される.
ρ=n/log2max (7)
密度がρ<0.9408 のとき,ナップザック暗号は低密度攻撃により解読できる(非特許文献5).
R.C. Merkle,M.E. Hellman: "Hiding information and Signatures in trapdoor knapsacks," IEEE,Trans. Inf. Theory,IT-24(5),pp.525.530,1978. A. Shamir: "A polynomial time algorithm for breaking the basic Merkle-Hellman cryptosystems," Proc. Crypto'82,LNCS,pp.279.288,Springer-Verlag,Berlin,1982. E.F. Brickell: "Solving low density knapsacks," Proc. Crypto'83,LNCS,pp.25.37,Springer-Verlag,Berlin,1984. J.C. Lagarias,A.M. Odlyzko: "Solving low density Subset Sum problems," J. Assoc. Comp. Math.,Vol.32,pp.229.246,Preliminary Version in Proc. 24th IEEE,1985. M.J. Coster,B.A. LaMacchia,A.M. Odlyzko,C.P. Schnorr:"An improved low-density subset sum algorithm," Proc. Eurocrypto'91,LNCS,pp.54.67. Springer-Verlag,Berlin,1991. 特開2002-116692
この発明の課題は,安全性の高い新規なナップザック暗号システムを提案し,それに用いる復号装置や復号プログラムを提供することにある.
この発明の追加の課題は,復号を高速化することにある.
この発明で用いる,改良型のナップザック暗号システムについて説明する.まず,従来より小さな法を使用する(法縮小と称する)ことにより,暗号文の密度を増し,安全性を高める.法Pは超増加ベクトルの和S=S よりも小さなものを用い,暗号文の密度ρは例えば ρ>1 にできる.これによって低密度攻撃は実質上不可能になり,暗号強度は飛躍的に向上する.
しかし法Pを縮小することによって,一意復号が保証されなくなる.そこで平文を拡大して冗長性を持たせることにより,再度一意性を保証する.例えばブロック長uの平文mを語長nの拡大平文m'へ変換する.この変換での平文の集合{m}の像を所定の集合Fとする.法PがSよりも小さいので,正しい中間平文Mを得ることが難しい.そこで中間平文の値を推定し,これを中間平文の候補M'とする.中間平文の候補M'を正しく復号できれば,Fの元が得られ,正しく復号できなければFの元以外のものが得られる.従って中間平文の候補M'を推定し,復号してFの元が得られるかどうかを評価し,得られれば復号をうち切り,得られなければ中間平文の候補M'を変更するループを,Fの元が得られるまで繰り返せば一意に復号できる.
この発明の復号装置は,ナップザック暗号文Cを復号するための装置において,暗号文Cを,ベクトルVの全成分の和Sよりも小さな自然数Pを法とし,かつ秘密の数wを用いて,中間平文の候補M'へ復号するための中間平文算出手段と,中間平文の候補M'を変更しながらベクトルVを用いて復号し,復号過程で所定の集合Fに属する拡大平文m'が得られればナップザック暗号を復号したものとし,得られなければ中間平文の候補M'を変更するための復号手段と,得られた拡大平文m'を,語長が拡大平文m'よりも短い平文mに変換するための変換手段とを設けたことを特徴とする.
好ましくは,前記所定の集合Fを符号語の集合Codeとする.
また好ましくは,前記復号手段では,中間平文の候補M'を法Pずつ変更,もしくはベクトルVの各成分Vi単位で変更する.中間平文の候補M'を法Pずつ変更することを中間平文の探索と称し,中間平文の候補M'をベクトルVの各成分Vi単位で変更することを欠損情報の探索と称する.なおVi単位でとは,Vi±Vj (i≠j)のように超増加ベクトルの複数の成分の加算値や差を用いて,中間平文の候補M'を変更することを含んでいる.
さらに好ましくは,前記復号手段では,中間平文の候補M'をベクトルVの各成分Vi(i=t+1〜n)単位で変更し,かつこれ以外の成分Vi(i=1〜t)において,ベクトルVが超増加性を有するようにする.なお成分Vi(i=t+1〜n)では,ベクトルVは超増加性も単なる増加性も特に必要ではない.
最も好ましくは,前記拡大平文m'が符号語の連接で,前記復号手段では,個々の符号語単位で復号して,符号語が得られると中間平文の候補M'の復号を続行し,符号語以外のものが得られると中間平文の候補M'を変更する.
この発明の復号装置と復号プログラムは実質的に同じものであり,復号装置に関する記載は特に断らない限り,復号プログラムにも当てはまり,また復号プログラムに関する記載は特に断らない限り復号装置にも当てはまる.特許請求の範囲等の符号は,実施例との対応のためのもので,特許請求の範囲を限定するためのものではない.
この発明の復号プログラムは,ナップザック暗号文Cを復号するためのプログラムにおいて,暗号文Cを,ベクトルVの全成分の和Sよりも小さな自然数Pを法とし,かつ秘密の数wを用いて,中間平文の候補M'へ復号するための中間平文算出命令と,中間平文の候補M'を変更しながらベクトルVを用いて復号し,復号過程で所定の集合Fに属する拡大平文m'が得られればナップザック暗号を復号したものとし,得られなければ中間平文の候補M'を変更するための復号命令と,得られた拡大平文m'を,語長が拡大平文m'よりも短い平文mに変換するための変換命令とを設けたことを特徴とする.
好ましくは,前記復号命令では,中間平文の候補M'を法Pずつ変更,もしくはベクトルVの各成分Vi単位で変更する.
特に好ましくは,前記所定の集合Fは符号語を連接したものであり,かつ前記拡大平文m'は符号語の連接で,前記復号命令では,個々の符号語単位で復号して,符号語が得られると中間平文の候補M'の復号を続行し,符号語以外のものが得られると中間平文の候補M'を変更する.
この発明では,ナップザック暗号に対して法Pを全成分の和Sよりも小さくすることにより,暗号文を高密度化する.これにより例えば1を越える高い密度を実現でき,低密度攻撃に対して非常に高い耐性を有する暗号システムが得られる.そしてこのようなナップザック暗号を復号するため,中間平文を何らかの意味で探索しながら復号する.復号は単純なナップザック暗号に対して低速であるが,一般にナップザック暗号は他の公開鍵暗号に比較して非常に高速に復号できるため,実用上問題となるものではない.このためこの発明では,安全性が極めて高い新規なナップザック暗号システムを提案して,その復号装置と復号プログラムとを提供できる.
以下に本発明を実施するための最適実施例を示す。
実施例の概要を説明する.実施例では,法縮小を用いる暗号の基本方式としてCHK暗号を説明する.次に,法縮小を行う暗号に対する復号法として二種の探索復号法を説明する.最初のものは中間平文探索法で,これをCHK-1暗号と称する.次のものは欠損情報探索法でこれをCHK-2暗号と称する.最後にCHK-1暗号を改良したCHK-3'暗号と,CHK-2暗号を改良したCHK-3暗号を説明する.CHK-2やCHK-3暗号では,秘密鍵を超増加ベクトルとする必要がない.
CHK-1,2暗号では,中間平文の候補を最後まで復号しないと真の中間平文か否かを判定できず,復号に時間を要する.これに対して,CHK-3暗号やCHK-3'暗号では,中間平文の候補が真の中間平文でない場合,速やかにこの候補を棄却して,次の候補を処理できる.
表3に実施例で用いる主な記号を示す.
表3
改良ナップザック暗号の符号
平文: m ブロック長u
拡大平文:m' m'=f(m)でブロック長n
f({m})をCodeとし,Codeから{m}への全射をg(m')とする
:r 誤り訂正符号の誤り訂正記号
秘密鍵:法P 好ましくは素数 2−h<P<S
ベクトルV CHK-2,CHK-3で欠損情報を探索する部分について,
増加性不要
他の部分は超増加ベクトルとする
乱数w Pが素数で無い場合,Pとwが互いに素なことが好ましいが, 公約数を持っても良い
公開鍵:a
公開情報:f(・),u,n
CHK-3やCHK-3'では,拡大平文m'をd個の符号語の連接として,各i(i=1〜d)
毎に,符号化関数fiやブロック長uiを定めても良い.
中間平文の候補: M'
M'+kP(k=0〜2)の順に探索するものを中間平文探索
i>tについて,mi'の値を(0,0,…,0)から(1,1,…,1)の範囲で仮定し, M−Σmi'Viを中間平文の候補とするものを,欠損情報探索という
CHK暗号
平文をm =(m1,m2,…,mu)∈{0,1}u とする.拡大平文ベクトルm'∈{0,1}nを公開の拡大変換関数(符号化関数)f(・)を用いて(8)式により定義する.
m'=f(m) (8)
ただしfには任意のm∈ {0,1}u に対して,m = g(f(m))を満たす変換関数g が存在する.また,符号語全体の集合Codeを(9)式で定義する.
Code= {f(m)|m∈{0,1}u (9)
任意の符号語m'について,m'∈Code であるか否かの判定を行う多項式アルゴリズムが必要で,好ましくはf(・)は例えば誤り訂正符号や誤り検査符号の符号化関数を用いる.この場合,m'は誤り訂正・検査符号の符号語である.
Bobは,ナップザック暗号同様に,(1)式によりn次元のベクトルVを生成し,(2)式によりSを求め,
2−h < P < S (10)
を満たすように素数Pを生成する.hは例えば, h+u=n である.さらに秘密鍵w∈Z をランダムに生成し,(16)式によりVをモジュラ変換することにより,公開鍵aを得る.
a=wV mod P (11)
好ましくはa の成分を置換σで適当に置換して公開する.すなわち,n次対称群の元σを秘密にし,σにより置換した(aσ(1),aσ(2),…,aσ(n))を公開鍵ベクトルaとする.置換前の鍵を置換後の鍵aから特に区別して言及する場合,鍵aと呼ぶ.この場合でもσを知るBobは復号できる.またAliceは,(8)式により,平文ベクトルmにf(m)により求めた拡大平文m'を計算し,次式により暗号化を行い,暗号文Cを得る.
C=m'a (12)
法PはSより小さいので,拡大平文m'のビット長が暗号文Cの情報量より多くなる.すなわちAliceが送ろうとした情報の一部は欠損し,Bobに伝えることができない.このため中間平文候補M'を(13)式により求め,適当な探索復号アルゴリズムにより復号する.
M'= w−1C mod P (13)
CHK-1暗号では,正当な中間平文を探索できた際には,超増加数列の性質により正しく復号できることを利用して復号する.このとき,真の中間平文Mは適当な正整数 k < 2h が存在し,
M = M'+kP (14)
と表現される.表4に復号アルゴリズムを示す.
表4
中間平文探索法での復号アルゴリズム
do {M=M'
for i=n downto 1
{ if (M≧Vi) {mi'=1; M←M−Vi} else{mi'=0}}
if m'∈Code and M=0}
{m=g(m'); output m}
M'←M'+P
} while (M'≦S)
CHK-2暗号では,中間平文の候補M'を(13)式により求め,欠損情報である
(m't+1,…,m'n)のn−tビットを順次推定しながら補填し,残りを復号する.この過程で必ず正当な平文を探し出すことができる.ただし,tは St <P < Vt+1を満たすものとする.表5に復号アルゴリズムを示す.
表5
欠損情報探索法での復号アルゴリズム
for (m't+1,…,m'n)=(0,…,0)to(1,…,1)
M=(M−Σm'iVi) (i=t+1〜n) modP
for i=t downto 1
{ if (M≧Vi) {mi'=1; M←M−Vi} else{mi'=0}}
if m'∈Code and M=0}
{m=g(m'); output m}}
復号法に中間平文探索復号法を用いる場合は,中間平文を探索し,超増加数列の性質を利用して復号を行う.これに対し,欠損情報探索法を用いる場合には,欠損した情報部分を順に仮定し欠損情報を補填するので,秘密鍵Vi の欠損情報部分である i > t は,超増加ベクトルにも,単なる増加ベクトルにも,する必要がない.ただし1≦i≦tについては,中間平文探索復号法でも欠損情報探索法でも,ベクトルVの成分を超増加数列とする.
平文mおよび拡大平文m'について説明する.平文をm=(m1,m2,…,mu)∈{0,1}とする.冗長記号ベクトルr =(r1,r2,…,rh)∈{0,1}は,公開の関数f(・)を用いて以下のように定義する.
r:f(m)中の誤り訂正記号もしくは誤り検査記号部分
さらに,mおよびrを連接した拡大平文ベクトルm'=f(m) ∈{0,1}を(15)式により定義する.
m'=[m|r]=(m1,m2,…,mu,r1,r2,…,rh) (15)
ただし,n=u+h とする.なお,f(・)には例えばCRC符号等の誤り検査符号や誤り訂正符号の,検査記号や誤り訂正記号を出力する関数を用いるとよい.この場合はm'は誤り検査符号や誤り訂正符号の符号語となっている.また復号時にはm'を求めて,前半のmと後半のrとに分割し,rが検査記号や誤り訂正記号であるかどうかを判別すると良い.なお,非組織符号からなる誤り訂正符号を用いる場合には,復号アルゴリズムに於いて,(1) 正当性の検証部分で符号語か否かを判断し,(2)次いで出力時に誤り訂正符号の復号を行う,という変更が必要である.
復号を高速化したCHK-3暗号,CHK-3'暗号を説明する.CHK-3暗号は欠損情報探索法を用いたもので,超増加ベクトルを用いる必要がない.CHK-3'暗号は中間平文探索法を用いたものである.平文および拡大平文及び秘密鍵はCHK-1暗号やCHK-2暗号と同様である.ただし公開情報f(・)を,fi(・),ui (i =1,2,..,d) と変更し,d個の符号語を用いる.CHK-3,CHK-3'暗号の利点は,1つの中間平文の候補M'を最後まで復号しなくても,途中まで復号した段階で不適切な候補を棄却できる点である.他の点ではCHK-1暗号やCHK-2暗号と同様である.ここでd個の符号語の連接m'=[m'1|…|m'd]を C=m'a で暗号化すると,欠損部分がm'dに由来する部分に集中するので,復号速度が低下する.例えばパリティ符号を用いると,探索したm'dの約半数がチェックを通過し,m'd-1〜m'1の部分で不正な平文が棄却される.このことを問題にする場合,m'dの部分の冗長記号ビット数を増し,誤り検出距離を他の部分よりも大きくしておくと良い.公開鍵aの置換では,置換は同じ符号語に由来する部分の範囲内には制限されないが,余りに広い範囲に渡るように置換すると,復号速度が低下する.従って置換には,同じ符号語に由来する部分の範囲内,あるいは隣接した符号語に由来する部分までの範囲内,などの制約を課すことが好ましい.
図1は暗号通信システムを示し,2は復号装置で,4は暗号化装置で,これらはインターネットなどの必ずしも安全でない通信路を介して通信する.復号装置2は図5のプログラム48を記憶し,情報処理装置で構成され,詳細な構造を図3,図4に示す.
暗号化装置4を図2に示すと,平文mを分配手段12によりd個に分割して,
m=[m1|m2|…|md]とし,符号化手段14−1〜14−dへ供給する.ただし,
mi ∈{0,1}ui(i=1,2,…,d)である.冗長記号ri∈{0,1}hi
(i = 1,2,…,d)を,公開の関数fi(・)を用いて(16)式により定義し,各miを符号化手段14−1〜14−dで符号化する.
ri =fi(mi) (16)
さらに,mi およびriを連接した拡大平文ベクトルm'∈{0,1}を(17)式により定義する.
m' =[m1|r1|m2|r2|…md|rd] (17)
ただし,h=Σhi i=1〜d とし,n=u+h とする.なお,fi(mi)−1 をmiのパリティを出力する関数としても構わない.拡大平文ベクトルm'を暗号化手段16により,(12)式により暗号化する.暗号化は添字d毎に符号語単位で別個に行っても良い.
復号はCHK-1暗号やCHK-2暗号と同様に行われる.唯一異なる点は,i = d,…,1 について,[mi|ri] のペアが得られる毎に,次式が成立するか否かの判断を行う点である.
ri = fi(mi) (18)
もし,復号の途中で一回でも満たされない場合には,その時点で不正な平文として棄却する.もちろん,真の平文はすべてのiに関して(18)式の検査を合格するため,正しく復号できる.CHK-1暗号やCHK-2暗号では,最後まで復号して平文の正当性を検査できたが,CHK-3暗号やCHK-3'暗号では不正な平文ならば,最後まで復号することなく,非常に高い確率で早期に棄却するため,全体として復号を高速化することが可能である.
図3に欠損情報探索法(CHK-3暗号)での復号装置2を示すと,中間平文発生手段22は(13)式により中間平文の候補を発生し,推定値発生手段24で表5のアルゴリズムに従い,欠損情報の推定値を順次発生させ,ナップザック復号手段26で各符号語単位で復号し,符号語が得られたかどうかを符号判定手段28で判定する.符号語が得られれば,その部分までは正しく復号できたものとして次の符号語の部分を復号し,得られなければ欠損情報の推定値を変更する.このループは,符号語が得られるまで繰り返す.
図4に中間平文探索法での復号装置32を示すと,中間平文変更手段34は表4のアルゴリズムで中間平文の候補を変更する.他の点では図3と同様である.
図5に,図3に対応した実施例の暗号通信装置プログラム42を示すと,暗号化プログラム44は符号化命令45と暗号化命令46とを備え,符号化命令45は平文を複数に分割して個々に符号化してこれらの連接(拡大平文ベクトル)を出力する.暗号化命令46は,拡大平文ベクトルを暗号化する.
復号プログラム48では,中間平文発生命令49で中間平文の候補を発生し,推定値発生命令50で欠損情報を推定する.ナップザック復号命令51は欠損情報を推定した中間平文の候補を復号し,この過程で符号語が得られたかどうかを符号判定命令52で判定し,符号語以外のものが得られると欠損情報の推定値を変更する.符号語が得られると復号を続行する.中間平文探索法の場合,推定値発生命令50に代えて,表4のアルゴリズムに対応する中間平文変更命令54を設けると良い.
各公開鍵aの大きさを法Pと同じと仮定すると,logCmax=logP+logn と見積もることができる.このとき,(7)式より,CHK暗号の密度は次式で表わされる.
ρ=n/(logP+ logn) (19)
従って,ρ>1 となるためには,
logP <n−log n (20)
が成立すればよい.一方,(10)式 より,
log − h<logP <log (21)
が成立する.また,n+logV1 <log より,
u+ logV1 <logP (22)
が成立する.ゆえに,Pは以下の条件を満たす.
u+ logV1 <logP <n− logn (23)
従って,低密度攻撃に対して安全な暗号であるためには,
logV1 <h− logn (24)
が成立すればよい.この条件は,例えば,n= 128,u= 112,h= 16,|Vi| = i+ 2,|P| = 121 とすると満足される.なおこの場合は復号時に10ビット程度の探索を行う必要がある.またベクトルVの内で超増加性を有する部分を特定できると,低密度攻撃などの攻撃が可能になる恐れがある.このようにベクトルaに置換σを施してから公開鍵aとすることには,暗号強度上の意味がある.超増加性を有する部分の推定を困難にするにはnCtを充分に大きくすれば良く,例えば前記の例ではこの値は248程度となる.暗号強度をさらに増すには,nやtの値をより大きく設定すると良い.
実施例の復号装置を用いた暗号通信システムのブロック図 図1の暗号化装置のブロック図 実施例の復号装置のブロック図 変形例の復号装置のブロック図 実施例の暗号通信装置プログラムのブロック図
符号の説明
2,32 復号装置
4 暗号化装置
12 分配手段
14 符号化手段
16 暗号化手段
22 中間平文発生手段
24 推定値発生手段
26 ナップザック復号手段
28 符号判定手段
34 中間平文変更手段
42 暗号通信装置プログラム
44 暗号化プログラム
45 符号化命令
46 暗号化命令
48 復号プログラム
49 中間平文発生命令
50 推定値発生命令
51 ナップザック復号命令
52 符号判定命令
54 中間平文変更命令

Claims (8)

  1. ナップザック暗号文Cを復号するための装置において,
    暗号文Cを,ベクトルVの全成分の和Sよりも小さな自然数Pを法とし,かつ秘密の数wを用いて,中間平文の候補M'へ復号するための中間平文算出手段と,
    中間平文の候補M'を変更しながらベクトルVを用いて復号し,復号過程で所定の集合Fに属する拡大平文m'が得られればナップザック暗号を復号したものとし,得られなければ中間平文の候補M'を変更するための復号手段と,
    得られた拡大平文m'を,語長が拡大平文m'よりも短い平文mに変換するための変換手段とを設けたことを特徴とする,復号装置.
  2. 前記所定の集合Fは符号語の集合Codeであることを特徴とする,請求項1の復号装置.
  3. 前記復号手段では,中間平文の候補M'を法Pずつ変更,もしくはベクトルVの各成分Vi単位で変更するようにしたことを特徴とする,請求項1または2の復号装置.
  4. 前記復号手段では,中間平文の候補M'をベクトルVの各成分Vi(i=t+1〜n)単位で変更し,かつこれ以外の成分Vi(i=1〜t)において,ベクトルVが超増加性を有することを特徴とする,請求項3の復号装置.
  5. 前記拡大平文m'が符号語の連接で,前記復号手段では,個々の符号語単位で復号して,符号語が得られると中間平文の候補M'の復号を続行し,符号語以外のものが得られると中間平文の候補M'を変更するようにしたことを特徴とする,請求項2の復号装置.
  6. ナップザック暗号文Cを復号するためのプログラムにおいて,
    暗号文Cを,ベクトルVの全成分の和Sよりも小さな自然数Pを法とし,かつ秘密の数wを用いて,中間平文の候補M'へ復号するための中間平文算出命令と,
    中間平文の候補M'を変更しながらベクトルVを用いて復号し,復号過程で所定の集合Fに属する拡大平文m'が得られればナップザック暗号を復号したものとし,得られなければ中間平文の候補M'を変更するための復号命令と,
    得られた拡大平文m'を,語長が拡大平文m'よりも短い平文mに変換するための変換命令とを設けたことを特徴とする,復号プログラム.
  7. 前記復号命令では,中間平文の候補M'を法Pずつ変更,もしくはベクトルVの各成分Vi単位で変更するようにしたことを特徴とする,請求項6の復号プログラム.
  8. 前記所定の集合Fは符号語を連接したものであり,かつ前記拡大平文 m'は符号語の連接で,前記復号命令では,個々の符号語単位で復号して,符号語が得られると中間平文の候補M'の復号を続行し,符号語以外のものが得られると中間平文の候補 M'を変更するようにしたことを特徴とする,請求項6の復号プログラム.
JP2005001314A 2005-01-06 2005-01-06 復号装置とそのプログラム Pending JP2006189607A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005001314A JP2006189607A (ja) 2005-01-06 2005-01-06 復号装置とそのプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005001314A JP2006189607A (ja) 2005-01-06 2005-01-06 復号装置とそのプログラム

Publications (1)

Publication Number Publication Date
JP2006189607A true JP2006189607A (ja) 2006-07-20

Family

ID=36796888

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005001314A Pending JP2006189607A (ja) 2005-01-06 2005-01-06 復号装置とそのプログラム

Country Status (1)

Country Link
JP (1) JP2006189607A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011521292A (ja) * 2008-05-20 2011-07-21 イルデト・コーポレート・ビー・ヴイ 暗号システム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011521292A (ja) * 2008-05-20 2011-07-21 イルデト・コーポレート・ビー・ヴイ 暗号システム
US8724802B2 (en) 2008-05-20 2014-05-13 Irdeto Corporate B.V. Cryptographic system

Similar Documents

Publication Publication Date Title
Overbeck et al. Code-based cryptography
Courtois et al. How to achieve a McEliece-based digital signature scheme
Nojima et al. Semantic security for the McEliece cryptosystem without random oracles
US8090098B2 (en) Method of generating message authentication code using stream cipher and authentication/encryption and authentication/decryption methods using stream cipher
Wang Quantum resistant random linear code based public key encryption scheme RLCE
US8239680B2 (en) Secret communication method and secret communication device thereof
KR100930577B1 (ko) 스트림 암호를 이용한 메시지 인증 코드 생성 방법과스트림 암호를 이용한 인증 암호화 방법 및 스트림 암호를이용한 인증 복호화 방법
Saarinen Ring-LWE ciphertext compression and error correction: Tools for lightweight post-quantum cryptography
Roy et al. A survey on post-quantum cryptography for constrained devices
US8913741B2 (en) Method for performing a cryptographic task in an electronic hardware component
EP2137856A1 (en) A simple and efficient one-pass authenticated encryyption scheme
KR100561847B1 (ko) 공개키를 이용한 데이터 암호화 및 복호화 방법
Hemenway et al. Non-committing encryption from Φ-hiding
Niederhagen et al. Practical post-quantum cryptography
Easttom An analysis of leading lattice-based asymmetric cryptographic primitives
Mihaljević et al. An approach for stream ciphers design based on joint computing over random and secret data
Wang Revised Quantum Resistant Public Key Encryption Scheme RLCE and IND-CCA2 Security for McEliece Schemes.
Cayrel et al. Recent progress in code-based cryptography
Véron Code based cryptography and steganography
Lee et al. Ciphertext-only attack on linear feedback shift register-based Esmaeili-Gulliver cryptosystem
US7321658B2 (en) Padding application method ensuring security of cryptosystem and encryptor/decryptor
Cayrel et al. Critical attacks in code-based cryptography
WO2021171543A1 (ja) 認証暗号化装置、認証復号装置、認証暗号化方法、認証復号方法および記録媒体
Díaz et al. Chor-rivest knapsack cryptosystem in a post-quantum world
JP2006189607A (ja) 復号装置とそのプログラム