JP2009037095A - Data scrambling apparatus, data descrambling apparatus, data scrambling method, data descrambling method and program - Google Patents

Data scrambling apparatus, data descrambling apparatus, data scrambling method, data descrambling method and program Download PDF

Info

Publication number
JP2009037095A
JP2009037095A JP2007202646A JP2007202646A JP2009037095A JP 2009037095 A JP2009037095 A JP 2009037095A JP 2007202646 A JP2007202646 A JP 2007202646A JP 2007202646 A JP2007202646 A JP 2007202646A JP 2009037095 A JP2009037095 A JP 2009037095A
Authority
JP
Japan
Prior art keywords
key
scramble
data
descrambling
key sequence
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
JP2007202646A
Other languages
Japanese (ja)
Inventor
Kazuhide Fukushima
和英 福島
Shinsaku Kiyomoto
晋作 清本
Toshiaki Tanaka
俊昭 田中
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.)
KDDI Corp
Original Assignee
KDDI 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 KDDI Corp filed Critical KDDI Corp
Priority to JP2007202646A priority Critical patent/JP2009037095A/en
Publication of JP2009037095A publication Critical patent/JP2009037095A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To generate a key sequence by using a stream cipher, and to scramble data on the basis of the obtained key sequence. <P>SOLUTION: An initial vector and a key are input to generate a key sequence. Scramble processing is performed on an input plaintext by using the first n bits (n is a positive integer) of the generated key sequence as a scramble key to output a ciphertext. Since the scramble key used by a scramble function is generated by a stream cipher, the tamper resistance of the scramble key can be secured. Also, by performing scramble processing, speeding up of processing can be achieved. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

本発明は、データスクランブル装置、データデスクランブル装置、データスクランブル方法、データデスクランブル方法およびプログラムに関する。   The present invention relates to a data scramble apparatus, a data descramble apparatus, a data scramble method, a data descramble method, and a program.

近年、コンピュータを利用した様々なサービスが提供されている。多くのサービスにおいては、通信の秘匿を実現するために、暗号が利用される。暗号化方式として、最も一般的なものは、一つの鍵で暗号化・復号化を行う共通鍵暗号化方式であるが、この共通暗号化方式は、ブロック暗号方式とストリーム暗号方式の2つに大別される。前者は、最も一般的に用いられている方式であるが、後者の方が処理速度に優れるため、近年注目を集めつつある。   In recent years, various services using computers have been provided. In many services, encryption is used to conceal communication. The most common encryption method is a common key encryption method that performs encryption / decryption with a single key. This common encryption method is divided into a block encryption method and a stream encryption method. Broadly divided. The former is the method that is most commonly used, but the latter has been attracting attention in recent years because it is superior in processing speed.

ここで、ストリーム暗号は、任意の長さのデータを暗号化する技術であり、初期ベクトルと鍵とを暗号化アルゴリズムに入力することにより、鍵系列を生成し、この鍵系列と入力データとの排他的論理和を実行することにより、暗号化データを得るものである。一方、復号の場合には、暗号化の場合と同様に、初期ベクトルと鍵とを暗号化アルゴリズムに入力して、鍵系列を生成し、この鍵系列と暗号化データとの排他的論理和を実行することにより、平文データを得る。   Here, the stream cipher is a technique for encrypting data of an arbitrary length. A key sequence is generated by inputting an initial vector and a key into an encryption algorithm, and the key sequence and the input data are Encrypted data is obtained by executing exclusive OR. On the other hand, in the case of decryption, as in the case of encryption, an initial vector and a key are input to an encryption algorithm to generate a key sequence, and an exclusive OR of this key sequence and encrypted data is calculated. By executing, plain text data is obtained.

上記のようなストリーム暗号は、ブロック暗号等と比較して高速な動作が可能であるとともに、安全性においても優れたものであり、こうしたストリーム暗号を生成するための方法および装置の一例が特許文献1に開示されている。   The stream cipher as described above can operate at a higher speed than the block cipher and the like, and is excellent in safety. An example of a method and apparatus for generating such a stream cipher is disclosed in Patent Literature. 1 is disclosed.

一方、暗号化と同様に、データを難読化する技術として、データスクランブル技術が知られている。このデータスクランブル技術は、データ列に対して、置換や演算処理を施して、その解析を困難にする技術である。例えば、プログラムの耐タンパ化のために、モジュール間でやり取りされるデータをスクランブル化して、メモリ上に格納する場合等に上記のスクランブル技術が用いられる。   On the other hand, as with the encryption, a data scramble technique is known as a technique for obfuscating data. This data scramble technique is a technique that makes substitution and calculation processing difficult for the data string. For example, the above-described scramble technique is used when data exchanged between modules is scrambled and stored in a memory in order to make the program tamper resistant.

このスクランブル技術は、一般に、その安全性において、暗号技術には劣るものの、処理速度が暗号技術に比較して高速であるという特徴を有している。こうしたスクランブル技術に関する一例が特許文献2および3に開示されている。
特開2007−060191号公報 特開2000−286835号公報 特開2000−286834号公報
In general, the scramble technique is inferior to the encryption technique in terms of security, but has a feature that the processing speed is higher than that of the encryption technique. Examples relating to such a scramble technique are disclosed in Patent Documents 2 and 3.
JP 2007-060191 A JP 2000-286835 A JP 2000-286834 A

