JP2003345243A - Convolution encryption method, convolution encryption system, and convolution encryption program - Google Patents

Convolution encryption method, convolution encryption system, and convolution encryption program

Info

Publication number
JP2003345243A
JP2003345243A JP2002153896A JP2002153896A JP2003345243A JP 2003345243 A JP2003345243 A JP 2003345243A JP 2002153896 A JP2002153896 A JP 2002153896A JP 2002153896 A JP2002153896 A JP 2002153896A JP 2003345243 A JP2003345243 A JP 2003345243A
Authority
JP
Japan
Prior art keywords
file
code
partial
encryption
files
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.)
Withdrawn
Application number
JP2002153896A
Other languages
Japanese (ja)
Inventor
Masao Kira
正男 吉良
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.)
NTT ME Corp
Original Assignee
NTT ME 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 NTT ME Corp filed Critical NTT ME Corp
Priority to JP2002153896A priority Critical patent/JP2003345243A/en
Publication of JP2003345243A publication Critical patent/JP2003345243A/en
Withdrawn legal-status Critical Current

Links

Abstract

<P>PROBLEM TO BE SOLVED: To enhance cipher intensity while suppressing the amount of information processing relating to a file including not only an image file but a text file as well. <P>SOLUTION: A plurality of partial files are formed by dividing the file to be encrypted to the same length (step S1). Next, one among the other partial files exclusive of the one partial file is used as a cipher code for encrypting the one partial file and in this encryption, the exclusive-OR of the one partial file and the partial file used for the cipher code is calculated, by which the convolution encryption is performed (step S3). <P>COPYRIGHT: (C)2004,JPO

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、畳み込み暗号化方
法、畳み込み暗号化装置および畳み込み暗号化プログラ
ムに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a convolutional encryption method, a convolutional encryption device and a convolutional encryption program.

【0002】[0002]

【従来の技術】近年、インターネットにおける高速通信
技術、映像データ等の高圧縮技術の発展に伴い、映像、
楽曲及びコンピュータゲームソフトウェア等のコンテン
ツが通信回線を介して配信されるようになってきてい
る。そして、インターネット等の通信回線を介して配信
されるコンテンツの不正ダウンロード及び不正コピーな
どを防ぐために、一般にコンテンツファイルは暗号化さ
れて配信される。
2. Description of the Related Art In recent years, with the development of high-speed communication technology on the Internet and high compression technology for video data, video,
Content such as music and computer game software has come to be distributed via a communication line. Then, in order to prevent illegal downloading and illegal copying of content distributed via a communication line such as the Internet, the content file is generally encrypted and distributed.

【0003】[0003]

【発明が解決しようとする課題】ところで、映像などを
含むコンテンツは大容量ファイルとなるが、大容量ファ
イルを暗号化するうえで、従来の暗号化方式では下記の
2つの問題点がある。第1に、大容量ファイルについて
所望の暗号強度で暗号化するためには、大量の情報処理
が必要となるので高性能CPUを用いても長時間かか
り、CPUの過負荷を招きスムーズなコンテンツ配信サ
ービスを阻害してしまう。この問題点は、暗号化された
大容量ファイルを復号化するときに、さらに大きくな
る。第2に、スムーズなコンテンツ配信サービスを維持
しながら大容量ファイルを暗号化しようとすると、どう
しても暗号強度が弱くなってしまい、不正ダウンロード
又は不正コピーした者による解読が容易となってしま
う。また、上記2つの問題点は相関的関係(トレードオ
フ)であり、暗号強度を上げると暗号化・復号化に時間
がかかってしまい、暗号化・復号化を短時間で行おうと
すると暗号強度が下がってしまう。
By the way, although contents including video are large-capacity files, the conventional encryption system has the following two problems in encrypting large-capacity files. First, in order to encrypt a large-capacity file with a desired encryption strength, a large amount of information processing is required, so even if a high-performance CPU is used, it takes a long time and the CPU is overloaded, resulting in smooth content distribution. It hinders service. This problem is exacerbated when decrypting a large encrypted file. Secondly, if an attempt is made to encrypt a large-capacity file while maintaining a smooth content distribution service, the encryption strength will inevitably weaken, and it will be easy for a person who illegally downloaded or copied the information to decrypt it. In addition, the above two problems are a correlative relationship (trade-off), and if encryption strength is increased, it takes time for encryption / decryption, and if encryption / decryption is attempted in a short time, the encryption strength is Will fall.

【0004】上記2つの問題点を解決する方法として
は、コンテンツである画像ファイルを複数に分割して複
数の分割ファイルを作り、分割ファイル毎にノイズを加
えることで暗号化して暗号分割ファイルを作り、暗号分
割ファイルを不規則な順序で正当ユーザに送信し、また
暗号分割ファイルを結合するコードも正当ユーザに送信
し、正当ユーザ側で暗号分割ファイルを解読して結合す
ることで元の画像ファイルに復元するという分割部分暗
号化方式が考え出されている。
As a method of solving the above-mentioned two problems, an image file as a content is divided into a plurality of divided files to make a plurality of divided files, and noise is added to each divided file for encryption to make an encrypted divided file. , The encrypted image files are sent to the legitimate user in an irregular order, the code that joins the encrypted segment files is also sent to the legitimate user, and the legitimate user decrypts and joins the encrypted segment files to create the original image file. A split partial encryption method has been devised, which is to restore to.

【0005】しかしながら、上記分割部分暗号化方式で
は、配信されるコンテンツが画像ファイルであることを
前提とした暗号化方式であり、例えば、重要な個人情報
などを含むテキストファイルなどを部分的にも解読不可
能とするには暗号強度が不十分であるという問題点があ
る。
However, the divided partial encryption method is an encryption method on the assumption that the content to be distributed is an image file. For example, a text file containing important personal information or the like may be partially included. There is a problem that the encryption strength is insufficient to make it unreadable.

【0006】また、上記の問題点をテキストファイルな
ども含めて一般的に解決する方法としては、平文と同一
のデータ長を持つ暗号コードを使用して暗号化を行うバ
ーナム(Vernam)暗号が知られている。特に、バ
ーナム暗号において暗号化コードを1回しか使用しない
ワンタイムパッド(One-Time Pad)方式は解読不能な暗
号として知られている。
As a method for generally solving the above-mentioned problems including a text file and the like, there is known a Vernam cipher which performs encryption using an encryption code having the same data length as plain text. Has been. In particular, the one-time pad method, which uses the encryption code only once in the Vernam cipher, is known as an undecipherable cipher.

【0007】しかしながら、バーナム暗号方式では、暗
号コードが余りにも長大なため(暗号コードの情報量が
過大なため)、特殊な例外を除き実用に供されていない
という問題点がある。
However, the Vernam cryptosystem has a problem that the cryptographic code is too long (the information amount of the cryptographic code is too large) and is not put into practical use except a special exception.

【0008】本発明は、上述した事情に鑑みてなされた
もので、画像ファイルのみならずテキストファイルなど
を含むファイルについて、情報処理量を抑えながら暗号
強度を高めることを可能とする畳み込み暗号化方法、畳
み込み暗号化装置および畳み込み暗号化プログラムの提
供を目的とする。
The present invention has been made in view of the above-mentioned circumstances, and is a convolutional encryption method capable of increasing encryption strength while suppressing the amount of information processing for files including text files as well as image files. , A convolutional encryption device and a convolutional encryption program are provided.

【0009】[0009]

【課題を解決するための手段】上記した目的を達成する
ために、請求項1記載の発明では、被暗号化ファイルを
同一の長さに分割して複数の部分ファイルを形成し、一
の部分ファイルを暗号化する暗号コードとして、該一の
部分ファイルを除く他の部分ファイルのうちの一つを使
用し、前記暗号化において、前記一の部分ファイルと暗
号コードに用いた部分ファイルとの排他的論理和を算出
することを特徴とする。
In order to achieve the above object, in the invention according to claim 1, the encrypted file is divided into the same length to form a plurality of partial files, and one partial file is formed. As the encryption code for encrypting a file, one of the other partial files other than the one partial file is used, and in the encryption, the exclusion of the one partial file and the partial file used for the encryption code It is characterized by calculating logical OR.

