Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP5062643B2 - 誤り訂正符号化装置、誤り訂正符号化方法及びプログラム - Google Patents
[go: Go Back, main page]

JP5062643B2 - 誤り訂正符号化装置、誤り訂正符号化方法及びプログラム - Google Patents

誤り訂正符号化装置、誤り訂正符号化方法及びプログラム Download PDF

Info

Publication number
JP5062643B2
JP5062643B2 JP2011107807A JP2011107807A JP5062643B2 JP 5062643 B2 JP5062643 B2 JP 5062643B2 JP 2011107807 A JP2011107807 A JP 2011107807A JP 2011107807 A JP2011107807 A JP 2011107807A JP 5062643 B2 JP5062643 B2 JP 5062643B2
Authority
JP
Japan
Prior art keywords
encoding
vector
length
output
error correction
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.)
Active
Application number
JP2011107807A
Other languages
English (en)
Other versions
JP2011172279A5 (ja
JP2011172279A (ja
Inventor
充 ▲浜▼田
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.)
TAMAGAWA ACADEMY & UNIVERSITY
Original Assignee
TAMAGAWA ACADEMY & 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 TAMAGAWA ACADEMY & UNIVERSITY filed Critical TAMAGAWA ACADEMY & UNIVERSITY
Priority to JP2011107807A priority Critical patent/JP5062643B2/ja
Publication of JP2011172279A publication Critical patent/JP2011172279A/ja
Publication of JP2011172279A5 publication Critical patent/JP2011172279A5/ja
Application granted granted Critical
Publication of JP5062643B2 publication Critical patent/JP5062643B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Error Detection And Correction (AREA)

Description

本発明は、誤り訂正符号化装置、誤り訂正符号化方法及びプログラムに関し、詳しくは、データ表現の冗長性に基づく誤り訂正符号化装置、誤り訂正符号化方法及びプログラムに関する。
今日、あらゆるデジタル通信の分野において、通信路で発生した誤りを訂正するための誤り訂正符号の技術が用いられている。ここで、「通信」とは、一般的に有線や無線などの通信媒体を介して行われる離隔点間の情報伝送のことをいうが、本明細書では、このような狭い意味に限定しない。たとえば、コンパクトディスクなどの記録媒体に情報を記録することも「通信」の概念に含める。情報を送るとは、離れた場所に情報を運ぶことであり、記録するとは、後日の読み出しを想定して離れた(後日の)時間へ情報を運ぶことであるからであり、両者とも情報を運ぶ点で同じ意味だからである。
符号理論で取り扱うのは、デジタル化された情報である。送りたいデータは、オーディオ信号やビデオ信号などをデジタル化したもの、あるいは計算機からのデジタルデータなどであろう。これらの情報の発生源や、それをデジタル化する部分などを含めて情報源という。デジタル化された情報(送りたいデータ)は、たとえば、PCM信号を考えれば分かるように、0,1の2種類の記号(数字)を使って、ビット列として表されていることが多い。このため、本明細書においても、送りたいデータはビット列、あるいは、より一般的にディジット列で表されているものとする。
図3は、通信系のモデルを示す図である。この図において、情報源からは、送りたいデータとして0,1のビット列(情報ビット列)が発生する。符号器(誤り訂正符号化装置)は、この情報ビット列を、mビットごとのブロックに区切って取り扱う。各ブロックを“送りたいデータ”と呼び、この送りたいデータをi=(i1,・・・・,im)で表す。
符号器は、送りたいデータiに対応したnビット(n>m)の符号語w=(x1,・・・・,xn)を出力する。すなわち、この符号器で、n−mビットの余分なビット(冗長ビット)を付加する。nを符号長、mを情報ビット数といい、この操作のことを「符号化」という。通信路に送り出された符号語を送信語wといい、通信路は、この送信語wが入力されるとnビットの受信語vを出力する。伝送・記録媒体の雑音などの影響がなければ、送信語=受信語であるが、通常は雑音などのために、送信語の各ビットの0,1がある確率で異なって受信される。これを誤りといい、この様子を、通信路において各ビットに誤りeが加わったとして、v=w+eで表す。ただし、j番目のビットの誤りをejとし、eはビット列e=(e1,・・・・,en)を表し、誤りパターンとも呼ばれる。復号器は、受信語vを元に、いずれの符号語が送信されたかを推定し、送信語wの推定値または送りたいデータiの推定値を出力する。
なお、実際の伝送路または記録媒体には、送信語wの各ビットxjに対応して、たとえば“0”の場合はパルスなし、“1”の場合はパルスあり、といった信号波形として送り出されるが、説明の便宜上、本明細書では具体的な波形に言及しない。
さて、このような符号長n、情報ビット数mの符号化のことを[n,m]符号化といい、2m通りある符号語の集合のことを[n,m]符号という(たとえば、特許文献1、特許文献2)。
より一般的に、ガロア体GF(q)上の[n,m]線形誤り訂正符号とは、GF(q)nのm次元線形部分空間のことである。GF(q)は元の数がqであるような有限体である。GF(q)nは、GF(q)の元をn個並べてできるべクトル(数ベクトル)の集合であるが、慣習に従い、GF(q)上の数ベクトルを横ベクトルで表すことにする。
線形符号を用いた従来の符号化では、次のようにデータを符号化する。まず、[n,m]線形誤り訂正符号(以下、線形符号Cという。)の基底を(g1,・・・・,gm)とする。符号化すべき長さmのストリングを、GF(q)上の数ベクトルとして、次式(13)で表す。なお、線形符号Cの具体例としては、標準的な符号理論の教科書(たとえば、“The Theory of Error−Correcting Codes”,F.J.MacWilliams and N.J.A.Sloane,NORTH−HOLLAND,ISBN:0−444−85193−3/0−444−85009−0/0−444−85010−4)に記載されているように、ハミング符号、BCH符号、ゴッパ符号など様々なものがある。
Figure 0005062643
以下では、このようなデータを(長さmの)ベクトル、あるいはGF(q)上の長さmのベクトルと呼ぶことにする。これを、次式(14)により、線形符号Cに属するベクトルf(x)に符号化する。もちろん、演算はGF(q)上で行う。たとえば、qが素数のときは、q個の数字“0,1,・・・・,q−1”とmodq計算法のもとで行う。
Figure 0005062643
i=(gi1,・・・・,gin)(i=1,・・・・,m)のとき、次式(15)は、線形符号Cの生成行列と呼ばれる。
Figure 0005062643
このような公知の符号化は、既述のとおり、[n,m]符号化であり、特に具体的に符号化を指定するためには、上記の符号化を生成行列Gにより指定される[n,m]符号化と呼ぶ。この[n,m]符号化では、n個のディジット(GF(q)の元)を使って、mディジット分の情報を送っている。線形符号C(つまり生成行列Gにより指定される[n,m]符号化)は、q=2のときが最もよく用いられる。このときGF(q)={0,1}となる。なお、q=2のとき「ディジット」は「ビット」と呼ばれる。なお、線形符号Cとその生成行列Gの具体例も、上記の標準的な符号理論の教科書に諸々記載されている。
特開2005−110251号公報 特許第3281938号公報
しかしながら、上述した公知の[n,m]符号は、誤り訂正の能力は充分であるものの、伝送途中の盗聴対策が不完全であり、セキュリティに欠けるという問題点がある。すなわち、通信路に入力された送信語wや通信路から出力された受信語vを第三者に盗聴されてしまった場合、元の送りたいデータiを容易に推定されてしまうという問題点がある。
そこで、本発明の目的は、セキュリティ対策を講じた誤り訂正符号化装置、誤り訂正符号化方法及びプログラムを提供することにある。
請求項1記載の発明は、送りたいデータを、ガロア体GF(q)上のM´×N´生成行列Fによって指定される[[N´,K´]]符号化により、長さN´のベクトル
Figure 0005062643
に符号化する第1符号化手段と、i=1,・・・・,Nに対して、
Figure 0005062643
を生成行列Giによって指定される[[ni,ki]]符号化により、長さniのベクトル
Figure 0005062643
に符号化する第2符号化手段と、w(1),・・・・,w(N)を連接して得られる[w(1)・・・・w(N)]を符号化結果として出力する出力手段とを備えたことを特徴とする誤り訂正符号化装置である。
請求項2記載の発明は、送りたいデータを、ガロア体GF(q)上のM´×N´生成行列Fによって指定される[[N´,K´]]符号化により、長さN´のベクトル
Figure 0005062643
に符号化する第1符号化工程と、i=1,・・・・,Nに対して、
Figure 0005062643
を生成行列Giによって指定される[[ni,ki]]符号化により、長さniのベクトル
Figure 0005062643
に符号化する第2符号化工程と、w(1),・・・・,w(N)を連接して得られる[w(1)・・・・w(N)]を符号化結果として出力する出力工程とを含むことを特徴とする誤り訂正符号化方法である。
請求項3記載の発明は、コンピュータに、送りたいデータを、ガロア体GF(q)上のM´×N´生成行列Fによって指定される[[N´,K´]]符号化により、長さN´のベクトル
Figure 0005062643
に符号化する第1符号化手段と、i=1,・・・・,Nに対して、
Figure 0005062643
を生成行列Giによって指定される[[ni,ki]]符号化により、長さniのベクトル
Figure 0005062643
に符号化する第2符号化手段と、w(1),・・・・,w(N)を連接して得られる[w(1)・・・・w(N)]を符号化結果として出力する出力手段とを実現させるためのプログラムである。
請求項4記載の発明は、前記出力手段から出力される符号化結果を、任意の暗号化方式を表す関数gでさらに暗号化して出力する第2の出力手段を備えたことを特徴とする請求項1記載の誤り訂正符号化装置である。
請求項5記載の発明は、前記出力工程から出力される符号化結果を、任意の暗号化方式を表す関数gでさらに暗号化して出力する第2の出力工程を含むことを特徴とする請求項2記載の誤り訂正符号化方法である。
請求項6記載の発明は、コンピュータに、送りたいデータを、ガロア体GF(q)上のM´×N´生成行列Fによって指定される[[N´,K´]]符号化により、長さN´のベクトル
Figure 0005062643
に符号化する第1符号化手段と、i=1,・・・・,Nに対して、
Figure 0005062643
を生成行列Giによって指定される[[ni,ki]]符号化により、長さniのベクトル
Figure 0005062643
に符号化する第2符号化手段と、w(1),・・・・,w(N)を連接して得られる[w(1)・・・・w(N)]を符号化結果として出力する出力手段と、前記出力手段から出力される符号化結果を、任意の暗号化方式を表す関数gでさらに暗号化して出力する第2の出力手段とを実現させるためのプログラムである。
説明の便宜上、[[n,k]]符号を[[4,1]]符号とし、送りたいデータを{0,1}とすると共に、たとえば、送りたいデータの“0”を{0000,1111}、送りたいデータの“1”を{0011,1100}と符号化するものとする。本発明では、データを送る際に、その{ }内のいずれか一つのパターンがランダムに選択されて送信される。たとえば、データ“0”のパターンは、“0000”と“1111”であるので、その一方をランダムに送信するなどである。このようにすれば、仮に伝送途中の第三者がそのパターンの一部を盗聴し得たとしても、元のデータを推定することはできない。これは、たとえば、“00”を盗聴できたとしても、この“00”は、データ“1”のパターンにも含まれているからである。
したがって、本発明によれば、セキュリティ対策を講じた誤り訂正符号化装置、誤り訂正符号化方法及びプログラムを提供することができる。
第1の実施形態([[n,k]]符号化)の概念ブロック図である。 第2の実施形態(二段階符号化)の概念的な処理フローを示す図である。 通信系のモデルを示す図である。
以下、本発明の実施形態を説明する。
まず、言葉の定義として、長さaのベクトルx=(x1,・・・・,xa)と長さbのベクトルy=(y1,・・・・,yb)を繋げてできる長さa+bのベクトル(x1,・・・・,xa,y1,・・・・,yb)を[xy]で表すことにする。このとき、xにyを連接して[xy]を得るという。3つ以上のベクトルについても“[”と“]”で括ったもので、同様に連接してできるベクトルを表す。たとえば、[xyz]は、xにyを連接し、それにさらにzを連接してできるベクトルを表す。
<第1の実施形態([[n,k]]符号化)>
図1は、第1の実施形態([[n,k]]符号化)の概念ブロック図である。このブロックは、冒頭で説明した通信系のモデル図(図3)における符号器として用いることができるものを模式的に表している。このブロックの具体的な構成については特に言及しない。たとえば、ハードロジックで構成されていてもよいし、あるいは、その全てまたはその主要な機能の一部がコンピュータで実行可能なソフトウェアで構成されていてもよい。いずれにせよ、以下に説明する機能を実現できる構成になっていればよい。
図示のブロック全体の名称は、たとえば、冒頭の通信モデルのように、符号器と呼称しても構わないが、ここでは、従来技術の[n,m]符号化と区別するために、二重の括弧を用いて[[n,k]]符号化部1と称することにし、さらに、この[[n,k]]符号化部1による符号化のことを、[[n,k]]符号化と称することにする。
[[n,k]]符号化部1は、少なくとも、u発生部2、x´生成部3及び[n,m]符号化部4を含む。u発生部2は、たとえば、物理的な乱数発生器または疑似乱数発生器であり、[n,m]符号化部4は、従来技術の[n,m]符号化に相当する操作を行うものである。
この第1の実施形態では、情報のセキュリティを確保するため、以下の新しい符号化を行う。この方式は、簡単にいえば、冒頭で説明した公知の[n,m]符号化を用いてkディジット分の情報を送るというものである。ただし、k≦mである。
今、送りたいデータxが、次式(28)のようなものであるとする。
Figure 0005062643
x´生成部3は、このデータxに、u発生部2でランダムに発生させたm−k個のディジットからなるベクトルu=(xk+1,・・・・,xm)を連接して、次式(29)のx´を得る。
Figure 0005062643
[n,m]符号化部4は、前記の生成行列Gによって指定される[n,m]符号化を用いて、x´生成部3で演算されたx´を、長さnのベクトルf(x´)に符号化する。
このように、この第1の実施形態では、送りたいデータxにランダムに発生させたm−k個のディジットからなるベクトルu=(xk+1,・・・・,xm)を連接してx´を生成し、そのx´を、[n,m]符号化を用いて長さnのベクトルf(x´)に符号化し、それを出力する。
この第1の実施形態における符号化は、前記のとおり、 [[n,k]]符号化であり、生成行列Gを変えることで異なる符号化が得られるため、特に符号化を具体的に指定するためには、これを、生成行列Gによって指定される[[n,k]]符号化と呼ぶ。この[[n,k]]符号化のイメージは、次式(30)のように示すことができる。
Figure 0005062643
式(30)の全体は、図1の[[n,k]]符号化部1に相当する。さらに、x→x´の部分はx´生成部3に相当し、x´→f(x´)の部分は[n,m]符号化部4に相当する。
ここで、前記の“発明の効果”の欄で挙げた例が、この第1の実施形態の[[n,k]]符号化で実現できることを説明する。線形符号Cの基底を(g1,・・・・,gm)とし、このうち(gk+1,・・・・,gm)の張る部分空間をBとするとともに、n=4、k=1、m=2とすれば、 1 、g 2 の一例は、次式(31)、(32)のように書き表すことができ、線形符号Cの一例は、次式(33)のように書き表すことができ、また、Bの一例は、次式(34)のように書き表すことができる。なお、これらは、GF(q)=GF(2)の場合の例である。
Figure 0005062643
Figure 0005062643
Figure 0005062643
Figure 0005062643
前記のとおり、g1、g2は、前式31)及び前式32)のように書き表すことができる。すると、次式(35)のように、u発生部2でx2=0,1がランダムに発生されるから、送りたいデータがx1=0であるか、x1=1であるかに応じて、[[n,k]]符号化器1の出力は、{0000,1111}か{1100,0011}になる。ただし、ここでは、ベクトル(1,1,1,1)を“1111”と書くなどした。
Figure 0005062643
このように、この第1の実施形態によれば、送りたいデータxにランダムに発生させたm−k個のディジットからなるベクトルu=(xk+1,・・・・,xm)を連接してx´を生成し、そのx´を、[n,m]符号化を用いて長さnのベクトルf(x´)に符号化することにより、kディジット分の情報を生成出力することができるので、以下の理由から、情報のセキュリティを確保することができる。
今、簡単化のために、[[n,k]]符号を[[4,1]]符号とし、送りたいデータを{0,1}とする。この場合、第1の実施形態では、たとえば、送りたいデータの“0”を{0000,1111}、送りたいデータの“1”を{0011,1100}と符号化し、データを送る際に、その{
}内のいずれか一つのパターンをランダムに選択して送信する。たとえば、データ“0”のパターンは、“0000”と“1111”であるので、その一方をランダムに送信する。仮に伝送途中の第三者がそのパターンの一部を盗聴し得たとしても、元のデータを推定することはできない。これは、たとえば、“00”を盗聴できたとしても、この“00”は、データ“1”のパターンにも含まれているからである。
したがって、この第1の実施形態の符号化手法([[n,k]]符号化)においては、伝送途中の第三者による盗聴を効果的に防止し、セキュリティ対策を講じることができるので、本発明の冒頭の課題を達成することができる。
<第2の実施形態(二段階符号化)>
以上説明した第1の実施形態の符号化手法([[n,k]]符号化)においては、セキュリティ対策を講じることができる点で有益である。一方で、理論的な解析により比較的符号長が長い方が復号誤り確率と安全性の点で有利であることは分かっているものの、符号長が長くなるにつれ、符号化や復号化の手続きの煩雑さが増していくことを否めず、この手続きの煩雑さが、実用化する上での障害となる可能性がある。上記のとおり、[[n,k]]符号化は、通信路上での盗聴を回避できるという従来技術にない格別有益なメリットを持つため、かかる障害要因(手続きの煩雑さ)の克服は、是非とも達成されなければならない技術課題である。以下に説明する第2の実施形態は、そのためのものである。簡潔に述べれば、この第2の実施形態は、分割統治の考え方(与えられた問題をいくつかの小さな問題に分割して解き、それをもとに統治をおこない、問題の解を得る手法のこと。分割統治法:Divide
and Conquerともいう。)を採用して、大きな符号長を持つ[[n,k]]符号化と同等の符号化の処理をいくつかの処理に分けて段階的に行うことにより、前記の障害要因を克服し、以て、産業上の利用に充分に耐え得る誤り訂正符号化の技術を提供するものである。
第2の実施形態について説明する。この第2の実施形態では、以下に詳述するように、一例として、2つの線形符号を使って符号化する方法を開示する。以下、この符号化のことを「二段階符号化」という。
この二段階符号化では、N>0,ni≧mi≧ki≧0(i=1,・・・・,N)を整数(実用的なのは、ni,mi,kiがiに依らない場合である。)とするとき、mi×ni生成行列Giにより指定される[[ni,ki]]符号化と、GF(q)上のM´×N´生成行列Fにより指定される[[N´,K´]]符号化とを組み合わせて符号化する。この二段階符号化はトータルとしてN″ディジットを使いK´ディジットの情報を送っているという意味で[[N″,K´]]符号化と同等の伝送効率を持つ。ただし、N´とN″は、次式(36)で与えられる。
Figure 0005062643
具体的な二段階符号化の方法は、以下のようになる。ここで、送信データの長さはK´である。
図2は、第2の実施形態(二段階符号化)の概念的な処理フローを示す図である。この処理フローは、冒頭で説明した通信系のモデル図(図3)における符号器として用いることができるものを模式的に表している。前記の第1の実施形態と同様に、この処理フローは、ハードロジックで構成されていてもよいし、あるいは、その全てまたはその主要な機能の一部がコンピュータで実行可能なソフトウェアで構成されていてもよい。いずれにせよ、以下に説明する機能を実現できる構成になっていればよい。
この処理フローにおいて、まず、ステップS1の[[N´,K´]]符号化で、GF(q)上のM´×N´生成行列Fによって指定される[[N´,K´]]符号化により、任意の送りたいデータを、長さN´のベクトルに符号化する。このベクトルは、N個のブロックに分割して、次式(37)のように書くことができる。
Figure 0005062643
次いで、ステップS2の[[ni,ki]]符号化で、i=1,・・・・,Nに対して、
Figure 0005062643
を生成行列Giによって指定される[[ni,ki]]符号化により、長さniのベクトル
Figure 0005062643
に符号化する。
そして、最後のステップS3で、w(1),・・・・,w(N)を連接して得られる[w(1)・・・・w(N)]を符号化結果として出力する。
ここで、ステップS1で用いる符号について、特に有用なのは、GF(q)上のM´×N´生成行列Fで指定される[[N´,K´]]符号化が、GF(q)の拡大体GF(qk)上の符号に由来する場合である。この場合、たとえば、GF(qk)上のリード・ソロモン符号を使用することができる。実用上、GF(qk)上の[N,K]リード・ソロモン符号は、GF(q)上の[kN,kK]符号として用いられている。たとえば、コンパクトディスクに用いられているリード・ソロモン符号などである(q=2)。
すなわち、ステップS1の[[N´,K´]]符号化では、従来の[n,m]符号化に相当する[N´,M´]符号化を用いることができるが、この部分では、GF(qk)上の[N,M]符号をGF(q)上の[kN,kM]符号として用いることができる。ただし、N´=kN,M´=kMとおく。
なお、これは、GF(qk)の元を、GF(q)上の長さkのベクトルとして表現して得られるものである。具体的には、以下のとおりである。今、GF(q)上の線形空間であるGF(qk)の基底をb=(βjk j=1とする。これを用いて、いかなる要素ζ∈GF(qk)も、次式(40)のように書くことが可能であるので、このように得られた数の行ベクトル(x1,・・・・,xk)を、φ(ζ)の記号で示すことにする。
Figure 0005062643
この変換「ζ→φ(ζ)=(x1,・・・・,xk)」を用いた対応「ξ=(ξ1,・・・・,ξN)←→[φ(ξ1)・・・・φ(ξN)]」により、GF(qk)上の長さNのベクトルξと、GF(q)上の長さkNのベクトル[φ(ξ1)・・・・φ(ξN)]とを同一視することができるようになる。
二段階符号化の具体例を説明する。ni,mi,kiがiに依らない場合、すなわち、n≧m≧k≧0を整数として、ni=n,mi=m,ki=k(i=1,・・・・,N)の場合の具体例を挙げる。上記のステップS1では、前述したような[kN,kM]符号化を用いる。たとえば、q=2で、k=4ならば、リード・ソロモン符号による[4・15,4M]符号化を用いることができる。ただし、0<M≦15である。この場合、上記のステップS1では、次式(41)が得られる。
Figure 0005062643
ステップS2では、同一の生成行列Gによって指定される[[n,k]]符号化を、y1 (i),・・・・,yk (i)に適用してもよい(i=1,・・・・,N)。たとえば、n=6のとき、次式(42)〜(46)として、第i行がgiであるような生成行列Gによって指定される[[6,4]]符号化を行う。このように、生成行列Gによって指定される[[6,4]]符号化の出力は、ハミング重みが偶数であるようなベクトルとなる。
Figure 0005062643
Figure 0005062643
Figure 0005062643
Figure 0005062643
Figure 0005062643
なお、上記において、拡大体GF(qk)上の符号について取り扱ったのは、このような符号を用いると効率の良い復号を行うことができるからである。しかし、これは、性能的に最良(ベストモード)の実施態様を例示しているに過ぎない。したがって、本発明は、この拡大体GF(qk)上の符号を使用するケースに限定されない。
以上のとおり、この第2の実施形態においては、分割統治の考え方を採用して、大きな符号長を持つ[[n,k]]符号化と同等の符号化の処理をいくつかの処理に分けて段階的に行うようにしたので、符号化や復号化の手続きを効率的に行うことができ、手続きの簡素化を図ることができる。したがって、先に説明した第1の実施形態の符号化手法([[n,k]]符号化)の利点(セキュリティ対策を講じることができる。)を活かしつつ、[[n,k]]符号化の長い符号長に伴う欠点(符号化や復号化の手続きの煩雑さ)を解決し、実用に耐え得る誤り訂正符号化の技術を提供することができる。
なお、この第2の実施形態は、二段階符号化に関するものであるが、二段階に限らず、三段階以上のものも包含する。これは、三段階以上の場合、二段階符号化を手続きの一部に含むからである。したがって、発明にとって必須な事項は、二段階符号化に関する部分(図2のステップS1、ステップS2)にあるということができる。
前記第1の実施形態は[[n,k]]符号化に関するものであり、また、前記第2の実施形態は二段階符号化に関するものである。これら二つの実施形態は、前式(30)で示したとおり、たとえば、従来の[n,m]符号化をブラックボックス化することによって極めて単純に構築することができる。これを補足すると、次式(47)のようになる。
Figure 0005062643
この式(47)より、前記二つの実施形態は、結局、「通信路または記憶デバイス」へ入力する前の部分だけの符号化法であるということができる。
ちなみに、本発明の本質ではないものの、「復号器」についても言及すれば、前記二つの実施形態に対応する復号器の中身は、概ね次式(48)のように書き表すことができる。
Figure 0005062643
ここで、x,uの推定値はそれぞれ、次式(49)で与えられる。
Figure 0005062643
以上のことから、二段階符号化もトータルとして見れば、次式(50)のような方式と同等と見なすことができるので、上式(4)の復号原理を適用することができる。
Figure 0005062643
ただし、効率の点では、二段階符号化に対応した二段階の復号化を適用することが望ましい。これは、公知の二段階符号化=連接符号の復号に類似する。
なお、前記第1の実施形態において、[n,m]符号化部4の[n,m]符号化は、“生成行列Gによって指定される”としてあるが、これは具体例として挙げたある特定の符号の生成行列Gに限定されない。[n,m]線形符号の生成行列であれば、ある特定の生成行列Gに限らず、全て使用することができる。このことは、第2の実施形態における二段階符号化でも同様である。
また、先に述べたとおり、前式(47)は、『前記二つの実施形態が、結局、「通信路または記憶デバイス」へ入力する前の部分だけの符号化法である』ことを意味しているが、これによって、本発明の利用形態を限定的に把握してはならない。つまり、前式(47)によれば、直接的には、[[n,k]]符号化したデータf(x´)を、そのまま通信路または記憶デバイスに入力する最も単純な利用形態のみをイメージさせるかも知れないが、それは、本発明の利用形態の一例を示しているに過ぎないものである。
たとえば、暗号強度をさらに高める狙いから、本方式を別の暗号化方式と併用することも充分に考えられる利用形態の一つである。この併用形態について説明すると、今、併用する暗号化方式を表す関数をgとする。そして、上記のf(x´)をさらにg(f(x´))に暗号化した後に、g(f(x´))を通信路または記憶デバイスに入力するようにすれば、f(x´)の暗号強度がさらにgで補強されるので、より実用上好ましい強力な暗号化方式とすることができる。ただし、現在普及している暗号方式では一般的にgは暗号鍵Kに依存し、記法としてはg=gKの形にすることが多いが、以上の説明では簡単化のために、併用する暗号化方式を表す関数を単にgとした。したがって、このgはg=gKの形も包含する。
1:[[n,k]]符号化器(誤り訂正符号化装置)
2:u発生部(発生手段、発生工程)
3:x´生成部(生成手段、生成工程)
4:[n,m]符号化部(出力手段、出力工程)
S1:ステップ(第1符号化手段、第1符号化工程)
S2:ステップ(第2符号化手段、第2符号化工程)
S3:ステップ(出力手段、出力工程)

Claims (6)

  1. m−k個のディジットからなるベクトルu=(x k+1 ,・・・・,x m )をランダムに発生する発生手段と、
    送りたいデータx=(x 1 ,・・・・,x k )に前記発生手段でランダムに発生したm−k個のディジットからなるベクトルu=(x k+1 ,・・・・,x m )を連接して、x′=[xu]=(x 1 ,・・・・,x m )を生成する生成手段と、
    前記生成手段で生成されたx′を[n,m]符号化して長さnのベクトルを出力する出力手段とを備える[[n,k]]符号化を行う誤り訂正符号化装置に関するものであり、
    所定の符号長N″を使い、K′ディジットからなるベクトルである長さK′の送りたいデータを送信する[[N″,K′]]符号化と同等の伝送効率を持つ処理を分割統治法によって複数の段階に分割して行う手段であって、
    長さK′の送りたいデータを、ガロア体GF(q)上のM′×N′生成行列Fによって指定され、前記[[n,k]]符号化において変数n、kにそれぞれN′、K′を代入して得られる[[N′,K′]]符号化により、長さN′のベクトル
    Figure 0005062643
    に符号化する第1符号化手段と、
    i=1,・・・・,Nに対して、前記第1符号化手段で得られた
    Figure 0005062643
    i ×n i 生成行列Giによって指定され、前記[[n,k]]符号化において変数n、kにそれぞれn i ,k i を代入して得られる[[ni,ki]]符号化により、長さniのベクトル
    Figure 0005062643
    に符号化する第2符号化手段と、
    前記第2符号化手段で得られたw(1),・・・・,w(N)を連接して得られる[w(1)・・・・w(N)]を符号化結果として出力する出力手段とを備え
    こで、変数N、ni、mi及びkiは、N>0,ni≧mi≧ki≧0(i=1,・・・・,N)を満足する整数であり、N′とN″は、次式(36)で表される
    Figure 0005062643
    ことを特徴とする誤り訂正符号化装置。
  2. m−k個のディジットからなるベクトルu=(x k+1 ,・・・・,x m )をランダムに発生する発生工程と、
    送りたいデータx=(x 1 ,・・・・,x k )に前記発生工程でランダムに発生したm−k個のディジットからなるベクトルu=(x k+1 ,・・・・,x m )を連接して、x′=[xu]=(x 1 ,・・・・,x m )を生成する生成工程と、
    前記生成工程で生成されたx′を[n,m]符号化して長さnのベクトルを出力する出力工程とを備える[[n,k]]符号化を行う誤り訂正符号化方法に関するものであり、
    所定の符号長N″を使い、K′ディジットからなるベクトルである長さK′の送りたいデータを送信する[[N″,K′]]符号化と同等の伝送効率を持つ処理を分割統治法によって複数の段階に分割して行う工程であって、
    長さK′の送りたいデータを、ガロア体GF(q)上のM′×N′生成行列Fによって指定され、前記[[n,k]]符号化において変数n、kにそれぞれN′、K′を代入して得られる[[N′,K′]]符号化により、長さN′のベクトル
    Figure 0005062643
    に符号化する第1符号化工程と、
    i=1,・・・・,Nに対して、前記第1符号化工程で得られた
    Figure 0005062643
    i ×n i 生成行列Giによって指定され、前記[[n,k]]符号化において変数n、kにそれぞれn i ,k i を代入して得られる[[ni,ki]]符号化により、長さniのベクトル
    Figure 0005062643
    に符号化する第2符号化工程と、
    前記第2符号化工程で得られたw(1),・・・・,w(N)を連接して得られる[w(1)・・・・w(N)]を符号化結果として出力する出力工程とを備え
    こで、変数N、ni、mi及びkiは、N>0,ni≧mi≧ki≧0(i=1,・・・・,N)を満足する整数であり、N′とN″は、次式(36)で表される
    Figure 0005062643
    ことを特徴とする誤り訂正符号化方法。
  3. m−k個のディジットからなるベクトルu=(x k+1 ,・・・・,x m )をランダムに発生する発生手段と、
    送りたいデータx=(x 1 ,・・・・,x k )に前記発生手段でランダムに発生したm−k個のディジットからなるベクトルu=(x k+1 ,・・・・,x m )を連接して、x′=[xu]=(x 1 ,・・・・,x m )を生成する生成手段と、
    前記生成手段で生成されたx′を[n,m]符号化して長さnのベクトルを出力する出力手段とを実現させる[[n,k]]符号化のための誤り訂正符号化プログラムに関するものであり、
    所定の符号長N″を使い、K′ディジットからなるベクトルである長さK′の送りたいデータを送信する[[N″,K′]]符号化と同等の伝送効率を持つ処理を分割統治法によって複数の段階に分割して行う手段であって、
    コンピュータに、
    長さK′の送りたいデータを、ガロア体GF(q)上のM′×N′生成行列Fによって指定され、前記[[n,k]]符号化において変数n、kにそれぞれN′、K′を代入して得られる[[N′,K′]]符号化により、長さN´のベクトル
    Figure 0005062643
    に符号化する第1符号化手段と、
    i=1,・・・・,Nに対して、前記第1符号化手段で得られた
    Figure 0005062643
    i ×n i 生成行列Giによって指定され、前記[[n,k]]符号化において変数n、kにそれぞれn i ,k i を代入して得られる[[ni,ki]]符号化により、長さniのベクトル
    Figure 0005062643
    に符号化する第2符号化手段と、
    前記第2符号化手段で得られたw(1),・・・・,w(N)を連接して得られる[w(1)・・・・w(N)]を符号化結果として出力する出力手段とを実現させ
    こで、変数N、ni、mi及びkiは、N>0,ni≧mi≧ki≧0(i=1,・・・・,N)を満足する整数であり、N′とN″は、次式(36)で表される
    Figure 0005062643
    ことを特徴とする誤り訂正符号化プログラム。
  4. 前記出力手段から出力される符号化結果を、任意の暗号化方式を表す関数gでさらに暗号化して出力する第2の出力手段を備えることを特徴とする請求項1記載の誤り訂正符号化装置。
  5. 前記出力工程から出力される符号化結果を、任意の暗号化方式を表す関数gでさらに暗号化して出力する第2の出力工程を備えることを特徴とする請求項2記載の誤り訂正符号化方法。
  6. 前記コンピュータに、前記出力手段から出力される符号化結果を、任意の暗号化方式を表す関数gでさらに暗号化して出力する第2の出力手段を実現させることを特徴とする請求項3記載の誤り訂正符号化プログラム。

JP2011107807A 2006-09-12 2011-05-13 誤り訂正符号化装置、誤り訂正符号化方法及びプログラム Active JP5062643B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011107807A JP5062643B2 (ja) 2006-09-12 2011-05-13 誤り訂正符号化装置、誤り訂正符号化方法及びプログラム

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2006247207 2006-09-12
JP2006247207 2006-09-12
JP2011107807A JP5062643B2 (ja) 2006-09-12 2011-05-13 誤り訂正符号化装置、誤り訂正符号化方法及びプログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2007190498A Division JP4756489B2 (ja) 2006-09-12 2007-07-23 誤り訂正符号化装置、誤り訂正符号化方法及びプログラム

Publications (3)

Publication Number Publication Date
JP2011172279A JP2011172279A (ja) 2011-09-01
JP2011172279A5 JP2011172279A5 (ja) 2011-10-13
JP5062643B2 true JP5062643B2 (ja) 2012-10-31

Family

ID=44685835

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011107807A Active JP5062643B2 (ja) 2006-09-12 2011-05-13 誤り訂正符号化装置、誤り訂正符号化方法及びプログラム

Country Status (1)

Country Link
JP (1) JP5062643B2 (ja)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1141211A (ja) * 1997-05-19 1999-02-12 Sanyo Electric Co Ltd ディジタル変調回路と変調方法、ディジタル復調回路と復調方法
JP2000269824A (ja) * 1999-01-12 2000-09-29 Matsushita Electric Ind Co Ltd データ符号化装置及びデータ復号化装置
JP2001005382A (ja) * 1999-06-18 2001-01-12 Murata Mach Ltd 暗号化方法
US6968493B1 (en) * 1999-09-14 2005-11-22 Maxtor Corporation Randomizer systems for producing multiple-symbol randomizing sequences
CA2352935A1 (en) * 2000-07-19 2002-01-19 Trw Inc. Method and apparatus for concatenated punctured encoding and decoding of a communications signal

Also Published As

Publication number Publication date
JP2011172279A (ja) 2011-09-01

Similar Documents

Publication Publication Date Title
JP5564434B2 (ja) 確率的対称暗号化のための方法およびエンティティ
CN1322697C (zh) 加密装置与加密方法
CN100431293C (zh) 对称-密钥加密的线性变换方法和系统
JP4756489B2 (ja) 誤り訂正符号化装置、誤り訂正符号化方法及びプログラム
CN108197484B (zh) 一种分布式存储环境下实现节点数据安全的方法
KR20110004474A (ko) 갈루아 폐체 암호 시스템
WO2007052477A1 (ja) メッセージ認証装置、メッセージ認証方法、メッセージ認証プログラムとその記録媒体
JP6588048B2 (ja) 情報処理装置
EP1287641B1 (en) A method of validating an encrypted message
Mukesh et al. Enhancing AES algorithm with arithmetic coding
JP5062643B2 (ja) 誤り訂正符号化装置、誤り訂正符号化方法及びプログラム
CN112634092A (zh) 一种基于区块链的合同认证方法、装置、电子设备
Davletova et al. Enhancing Cryptographic System Security based on Finite Fields
US11196447B2 (en) Computer-implemented method for error-correction-encoding and encrypting of a file
JP2011172279A5 (ja)
JP3238670B2 (ja) ハッシュ関数方式
JP2007019789A (ja) 乱数共有システムおよび方法
JP2008541540A (ja) 群環におけるゼロ因子および単位を使用することにより、誤り訂正符号および誤り検出符号を生成するための方法および装置
NL9202284A (nl) Bloksgewijze vercijfering op basis van algebraische coderingsmethoden.
JP2000112353A (ja) ハッシュ関数方式
JP2006133380A (ja) 復号装置と復号プログラム及び暗号通信システム
JP3220099B2 (ja) ハッシュ関数方式
RU2246179C1 (ru) Способ поточного кодирования дискретной информации
Patra et al. Data Reduction by Huffman Coding and Encryption by Insertion of Shuffled Cyclic Redundancy Code
Raju et al. A Comparative Study of Code-Based Asymmetric Encryption Frameworks for Post Quantum Communication

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110526

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110613

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110801

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120113

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120120

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120307

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20120308

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120518

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120706

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 5062643

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20150817

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250