上記のように、ストリーム暗号は、ブロック暗号等と比較して高速な動作が可能であり、また、一般的なスクランブル技術と比較して、高い安全性を有する。しかしながら、このストリーム暗号技術をそのままスクランブル技術として利用するには、いくつかの問題がある。   As described above, the stream cipher can operate at a higher speed than a block cipher or the like, and has higher security than a general scrambling technique. However, there are some problems in using this stream encryption technique as it is as a scramble technique.

例えば、耐タンパ化による処理負荷の増大に伴う許容範囲は、一般に、数%以下とされているが、一方で、2つのモジュール間において授受されるデータに対して、暗号化処理を施す場合、暗号化プロセスと復号化プロセスの2つのプロセスを同時に実行する必要がある。さらに、保護の対象となるモジュールの数が多い場合には、より多くの暗号化プロセスと復号化プロセスとを同時に実行する必要が生じる。このため、ストリーム暗号自体が高速かつ軽量であっても、全体としての負荷が大きくなる可能性があり、このような場合には、むしろ、より軽量なデータスクランブル技術を用いた方がよい場合がある。   For example, the allowable range accompanying an increase in processing load due to tamper resistance is generally set to several percent or less. On the other hand, when performing encryption processing on data exchanged between two modules, It is necessary to execute two processes, an encryption process and a decryption process, simultaneously. Furthermore, when the number of modules to be protected is large, it is necessary to execute more encryption processes and decryption processes simultaneously. For this reason, even if the stream cipher itself is fast and lightweight, the overall load may increase. In such a case, it may be better to use a lighter data scramble technique. is there.

一方で、データスクランブル技術の多くは、固定長のビット列に対して、テーブルデータを用いたデータの置換や論理演算を施すことによって、ストリーム暗号と比較して、さらに軽量な処理を実現している。しかしながら、データスクランブル技術では、同一のデータに対して、常に同一のスクランブルデータが出力され、ビット数が十分でない場合には、必ずしも十分な安全性を実現することができないという問題がある。また、こうした問題を回避するために、スクランブルモジュールとデスクランブルモジュールとの間で、毎回、異なる鍵を共有して、データのスクランブル化を行う方法もあるが、この場合には、鍵をスクランブルモジュールとデスクランブルモジュールとの間で安全に授受するための別の耐タンパ技術が必要となるといった問題があった。   On the other hand, many of the data scramble technologies realize lighter processing compared to stream ciphers by performing data replacement using table data and logical operations on fixed-length bit strings. . However, the data scramble technique has a problem in that the same scrambled data is always output for the same data, and when the number of bits is not sufficient, sufficient safety cannot always be realized. In addition, in order to avoid such problems, there is a method in which a different key is shared between the scramble module and the descramble module each time to scramble the data, but in this case, the key is scrambled module. There is a problem that another tamper resistance technology is required for safely giving and receiving between the device and the descramble module.

そこで、本発明は、上述の課題に鑑みてなされたものであり、ストリーム暗号を用いて鍵系列を生成し、得られた鍵系列に基づいてデータをスクランブルするデータスクランブル装置、データデスクランブル装置、データスクランブル方法、データデスクランブル方法およびプログラムを提供することを目的とする。   Therefore, the present invention has been made in view of the above-described problems, and generates a key sequence using stream cipher and scrambles data based on the obtained key sequence, a data descrambling device, It is an object to provide a data scramble method, a data descrambling method, and a program.

本発明は、上記の課題を解決するために、以下の事項を提案している。
(1)本発明は、初期ベクトルと鍵とを入力して鍵系列を生成するストリーム暗号化手段(例えば、図1のストリーム暗号化部12に相当)と、該生成した鍵系列の先頭nビット(nは正の整数)をスクランブル鍵として、入力した平文にスクランブル処理を実行して暗号化文を出力するスクランブル関数(例えば、図1のスクランブル関数13に相当)と、を備えたことを特徴とするデータスクランブル装置を提案している。
The present invention proposes the following matters in order to solve the above problems.
(1) The present invention is a stream encryption unit (for example, corresponding to the stream encryption unit 12 in FIG. 1) that inputs an initial vector and a key to generate a key sequence, and the first n bits of the generated key sequence And a scramble function (for example, corresponding to the scramble function 13 in FIG. 1) that executes a scramble process on the input plaintext and outputs an encrypted text, where n is a positive integer. A data scrambler is proposed.

この発明によれば、ストリーム暗号化手段が、初期ベクトルと鍵とを入力して鍵系列を生成し、スクランブル関数が生成した鍵系列の先頭nビット(nは正の整数)をスクランブル鍵として、入力した平文にスクランブル処理を実行して暗号化文を出力する。したがって、スクランブル関数が用いるスクランブル鍵をストリーム暗号により生成するため、スクランブル鍵の耐タンパ性を確保できる。また、スクランブル処理を行うことで、処理の高速化を実現することができる。   According to this invention, the stream encryption means inputs an initial vector and a key to generate a key sequence, and uses the first n bits (n is a positive integer) of the key sequence generated by the scramble function as a scramble key, Performs scramble processing on the input plaintext and outputs an encrypted text. Therefore, since the scramble key used by the scramble function is generated by the stream cipher, the tamper resistance of the scramble key can be ensured. Further, by performing the scramble process, the processing speed can be increased.