【0010】また、請求項2記載の発明では、前記各部
分ファイルが前記暗号コードとして用いられる回数が最
大2回であることを特徴とする。
Further, the invention according to claim 2 is characterized in that each of the partial files is used as the encryption code a maximum of two times.

【0011】また、請求項3記載の発明では、前記暗号
化を行う前に、前記被暗号化ファイル及び前記部分ファ
イルのうちの少なくとも一方に置換暗号化処理を加える
ことを特徴とする。
Further, the invention according to claim 3 is characterized in that replacement encryption processing is added to at least one of the encrypted file and the partial file before performing the encryption.

【0012】また、請求項4記載の発明では、複数の前
記部分ファイルのうちの一つを暗号化する暗号コードと
して、前記部分ファイル及び前記被暗号化ファイルとは
無関係のファイルを使用することを特徴とする。
Further, in the invention as set forth in claim 4, a file unrelated to the partial file and the encrypted file is used as an encryption code for encrypting one of the plurality of partial files. Characterize.

【0013】また、請求項5記載の発明では、前記暗号
化がなされた部分ファイルを送信元から送信先へ送信す
る場合に、該部分ファイルを復号化する復号化コードを
該送信元から該送信先へ2回送信することを特徴とす
る。
Further, in the invention according to claim 5, when the encrypted partial file is transmitted from the transmission source to the transmission destination, a decryption code for decrypting the partial file is transmitted from the transmission source. It is characterized in that it is transmitted twice first.

【0014】また、請求項6記載の発明では、前記部分
ファイルを暗号化する前又は後の少なくとも一方の段階
において、該部分ファイルについてハッシュ関数で演算
して第1ハッシュコードを算出し、前記暗号化された部
分ファイルが送信元から送信先へ送信された後であっ
て、該部分ファイルを復号する前又は後の少なくとも一
方の段階において、該部分ファイルについてハッシュ関
数で演算して第2ハッシュコードを算出し、前記第1ハ
ッシュコードと前記第2ハッシュコードとを比較する処
理を有することを特徴とする。
Further, in the invention according to claim 6, in at least one stage before or after encrypting the partial file, the partial file is operated by a hash function to calculate a first hash code, and the encryption is performed. After the encrypted partial file is transmitted from the transmission source to the transmission destination and before or after decrypting the partial file, the second hash code is calculated by a hash function for the partial file. Is calculated and the first hash code and the second hash code are compared with each other.

【0015】また、上記した目的を達成するために、請
求項7記載の発明では、被暗号化ファイルを同一の長さ
に分割して複数の部分ファイルを作成するブロック化手
段と、前記部分ファイルと該部分ファイルを除く前記部
分ファイルとの排他的論理和を算出する畳み込みバーナ
ム暗号化手段と、を有することを特徴とする。
In order to achieve the above-mentioned object, in the invention according to claim 7, a block forming means for dividing the encrypted file into the same length to create a plurality of partial files, and the partial file. And convolutional Vernam-encryption means for calculating the exclusive OR of the partial files excluding the partial file.

【0016】また、上記した目的を達成するために、請
求項8記載の発明では、被暗号化ファイルを同一の長さ
に分割して複数の部分ファイルを作成するステップと、
前記部分ファイルと該部分ファイルを除く前記部分ファ
イルとの排他的論理和を算出するステップと、をコンピ
ュータに実行させることを特徴とする。
In order to achieve the above-mentioned object, in the invention described in claim 8, the step of dividing the encrypted file into the same length to create a plurality of partial files,
A step of calculating an exclusive logical sum of the partial file and the partial files excluding the partial file.

【0017】[0017]

【発明の実施の形態】以下、図面を用いて本発明の実施
の形態を説明する。 (第1実施形態)図1は本発明の第1実施形態に係る畳
み込み暗号化方法の概要を示すフローチャートである。
本実施形態は、ソースファイル(被暗号化ファイル)を
同一の長さの複数の部分ファイルに分割し、その部分フ
ァイルを他の部分ファイルの暗号コードとして用いて、
部分ファイル相互で暗号化(バーナム暗号化)するもの
である。そして、本実施形態は、各部分ファイルを部分
ファイルで暗号化する順序を示す図が靴紐が結ばれてい
る状態に似ていることから「靴紐(Shoe String)」方
式と呼ぶ。以下で、本実施形態について具体的に説明す
る。
BEST MODE FOR CARRYING OUT THE INVENTION Embodiments of the present invention will be described below with reference to the drawings. (First Embodiment) FIG. 1 is a flow chart showing the outline of a convolutional encryption method according to the first embodiment of the present invention.
In this embodiment, a source file (file to be encrypted) is divided into a plurality of partial files having the same length, and the partial file is used as an encryption code of another partial file.
Partial files are mutually encrypted (Vernam encryption). Further, in the present embodiment, the diagram showing the order of encrypting each partial file with the partial file is similar to a state in which shoelaces are tied, and is therefore called a "shoe string" method. The present embodiment will be specifically described below.

【0018】<ブロック化>バーナム暗号化をする前の
準備作業としてデータの正規化を行う。このデータの正
規化は、図1におけるステップS1、S2に該当する。
データの正規化としては、先ず、ソースファイルを同一
の長さを持つ2M(Mは1以上の整数)個の部分ファイ
ル(部分ファイル)に分割することでブロック化する。
そして、各部分ファイルについて、16バイト乃至24
バイトの任意長のハッシュコードを作成し、「部分ファ
イル・ハッシュコード」とする(ステップS1)。
<Blocking> Data is normalized as a preparatory work before the Vernam encryption. The normalization of this data corresponds to steps S1 and S2 in FIG.
To normalize the data, first, the source file is divided into 2M (M is an integer of 1 or more) partial files (partial files) having the same length to form blocks.
16 bytes to 24 bytes for each partial file
A hash code having an arbitrary length of bytes is created and set as a "partial file hash code" (step S1).

【0019】ハッシュコードは、部分ファイルが示す値
について所定のハッシュ関数で演算し、その演算値をハ
ッシュコードとしたものである。ハッシュ関数は、与え
られた原文(ここでは部分ファイル)から固定長の疑似
乱数(ハッシュコード)を生成する関数である。ハッシ
ュ関数は不可逆な一方向関数を含むため、ハッシュコー
ドから部分ファイルを再現することはできない。
The hash code is a hash code obtained by calculating a value indicated by the partial file with a predetermined hash function. The hash function is a function that generates a fixed-length pseudo random number (hash code) from a given original text (here, a partial file). Since the hash function contains an irreversible one-way function, the partial file cannot be reproduced from the hash code.

【0020】<各ブロックの正規化>次いで、各部分フ
ァイルについて、置換暗号化(スクランブル)し「置換
部分ファイル」とすることで正規化する(ステップS
2)。なお、置換暗号化とは、被暗号化ファイル(部分
ファイル)をなす数字又は英字などからなる記号列につ
いて、所定の規則で各記号を他の記号に置き換える暗号
方式である。この暗号方式では、記号を置き換える規則
が暗号キー(置換コード)となる。また、置換コード
は、各部分ファイル毎に異なるコードとする。異なるコ
ードとは、コード長又はコード表が異なるものである。
<Normalization of Each Block> Next, each partial file is normalized by performing replacement encryption (scramble) to obtain a "replacement partial file" (step S).
2). The replacement encryption is an encryption method that replaces each symbol with another symbol according to a predetermined rule with respect to a symbol string made up of numbers or letters forming an encrypted file (partial file). In this encryption method, the rule for replacing symbols is an encryption key (replacement code). Also, the replacement code is different for each partial file. Different codes are those having different code lengths or code tables.