(2)本発明は、(1)のデータスクランブル装置について、前記鍵が耐タンパ化され、格納されていることを特徴とするデータスクランブル装置を提案している。   (2) The present invention proposes a data scramble apparatus characterized in that the key is tamper-resistant and stored in the data scramble apparatus of (1).

この発明によれば、ストリーム暗号に入力する鍵が耐タンパ化され、格納されている。したがって、ストリーム暗号に入力する鍵についても十分な耐タンパ性を確保できる。   According to the present invention, the key input to the stream cipher is tamper resistant and stored. Therefore, sufficient tamper resistance can be secured for the key input to the stream cipher.

(3)本発明は、初期ベクトルと鍵とを入力して鍵系列を生成するストリーム暗号化手段(例えば、図3のストリーム暗号化部22に相当)と、該生成した鍵系列の先頭nビット(nは正の整数)をスクランブル鍵として、入力した暗号文にデスクランブル処理を実行して平文を出力するデスクランブル関数(例えば、図3のデスクランブル関数23に相当)と、を備えたことを特徴とするデータデスクランブル装置を提案している。   (3) In the present invention, a stream encryption unit (for example, corresponding to the stream encryption unit 22 in FIG. 3) that inputs an initial vector and a key to generate a key sequence, and the first n bits of the generated key sequence A descrambling function (e.g., corresponding to the descrambling function 23 in FIG. 3) that executes descrambling processing on the input ciphertext and outputs plaintext using (n is a positive integer) as a scramble key. A data descrambling device characterized by the above is proposed.

この発明によれば、ストリーム暗号化手段が初期ベクトルと鍵とを入力して鍵系列を生成し、デスクランブル関数が生成した鍵系列の先頭nビット(nは正の整数)をスクランブル鍵として、入力した暗号文にデスクランブル処理を実行して平文を出力する。したがって、デスクランブル関数が用いるスクランブル鍵をストリーム暗号により生成するため、デスクランブル鍵の耐タンパ性を確保できる。また、デスクランブル処理を行うことで、処理の高速化を実現することができる。   According to the present invention, the stream encryption means inputs an initial vector and a key to generate a key sequence, and the first n bits (n is a positive integer) of the key sequence generated by the descrambling function are used as a scramble key. Perform descrambling on the input ciphertext and output plaintext. Therefore, since the scramble key used by the descrambling function is generated by the stream cipher, the tamper resistance of the descrambling key can be ensured. Further, by performing descrambling processing, it is possible to realize high-speed processing.

(4)本発明は、(3)のデータデスクランブル装置について、前記鍵が耐タンパ化され、格納されていることを特徴とするデータデスクランブル装置を提案している。   (4) The present invention proposes a data descrambling device in which the key is tamper-resistant and stored in the data descrambling device of (3).

この発明によれば、ストリーム暗号に入力する鍵が耐タンパ化され、格納されている。したがって、ストリーム暗号に入力する鍵についても十分な耐タンパ性を確保できる。   According to the present invention, the key input to the stream cipher is tamper resistant and stored. Therefore, sufficient tamper resistance can be secured for the key input to the stream cipher.

(5)本発明は、初期ベクトルと鍵とを入力して鍵系列を生成する第1のステップ(例えば、図2のステップS101およびステップS102に相当)と、該生成した鍵系列の先頭nビット(nは正の整数)をスクランブル鍵として、入力した平文にスクランブル処理を実行して暗号化文を出力する第2のステップ(例えば、図2のステップS103およびステップS104に相当)と、を備えたことを特徴とするデータスクランブル方法を提案している。   (5) In the present invention, a first step (for example, equivalent to step S101 and step S102 in FIG. 2) for inputting an initial vector and a key to generate a key sequence, and the first n bits of the generated key sequence A second step (e.g., corresponding to step S103 and step S104 in FIG. 2) that executes a scramble process on the input plaintext and outputs an encrypted text using (n is a positive integer) as a scramble key. A data scramble method characterized by the above is proposed.

この発明によれば、初期ベクトルと鍵とを入力して鍵系列を生成し、生成した鍵系列の先頭nビット(nは正の整数)をスクランブル鍵として、入力した平文にスクランブル処理を実行して暗号化文を出力する。したがって、スクランブル関数が用いるスクランブル鍵をストリーム暗号により生成するため、スクランブル鍵の耐タンパ性を確保できる。また、スクランブル処理を行うことで、処理の高速化を実現することができる。   According to the present invention, an initial vector and a key are input to generate a key sequence, and the first n bits (n is a positive integer) of the generated key sequence is used as a scramble key to execute scramble processing on the input plaintext. Output ciphertext. Therefore, since the scramble key used by the scramble function is generated by the stream cipher, the tamper resistance of the scramble key can be ensured. Further, by performing the scramble process, the processing speed can be increased.

(6)本発明は、初期ベクトルと鍵とを入力して鍵系列を生成する第1のステップ(例えば、図4のステップS201およびステップS202に相当)と、該生成した鍵系列の先頭nビット(nは正の整数)をスクランブル鍵として、入力した暗号文にデスクランブル処理を実行して平文を出力する第2のステップ(例えば、図4のステップS203およびステップS204に相当)と、を備えたことを特徴とするデータデスクランブル方法を提案している。   (6) In the present invention, a first step (for example, corresponding to step S201 and step S202 in FIG. 4) for generating a key sequence by inputting an initial vector and a key, and the first n bits of the generated key sequence A second step (for example, corresponding to step S203 and step S204 in FIG. 4) that executes descrambling processing on the input ciphertext and outputs plaintext using (n is a positive integer) as a scramble key. We propose a data descrambling method characterized by this.

この発明によれば、初期ベクトルと鍵とを入力して鍵系列を生成し、生成した鍵系列の先頭nビット(nは正の整数)をスクランブル鍵として、入力した暗号文にデスクランブル処理を実行して平文を出力する。したがって、デスクランブル関数が用いるスクランブル鍵をストリーム暗号により生成するため、デスクランブル鍵の耐タンパ性を確保できる。また、デスクランブル処理を行うことで、処理の高速化を実現することができる。   According to the present invention, a key sequence is generated by inputting an initial vector and a key, and a descrambling process is performed on the input ciphertext using the first n bits (n is a positive integer) of the generated key sequence as a scramble key. Execute and output plaintext. Therefore, since the scramble key used by the descrambling function is generated by the stream cipher, the tamper resistance of the descrambling key can be ensured. Further, by performing descrambling processing, it is possible to realize high-speed processing.

(7)本発明は、コンピュータに、初期ベクトルと鍵とを入力して鍵系列を生成する第1のステップ(例えば、図2のステップS101およびステップS102に相当)と、該生成した鍵系列の先頭nビット(nは正の整数)をスクランブル鍵として、入力した平文にスクランブル処理を実行して暗号化文を出力する第2のステップ(例えば、図2のステップS103およびステップS104に相当)と、を実行させるためのプログラムを提案している。   (7) In the present invention, a first step (for example, corresponding to step S101 and step S102 in FIG. 2) for generating a key sequence by inputting an initial vector and a key to a computer, and the generated key sequence A second step (for example, corresponding to step S103 and step S104 in FIG. 2) that uses the first n bits (n is a positive integer) as a scramble key, executes scramble processing on the input plaintext, and outputs an encrypted text; , Has proposed a program to execute.

この発明によれば、初期ベクトルと鍵とを入力して鍵系列を生成し、生成した鍵系列の先頭nビット(nは正の整数)をスクランブル鍵として、入力した平文にスクランブル処理を実行して暗号化文を出力する。したがって、スクランブル関数が用いるスクランブル鍵をストリーム暗号により生成するため、スクランブル鍵の耐タンパ性を確保できる。また、スクランブル処理を行うことで、処理の高速化を実現することができる。   According to the present invention, an initial vector and a key are input to generate a key sequence, and the first n bits (n is a positive integer) of the generated key sequence is used as a scramble key to execute scramble processing on the input plaintext. Output ciphertext. Therefore, since the scramble key used by the scramble function is generated by the stream cipher, the tamper resistance of the scramble key can be ensured. Further, by performing the scramble process, the processing speed can be increased.

(8)本発明は、コンピュータに、初期ベクトルと鍵とを入力して鍵系列を生成する第1のステップ(例えば、図4のステップS201およびステップS202に相当)と、該生成した鍵系列の先頭nビット(nは正の整数)をスクランブル鍵として、入力した暗号文にデスクランブル処理を実行して平文を出力する第2のステップ(例えば、図4のステップS203およびステップS204に相当)と、を実行させるためのプログラムを提案している。   (8) In the present invention, a first step (for example, corresponding to step S201 and step S202 in FIG. 4) for generating a key sequence by inputting an initial vector and a key to a computer, and the generated key sequence A second step (for example, corresponding to step S203 and step S204 in FIG. 4) of using the first n bits (n is a positive integer) as a scramble key, executing descrambling processing on the input ciphertext and outputting plaintext; , Has proposed a program to execute.

この発明によれば、初期ベクトルと鍵とを入力して鍵系列を生成し、生成した鍵系列の先頭nビット(nは正の整数)をスクランブル鍵として、入力した暗号文にデスクランブル処理を実行して平文を出力する。したがって、デスクランブル関数が用いるスクランブル鍵をストリーム暗号により生成するため、デスクランブル鍵の耐タンパ性を確保できる。また、デスクランブル処理を行うことで、処理の高速化を実現することができる。   According to the present invention, a key sequence is generated by inputting an initial vector and a key, and a descrambling process is performed on the input ciphertext using the first n bits (n is a positive integer) of the generated key sequence as a scramble key. Execute and output plaintext. Therefore, since the scramble key used by the descrambling function is generated by the stream cipher, the tamper resistance of the descrambling key can be ensured. Further, by performing descrambling processing, it is possible to realize high-speed processing.