【0021】ステップS2では、次の処理も行う。即
ち、ステップS2においては、置換部分ファイルについ
てハッシュコードを作成し、「スクランブル・部分ファ
イル・ハッシュコード」とする。さらに、ステップS2
においては、置換部分ファイルについて再度複数の部分
ファイル(フラグメントファイル)に分割する。そし
て、フラグメントファイルを置換結合表により再結合し
2N(Nは1以上の整数)個の「コードファイル」を作
成する。これらのフラグメントファイル及びコードファ
イルの作成は、ソースファイルが持つデータの順序性を
完全に除去するための処理である。次いで、各コードフ
ァイルについてハッシュコードを作成し、「コードファ
イル・ハッシュコード」とする。
In step S2, the following processing is also performed. That is, in step S2, a hash code is created for the replacement partial file, and is set as "scramble / partial file hash code". Further, step S2
In, the replacement partial file is divided again into a plurality of partial files (fragment files). Then, the fragment files are recombined by the substitution combination table to create 2N (N is an integer of 1 or more) “code files”. Creation of these fragment files and code files is a process for completely removing the order of the data that the source files have. Next, a hash code is created for each code file, and is set as a “code file hash code”.

【0022】<畳み込みバーナム暗号化>次いで、畳み
込みバーナム暗号化処理を行う(ステップS3)。この
畳み込みバーナム暗号化処理について、図2乃至図7を
参照して具体的に説明する。図2は、畳み込みバーナム
暗号化処理の一例を示す概念図である。
<Convolutional Vernam Encryption> Next, convolutional Vernam encryption processing is performed (step S3). This convolutional Vernam encryption process will be specifically described with reference to FIGS. 2 to 7. FIG. 2 is a conceptual diagram showing an example of the convolutional Vernam encryption process.

【0023】畳み込みバーナム暗号化処理は、ソースフ
ァイル(被暗号化ファイル)を同一の長さに分割して複
数の部分ファイルを形成し、各部分ファイルを暗号化す
る暗号コードとして該部分ファイル以外の部分ファイル
を使用するものである。本実施形態では、部分ファイル
として上記ステップS2の処理で作成されたコードファ
イルP1〜P2Mを用いる。
In the convolutional Vernam encryption process, the source file (file to be encrypted) is divided into the same length to form a plurality of partial files, and the partial files other than the partial file are used as encryption codes for encrypting each partial file. It uses partial files. In this embodiment, the code files P 1 to P 2M created in the process of step S2 are used as the partial files.

【0024】図2を参照してコードファイルP1〜Pn
畳み込みバーナム暗号化するときの手順について説明す
る。図2において、コードファイルP1をバーナム暗号
化するときの暗号コードとしてコードファイルP2を使
用し、コードファイルP2をバーナム暗号化するときの
暗号コードとしてコードファイルP3を使用し、コード
ファイルP3をバーナム暗号化するときの暗号コードと
してコードファイルP4を使用し、このような暗号化を
順次繰り返し、コードファイルPn-1をバーナム暗号化
するときの暗号コードとしてコードファイルPnを使用
し、コードファイルPnをバーナム暗号化するときの暗
号コードとしてコードファイルP1を使用する。
The procedure for convolutional Vernam encryption of the code files P 1 to P n will be described with reference to FIG. In FIG. 2, the code file P 2 is used as the encryption code when the code file P 1 is Vernam-encrypted, and the code file P 3 is used as the encryption code when the code file P 2 is Vernam-encrypted. using the code file P 4 to P 3 as the cipher code when Vernam encryption, sequentially repeating such encryption, a code file P n code file P n-1 as the cipher code when Vernam encryption The code file P 1 is used as an encryption code for the Vernam encryption of the code file P n .

【0025】そして、畳み込みバーナム暗号化された結
果を暗号化ファイルQとすると、暗号化ファイルQの作
成は下記数式で示すことができる。 Qi=Pi◎Pi+1n=Pn◎P1 ここで、記号◎は排他的論理和を示しており、iは1か
らnまでの整数である。なお、排他的論理和の真理値表
は図5に示すとおりである。
When the result of the convolutional Vernam encryption is the encrypted file Q, the creation of the encrypted file Q can be expressed by the following mathematical formula. Q i = P i ◎ P i + 1 Q n = P n ◎ P 1 Here, the symbol ⊚ indicates an exclusive OR, and i is an integer from 1 to n. The truth table of the exclusive OR is as shown in FIG.

【0026】畳み込みバーナム暗号の形成において、暗
号化ファイルの集合をQ、暗号コードの集合をPとした
とき、集合Qの要素による有回演算 Q1◎Q2◎…QX が集合Qの要素による有回演算 Qα◎Qβ◎…Qω に帰着する場合、集合Qの要素によるどのような有回演
算も集合Qの解凍(解読)に寄与することができず、こ
の状態を数学的に閉じていると表現することができる。
In the formation of the convolutional Vernam cipher, when the set of encrypted files is Q and the set of encryption codes is P, the repetitive operations Q 1 ◎ Q 2 ◎ ... Q X are the elements of the set Q. In the case of reducing the repeated operation Q α ◎ Q β ◎ ... Q ω by any of the repeated operations by the elements of the set Q to the decompression (decoding) of the set Q, this state is mathematically determined. Can be said to be closed.

【0027】このような体系を実現する演算手順は無限
に存在しうるが、その中でもっとも簡素なものが一筆書
のアルゴリズムであり、そのアルゴリズムの代表的なも
のが図2に示す「円環」アルゴリズムと図3及び図4に
示す「靴紐」アルゴリズムである。このような暗号コー
ドの使用アルゴリズム(円環アルゴリズム、靴紐アルゴ
リズム)を畳み込みバーナム暗号化における「靴紐方
式」と呼ぶ。
There are infinite number of arithmetic procedures for realizing such a system, but the simplest one is the one-stroke algorithm, and a typical one is the "ring" shown in FIG. And the “shoelace” algorithm shown in FIGS. 3 and 4. The algorithm for using such an encryption code (circular ring algorithm, shoelace algorithm) is called “shoelace method” in convolutional Vernam encryption.

【0028】次に、コードファイルP1〜P2nを靴紐方
式で畳み込みバーナム暗号化するときの手順について図
3及び図4を参照して説明する。図3及び図4は靴紐方
式における靴紐アルゴリズムを示す概念図である。図3
と図4の相違点は、コードファイルを暗号化するときに
用いられる他のコードファイルの選択方式が異なってい
る点のみである。
Next, the procedure for convoluting the code files P 1 -P 2n with the shoelace method for convolutional Vernam encryption will be described with reference to FIGS. 3 and 4. 3 and 4 are conceptual diagrams showing a shoelace algorithm in the shoelace system. Figure 3
4 is different only in the selection method of other code files used when the code file is encrypted.

【0029】先ず、コードファイルP1〜Pnをコードフ
ァイルPn+1〜P2nを用いてバーナム暗号化して暗号化
ファイルQiを作成する。これを数式で表すと、例えば
下記のようになる。 Qi=Pi◎Pn+i 次いで、コードファイルPn+1〜P2nをコードファイル
n〜P1を用いてバーナム暗号化して暗号化ファイルQ
n+iを作成する。これを数式で表すと、例えば下記のよ
うになる。 Qn+i=Pn+i◎Pn-i+1
First, the code files P 1 to P n are Vernam-encrypted using the code files P n + 1 to P 2n to create an encrypted file Q i . If this is expressed by a mathematical expression, for example, it will be as follows. Q i = P i ◎ P n + i Then, the code files P n + 1 to P 2n are Vernam-encrypted using the code files P n to P 1 and encrypted file Q
Create n + i . If this is expressed by a mathematical expression, for example, it will be as follows. Q n + i = P n + i ◎ P n-i + 1

【0030】次に、靴紐方式で畳み込みバーナム暗号化
する手順の具体例について図6を参照して説明する。本
具体例では、コードファイルP1〜P4を畳み込みバーナ
ム暗号化する場合について説明する。図6(a)はコー
ドファイルP1〜P4を暗号化するときに用いられる他の
コードファイルP1〜P4の選択方式を示す概念図であ
り、図6(b)はコードファイルP1〜P4を暗号化した
結果である暗号化ファイルQ1〜Q4を示す概念図であ
る。
Next, a concrete example of the procedure of convolutive Burnham encryption using the shoelace method will be described with reference to FIG. In this specific example, a case will be described where the code files P 1 to P 4 are subjected to convolutional Vernam encryption. 6 (a) is a conceptual diagram showing another selection method code files P 1 to P 4 to be used to encrypt the code file P 1 to P 4, FIG. 6 (b) code file P 1 5 is a conceptual diagram showing encrypted files Q 1 to Q 4 that are the results of encrypting P 4 to P 4 .