本発明によれば、論理演算のみを用いてデータをスクランブルすることにより、処理の高速化を実現し、さらに、スクランブルに利用する鍵の生成にストリーム暗号を用いることにより、高い安全性を実現することができるという効果がある。   According to the present invention, high-speed processing is realized by scrambling data using only logical operations, and high security is realized by using a stream cipher to generate a key used for scrambling. There is an effect that can be.

以下、本発明の実施形態について、図面を用いて、詳細に説明する。
なお、本実施形態における構成要素は適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組合せを含む様々なバリエーションが可能である。したがって、本実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
Note that the constituent elements in the present embodiment can be appropriately replaced with existing constituent elements, and various variations including combinations with other existing constituent elements are possible. Therefore, the description of the present embodiment does not limit the contents of the invention described in the claims.

<データスクランブル装置の構成>
図1を用いて、本実施形態に係るデータスクランブル装置の構成について説明する。本実施形態に係るデータスクランブル装置10は、図1に示すように、鍵格納部11と、ストリーム暗号化部12と、スクランブル関数13とから構成されている。
<Configuration of data scrambler>
The configuration of the data scrambler according to this embodiment will be described with reference to FIG. As shown in FIG. 1, the data scramble apparatus 10 according to the present embodiment includes a key storage unit 11, a stream encryption unit 12, and a scramble function 13.

鍵格納部11は、ストリーム暗号化部12に入力する鍵を格納している。なお、鍵は、耐タンパ化されて格納されている。ストリーム暗号化部12は、鍵格納部11から入力する鍵と初期ベクトルに基づいて、鍵系列を生成し、生成した鍵系列の先頭のnビットをスクランブル関数13において用いるスクランブル鍵として、スクランブル関数13に出力する。   The key storage unit 11 stores a key to be input to the stream encryption unit 12. The key is stored in a tamper resistant manner. The stream encryption unit 12 generates a key sequence based on the key input from the key storage unit 11 and the initial vector, and uses the first n bits of the generated key sequence as a scramble key to be used in the scramble function 13. Output to.

ここで、初期ベクトルを特に秘匿化する必要はないが、データスクランブル装置10と後述するデータデスクランブル装置20との間で共有する必要がある。具体的な共有の方法としては、1)時間情報を用いて共有する。2)一方の装置が乱数を生成し、もう一方の装置に通知することにより共有する等の方法がある。   Here, it is not necessary to conceal the initial vector in particular, but it is necessary to share it between the data scrambler 10 and the data descrambler 20 described later. As a specific sharing method, 1) sharing is performed using time information. 2) There is a method in which one device generates a random number and shares it by notifying the other device.

スクランブル関数13は、入力した平文データに対して、ストリーム暗号化部12から入力したスクランブル鍵に基づいて、スクランブル処理を施して、暗号文データを出力する。   The scramble function 13 performs scramble processing on the input plaintext data based on the scramble key input from the stream encryption unit 12, and outputs ciphertext data.

<データスクランブル装置の処理>
次に、図2を用いて、本実施形態に係るデータスクランブル装置の処理について説明する。
<Processing of data scrambler>
Next, processing of the data scrambler according to the present embodiment will be described using FIG.

まず、ストリーム暗号化部12は、鍵格納部11から鍵を入力するとともに、初期ベクトルを入力する(ステップS101)。ストリーム暗号化部12は、入力した鍵と初期ベクトルに基づいて、鍵系列を生成するとともに、生成した鍵系列の先頭のnビットをスクランブル関数13において用いるスクランブル鍵として、スクランブル関数13に出力する(ステップS102)。   First, the stream encryption unit 12 receives a key from the key storage unit 11 and an initial vector (step S101). The stream encryption unit 12 generates a key sequence based on the input key and the initial vector, and outputs the first n bits of the generated key sequence to the scramble function 13 as a scramble key used in the scramble function 13 ( Step S102).

スクランブル関数13は、入力した平文データに対して、ストリーム暗号化部12から入力したスクランブル鍵に基づいて、スクランブル処理を実行する(ステップS103)。そして、スクランブル処理によって、暗号文データを生成して出力する(ステップS104)。   The scramble function 13 performs a scramble process on the input plaintext data based on the scramble key input from the stream encryption unit 12 (step S103). Then, ciphertext data is generated and output by scramble processing (step S104).

したがって、本実施形態に係るデータスクランブル装置によれば、スクランブル関数が用いるスクランブル鍵をストリーム暗号により生成するため、スクランブル鍵の耐タンパ性を確保できる。また、スクランブル処理を行うことで、処理の高速化を実現することができる。   Therefore, according to the data scramble apparatus according to the present embodiment, since the scramble key used by the scramble function is generated by the stream cipher, it is possible to ensure tamper resistance of the scramble key. Further, by performing the scramble process, the processing speed can be increased.

<データデスクランブル装置の構成>
図3を用いて、本実施形態に係るデータデスクランブル装置の構成について説明する。本実施形態に係るデータデスクランブル装置20は、図3に示すように、鍵格納部21と、ストリーム暗号化部22と、デスクランブル関数23とから構成されている。
<Configuration of data descrambling device>
A configuration of the data descrambling apparatus according to the present embodiment will be described with reference to FIG. As shown in FIG. 3, the data descrambling device 20 according to the present embodiment includes a key storage unit 21, a stream encryption unit 22, and a descrambling function 23.

鍵格納部21は、ストリーム暗号化部22に入力する鍵を格納している。なお、鍵は、耐タンパ化されて格納されている。ストリーム暗号化部22は、鍵格納部21から入力する鍵と初期ベクトルに基づいて、鍵系列を生成し、生成した鍵系列の先頭のnビットをデスクランブル関数23において用いるデスクランブル鍵として、デスクランブル関数23に出力する。   The key storage unit 21 stores a key to be input to the stream encryption unit 22. The key is stored in a tamper resistant manner. The stream encryption unit 22 generates a key sequence based on the key input from the key storage unit 21 and the initial vector, and uses the first n bits of the generated key sequence as a descrambling key used in the descrambling function 23. Output to the scramble function 23.

ここで、初期ベクトルを特に秘匿化する必要はないが、データスクランブル装置10と後述するデータデスクランブル装置20との間で共有する必要がある。具体的な共有の方法としては、1)時間情報を用いて共有する。2)一方の装置が乱数を生成し、もう一方の装置に通知することにより共有する等の方法がある。   Here, it is not necessary to conceal the initial vector in particular, but it is necessary to share it between the data scrambler 10 and the data descrambler 20 described later. As a specific sharing method, 1) sharing is performed using time information. 2) There is a method in which one device generates a random number and shares it by notifying the other device.

デスクランブル関数23は、入力した暗号文データに対して、ストリーム暗号化部22から入力したデスクランブル鍵に基づいて、デスクランブル処理を施して、平文データを出力する。   The descrambling function 23 performs descrambling processing on the input ciphertext data based on the descrambling key input from the stream encryption unit 22 and outputs plaintext data.

<データデスクランブル装置の処理>
次に、図4を用いて、本実施形態に係るデータデスクランブル装置の処理について説明する。
<Processing of data descrambling device>
Next, processing of the data descrambling apparatus according to the present embodiment will be described using FIG.

まず、ストリーム暗号化部22は、鍵格納部21から鍵を入力するとともに、初期ベクトルを入力する(ステップS201)。ストリーム暗号化部22は、入力した鍵と初期ベクトルに基づいて、鍵系列を生成するとともに、生成した鍵系列の先頭のnビットをデスクランブル関数13において用いるデスクランブル鍵として、デスクランブル関数13に出力する(ステップS202)。   First, the stream encryption unit 22 receives a key from the key storage unit 21 and an initial vector (step S201). The stream encryption unit 22 generates a key sequence based on the input key and the initial vector, and uses the first n bits of the generated key sequence as a descrambling key for use in the descrambling function 13. Output (step S202).

デスクランブル関数23は、入力した暗号文データに対して、ストリーム暗号化部22から入力したデスクランブル鍵に基づいて、デスクランブル処理を実行する(ステップS203)。そして、デスクランブル処理によって、平文データを生成して出力する(ステップS204)。   The descrambling function 23 executes descrambling processing on the input ciphertext data based on the descrambling key input from the stream encryption unit 22 (step S203). Then, plain text data is generated and output by descrambling (step S204).

したがって、本実施形態に係るデータデスクランブル装置によれば、デスクランブル関数が用いるデスクランブル鍵をストリーム暗号により生成するため、デスクランブル鍵の耐タンパ性を確保できる。また、デスクランブル処理を行うことで、処理の高速化を実現することができる。   Therefore, according to the data descrambling apparatus according to the present embodiment, the descrambling key used by the descrambling function is generated by the stream cipher, so that the tamper resistance of the descrambling key can be ensured. Further, by performing descrambling processing, it is possible to realize high-speed processing.

なお、データスクランブル装置およびデータデスクランブル装置の処理をコンピュータ読み取り可能な記録媒体に記録し、この記録媒体に記録されたプログラムをデータスクランブル装置およびデータデスクランブル装置に読み込ませ、実行することによって本発明のデータスクランブル装置およびデータデスクランブル装置を実現することができる。ここでいうコンピュータシステムとは、OSや周辺装置等のハードウェアを含む。   It should be noted that the processing of the data scrambler and the data descrambler is recorded on a computer-readable recording medium, and the program recorded on the recording medium is read and executed by the data scrambler and data descrambler. The data scramble device and the data descramble device can be realized. The computer system here includes an OS and hardware such as peripheral devices.

また、「コンピュータシステム」は、WWW(World Wide Web)システムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されても良い。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。   Further, the “computer system” includes a homepage providing environment (or display environment) if a WWW (World Wide Web) system is used. The program may be transmitted from a computer system storing 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.

また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。更に、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。   The program may be for realizing a part of the functions described above. Furthermore, what can implement | achieve the function mentioned above in combination with the program already recorded on the computer system, and what is called a difference file (difference program) may be sufficient.

以上、この発明の実施形態につき、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。   The embodiments of the present invention have been described in detail with reference to the drawings. However, the specific configuration is not limited to the embodiments, and includes designs and the like that do not depart from the gist of the present invention.