【0031】暗号化ファイルQ1は、コードファイルP1
(1010)とコードファイルP2(1110)の排他
的論理和で求められるので、Q1(0100)となる。
暗号化ファイルQ2は、コードファイルP2(1110)
とコードファイルP3(1011)の排他的論理和で求
められるので、Q2(0101)となる。暗号化ファイ
ルQ3は、コードファイルP3(1011)とコードファ
イルP4(0001)の排他的論理和で求められるの
で、Q3(1010)となる。暗号化ファイルQ4は、コ
ードファイルP4(0001)とコードファイルP1(1
010)の排他的論理和で求められるので、Q4(10
11)となる。
The encrypted file Q 1 is the code file P 1
Since it is obtained by the exclusive OR of (1010) and the code file P 2 (1110), it becomes Q 1 (0100).
The encrypted file Q 2 is the code file P 2 (1110)
And the code file P 3 (1011) are obtained by exclusive OR, so that Q 2 (0101) is obtained. Since the encrypted file Q 3 is obtained by the exclusive OR of the code file P 3 (1011) and the code file P 4 (0001), it becomes Q 3 (1010). The encrypted file Q 4 is the code file P 4 (0001) and the code file P 1 (1
010) is obtained by exclusive OR, so Q 4 (10
11).

【0032】<コードの送付>上記のステップS1から
S3でソースファイルが暗号化されると、その暗号化さ
れた情報(暗号化ファイルQ1〜Q2n)と、復号化コー
ド及びチェック用ハッシュコードなどの復号情報とがネ
ットワークなどを介して送信先に送信される(ステップ
S4)。ステップS1からS3の暗号化を行う送信元
は、例えば、画像や音声などからなるコンテンツをイン
ターネットを介してユーザに配信する者、又は銀行の預
金情報など個人情報を通信する者などが該当する。
<Sending of Code> When the source file is encrypted in steps S1 to S3, the encrypted information (encrypted files Q 1 to Q 2n ), the decryption code and the hash code for checking are encoded. The decryption information such as is transmitted to the destination via the network or the like (step S4). The transmission source that performs the encryption in steps S1 to S3 corresponds to, for example, a person who delivers contents such as images and sounds to the user via the Internet, or a person who communicates personal information such as bank deposit information.

【0033】ステップS4で送信される復号情報には、
以下のものが挙げられる。 1) ステップS2で作成されたコードファイルP1
2Mのうちの任意のコードファイルPk(1つの復号情
報の送信毎に、同一のコードファイルPkが2回送られ
る) 2) 各暗号化ファイルQ1〜Q2nの番号K 3) ステップS2で作成されたコードファイル・ハッ
シュコード 4) ステップS2で行われたフラグメントファイルか
らコードファイルへの変換に用いられた置換結合表 5) ステップS2で作成されたスクランブル・部分フ
ァイル・ハッシュコード 6) ステップS2での置換暗号化に用いられた置換コ
ード群 7) ステップS1で作成された部分ファイル・ハッシ
ュコード
The decryption information transmitted in step S4 includes
The following are listed. 1) Code file P 1 -created in step S2
Arbitrary code file P k of P 2M (the same code file P k is sent twice for each transmission of one piece of decryption information) 2) Each encrypted file Q 1 to Q 2n number K 3) Step S2 Code file / hash code 4) created in step S2) Substitution combination table used in conversion from fragment file to code file in step S2 5) Scramble / partial file / hash code 6) step created in step S2 Replacement code group 7 used for replacement encryption in S2) Partial file hash code created in step S1

【0034】上記復号情報を受信した送信先(ユーザ)
は、下記のステップS5〜ステップS7に示す復号化を
行う。
Destination (user) who received the decryption information
Performs the decoding shown in steps S5 to S7 below.

【0035】<畳み込みバーナム暗号の復号化>復号化
としては、先ず、畳み込みバーナム暗号で暗号化された
暗号化ファイルQ1〜Q2nの復号化を行う(ステップS
5)。この復号化を行う前処理として、送信先は解読コ
ードである暗号化ファイルP kの正当性について確認す
る。すなわち、2回送信されてきた暗号化ファイルPk
(暗号化ファイルPk1、暗号化ファイルPk2)同士につ
いて排他的論理和演算を行い、演算結果が「オールゼ
ロ」であることを確認する。なお、演算結果が「オール
ゼロ」でない場合は、暗号化ファイルQk1と暗号化ファ
イルQk2が異なり、解読コードが正当でないことが検出
される。
<Decryption of Convolutional Vernam Cryptography> Decryption
First, it was encrypted with the convolutional Vernam cipher
Encrypted file Q1~ Q2nIs decrypted (step S
5). As a pre-process for this decryption, the destination is the decryption code.
Encrypted file P kCheck the legitimacy of
It That is, the encrypted file P transmitted twicek
(Encrypted file Pk1, Encrypted file Pk2) To each other
The exclusive OR operation and the operation result is
B). The calculation result is "all
If not "zero", encrypted file Qk1And encryption file
Il Qk2Detected that the decoding code is not correct
To be done.

【0036】次いで、畳み込みバーナム暗号化された暗
号化ファイルQ1〜Q2nを復号化するために逆バーナム
演算を行う。逆バーナム演算は、上記ステップS3で行
われたコードファイルP1〜P2n同士の排他的論理和演
算の逆演算である。この逆バーナム演算の具体的手順に
ついて図7を参照して説明する。図7は、暗号化ファイ
ルQ1〜Q4の復号化手順を示す概念図である。なお、図
7に示す具体的に数値は、図6に示す畳み込みバーナム
暗号化の具体例における数値と同一のものを用いてい
る。
Next, an inverse Vernam operation is performed in order to decrypt the encrypted files Q 1 to Q 2n subjected to the convolutional Vernam encryption. The inverse Burnham operation is an inverse operation of the exclusive OR operation between the code files P 1 to P 2n performed in step S3. A specific procedure of this inverse Vernam calculation will be described with reference to FIG. FIG. 7 is a conceptual diagram showing a decryption procedure of the encrypted files Q 1 to Q 4 . The specific numerical values shown in FIG. 7 are the same as the numerical values in the specific example of the convolutional Vernam encryption shown in FIG.

【0037】先ず、図7(a)に示すように、送信先が
受信したコードファイルPkであるコードファイルP
4(0001)と暗号化ファイルQ4(1011)との排
他的論理和をとる。この演算結果は、図7(b)に示す
ように、コードファイルP1(1010)となる。次い
で、図7(b)に示すように、復号化したコードファイ
ルP1(1010)と暗号化ファイルQ4(1011)と
の排他的論理和をとる。この演算結果はコードファイル
4(0001)となる。次いで、図7(c)に示すよ
うに、復号化したコードファイルP4(0001)と暗
号化ファイルQ3(1010)との排他的論理和をと
る。この演算結果はコードファイルP3(1011)と
なる。次いで、図7(d)に示すように、復号化したコ
ードファイルP3(1011)と暗号化ファイルQ2(0
101)との排他的論理和をとる。この演算結果はコー
ドファイルP2(1110)となる。これらにより、暗
号化ファイルQ1〜Q4が復号化されてコードファイルP
1〜P4に復元される。
First, as shown in FIG. 7A, the code file P which is the code file P k received by the transmission destination.
The exclusive OR of 4 (0001) and the encrypted file Q 4 (1011) is calculated. The result of this calculation is a code file P 1 (1010) as shown in FIG. Next, as shown in FIG. 7B, the exclusive OR of the decrypted code file P 1 (1010) and the encrypted file Q 4 (1011) is calculated. The result of this operation is the code file P 4 (0001). Then, as shown in FIG. 7C, the exclusive OR of the decrypted code file P 4 (0001) and the encrypted file Q 3 (1010) is obtained. The result of this calculation is the code file P 3 (1011). Then, as shown in FIG. 7D, the decrypted code file P 3 (1011) and the encrypted file Q 2 (0
101) and the exclusive OR. The result of this calculation is the code file P 2 (1110). By these, the encrypted files Q 1 to Q 4 are decrypted and the code file P
1 to P 4 are restored.