本実施形態に係るデータスクランブル装置の構成図である。It is a block diagram of the data scramble apparatus which concerns on this embodiment. 本実施形態に係るデータスクランブル装置の処理フローである。It is a processing flow of the data scramble apparatus which concerns on this embodiment. 本実施形態に係るデータデスクランブル装置の構成図である。It is a block diagram of the data descrambling apparatus which concerns on this embodiment. 本実施形態に係るデータデスクランブル装置の処理フローである。It is a processing flow of the data descrambling apparatus which concerns on this embodiment.

符号の説明Explanation of symbols

10・・・データスクランブル装置、11、21・・・鍵格納部、12、22・・・ストリーム暗号化部、13・・・スクランブル関数、23・・・デスクランブル関数
DESCRIPTION OF SYMBOLS 10 ... Data scramble apparatus, 11, 21 ... Key storage part, 12, 22 ... Stream encryption part, 13 ... Scramble function, 23 ... Descramble function

Claims (8)

初期ベクトルと鍵とを入力して鍵系列を生成するストリーム暗号化手段と、
該生成した鍵系列の先頭nビット(nは正の整数)をスクランブル鍵として、入力した平文にスクランブル処理を実行して暗号化文を出力するスクランブル関数と、
を備えたことを特徴とするデータスクランブル装置。
Stream encryption means for generating a key sequence by inputting an initial vector and a key;
A scramble function that executes a scramble process on the input plaintext and outputs an encrypted text using the first n bits (n is a positive integer) of the generated key sequence as a scramble key;
A data scramble apparatus comprising:
前記鍵が耐タンパ化され、格納されていることを特徴とする請求項1に記載のデータスクランブル装置。   The data scramble apparatus according to claim 1, wherein the key is tamper-proof and stored. 初期ベクトルと鍵とを入力して鍵系列を生成するストリーム暗号化手段と、
該生成した鍵系列の先頭nビット(nは正の整数)をスクランブル鍵として、入力した暗号文にデスクランブル処理を実行して平文を出力するデスクランブル関数と、
を備えたことを特徴とするデータデスクランブル装置。
Stream encryption means for generating a key sequence by inputting an initial vector and a key;
A descrambling function that executes descrambling on the input ciphertext and outputs plaintext using the first n bits (n is a positive integer) of the generated key sequence as a scramble key;
A data descrambling device comprising:
前記鍵が耐タンパ化され、格納されていることを特徴とする請求項3に記載のデータデスクランブル装置。   4. The data descrambling apparatus according to claim 3, wherein the key is tamper-resistant and stored. 初期ベクトルと鍵とを入力して鍵系列を生成する第1のステップと、
該生成した鍵系列の先頭nビット(nは正の整数)をスクランブル鍵として、入力した平文にスクランブル処理を実行して暗号化文を出力する第2のステップと、
を備えたことを特徴とするデータスクランブル方法。
A first step of inputting an initial vector and a key to generate a key sequence;
A second step of executing a scramble process on the input plaintext and outputting an encrypted text using the first n bits (n is a positive integer) of the generated key sequence as a scramble key;
A data scramble method comprising:
初期ベクトルと鍵とを入力して鍵系列を生成する第1のステップと、
該生成した鍵系列の先頭nビット(nは正の整数)をスクランブル鍵として、入力した暗号文にデスクランブル処理を実行して平文を出力する第2のステップと、
を備えたことを特徴とするデータデスクランブル方法。
A first step of inputting an initial vector and a key to generate a key sequence;
A second step of executing a descrambling process on the input ciphertext and outputting a plaintext by using the first n bits (n is a positive integer) of the generated key sequence as a scramble key;
A data descrambling method comprising:
コンピュータに、
初期ベクトルと鍵とを入力して鍵系列を生成する第1のステップと、
該生成した鍵系列の先頭nビット(nは正の整数)をスクランブル鍵として、入力した平文にスクランブル処理を実行して暗号化文を出力する第2のステップと、
を実行させるためのプログラム。
On the computer,
A first step of inputting an initial vector and a key to generate a key sequence;
A second step of executing a scramble process on the input plaintext and outputting an encrypted text using the first n bits (n is a positive integer) of the generated key sequence as a scramble key;
A program for running
コンピュータに、
初期ベクトルと鍵とを入力して鍵系列を生成する第1のステップと、
該生成した鍵系列の先頭nビット(nは正の整数)をスクランブル鍵として、入力した暗号文にデスクランブル処理を実行して平文を出力する第2のステップと、
を実行させるためのプログラム。
On the computer,
A first step of inputting an initial vector and a key to generate a key sequence;
A second step of executing a descrambling process on the input ciphertext and outputting a plaintext by using the first n bits (n is a positive integer) of the generated key sequence as a scramble key;
A program for running
JP2007202646A 2007-08-03 2007-08-03 Data scrambling apparatus, data descrambling apparatus, data scrambling method, data descrambling method and program Pending JP2009037095A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007202646A JP2009037095A (en) 2007-08-03 2007-08-03 Data scrambling apparatus, data descrambling apparatus, data scrambling method, data descrambling method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007202646A JP2009037095A (en) 2007-08-03 2007-08-03 Data scrambling apparatus, data descrambling apparatus, data scrambling method, data descrambling method and program

Publications (1)

Publication Number Publication Date
JP2009037095A true JP2009037095A (en) 2009-02-19

Family

ID=40439042

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007202646A Pending JP2009037095A (en) 2007-08-03 2007-08-03 Data scrambling apparatus, data descrambling apparatus, data scrambling method, data descrambling method and program

Country Status (1)

Country Link
JP (1) JP2009037095A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013191907A (en) * 2012-03-12 2013-09-26 Kddi Corp Stream encryption processing system, anti-tamper device, and stream encryption processing method
CN111277802A (en) * 2020-03-03 2020-06-12 浙江宇视科技有限公司 Video code stream processing method, device, equipment and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0293487A (en) * 1988-09-29 1990-04-04 Nippon Telegr & Teleph Corp <Ntt> Key writing device
JP2001103045A (en) * 1999-09-29 2001-04-13 Advanced Mobile Telecommunications Security Technology Research Lab Co Ltd Storage device for backing up cryptographic key
JP2003330705A (en) * 2002-03-08 2003-11-21 Ricoh Co Ltd Multi-valued data series, information recording medium, multi-valued data series generating method, and program
JP2007089097A (en) * 2005-09-20 2007-04-05 Chaosware Inc Vector type encryption system
JP2007089101A (en) * 2005-09-20 2007-04-05 Chaosware Inc Vector type encryption control system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0293487A (en) * 1988-09-29 1990-04-04 Nippon Telegr & Teleph Corp <Ntt> Key writing device
JP2001103045A (en) * 1999-09-29 2001-04-13 Advanced Mobile Telecommunications Security Technology Research Lab Co Ltd Storage device for backing up cryptographic key
JP2003330705A (en) * 2002-03-08 2003-11-21 Ricoh Co Ltd Multi-valued data series, information recording medium, multi-valued data series generating method, and program
JP2007089097A (en) * 2005-09-20 2007-04-05 Chaosware Inc Vector type encryption system
JP2007089101A (en) * 2005-09-20 2007-04-05 Chaosware Inc Vector type encryption control system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013191907A (en) * 2012-03-12 2013-09-26 Kddi Corp Stream encryption processing system, anti-tamper device, and stream encryption processing method
CN111277802A (en) * 2020-03-03 2020-06-12 浙江宇视科技有限公司 Video code stream processing method, device, equipment and storage medium

Similar Documents

Publication Publication Date Title
US8259934B2 (en) Methods and devices for a chained encryption mode
US9515818B2 (en) Multi-block cryptographic operation
EP3014800B1 (en) Method and apparatus to encrypt plaintext data
US20060023875A1 (en) Enhanced stream cipher combining function
US8718280B2 (en) Securing keys of a cipher using properties of the cipher process
US9565018B2 (en) Protecting cryptographic operations using conjugacy class functions
KR20170097509A (en) Operation method based on white-box cryptography and security apparatus for performing the method
WO2021129470A1 (en) Polynomial-based system and method for fully homomorphic encryption of binary data
CN111066077A (en) Encryption device, encryption method, decryption device, and decryption method
JP2008035305A (en) Encryption method and data concealing method
US20160241387A1 (en) System and method for manipulating both the plaintext and ciphertext of an encryption process prior to dissemination to an intended recipient
KR20150064042A (en) Method and device for digital data blocks encryption and decryption
JP2009037095A (en) Data scrambling apparatus, data descrambling apparatus, data scrambling method, data descrambling method and program
JP5431191B2 (en) Authenticated stream cipher encryption apparatus, authenticated stream cipher decryption apparatus, encryption method, decryption method, and program
JP4938430B2 (en) Nonlinear function unit, stream cipher encryption apparatus, decryption apparatus, MAC generation apparatus, stream cipher encryption method, decryption method, MAC generation method, and program
Buja et al. The direction of lightweight ciphers in mobile big data computing
JP5415020B2 (en) Stream cipher encryption apparatus, decryption apparatus, MAC generation apparatus, stream cipher encryption method, decryption method, MAC generation method, and program
JP5489696B2 (en) Stream cipher encryption apparatus, stream cipher decryption apparatus, stream cipher encryption method, stream cipher decryption method, and program
JP5559011B2 (en) Stream cipher encryption apparatus, stream cipher encryption method and program
JP5882797B2 (en) Stream encryption processing system, tamper resistant device, and stream encryption processing method
JP5706751B2 (en) Stream cipher encryption apparatus, stream cipher decryption apparatus, stream cipher encryption method, stream cipher decryption method, and program
JP2010056848A (en) Encryption apparatus, encryption method, program, and program storage medium
JP5293612B2 (en) ENCRYPTION DEVICE, DECRYPTION DEVICE, ENCRYPTION METHOD, DECRYPTION METHOD, AND PROGRAM
Singh et al. Analysis of EnDeCloudReports for encrypting and decrypting data in cloud
JP5665588B2 (en) Algorithm variable encryption device, algorithm variable decryption device, algorithm variable encryption method, algorithm variable decryption method, and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100205

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120703

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20121030