【0038】次いで、上記逆バーナム演算によって復元
された各コードファイルP1〜P2Nについて、ステップ
S1における「部分ファイル・ハッシュコード」の作成
で用いられたハッシュ関数と同じ関数でハッシュコード
を作成し、「部分ファイル・ハッシュコード」とする。
そして、ステップS1で作成された部分ファイル・ハッ
シュコードと、本ステップS5で作成された部分ファイ
ル・ハッシュコードとを突合することにより、復元され
たコードファイルP1〜P2Mの正当性を確認する。これ
により、畳み込みバーナム暗号の復号化処理(ステップ
S5)が終了する。
Next, for each of the code files P 1 to P 2N restored by the inverse Vernam calculation, a hash code is created by the same function as the hash function used in creating the "partial file hash code" in step S1. , "Partial file hash code".
Then, a partial file hash code generated in step S1, by that Tsukiawasu a partial file hash code created in this step S5, and confirms the validity of the restored code file P 1 to P 2M . This completes the convolutional Vernam-cipher decryption process (step S5).

【0039】<置換暗号の復号化>次いで、ステップS
2で行われた置換暗号化(スクランブル)についての復
号化を行う(ステップS6)。具体的には、先ず、ステ
ップS5で復号化された各コードファイルP1〜P2N
ついて、復号情報の一つとして送信先が受信した置換結
合表を用いて置換部分ファイルに復元する。
<Decryption of Replacement Cipher> Next, step S
The replacement encryption (scramble) performed in 2 is decrypted (step S6). Specifically, first, for each code file P 1 to P 2N decrypted in step S5, to restore the replaced partial file using displacement binding table a destination is received as one of the decoded information.

【0040】次いで、復元された各置換部分ファイルに
ついて、ステップS2における「スクランブル・部分フ
ァイル・ハッシュコード」の作成で用いられたハッシュ
関数と同じ関数でハッシュコードを作成し、「スクラン
ブル・部分ファイル・ハッシュコード」とする。そし
て、ステップS2で作成されたスクランブル・部分ファ
イル・ハッシュコードと、本ステップ6で作成されたス
クランブル・部分ファイル・ハッシュコードとを突合す
ることにより、復元された各置換部分ファイルの正当性
を確認する。
Next, for each restored replacement partial file, a hash code is created by the same function as the hash function used in the creation of "scramble / partial file / hash code" in step S2, and "scramble / partial file / hash code" is created. Hash code ”. Then, the scramble / partial file / hash code created in step S2 is compared with the scramble / partial file / hash code created in step 6 to confirm the validity of each restored replacement partial file. To do.

【0041】次いで、上記で復元された各置換部分ファ
イルについて、復号情報の一つとして送信先が受信した
置換コード群を用いて復号化し、部分ファイルに復元す
る。次いで、復元された各部分ファイルについて、ステ
ップS1における「部分ファイル・ハッシュコード」の
作成で用いられたハッシュ関数と同じ関数でハッシュコ
ードを作成し、「部分ファイル・ハッシュコード」とす
る。そして、ステップS1で作成された部分ファイル・
ハッシュコードと、本ステップ6で作成された部分ファ
イル・ハッシュコードとを突合することにより、復元さ
れた各部分ファイルの正当性を確認する。これにより、
置換暗号の復号化処理(ステップS6)が終了する。
Next, each replacement partial file restored above is decoded using the replacement code group received by the transmission destination as one of the pieces of decoding information, and restored into a partial file. Next, for each restored partial file, a hash code is created using the same function as the hash function used in creating the "partial file hash code" in step S1 to obtain a "partial file hash code". Then, the partial file created in step S1
The validity of each restored partial file is confirmed by matching the hash code with the partial file hash code created in step 6. This allows
The replacement encryption decryption process (step S6) ends.

【0042】<各ブロックの結合>次いで、復元された
各部分ファイルを結合してソースファイルに復元する
(ステップS7)。
<Combining Blocks> Next, the restored partial files are combined to restore the source file (step S7).

【0043】これらにより、本実施形態によれば、ソー
スファイルを同一長の複数の部分ファイルに分割し、部
分ファイル相互を暗号コードとして使用し合うので、従
来のバーナム暗号と同等以上の暗号強度を持ちながら、
暗号コードの長さを従来のバーナム暗号のものと比べて
極めて短くすることができ、バーナム暗号を実用化する
ことができる。
As a result, according to the present embodiment, the source file is divided into a plurality of partial files having the same length and the partial files are used as encryption codes, so that the encryption strength equal to or higher than that of the conventional Vernam encryption is obtained. While having
The length of the cipher code can be made extremely shorter than that of the conventional Vernam cipher, and the Vernam cipher can be put into practical use.

【0044】また本実施形態によれば、畳み込みバーナ
ム暗号化における暗号コードであるコードファイル(部
分ファイル)の使用が最大2回であるので、暗号強度を
高い暗号化をすることができる。
Further, according to the present embodiment, since the code file (partial file) which is the encryption code in the convolutional Vernam encryption is used at most twice, it is possible to perform encryption with high encryption strength.

【0045】また本実施形態によれば、畳み込みバーナ
ム暗号化の前処理としてデータの正規化を行い(ステッ
プS2など)、置換暗号化などによってデータのスクラ
ンブルをしているので、ソースファイルが規則性のある
データ(テキストデータなど)を含んでいても、その規
則性を全体的に排除することができ、暗号強度の高い暗
号化をすることができる。
Further, according to the present embodiment, since the data is normalized as a pre-processing of the convolutional Vernam encryption (step S2 etc.) and the data is scrambled by the replacement encryption or the like, the source file has a regularity. Even if some data (text data, etc.) is included, its regularity can be entirely eliminated, and encryption with high encryption strength can be performed.

【0046】また本実施形態によれば、復号コードであ
るコードファイルを2回送信し、さらに、復号化の各段
階においてハッシュコードの突合による正当性の確認を
しているので、復号コードのエラー、通信エラー、情報
の改ざん等があるか確認することもできる。
Further, according to the present embodiment, since the code file, which is the decryption code, is transmitted twice and the validity of the hash code is verified at each stage of decryption, the decryption code error is detected. You can also check if there is a communication error, falsification of information, etc.

【0047】(第2実施形態)次に、本発明の第2実施
形態に係る畳み込み暗号化方法について、図1及び図8
を参照して説明する。第1実施形態では、復号化コード
として部分ファイル(コードファイル)を送信元から送
信先へ送信する必要がある。ここで、送信される部分フ
ァイルの暗号強度が低い場合、通信課程などにおいてそ
の部分ファイルが盗聴されて解読されてしまう可能性が
発生する。そこで、本実施形態では、送信元から送信先
へ送信する復号化コードとして、ソースファイルとは無
関係なランダムファイルである「外部コード」を用いる
外部キー方式の畳み込みバーナム暗号化を行う。以下、
本実施形態について具体的に説明する。
(Second Embodiment) Next, a convolutional encryption method according to a second embodiment of the present invention will be described with reference to FIGS.
Will be described with reference to. In the first embodiment, it is necessary to transmit a partial file (code file) as a decryption code from the transmission source to the transmission destination. Here, when the encryption strength of the transmitted partial file is low, there is a possibility that the partial file will be eavesdropped and decrypted in the course of communication. Therefore, in the present embodiment, as the decryption code to be transmitted from the transmission source to the transmission destination, the convolutional Vernam encryption of the external key method using the "external code" which is a random file unrelated to the source file is performed. Less than,
This embodiment will be specifically described.

【0048】本実施形態における送信元での暗号化と送
信先での復号化を行う大きな流れは第1実施形態と同様
であり、図1は本実施形態の畳み込み暗号化方法を示す
フローチャートともなる。
The large flow of encryption at the transmission source and decryption at the transmission destination in this embodiment is the same as in the first embodiment, and FIG. 1 is also a flow chart showing the convolutional encryption method of this embodiment. .

【0049】<ブロック化> <各ブロックの正規化>先ず、バーナム暗号化をする前
の準備作業としてデータの正規化を行う。このデータの
正規化は、図1におけるステップS1(ブロック化)、
S2(各ブロックの正規化)に該当するものであるが、
上記第1実施形態のステップS1、S2と同一の処理を
行うものであるので説明を省略する。
<Blocking><Normalization of Each Block> First, the data is normalized as a preparatory work before the Vernam encryption. The normalization of this data is performed by step S1 (blocking) in FIG.
Although it corresponds to S2 (normalization of each block),
Since the same processing as steps S1 and S2 of the first embodiment is performed, description thereof will be omitted.

【0050】<畳み込みバーナム暗号化>次いで、畳み
込みバーナム暗号化処理を行う(ステップS3)。この
畳み込みバーナム暗号化処理は、第1実施形態とは異な
る「外部キー方式」を用いているので、図8を参照して
具体的に説明する。図8は本発明の第2実施形態に係る
外部キー方式の畳み込み暗号化アルゴリズムを示す概念
図である。
<Convolutional Vernam Encryption> Next, convolutional Vernam encryption processing is performed (step S3). This convolutional Vernam encryption process uses the "foreign key method" different from that of the first embodiment, and will be specifically described with reference to FIG. FIG. 8 is a conceptual diagram showing a convolutional encryption algorithm of the external key method according to the second embodiment of the present invention.

【0051】外部キー方式の畳み込みバーナム暗号化処
理は、ソースファイル(被暗号化ファイル)を同一の長
さに分割して複数の部分ファイルを形成し、各部分ファ
イルを暗号化する暗号コードとして該部分ファイル以外
の部分ファイルを使用するものである点で第1実施形態
の靴紐方式の畳み込みバーナム暗号化処理と共通してい
るが、複数の部分ファイルのうちの一つを暗号化する暗
号コードとして、ソースファイルとは無関係のファイル
(外部コード)を使用している点が異なる。本実施形態
では、部分ファイルとして上記ステップS2の処理で作
成されたコードファイルP1〜P2nを用いる。
In the convolutional Vernam encryption process of the external key system, a source file (file to be encrypted) is divided into the same length to form a plurality of partial files, and each partial file is encrypted as an encryption code. The convolutional Vernam-encryption process of the shoelace method of the first embodiment is common in that a partial file other than the partial file is used, but an encryption code for encrypting one of a plurality of partial files. The difference is that it uses a file (external code) that is unrelated to the source file. In this embodiment, the code files P 1 to P 2n created in the process of step S2 are used as the partial files.

【0052】先ず、図8に示すように、コードファイル
1〜PnをコードファイルPn+1〜P2nを用いてバーナ
ム暗号化して暗号化ファイルQiを作成する。これを数
式で表すと、例えば下記のようになる。 Qi=Pi◎Pn+i
First, as shown in FIG. 8, the code files P 1 to P n are Vernam-encrypted using the code files P n + 1 to P 2n to create an encrypted file Q i . If this is expressed by a mathematical expression, for example, it will be as follows. Q i = P i ◎ P n + i

【0053】次いで、コードファイルPn+1〜P2nの中
から任意の一つを指定し、これをコードファイルPk
する。そして、コードファイルPn+1〜P2n(コードフ
ァイルPkを除く)をコードファイルPn+1〜P2n(コー
ドファイルPkを除く)を用いてバーナム暗号化して暗
号化ファイルQn+i(暗号化ファイルQkを除く)を作成
する。これを数式で表すと、例えば下記のようになる。 Qn+i=Pn+i◎Pn-i+1 (ここでのiは、Kを除く
1以上の整数)
Next, any one of the code files P n + 1 to P 2n is designated, and this is designated as a code file P k . The code file P n + 1 ~P 2n (code file P k excluding) the code file P n + 1 ~P 2n (code file P excluding k) encrypted files by Vernam encrypted using the Q n + Create i (except encrypted file Q k ). If this is expressed by a mathematical expression, for example, it will be as follows. Q n + i = P n + i ◎ P n-i + 1 (where i is an integer of 1 or more excluding K)

【0054】次いで、コードファイルPkを外部コード
Tを用いてバーナム暗号化して暗号化ファイルQkを作
成する。これを数式で表すと、例えば下記のようにな
る。 Qk=Pk◎T ここで、外部コードTは、ソースファイルとは無関係の
ファイルであって、コードファイルPn+1〜P2nと同一
の長さをもつデータである。また、外部コードTは、乱
数からなることが好ましい。
Next, the code file P k is Vernam-encrypted using the external code T to create an encrypted file Q k . If this is expressed by a mathematical expression, for example, it will be as follows. Q k = P k ⊚T Here, the external code T is a file unrelated to the source file and is data having the same length as the code files P n + 1 to P 2n . Further, the external code T is preferably composed of random numbers.

【0055】<コードの送付>上記のステップS1から
S3でソースファイルが暗号化されると、その暗号化さ
れた情報(暗号化ファイルQ1〜Q2n)と、復号化コー
ド及びチェック用ハッシュコードなどの復号情報とがネ
ットワークなどを介して送信先に送信される(ステップ
S4)。ステップS4で送信される復号情報には、以下
のものが挙げられる。 1) 外部コードT(1つの復号情報の送信毎に、同一
の外部コードTが2回送られる) 2) 上記コードファイルPkのファイル番号であるマ
スターコードファイル番号K 3) ステップS2で作成されたコードファイル・ハッ
シュコード 4) ステップS2で行われたフラグメントファイルか
らコードファイルへの変換に用いられた置換結合表 5) ステップS2で作成されたスクランブル・部分フ
ァイル・ハッシュコード 6) ステップS2での置換暗号化に用いられた置換コ
ード群 7) ステップS1で作成された部分ファイル・ハッシ
ュコード
<Sending of Code> When the source file is encrypted in steps S1 to S3, the encrypted information (encrypted files Q 1 to Q 2n ), the decryption code and the hash code for checking are coded. The decryption information such as is transmitted to the destination via the network or the like (step S4). The decryption information transmitted in step S4 includes the following. 1) External code T (the same external code T is sent twice for each transmission of one piece of decryption information) 2) Master code file number K 3 which is the file number of the above code file P k ) Created in step S2 Code file / hash code 4) Replacement combination table used for conversion from fragment file to code file in step S2 5) Scramble / partial file / hash code 6) created in step S2 Replacement in step S2 Substitution code group 7 used for encryption 7) Partial file hash code created in step S1

【0056】上記復号情報を受信した送信先(ユーザ)
は、下記のステップS5〜ステップS7に示す復号化を
行う。
Destination (user) who received the decryption information
Performs the decoding shown in steps S5 to S7 below.

【0057】<畳み込みバーナム暗号の復号化>復号化
としては、先ず、畳み込みバーナム暗号で暗号化された
暗号化ファイルQ1〜Q2nの復号化を行う(ステップS
5)。この復号化を行う前処理として、送信先は解読コ
ードである外部コードTの正当性について確認する。す
なわち、2回送信されてきた外部コードT(外部コード
1、外部コードT2)同士について排他的論理和演算を
行い、演算結果が「オールゼロ」であることを確認す
る。
<Decryption of Convolutional Vernam Cipher> For decryption, first, the encrypted files Q 1 to Q 2n encrypted by the convolutional Vernam cipher are decrypted (step S).
5). As a preprocess for this decryption, the transmission destination confirms the correctness of the external code T that is the decryption code. That is, the exclusive OR operation is performed on the external codes T (external code T 1 , external code T 2 ) transmitted twice, and it is confirmed that the operation result is “all zeros”.

【0058】次いで、畳み込みバーナム暗号化された暗
号化ファイルQ1〜Q2nを復号化するために逆バーナム
演算を行う。逆バーナム演算は、上記ステップS3で行
われたコードファイルP1〜P2n(コードファイルPk
除く)及び外部コードTの間についての排他的論理和演
算の逆演算である。
Next, an inverse Vernam operation is performed to decrypt the encrypted files Q 1 to Q 2n that have been subjected to the convolutional Vernam encryption. The inverse Burnham operation is an inverse operation of the exclusive OR operation between the code files P 1 to P 2n (excluding the code file P k ) and the external code T performed in step S3.

【0059】この逆バーナム演算以降の処理は、第1実
施形態の逆バーナム演算以降の処理と同一であり、ステ
ップS6で<置換暗号の復号化>が行われ、ステップS
7で<各ブロックの結合>が行われる。
The process after the inverse Vernam calculation is the same as the process after the inverse Vernam calculation of the first embodiment, and <decryption of permutation cipher> is performed in step S6, and step S6 is performed.
<Concatenation of blocks> is performed at 7.

【0060】これらにより、本実施形態によれば、第1
実施形態と同様な畳み込みバーナム暗号化を行いなが
ら、復号化コードとしてソースファイルとは無関係なラ
ンダムファイルである「外部コードT」を用いているの
で、例えばネットワークなどを介して送受信される復号
化コードの暗号強度を高めることができる。
Thus, according to this embodiment, the first
Since the "external code T", which is a random file unrelated to the source file, is used as the decryption code while performing the convolutional Vernam-encryption similar to the embodiment, the decryption code transmitted / received via the network or the like, for example. The encryption strength of can be increased.

【0061】上記実施形態において、図1のステップS
1〜S3に示す暗号化又は図1のステップS5〜S7に
示す復号化をする機能を実現するためのプログラムをコ
ンピュータ読み取り可能な記録媒体に記録して、この記
録媒体に記録されたプログラムをコンピュータシステム
に読み込ませ、実行することにより配信先情報の書き込
み処理を行ってもよい。なお、ここでいう「コンピュー
タシステム」とは、OSや周辺機器等のハードウェアを
含むものであってもよい。また、「コンピュータシステ
ム」は、WWWシステムを利用している場合であれば、
ホームページ提供環境(あるいは表示環境)も含むもの
とする。また、「コンピュータ読み取り可能な記録媒
体」とは、フレキシブルディスク、光磁気ディスク、R
OM、CD−ROM等の可搬媒体、コンピュータシステ
ムに内蔵されるハードディスク等の記憶装置のことをい
う。
In the above embodiment, step S in FIG.
A program for realizing the function of performing the encryption shown in 1 to S3 or the decryption shown in steps S5 to S7 of FIG. 1 is recorded in a computer-readable recording medium, and the program recorded in this recording medium is stored in a computer. The distribution destination information writing process may be performed by causing the system to read and execute. The "computer system" may include an OS and hardware such as peripheral devices. In addition, if the "computer system" uses a WWW system,
The homepage provision environment (or display environment) is also included. The "computer-readable recording medium" means a flexible disk, a magneto-optical disk, an R
It refers to a portable medium such as OM and CD-ROM, and a storage device such as a hard disk built in a computer system.

【0062】さらに「コンピュータ読み取り可能な記録
媒体」とは、インターネット等のネットワークや電話回
線等の通信回線を介してプログラムが送信された場合の
サーバやクライアントとなるコンピュータシステム内部
の揮発性メモリ(RAM)のように、一定時間プログラ
ムを保持しているものも含むものとする。また、上記プ
ログラムは、このプログラムを記憶装置等に格納したコ
ンピュータシステムから、伝送媒体を介して、あるい
は、伝送媒体中の伝送波により他のコンピュータシステ
ムに伝送されてもよい。ここで、プログラムを伝送する
「伝送媒体」は、インターネット等のネットワーク(通
信網)や電話回線等の通信回線(通信線)のように情報
を伝送する機能を有する媒体のことをいう。また、上記
プログラムは、前述した機能の一部を実現するためのも
のであっても良い。さらに、前述した機能をコンピュー
タシステムにすでに記録されているプログラムとの組み
合わせで実現できるもの、いわゆる差分ファイル(差分
プログラム)であっても良い。
Further, the "computer-readable recording medium" means a volatile memory (RAM) inside a computer system which serves as a server or a client when a program is transmitted via a network such as the Internet or a communication line such as a telephone line. ), Which holds the program for a certain period of time. The program may be transmitted from a computer system that stores the program in a storage device or the like to another computer system via a transmission medium or by a transmission wave in the transmission medium. Here, the "transmission medium" for transmitting the program refers to a medium having a function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line. Further, the program may be a program for realizing some of the functions described above. Further, it may be a so-called difference file (difference program) that can realize the above-mentioned functions in combination with a program already recorded in the computer system.

【0063】以上、本発明の実施形態を図面を参照して
詳述してきたが、具体的な構成はこの実施形態に限られ
るものではなく、本発明の要旨を逸脱しない範囲の設計
変更等も含まれる。
Although the embodiment of the present invention has been described in detail above with reference to the drawings, the specific configuration is not limited to this embodiment, and design changes and the like within the scope not departing from the gist of the present invention. included.

【0064】[0064]

【発明の効果】以上の説明で明らかなように、本発明に
よれば、被暗号化ファイルを同一の長さに分割して複数
の部分ファイルを形成し、部分ファイルを暗号化する暗
号コードとして他の部分ファイルを使用するので、情報
処理量を抑えながら暗号強度を高めることができる。
As is apparent from the above description, according to the present invention, the encrypted file is divided into the same length to form a plurality of partial files, and the partial code is encrypted as an encryption code. Since other partial files are used, the encryption strength can be increased while suppressing the information processing amount.

【0065】また、本発明によれば、暗号コードのうち
の一つとして、部分ファイル及び被暗号化ファイルとは
無関係のファイルを使用することで、ネットワークなど
を介して送受信される復号化コードの暗号強度を高める
ことができる。
Further, according to the present invention, by using a file unrelated to the partial file and the encrypted file as one of the encryption codes, the decryption code transmitted / received via the network etc. The encryption strength can be increased.

【図面の簡単な説明】[Brief description of drawings]

【図1】 本発明の第1実施形態に係る畳み込み暗号化
方法の概要を示すフローチャートである。
FIG. 1 is a flowchart showing an outline of a convolutional encryption method according to a first embodiment of the present invention.

【図2】 畳み込みバーナム暗号化処理(円環アルゴリ
ズム)の一例を示す概念図である。
FIG. 2 is a conceptual diagram showing an example of a convolutional Vernam encryption process (circular algorithm).

【図3】 畳み込みバーナム暗号化処理(靴紐アルゴリ
ズム)の一例を示す概念図である。
FIG. 3 is a conceptual diagram showing an example of a convolutional Vernam encryption process (shoelace algorithm).

【図4】 畳み込みバーナム暗号化処理(靴紐アルゴリ
ズム)の一例を示す概念図である。
FIG. 4 is a conceptual diagram showing an example of a convolutional Vernam encryption process (shoelace algorithm).

【図5】 排他的論理和の真理値表を示す図である。FIG. 5 is a diagram showing a truth table of exclusive OR.

【図6】 靴紐方式で畳み込みバーナム暗号化する手順
の具体例を示す概念図である。
FIG. 6 is a conceptual diagram showing a specific example of a procedure for performing convolutional Vernam encryption using a shoelace method.

【図7】 逆バーナム演算の具体例を示す概念図であ
る。
FIG. 7 is a conceptual diagram showing a specific example of inverse Vernam calculation.

【図8】 本発明の第2実施形態に係る外部キー方式の
畳み込み暗号化アルゴリズムを示す概念図である。
FIG. 8 is a conceptual diagram showing a foreign key type convolutional encryption algorithm according to the second embodiment of the present invention.

【符号の説明】[Explanation of symbols]

1〜P2n、Pk コードファイル(部分ファイル) Q1〜P4 暗号化ファイル T 外部コードP 1 ~P 2n, P k code file (partial file) Q 1 to P 4 encrypted file T external code

Claims (8)

【特許請求の範囲】[Claims] 【請求項1】 被暗号化ファイルを同一の長さに分割し
て複数の部分ファイルを形成し、 一の部分ファイルを暗号化する暗号コードとして、該一
の部分ファイルを除く他の部分ファイルのうちの一つを
使用し、 前記暗号化において、前記一の部分ファイルと暗号コー
ドに用いた部分ファイルとの排他的論理和を算出するこ
とを特徴とする畳み込み暗号化方法。
1. An encrypted file is divided into the same length to form a plurality of partial files, and an encryption code for encrypting one partial file is used as an encryption code for other partial files excluding the one partial file. A convolutional encryption method, wherein one of them is used to calculate an exclusive OR of the one partial file and a partial file used for an encryption code in the encryption.
【請求項2】 前記各部分ファイルは、前記暗号コード
として用いられる回数が最大2回であることを特徴とす
る請求項1記載の畳み込み暗号化方法。
2. The convolutional encryption method according to claim 1, wherein each of the partial files is used as the encryption code a maximum of two times.
【請求項3】 前記暗号化を行う前に、前記被暗号化フ
ァイル及び前記部分ファイルのうちの少なくとも一方に
置換暗号化処理を加えることを特徴とする請求項1又は
2記載の畳み込み暗号化方法。
3. The convolutional encryption method according to claim 1, wherein replacement encryption processing is applied to at least one of the encrypted file and the partial file before performing the encryption. .
【請求項4】 複数の前記部分ファイルのうちの一つを
暗号化する暗号コードとして、前記部分ファイル及び前
記被暗号化ファイルとは無関係のファイルを使用するこ
とを特徴とする請求項1乃至3のいずれか一項記載の畳
み込み暗号化方法。
4. The file unrelated to the partial file and the encrypted file is used as an encryption code for encrypting one of the partial files. The convolutional encryption method according to any one of 1.
【請求項5】 前記暗号化がなされた部分ファイルを送
信元から送信先へ送信する場合に、該部分ファイルを復
号化する復号化コードを該送信元から該送信先へ2回送
信することを特徴とする請求項1乃至4のいずれか一項
記載の畳み込み暗号化方法。
5. When transmitting the encrypted partial file from a transmission source to a transmission destination, a decryption code for decrypting the partial file is transmitted from the transmission source to the transmission destination twice. The convolutional encryption method according to any one of claims 1 to 4, which is characterized in that.
【請求項6】 前記部分ファイルを暗号化する前又は後
の少なくとも一方の段階において、該部分ファイルにつ
いてハッシュ関数で演算して第1ハッシュコードを算出
し、 前記暗号化された部分ファイルが送信元から送信先へ送
信された後であって、該部分ファイルを復号する前又は
後の少なくとも一方の段階において、該部分ファイルに
ついてハッシュ関数で演算して第2ハッシュコードを算
出し、 前記第1ハッシュコードと前記第2ハッシュコードとを
比較する処理を有することを特徴とする請求項1乃至5
のいずれか一項記載の畳み込み暗号化方法。
6. The at least one stage before or after encrypting the partial file calculates a first hash code by operating a hash function on the partial file, and the encrypted partial file is a sender. From the destination to the destination and before or after the partial file is decrypted, at least one stage of the partial file operation is performed with a hash function to calculate a second hash code, and the first hash value is calculated. 6. A process for comparing a code with the second hash code is included.
The convolutional encryption method according to any one of 1.
【請求項7】 被暗号化ファイルを同一の長さに分割し
て複数の部分ファイルを作成するブロック化手段と、 前記部分ファイルと該部分ファイルを除く前記部分ファ
イルとの排他的論理和を算出する畳み込みバーナム暗号
化手段と、を有することを特徴とする畳み込み暗号化装
置。
7. A blocking unit that divides the encrypted file into the same length to create a plurality of partial files, and calculates an exclusive OR of the partial files and the partial files excluding the partial files. A convolutional encryption device, comprising:
【請求項8】 被暗号化ファイルを同一の長さに分割し
て複数の部分ファイルを作成するステップと、 前記部分ファイルと該部分ファイルを除く前記部分ファ
イルとの排他的論理和を算出するステップと、をコンピ
ュータに実行させることを特徴とする畳み込み暗号化プ
ログラム。
8. A step of dividing an encrypted file into the same length to create a plurality of partial files, and a step of calculating an exclusive OR of the partial files and the partial files excluding the partial files And a convolutional encryption program that causes a computer to execute.
JP2002153896A 2002-05-28 2002-05-28 Convolution encryption method, convolution encryption system, and convolution encryption program Withdrawn JP2003345243A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002153896A JP2003345243A (en) 2002-05-28 2002-05-28 Convolution encryption method, convolution encryption system, and convolution encryption program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002153896A JP2003345243A (en) 2002-05-28 2002-05-28 Convolution encryption method, convolution encryption system, and convolution encryption program

Publications (1)

Publication Number Publication Date
JP2003345243A true JP2003345243A (en) 2003-12-03

Family

ID=29770819

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002153896A Withdrawn JP2003345243A (en) 2002-05-28 2002-05-28 Convolution encryption method, convolution encryption system, and convolution encryption program

Country Status (1)

Country Link
JP (1) JP2003345243A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007528667A (en) * 2004-03-09 2007-10-11 トムソン ライセンシング Cross coding of information in independent channels
JP2009288616A (en) * 2008-05-30 2009-12-10 Hitachi Ltd Secret sharing method, program and device
CN109379509A (en) * 2018-12-10 2019-02-22 盎锐(上海)信息科技有限公司 Point cloud ciphered compressed engine

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007528667A (en) * 2004-03-09 2007-10-11 トムソン ライセンシング Cross coding of information in independent channels
JP2009288616A (en) * 2008-05-30 2009-12-10 Hitachi Ltd Secret sharing method, program and device
CN109379509A (en) * 2018-12-10 2019-02-22 盎锐(上海)信息科技有限公司 Point cloud ciphered compressed engine

Similar Documents

Publication Publication Date Title
JP3901909B2 (en) ENCRYPTION DEVICE AND RECORDING MEDIUM CONTAINING PROGRAM
JP3339688B2 (en) Non-deterministic mixture generator stream encryption system
US9436815B2 (en) Block management unification system and method
KR102000861B1 (en) Obfuscation for protection of streaming media and other data flows
JP2001324925A (en) Common key cryptography and device
JP2013047822A (en) Encryption method for message authentication
MXPA05005358A (en) Method of generating a stream cipher using multiple keys.
KR20110087094A (en) Data encrytion method
US20110040963A1 (en) Secure computing system, secure computing method, secure computing apparatus, and program therefor
JP2007122336A (en) Method for distributed storage of data, terminal, and program
US20010033654A1 (en) W-EC1 encryption and decryption method and system
JP2010524014A (en) A low complexity encryption method for content encoded by rateless codes
WO2015166701A1 (en) Encryption method, program, and system
US8190892B2 (en) Message authentication code with blind factorization and randomization
US20080181397A1 (en) Secure data transmission and storage using limited-domain functions
JP2003345243A (en) Convolution encryption method, convolution encryption system, and convolution encryption program
JP4194481B2 (en) Secret information storage processing method, secret information storage device, secret information restoration processing method, and secret information restoration device
Ebrahim et al. Hybrid model for cloud data security using steganography
JP2022071033A (en) Data communication system including computer which performs error correction encoding on file and encrypt file, and computer which performs error correction decoding on file and decrypt file
Usman et al. A novel encoding-decoding scheme using Huffman coding for multimedia networks
JP2007171412A (en) Key generating device, encryption device, decryption device, multiplication type knapsack encryption system, multiplication type knapsack decryption method, and program
JP2005167794A5 (en)
Hamsanandhini et al. Securing Data in the Image Using SHA & ECC
CN116484407B (en) Data security protection method and device, electronic equipment and storage medium
US11664976B2 (en) Method and devices for creating redundancy and encryption using Mojette Transform

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20050802