JP2014165894A - System and method for protecting communication by partial encryption - Google Patents

System and method for protecting communication by partial encryption Download PDF

Info

Publication number
JP2014165894A
JP2014165894A JP2013038175A JP2013038175A JP2014165894A JP 2014165894 A JP2014165894 A JP 2014165894A JP 2013038175 A JP2013038175 A JP 2013038175A JP 2013038175 A JP2013038175 A JP 2013038175A JP 2014165894 A JP2014165894 A JP 2014165894A
Authority
JP
Japan
Prior art keywords
encryption
data
plaintext
encrypted
transmission
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2013038175A
Other languages
Japanese (ja)
Other versions
JP6000164B2 (en
Inventor
Hirotaka Yoshida
博隆 吉田
Satoshi Okubo
訓 大久保
Tadashi Kaji
忠司 鍛
Hiroki Uchiyama
宏樹 内山
Keisuke Hakuta
恵輔 伯田
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2013038175A priority Critical patent/JP6000164B2/en
Publication of JP2014165894A publication Critical patent/JP2014165894A/en
Application granted granted Critical
Publication of JP6000164B2 publication Critical patent/JP6000164B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To solve the problem that, when applying an encryption technology to a control system in which processing is performed periodically and an execution cycle is short, since speed requirement to encryption is made severe because of short-cycle processing, optimal partial encryption meeting a performance requirement cannot be selected.SOLUTION: Means for protecting communication between a transmission control device and a reception control device by means of partial encryption processing is provided. The transmission control device converts plaintext data by performing partial encryption processing while using encryption setting information corresponding to a transmission destination, and creates data for transmission. An encryption header included in the data for transmission includes filter information designating an encryption subjected part and a non-subjected part, and a size of the filter information is appropriately set, thereby dealing with short-cycle processing (requirement of high-speed performance as encryption) in a control system.

Description

本発明は、ネットワークに接続した制御システムにおける装置間の通信保護に関し、さらに詳しくは通信データの一部分に対して暗号処理する方法を用いて、装置間の通信を保護するネットワークシステムに関する。   The present invention relates to communication protection between devices in a control system connected to a network, and more particularly to a network system that protects communication between devices using a method of performing cryptographic processing on a part of communication data.

鉄道、電力、水道、ガスといった重要な社会インフラを支える制御システムは、従来閉じたネットワーク内に構築されており、システムでは専用のOSやプロトコルが使用されてきた。これにより、制御システムは、情報システムとは異なり、ウィルスによる攻撃等のセキュリティ脅威にさらされることがない、もしくは攻撃されても被害が発生しないと考えられてきた。   Control systems that support important social infrastructure such as railways, electric power, water, and gas have been constructed in closed networks, and dedicated OSs and protocols have been used in the systems. As a result, it has been considered that, unlike an information system, a control system is not exposed to a security threat such as an attack by a virus or does not cause damage even if attacked.

しかしながら、制御システムのネットワークがインターネット等の外部ネットワークへの接続頻度の増加や装置への汎用OSの採用、および制御システムを攻撃対象としたウィルス(スタクスネット SUTAXNET)の出現に伴い、制御システムにおいても情報システムと同様のセキュリティ対策が求められてきている。一方、制御システムに対するセキュリティ基準は、これまで米国NIST、米国NERC、英国CPNIといった各国の研究機関や業界団体が主体となり、各国の基準や業界標準を策定していたが、全世界共通のセキュリティ基準の必要性から、2009年にIEC(International Electrotechnical Commission)において制御システムのセキュリティに関する国際標準の策定が開始された。
このような流れを受け、制御システムにおいては、セキュリティ脅威の顕在化および国際標準の策定により、脅威から制御システムを保護し、顧客からのセキュリティ対策要求に対応するために、セキュリティ機能の導入やセキュリティ対策運用が必要になることが予想される。
However, with the increase in the frequency of connection of the control system network to external networks such as the Internet, the adoption of a general-purpose OS for the device, and the emergence of viruses targeting the control system (Stuxnet SUTAXNET), However, security measures similar to those for information systems have been demanded. On the other hand, security standards for control systems have been established mainly by research institutions and industry organizations in each country such as US NIST, US NERC, and UK CPNI. In 2009, the International Electrotechnical Commission (IEC) started to formulate international standards for control system security.
In response to this trend, in control systems, security threats are introduced and international standards are established to protect the control system from threats and respond to security countermeasure requests from customers. It is expected that countermeasures will be required.

このようなセキュリティ対策の一つとして暗号技術が知られている。暗号技術は、格納データや通信データの秘匿性を保護するだけではなく、通信先の認証やデータの改ざん検知も可能であるため、セキュリティ対策の根幹となる技術である。よって、制御システムを保護するために、今後、制御システム内の装置に暗号技術を組み込んでゆくことが必要である。   Encryption technology is known as one of such security measures. Cryptographic technology is not only protecting the confidentiality of stored data and communication data, but also enables authentication of communication destinations and detection of falsification of data, and is therefore a fundamental technology for security measures. Therefore, in order to protect the control system, it will be necessary in the future to incorporate cryptographic techniques into devices in the control system.

一方、制御システムは、センサの情報を基にバルブ(valve)やアクチュエータ(actuator)といった装置を動作させ、あらかじめ設定されている圧力や温度を保つことが要求される。さらに、周期的に処理を行い、かつ実行周期は短いことが通例である。従って、データの更新頻度が高く、データの有効期限が短いことが典型的であり、短期間での機密性を確保することが必要であり、全データを暗号化する必要はない場合が多い。一方、制御システムに暗号技術を適用する際には、上述した短周期処理のため、暗号に課される速度要件は厳しい。情報システムで行うように全データを長期間保護する方法で暗号化を実施すると、速度要件を満たすことは非常に困難である。   On the other hand, a control system is required to operate devices such as a valve and an actuator based on sensor information to maintain a preset pressure and temperature. Furthermore, it is usual that processing is performed periodically and the execution cycle is short. Therefore, it is typical that the data update frequency is high and the data expiration date is short, it is necessary to ensure confidentiality in a short period, and it is often unnecessary to encrypt all data. On the other hand, when applying encryption technology to the control system, the speed requirement imposed on the encryption is severe due to the short cycle processing described above. It is very difficult to meet speed requirements when encryption is performed in a way that protects all data for a long time, as is done in information systems.

以上より、制御システムでは、一定長のデータ当たりの暗号処理の回数を削減する、すなわち、データを暗号処理の対象部と暗号処理の非対象部に切り分け、対象部のみに暗号化を行う技術として部分暗号が有力と考えられる。部分暗号に関しては、特許文献1が知られている。   As described above, in the control system, the number of encryption processes per fixed length of data is reduced, that is, the data is divided into the target part of the encryption process and the non-target part of the encryption process, and only the target part is encrypted. Partial ciphers are considered promising. Regarding partial encryption, Patent Document 1 is known.

特開2011−232604号公報JP 2011-232604 A

上記従来技術を制御システムに適用する際には以下の二つの課題が挙げられる。
・安全性の向上に関する課題
制御システムの通信に部分暗号を適用する際には、暗号処理の対象部と暗号処理の非対象部の切り分け方法に関し、自由度が多い方が、その自由度に多様性があるので、攻撃者にとってより攻撃が困難になるため、安全性が向上すると考えられる。
There are the following two problems when applying the above-described conventional technology to a control system.
・ Issues on improving safety When applying partial encryption to control system communications, the degree of freedom is more diverse in the method of separating the target part of cryptographic processing and the non-target part of cryptographic processing. Therefore, it becomes more difficult for an attacker to attack, and it is considered that safety is improved.

しかし、特許文献1は、文書等のコンテンツ保護を目的とした暗号化方法で、文書を暗号化した後であっても、文書の概要がわかることを特徴としている。まず、制御システムで扱うデータは、バイナリデータであることが多いので、特許文献1の方法において、区切りを厳密かつ明確に指定できるかどうかは課題である。特許文献1における、暗号処理の対象部と暗号処理の非対象部の区切り方法としては、偶数文字のみを暗号化し、奇数文字は暗号化しないことによって、区切るという方法が挙げられていた。しかし、目的を保ちつつ区切る方法を自由には選べず、大きな制限が生じる。このように、特許文献1では、暗号処理の対象部と暗号処理の非対象部の切り分け方の自由度が小さいため、安全性(機密性)の向上の寄与は低いという課題がある。   However, Patent Document 1 is characterized in that an outline of a document can be obtained even after the document is encrypted by an encryption method for the purpose of content protection of the document or the like. First, since the data handled by the control system is often binary data, it is a problem whether or not the separation can be specified strictly and clearly in the method of Patent Document 1. In Patent Document 1, as a method of separating the target part of the encryption process and the non-target part of the encryption process, a method of separating only by encrypting even characters and not encrypting odd characters has been cited. However, it is not possible to freely choose a method for separating the objects while maintaining the purpose, which causes a great restriction. As described above, Patent Document 1 has a problem that the contribution of improving the security (confidentiality) is low because the degree of freedom in how to separate the target part of the cryptographic process and the non-target part of the cryptographic process is small.

・性能向上に関する課題
また、上述したように、制御システムの通信に部分暗号を適用する際には、暗号関連処理に高速性が要求される。特許文献1の部分暗号の方法は、通常の情報セキュリティ分野で行われるように、文書の長期保護を目的としているために、データ全体に対して暗号処理の非対象部の割合を極限まで大きくすることは想定されておらず、この割合は一定の割合以下、たとえば、文書の全体に対する概要が占める割合以下に程度に抑えることが想定される。このような制限により、結局データの大半(7割〜8割等)を暗号化する必要があるという場合が典型的であり、暗号処理の速度向上の点では課題となる。
-Issues related to performance improvement As described above, when partial encryption is applied to communication of a control system, high speed is required for encryption-related processing. Since the method of partial encryption in Patent Document 1 aims at long-term protection of a document as is done in the normal information security field, the ratio of the non-target part of encryption processing to the entire data is increased to the limit. It is assumed that this ratio is limited to a certain ratio or less, for example, to a ratio equal to or less than the ratio occupied by the outline of the entire document. Due to such restrictions, it is typical that most of the data (70% to 80%, etc.) needs to be encrypted after all, which is a problem in terms of improving the speed of encryption processing.

また、特許文献1では、平文から切り出した暗号対象データを暗号化した後に、元のデータ位置に置き換える処理が実行される。この置き換え処理は、暗号処理の性能を最適化する際の障害となり得る。   Moreover, in patent document 1, after encrypting the encryption object data cut out from plaintext, the process replaced with the original data position is performed. This replacement process can be an obstacle when optimizing the performance of the cryptographic process.

本発明では、制御装置とネットワークから構成される通信保護システムにおいて、送信制御装置と受信制御装置の通信を、部分的な暗号処理によって保護する手段を提供する。送信制御装置は、平文データを部分的に暗号処理して変換し、送信用データを作成する。この際に、送信先に応じた暗号設定情報を用いた暗号処理を行う。送信用データには、暗号ヘッダも含む。暗号ヘッダには、暗号対象部と暗号非対象部を指定するフィルタ情報も含まれる。本発明では、フィルタ情報で定義するデータサイズを16バイト程度に設定可能としており、制御システムでの短い周期の処理 (暗号として高速性能が要求される) に対応できるよう、部分暗号の暗号非対象部の全データに対する割合を大きくすることができる。フィルタ情報は、16バイト等の任意のバイト列を扱うことができるので、既存技術の区切りに比べて多くの種類の区切りを作ることができ、安全性もより向上する。   The present invention provides means for protecting communication between a transmission control device and a reception control device by partial encryption processing in a communication protection system including a control device and a network. The transmission control device partially encrypts and converts plaintext data to create transmission data. At this time, encryption processing using encryption setting information corresponding to the transmission destination is performed. The transmission data includes an encryption header. The encryption header also includes filter information that specifies the encryption target part and the encryption non-target part. In the present invention, the data size defined by the filter information can be set to about 16 bytes, and it is not subject to partial cipher encryption so that it can cope with short cycle processing (high speed performance is required as encryption) in the control system. It is possible to increase the ratio of the total data to all data. Since the filter information can handle an arbitrary byte string such as 16 bytes, many types of delimiters can be created as compared with the delimiters of the existing technology, and the safety is further improved.

また、受信制御装置は、受け取ったデータを、部分的に復号処理して変換し、受信データを作成する。この際に、暗号ヘッダ部を取得し、フィルタ情報を取得し、受信制御装置が予め格納するアルゴリズムテーブルや鍵情報テーブルなどの部分暗号処理に必要な暗号関連情報により、受信データを部分的に復号し、元の平文データを取得する。   In addition, the reception control device partially decodes and converts the received data to create reception data. At this time, the encryption header part is acquired, the filter information is acquired, and the received data is partially decrypted by the encryption related information necessary for the partial encryption processing such as the algorithm table and the key information table stored in advance by the reception control device. And get the original plaintext data.

暗号処理の対象部と暗号処理の非対象部の切り分け方に関する情報は、フィルタ情報として、送信用データに含ませるため、暗号化をさらに高速化する必要がある場合、特許文献1のような、暗号処理後の暗号ブロックの置き換え処理を省略することにより、暗号化の高速化が実現できる。より具体的には、送信用データにおいて、暗号適用後のデータをまとめて先頭に寄せて配置し、その直後に暗号処理の対象部データを配置することにより実現できる。   Information about how to separate the target part of the cryptographic process and the non-target part of the cryptographic process is included in the data for transmission as filter information. Therefore, as described in Patent Document 1, By omitting the encryption block replacement process after the encryption process, the encryption speed can be increased. More specifically, in the transmission data, the data after encryption application can be arranged together at the top, and the target data for encryption processing can be arranged immediately thereafter.

本発明によれば、部分的な暗号化により通信路の安全性確保を行う制御システムにおいて、実行周期が短く、高速な処理な暗号性能が要求される状況においても、データの有効期限に応じた安全性に応じた部分暗号方法を選択することができる。また、部分暗号領域、暗号アルゴリズム、鍵情報等の選択に関しても、送信先に応じて設定可能なため、制御の用途に即した、自由度の高い選択が可能となり、安全性と性能を最適化できる。   According to the present invention, in a control system that secures the safety of a communication path by partial encryption, even in a situation where an execution cycle is short and high-speed cryptographic performance is required, the data validity period is met. A partial encryption method according to security can be selected. In addition, the selection of the partial encryption area, encryption algorithm, key information, etc. can be set according to the transmission destination, so it is possible to select with a high degree of freedom in accordance with the purpose of control and optimize safety and performance. it can.

本発明の第一の実施形態が適用された部分暗号による通信保護された通信保護システムの構成を例示する図である。It is a figure which illustrates the structure of the communication protection system by which communication protection by the partial encryption to which 1st embodiment of this invention was applied was applied. 図1に示す送信装置と受信装置のハードウェア構成を例示する図である。It is a figure which illustrates the hardware constitutions of the transmitter shown in FIG. 1, and a receiver. 送信制御装置が送信データ変換を行う処理フローを例示する図である。It is a figure which illustrates the processing flow which a transmission control apparatus performs transmission data conversion. 受信制御装置が受信データ変換を行う処理フローを例示する図である。It is a figure which illustrates the processing flow which a reception control apparatus performs reception data conversion. 送信制御装置が暗号実行処理を行う処理フローを例示する図である。It is a figure which illustrates the processing flow in which a transmission control apparatus performs an encryption execution process. 受信制御装置が復号実行処理を行う処理フローを例示する図である。It is a figure which illustrates the processing flow which a reception control apparatus performs a decoding execution process. 送信制御装置がMAC生成実行処理を行う処理フローを例示する図である。It is a figure which illustrates the processing flow in which a transmission control apparatus performs a MAC production | generation execution process. 受信制御装置がMAC検証実行処理を行う処理フローを例示する図である。It is a figure which illustrates the processing flow in which a reception control apparatus performs a MAC verification execution process. 送信制御装置が送信データ変換を作成する暗号ヘッダのデータ構成を例示する図である。It is a figure which illustrates the data structure of the encryption header which a transmission control apparatus produces transmission data conversion. 送信制御装置が送信データ変換を行う変換後のデータ構成を例示する図である。It is a figure which illustrates the data structure after the conversion which a transmission control apparatus performs transmission data conversion. 送信制御装置で行う部分暗号による暗号実行の概要を例示する図である。It is a figure which illustrates the outline | summary of the encryption execution by the partial encryption performed with a transmission control apparatus. 複数パケットからなる平文の部分暗号による暗号実行の概要を示す図である。It is a figure which shows the outline | summary of the encryption execution by the partial encryption of the plaintext which consists of several packets. 複数パケットからなる平文の改ざん検知処理の概要を示す図である。It is a figure which shows the outline | summary of the tampering detection process of the plaintext which consists of multiple packets. 暗号通信種別に応じた、送信時のデータの流れを示す図である。It is a figure which shows the flow of the data at the time of transmission according to encryption communication classification. 暗号通信種別に応じた、受信時のデータの流れを示す図である。It is a figure which shows the flow of the data at the time of reception according to encryption communication classification.

本発明の一実施形態について説明する。なお、これにより本発明が限定されるものではない。   An embodiment of the present invention will be described. Note that the present invention is not limited thereby.

(システム構成)
図1は、本発明の第一の実施形態が適用された部分暗号による通信保護システムの構成図である。
(System configuration)
FIG. 1 is a configuration diagram of a communication protection system using partial encryption to which the first embodiment of the present invention is applied.

通信保護システム100は、送信装置110、ネットワーク120、受信装置130、を有する。なお、送信装置110、及び受信装置130はシステム100全体ではそれぞれ複数存在するが、図1ではシステム100の一部として、一つのネットワーク(120)に1台の送信装置と1台の受信装置が接続されている例を示す。   The communication protection system 100 includes a transmission device 110, a network 120, and a reception device 130. Although there are a plurality of transmission apparatuses 110 and reception apparatuses 130 in the entire system 100 in FIG. 1, one transmission apparatus and one reception apparatus are provided in one network (120) as a part of the system 100 in FIG. An example of connection is shown.

(送信装置)
送信装置110は、送信データを生成する送信データ生成部111、予め暗号設定テーブル204に格納されている暗号アルゴリズム設定を取得する暗号設定取得部112、暗号ヘッダを生成する暗号ヘッダ生成部113、情報の暗号処理またはMAC(Message Authenticate Code、メッセージ認証のための情報)生成を行う暗号処理部114、暗号通信種別を判定する暗号通信種別判定部115、秘密鍵および関連する情報を格納した鍵情報記憶装置118、外部との通信を行う通信部117、利用者の指示(ポリシー)に基づいて平文から暗号化対象を抽出するデータフィルタ部116、及び、入力データのフォーマットを判定する入力データフォーマット判定部119を有し、更に、秘密鍵および関連する情報を鍵情報記憶装置118内の鍵情報データベースに保存し、これらの処理部を用いて暗号送信データの送信を行う。なお、データフィルタ部116は、フィルタリングの仕方を自動生成することもある。
(Transmitter)
The transmission device 110 includes a transmission data generation unit 111 that generates transmission data, an encryption setting acquisition unit 112 that acquires encryption algorithm settings stored in advance in the encryption setting table 204, an encryption header generation unit 113 that generates an encryption header, and information Encryption processing unit 114 that performs encryption processing or MAC (Message Authenticate Code, information for message authentication) generation, encryption communication type determination unit 115 that determines the encryption communication type, and key information storage that stores the secret key and related information Device 118, communication unit 117 that communicates with the outside, data filter unit 116 that extracts an encryption target from plain text based on a user's instruction (policy), and an input data format determination unit that determines the format of input data 119, and further stores the secret key and related information in the key information storage device 118. Stored in database, and transmits the encrypted transmission data by using these processing units. The data filter unit 116 may automatically generate a filtering method.

(受信装置)
受信装置130は、受信データを生成する受信データ生成部131、暗号アルゴリズムを受信データの暗号ヘッダから取得する暗号設定取得部132、暗号ヘッダを検証する暗号ヘッダ検証部133、情報の復号処理またはMAC(Message Authenticate Code)の検証を行う復号処理部134、暗号通信種別を判定する暗号通信種別判定部135、秘密鍵および関連する情報を登録する鍵情報テーブル303、外部との通信を行う通信部137、入力データのフォーマットを判定する入力データフォーマット判定部139を有し、送信装置110から送信された暗号送信データを受信し、このデータから必要なデータを切り出し、通信種別に応じ、復号化処理、MAC検証処理を行う。また、暗号設定取得部132で取り出した暗号アルゴリズムIDと予め暗号アルゴリズムを保持しているアルゴリズムテーブル306の内容とが照合される。
(Receiver)
The reception device 130 includes a reception data generation unit 131 that generates reception data, an encryption setting acquisition unit 132 that acquires an encryption algorithm from an encryption header of the reception data, an encryption header verification unit 133 that verifies the encryption header, an information decryption process, or a MAC (Message Authenticate Code) verification decryption processing unit 134, encryption communication type determination unit 135 for determining the encryption communication type, key information table 303 for registering the secret key and related information, communication unit 137 for communication with the outside , Having an input data format determination unit 139 for determining the format of the input data, receiving the encrypted transmission data transmitted from the transmission device 110, cutting out necessary data from this data, and decrypting according to the communication type, Perform MAC verification processing. Also, the cryptographic algorithm ID extracted by the cryptographic setting acquisition unit 132 is collated with the contents of the algorithm table 306 that holds the cryptographic algorithm in advance.

なお、送信装置110、受信装置130は、情報処理が可能なコンピュータ(情報処理装置)である。   The transmission device 110 and the reception device 130 are computers (information processing devices) capable of information processing.

図2は、送信装置と受信装置のハードウェアの構成図の例である。
送信装置(110)と受信装置(130)は、それぞれCPU(11)、メモリ(12)、HDD(Hard Disk Drive)(13)、入力装置(14)、出力装置(15)、通信装置(16)、とから構成することができる。
FIG. 2 is an example of a hardware configuration diagram of the transmission device and the reception device.
The transmission device (110) and the reception device (130) are respectively a CPU (11), a memory (12), an HDD (Hard Disk Drive) (13), an input device (14), an output device (15), and a communication device (16). ), And.

(各種情報の構成)
後述する各処理で用いられる各種情報の構成を説明する。
図9は、本発明の第一の実施形態が適用された部分暗号による通信保護システムにおいて、暗号ヘッダ生成部(113)で生成される暗号ヘッダの構成を例示する図である。以下では、図9に示す表の「#」の番号nを用いて、各項目の符号を(900−n)(n=1〜9)と表記する。
(Composition of various information)
A configuration of various information used in each process described later will be described.
FIG. 9 is a diagram illustrating a configuration of a cryptographic header generated by the cryptographic header generation unit (113) in the partial cipher communication protection system to which the first embodiment of the present invention is applied. In the following description, the number n of “#” in the table shown in FIG. 9 is used to denote the code of each item as (900−n) (n = 1 to 9).

暗号ヘッダ(900)は、暗号通信の有無を示す情報である暗号通信フラグ(900−1)と、暗号通信時の処理内容を示す情報である通信処理ID(900−2)と、暗号化を実施するデータの位置を特定する情報であるフィルタ情報(900−3)と、暗号化を実施する際に利用するアルゴリズムを識別する情報である暗号用アルゴリズムID(900−4)と、暗号化を実施する際に利用する鍵を識別する情報である暗号用鍵ID(900−5)と、暗号化を実施する際に利用する初期ベクトルの情報である暗号用初期ベクトル(900−6)と、改ざん検知を実施する際に利用するアルゴリズムを識別する情報である改ざん検知用アルゴリズムID(900−7)と、改ざん検知を実施する際に利用する鍵を識別する情報である改ざん検知用鍵ID(900−8)と、改ざん検知を実施する際に利用する初期ベクトルや処理データの情報である改ざん検知用初期ベクトル/改ざん検知用処理データ(900−9)から構成される。   The encryption header (900) includes an encryption communication flag (900-1) that is information indicating presence / absence of encryption communication, a communication processing ID (900-2) that is information indicating processing contents at the time of encryption communication, and encryption. Filter information (900-3) which is information for specifying the position of data to be executed, encryption algorithm ID (900-4) which is information for identifying an algorithm used when performing encryption, and encryption An encryption key ID (900-5) that is information for identifying a key to be used at the time of implementation, an initial vector for encryption (900-6) that is information of an initial vector to be used at the time of encryption, A falsification detection algorithm ID (900-7), which is information for identifying an algorithm used when performing falsification detection, and a falsification, which is information for identifying a key used when performing falsification detection. And detecting the key ID (900-8), composed of the initial vector and information of the processing data to be utilized in practicing the tampering detection alteration detection for the initial vector / falsification detection processing data (900-9).

暗号通信フラグ(900−1)が「01」の場合には、本実施例の暗号化及び復号化の処理を行う。通信処理ID(900−2)は暗号通信種別判定部115、135で使用される。フィルタ情報(900−3)はデータフィルタ部116、136で使用される。暗号用アルゴリズムID(900−4)、暗号用鍵ID(900−5)、及び暗号用初期ベクトル(900−6)は暗号設定情報であり、暗号設定取得部112、132によって暗号ヘッダ(900)から取り出され、暗号処理部114、及び復号処理部134で使用される。暗号通信フラグ(900−1)、通信処理ID(900−2)、及びフィルタ情報(900−3)も暗号化及び復号化に必要な情報であるため、暗号設定情報に含まれる。   When the encryption communication flag (900-1) is “01”, the encryption and decryption processing of this embodiment is performed. The communication processing ID (900-2) is used by the encryption communication type determination units 115 and 135. The filter information (900-3) is used by the data filter units 116 and 136. The encryption algorithm ID (900-4), the encryption key ID (900-5), and the encryption initial vector (900-6) are encryption setting information. The encryption setting acquisition units 112 and 132 perform encryption header (900). And used by the encryption processing unit 114 and the decryption processing unit 134. Since the encryption communication flag (900-1), the communication processing ID (900-2), and the filter information (900-3) are also necessary information for encryption and decryption, they are included in the encryption setting information.

改ざん検知用アルゴリズムID(900−7)、改ざん検知用鍵ID(900−8)、及び改ざん検知用初期ベクトル/改ざん検知用処理データ(900−9)はMACであり、暗号処理部114、及び復号処理部134で使用される。   The falsification detection algorithm ID (900-7), the falsification detection key ID (900-8), and the falsification detection initial vector / falsification detection processing data (900-9) are MAC, and the encryption processing unit 114, Used in the decryption processing unit 134.

なお、暗号通信フラグ(900−1)が「00」の場合には、本実施例の暗号化及び復号化の処理は行われず、図9のデータ(900−2〜9)は存在しない。   When the encryption communication flag (900-1) is “00”, the encryption and decryption processes of the present embodiment are not performed, and the data (900-2 to 9) in FIG. 9 does not exist.

ここで、暗号ヘッダ(900)の構成要素は上記に限定されるものではなく、少なくとも上記の要素が含まれていればよい。また、暗号ヘッダ(900)の構成要素の順序は上記に限定されるものではない。   Here, the constituent elements of the encryption header (900) are not limited to the above, and it is sufficient that at least the above elements are included. Further, the order of the components of the encryption header (900) is not limited to the above.

図10は、本発明の第一の実施形態が適用された部分暗号による通信保護システムにおいて、送信装置(110)と受信装置(130)間で通信される暗号送信データ/暗号受信データの構成を例示する図である。以下では、図10に示す表の各行の番号nを用いて、各項目の符号を(1000−n)(n=1〜3)と表記する。   FIG. 10 shows a configuration of encrypted transmission data / encrypted reception data communicated between the transmission device (110) and the reception device (130) in the partial cipher communication protection system to which the first embodiment of the present invention is applied. It is a figure illustrated. Below, the code | symbol of each item is described as (1000-n) (n = 1-3) using the number n of each line of the table | surface shown in FIG.

暗号送信データ/暗号受信データ(1000)は、暗号通信の有無や暗号アルゴリズム、暗号鍵等を示す情報 である暗号ヘッダ(1000−1)と、送受信するデータである送信データ/受信データ(1000−2)と、送信データ/受信データのMACデータ(1000−3)から構成される。   The encryption transmission data / encryption reception data (1000) includes an encryption header (1000-1) that indicates the presence / absence of encryption communication, an encryption algorithm, an encryption key, and the like, and transmission data / reception data (1000-) that is data to be transmitted / received. 2) and MAC data (1000-3) of transmission data / reception data.

暗号ヘッダ(1000−1)には、図9に示した暗号設定情報(900−3〜6)が含まれる。送信データ/受信データ(1000−2)には、平文、あるいは、暗号化対象以外の他の平文と暗号データとの組が含まれる。MACデータ(1000−3)には、図9に示したMACデータ(900−7〜9)が含まれる。   The encryption header (1000-1) includes the encryption setting information (900-3 to 6) shown in FIG. The transmission data / reception data (1000-2) includes plaintext or a combination of plaintext and encryption data other than the encryption target. The MAC data (1000-3) includes the MAC data (900-7 to 9) shown in FIG.

ここで、暗号送信データ/暗号受信データ(1000)の構成要素は上記に限定されるものではなく、少なくとも上記の要素が含まれていればよい。また、暗号送信データ/暗号受信データ(1000)の構成要素の順序は上記に限定されるものではない。   Here, the constituent elements of the encrypted transmission data / encrypted reception data (1000) are not limited to the above, and it is sufficient that at least the above elements are included. The order of the constituent elements of the encrypted transmission data / encrypted reception data (1000) is not limited to the above.

(処理フロー)
本実施形態の部分暗号による通信保護システムにおける処理フローについて説明する。以下に述べる処理フローは、制御装置の送信装置110と受信装置130の記憶装置に格納されたプログラムがメモリにロードされ、CPUにより実行されることにより、部分暗号による通信保護システムを構成する装置上に具現化される各処理部により実行されるものである。また、各プログラムは予め記憶装置に格納されても良いし、他の記憶媒体または通信媒体(ネットワークまたはネットワークを伝搬する搬送波)を介して、必要なときに導入されても良い。
(Processing flow)
A processing flow in the communication protection system using partial encryption according to this embodiment will be described. In the processing flow described below, a program stored in the storage device of the control device and the storage device of the reception device 130 is loaded into the memory and executed by the CPU, whereby the communication protection system based on partial encryption is configured on the device. It is executed by each processing unit embodied in Each program may be stored in a storage device in advance, or may be introduced when necessary via another storage medium or a communication medium (a network or a carrier wave propagating through the network).

各処理の説明の前に、本発明における、部分暗号による暗号実行の概要を説明する。
図11は、本発明の第一の実施形態が適用された部分暗号による通信保護システムにおいて、送信装置(110)において実施される部分暗号による暗号実行の概要を例示する図である。本暗号実行において、平文パケット(1100)は、データフィルタ処理(1001)により、いくつかの暗号対象データからなるパケット(1102)に変換され、その後、暗号アルゴリズム(1103)により、暗号化され、いくつかの暗号データからなる暗号ブロック(1104)が出力される。このデータは、暗号送信データ送信部(1105)により、送信データ(1106)に変換される。送信データ(1106)は、暗号ヘッダ(1107)と、暗号ブロック(1104)と、平文パケット(1100)における暗号処理の非対象領域(他の平文)(1109)から構成され、これらのデータは、図11に示すように並べ替えられる。即ち、送信データでは、暗号設定情報を含む暗号ヘッダ(1107)、いくつかの暗号データが格納される暗号化領域(1108)、及び暗号処理の非対象領域(他の平文)(1109)の順に各データが並べ替えられる。
Prior to the description of each process, an outline of encryption execution by partial encryption in the present invention will be described.
FIG. 11 is a diagram exemplifying an outline of encryption execution by partial encryption performed in the transmission device (110) in the communication protection system by partial encryption to which the first embodiment of the present invention is applied. In this cipher execution, the plaintext packet (1100) is converted into a packet (1102) consisting of some data to be encrypted by the data filter processing (1001), and then encrypted by the encryption algorithm (1103). A cipher block (1104) consisting of the cipher data is output. This data is converted into transmission data (1106) by the encrypted transmission data transmission unit (1105). The transmission data (1106) is composed of an encryption header (1107), an encryption block (1104), and a non-target area (other plaintext) (1109) of encryption processing in the plaintext packet (1100). They are rearranged as shown in FIG. That is, in the transmission data, an encryption header (1107) including encryption setting information, an encryption area (1108) in which some encryption data is stored, and a non-target area for encryption processing (other plaintext) (1109) in this order. Each data is sorted.

ここで、送信データ(1106)の構成要素は上記に限定されるものではなく、少なくとも上記の要素が含まれていればよい。また、送信データ(1106)の構成要素の順序は上記に限定されるものではない。   Here, the constituent elements of the transmission data (1106) are not limited to the above, and it is sufficient that at least the above elements are included. The order of the constituent elements of the transmission data (1106) is not limited to the above.

図3は、図1に示した送信装置110における送信データ変換の処理フローを示した図である。   FIG. 3 is a diagram showing a processing flow of transmission data conversion in the transmission apparatus 110 shown in FIG.

はじめに、送信装置(110)は、通信部117によって、送信先ID、平文データサイズ、平文データを入力装置14から入力し(201)、入力データフォーマット判定部119により、入力されたデータのフォーマットや、例えば平文のデータサイズの値の範囲が適切かどうか判定し(203)、入力データフォーマットがエラーの場合は、それをエラーメッセージとして出力する(202)。なお、平文は、予め記憶装置に格納されていて、送信データ変換の対象となる平文を読み出す場合もある。   First, the transmission device (110) inputs a transmission destination ID, plaintext data size, and plaintext data from the input device through the communication unit 117 (201), and the input data format determination unit 119 inputs the format of the input data. For example, it is determined whether the value range of the plaintext data size is appropriate (203). If the input data format is an error, it is output as an error message (202). The plain text is stored in advance in the storage device, and the plain text that is the object of transmission data conversion may be read out.

次に、入力データフォーマットにエラーがない場合は、暗号設定取得部112によって、暗号設定テーブル(204)より、入力された送信先IDに関連付けられた暗号設定情報を取得(205)する。この際、暗号設定情報の取得エラーがあった場合は、それをエラーメッセージとして出力する(206)。次に、暗号ヘッダ生成部113によって、取得した暗号設定を用いて暗号ヘッダ(図9参照)を生成する(207)。   Next, when there is no error in the input data format, the encryption setting acquisition unit 112 acquires (205) the encryption setting information associated with the input destination ID from the encryption setting table (204). At this time, if there is an encryption setting information acquisition error, it is output as an error message (206). Next, the encryption header generation unit 113 generates an encryption header (see FIG. 9) using the acquired encryption settings (207).

次に、暗号通信種別判定部115によって、取得した暗号設定情報を用いて、暗号通信種別(改ざん検知のみ(210)、暗号のみ(250)、改ざん検知+暗号(208)のいずれか)を判定する(209)。ここで、暗号通信種別の結果に応じて、3つの処理フローが生じる。   Next, the encryption communication type determination unit 115 determines the encryption communication type (tamper detection only (210), encryption only (250), tamper detection + encryption (208)) using the acquired encryption setting information. (209). Here, three processing flows occur according to the result of the encryption communication type.

まず、暗号通信種別が改ざん検知のみと判定された場合(210)は、送信データ生成部111によって、暗号ヘッダ、暗号ブロック、及び入力された平文データ(他の平文)を図11に示すように並べ替えながら組み合わせて送信データを生成し(214a)、MAC生成実行処理(217a)(図7参照)を呼び出し、取得した暗号設定情報と生成した送信データを引き渡して、暗号処理部114によってMAC生成を実行する。   First, when it is determined that the encryption communication type is only falsification detection (210), the transmission data generation unit 111 shows the encryption header, the encryption block, and the input plaintext data (other plaintext) as shown in FIG. The transmission data is generated by combining them while rearranging (214a), the MAC generation execution processing (217a) (see FIG. 7) is called, the acquired encryption setting information and the generated transmission data are delivered, and the encryption processor 114 generates the MAC. Execute.

暗号通信種別(209)が暗号のみと判定された場合(250)は、データフィルタ部116によって、取得した暗号設定情報に記載されているフィルタ情報を用いて、入力された平文データから暗号化を行うデータを切り出すデータフィルタを実行し(211a)、暗号処理部114によって、暗号実行処理(212a)(図4参照)を呼び出し、取得した暗号設定情報と切り出したデータを引き渡して暗号化を実行する。   When it is determined that the encryption communication type (209) is only encryption (250), the data filter unit 116 encrypts the input plaintext data using the filter information described in the acquired encryption setting information. A data filter for cutting out the data to be executed is executed (211a), the encryption processing unit 114 calls the encryption execution processing (212a) (see FIG. 4), and the acquired encryption setting information and the extracted data are delivered to execute encryption. .

暗号通信種別(209)が、改ざん検知+暗号と判定された場合(208)は、データフィルタ部116によって、取得した暗号設定に記載されているフィルタ情報を用いて、入力された平文データの暗号化を行うデータを切り出すデータフィルタを実行し(211b)、暗号処理部114によって、暗号実行処理(212b)(図5参照)を呼び出し、取得した暗号設定情報と切り出したデータを引き渡し、送信データ生成部111によって、暗号ヘッダ、暗号ブロック、及び入力された平文データ(他の平文)を図11に示すように並べ替えながら組み合わせて送信データを生成し(214b)、暗号処理部114によって、MAC生成実行処理(217b)(図6参照)を呼び出し、取得した暗号設定情報と生成した送信データを引き渡してMAC生成を実行する。   When the encryption communication type (209) is determined to be falsification detection + encryption (208), the data filter unit 116 encrypts the input plaintext data using the filter information described in the acquired encryption setting. The data filter for cutting out the data to be processed is executed (211b), the encryption processing unit 114 calls the encryption execution process (212b) (see FIG. 5), passes the acquired encryption setting information and the extracted data, and generates transmission data The transmission data is generated by combining the encryption header, the encryption block, and the input plaintext data (other plaintext) as shown in FIG. 11 by the unit 111 (214b), and the encryption processing unit 114 generates the MAC. Call the execution process (217b) (see FIG. 6), deliver the obtained encryption setting information and the generated transmission data, and generate the MAC. Row.

最後に、暗号ヘッダを再度取得し、暗号データと暗号対象外データとMACを組み合わせて暗号送信データを生成し(219)、暗号送信データサイズ、暗号送信データ(220) を出力する。   Finally, the cryptographic header is obtained again, and the cryptographic data, the non-cryptographic data and the MAC are combined to generate cryptographic transmission data (219), and the cryptographic transmission data size and the cryptographic transmission data (220) are output.

以上に述べた、暗号通信種別に応じた、送信時のデータの流れを図14に示す。
(1)改ざん検知の場合は、暗号設定情報を含む暗号ヘッダと平文とからなる送信データに、MAC生成実行処理(217a)によりMACを付加して暗号送信データを生成して送信する。
(2)暗号のみの場合は、データフィルタ(211a)により平文から抽出した暗号化対象データを、暗号設定情報に基づいて暗号化して暗号データを生成し、暗号ヘッダ、暗号データ、及び暗号化対象データ以外の平文(他の平文)からなる暗号送信データを生成して送信する。
(3)改ざん検知+暗号の場合は、上記(1)と(2)の処理を行って、暗号ヘッダ、暗号データ、暗号化対象データ以外の平文(他の平文)、及びMACからなる暗号送信データを生成して送信する。
FIG. 14 shows the data flow at the time of transmission according to the encryption communication type described above.
(1) In the case of falsification detection, MAC transmission execution data (217a) adds MAC to transmission data composed of an encryption header including encryption setting information and plain text to generate and transmit encrypted transmission data.
(2) In the case of encryption only, the encryption target data extracted from the plaintext by the data filter (211a) is encrypted based on the encryption setting information to generate encryption data, and the encryption header, encryption data, and encryption target Encrypted transmission data composed of plaintext other than data (other plaintext) is generated and transmitted.
(3) In the case of falsification detection + cryptography, the above processes (1) and (2) are performed, and cipher transmission including a cipher header, cipher data, plaintext other than the data to be encrypted (other plaintext), and MAC Generate and send data.

図4は、図1に示した受信装置130における受信データ変換の処理フローを示した図である。   FIG. 4 is a diagram showing a processing flow of received data conversion in receiving apparatus 130 shown in FIG.

はじめに、受信装置(130)は、通信部137によって、暗号受信データサイズ、暗号受信データを入力装置14から入力する(301)。次に、暗号ヘッダ検証部133によって、入力された暗号受信データから暗号ヘッダを切り出して取得する(302)。次に、入力データフォーマット判定部139によって、暗号ヘッダに記載されている情報のパラメータの値が適切かどうか、アルゴリズムテーブル(303)や鍵情報テーブル(306)を用いて判定する(305)。この際、暗号ヘッダフォーマットがエラーの場合は、それをエラーメッセージとして出力する(304)。   First, the receiving device (130) inputs the encrypted received data size and the encrypted received data from the input device 14 through the communication unit 137 (301). Next, the encryption header verification unit 133 cuts out and acquires the encryption header from the input encrypted reception data (302). Next, the input data format determination unit 139 determines whether the parameter value of the information described in the encryption header is appropriate using the algorithm table (303) and the key information table (306) (305). At this time, if the encryption header format is an error, it is output as an error message (304).

次に、暗号ヘッダフォーマットにエラーがない場合は、暗号設定取得部132によって、暗号ヘッダから暗号設定情報(暗号通信種別、アルゴリズムID、鍵ID、初期ベクトル(暗号化に関する公開されているパラメータ)等)を取得する(308)。   Next, when there is no error in the encryption header format, the encryption setting acquisition unit 132 converts the encryption setting information (encryption communication type, algorithm ID, key ID, initial vector (public parameters related to encryption), etc.) from the encryption header. ) Is acquired (308).

次に、暗号通信種別判定部135によって、取得した暗号設定情報を用いて、暗号通信種別(改ざん検知のみ(310)、暗号のみ(312)、改ざん検知+暗号(307)のいずれか)を判定する(309)。ここで、暗号通信種別の結果に応じて、3つの処理フローが生じる。   Next, the encryption communication type determination unit 135 determines the encryption communication type (falsification detection only (310), encryption only (312), falsification detection + encryption (307)) using the acquired encryption setting information. (309). Here, three processing flows occur according to the result of the encryption communication type.

まず、暗号通信種別が改ざん検知のみと判定された場合(310)は、受信データ生成部131によって、入力された暗号受信データからMACを分離し、受信データを生成し(311a)、復号処理部134によって、分離したMACを用いてMAC検証実行処理を呼び出し、取得した暗号設定情報と生成した受信データとMACを引き渡してMAC検証を実行する(314a)。   First, when it is determined that the encryption communication type is only falsification detection (310), the reception data generation unit 131 separates the MAC from the input encrypted reception data, generates reception data (311a), and decryption processing unit In step 134, the MAC verification execution process is called using the separated MAC, and the acquired encryption setting information, the generated reception data, and the MAC are delivered to execute the MAC verification (314a).

暗号通信種別が暗号通信種別(309)で暗号のみと判定された場合(312)は、データフィルタ部136によって、取得した暗号設定情報に記載されているフィルタ情報を用いて入力された暗号受信データから復号を行うデータを切り出すデータフィルタを実行し(315a)、復号処理部134により、復号実行処理(図6参照)を呼び出し、取得した暗号設定情報と切り出したデータを引き渡して復号を実行する(318a)。   When it is determined that the encryption communication type is the encryption communication type (309) and only encryption is performed (312), the encrypted data received by the data filter unit 136 using the filter information described in the acquired encryption setting information A data filter for cutting out the data to be decrypted is executed (315a), the decryption processing unit 134 calls the decryption execution process (see FIG. 6), delivers the obtained encryption setting information and the cut out data, and executes the decryption ( 318a).

暗号通信種別(309)が、改ざん検知+暗号と判定された場合(307)は、受信データ生成部131により、入力された暗号受信データからMACを分離し、受信データを生成し(311b)、復号処理部134により、分離したMACを用いてMAC検証実行処理を呼び出し、取得した暗号設定情報と生成した受信データとMACを引き渡してMAC検証を実行する(314b)。データフィルタ部136により、取得した暗号設定情報に記載されているフィルタ情報を用いて、入力された暗号受信データから復号を行うデータを切り出すデータフィルタを実行し(315b)、復号処理部134により、復号実行処理を呼び出し、取得した暗号設定と切り出したデータを引き渡して復号を実行する(318b)(図6参照)。   When the encryption communication type (309) is determined to be falsification detection + encryption (307), the reception data generation unit 131 separates the MAC from the input encryption reception data, and generates reception data (311b). The decryption processing unit 134 calls a MAC verification execution process using the separated MAC, delivers the obtained encryption setting information, the generated reception data, and the MAC, and executes the MAC verification (314b). The data filter unit 136 executes a data filter that cuts out data to be decrypted from the input encrypted reception data using the filter information described in the acquired encryption setting information (315b), and the decryption processing unit 134 The decryption execution process is called, and the decryption is executed by passing the acquired encryption setting and the cut out data (318b) (see FIG. 6).

最後に、復号されたデータと復号対象外データを組み合わせて平文受信データを生成し(320)、平文受信データサイズ、及び平文受信データを出力する(321)。   Finally, plaintext reception data is generated by combining the decrypted data and the data not to be decrypted (320), and the plaintext reception data size and the plaintext reception data are output (321).

以上に述べた、暗号通信種別に応じた、受信時のデータの流れを図15に示す。
(1)改ざん検知の場合は、暗号設定情報を含む暗号ヘッダ、平文、及びMACからなる暗号受信データから受信データである平文を抽出して出力し、暗号受信データから分離したMACを用いてMAC検証実行(314a)により改ざんの有無を判定する。
(2)暗号のみの場合は、暗号設定情報を含む暗号ヘッダ、他の平文、及び暗号データからなる暗号受信データから抽出した他の平文と暗号データから、データフィルタ(315a)により復号化対象データを抽出し、暗号受信データの暗号ヘッダから取り出した暗号設定情報に基づいて復号化対象データを復号して復号データを生成し、暗号受信データから抽出した他の平文と復号データとを合成して平文受信データを生成して出力する。
(3)改ざん検知+暗号の場合は、上記(1)の処理を行ってMAC検証による改ざんの判定を行うとともに、上記(2)の処理を行って平文受信データを出力する。受信側の利用者は、改ざんの判定結果を参照して、平文受信データの有効性を判断する。
FIG. 15 shows a data flow at the time of reception according to the encryption communication type described above.
(1) In the case of tampering detection, the plaintext that is the received data is extracted from the encrypted reception data including the encryption header, the plaintext, and the MAC including the encryption setting information, and the MAC is separated using the MAC separated from the encryption reception data. The presence / absence of tampering is determined by verification execution (314a).
(2) In the case of cipher only, data to be decrypted by the data filter (315a) from the cipher header including cipher setting information, other plain text, and other plain text and cipher data extracted from the cipher received data composed of cipher data And decrypts the data to be decrypted based on the encryption setting information extracted from the encryption header of the encrypted received data, generates decrypted data, and combines the decrypted data with the other plaintext extracted from the encrypted received data. Generate and output plaintext received data.
(3) In the case of falsification detection + encryption, the processing of (1) is performed to determine whether falsification is performed by MAC verification, and the processing of (2) is performed to output plaintext received data. The user on the receiving side refers to the falsification determination result to determine the validity of the plaintext received data.

(詳細処理フロー)
図5は、図3の送信データ変換処理における暗号実行(212)の処理フローを示した図である。
(Detailed processing flow)
FIG. 5 is a diagram showing a processing flow of encryption execution (212) in the transmission data conversion processing of FIG.

はじめに、本処理は、アルゴリズムID、鍵ID、初期ベクトル、データ長、データ を入力装置14から入力する(400)。次に、入力されたデータのフォーマットや値の範囲が適切かどうか判定する(401)。フォーマット判定の際にエラーが生じた場合は、それをエラーメッセージとして出力する(403)。   First, in this process, an algorithm ID, a key ID, an initial vector, a data length, and data are input from the input device 14 (400). Next, it is determined whether the format of the input data and the value range are appropriate (401). If an error occurs during the format determination, it is output as an error message (403).

次に、フォーマット判定の際にエラーがなかった場合は、入力されたデータの長さが16の倍数であって、かつ入力されたデータの最後のバイトが0x80(16進数表記の区切り文字、delimiter)でないかを判定する(402)。「入力されたデータの長さが16の倍数である」を条件A、「入力されたデータの最後のバイトが0x80である」を条件Bとすると、上記の判定条件は、A∧¬Bで表わされる。「∧」は集合の積、「¬B」は集合Bの補集合(否定)を表す。なお、AとBはそれぞれ他の条件でもよい。   Next, when there is no error at the time of format determination, the length of the input data is a multiple of 16, and the last byte of the input data is 0x80 (a delimiter in hexadecimal notation, delimiter (402). Assuming that “the length of the input data is a multiple of 16” is condition A, and “the last byte of the input data is 0x80” is condition B, the determination condition is A∧¬B. Represented. “∧” represents the product of the set, and “¬B” represents the complement (negative) of the set B. A and B may have other conditions.

A∧¬Bが真(条件402が成立)の場合(405)は、何もせず(NOP)に次の暗号化処理(407)に進む。   When A∧B is true (condition 402 is satisfied) (405), nothing is done (NOP) and the process proceeds to the next encryption process (407).

A∧¬Bが偽(条件402が成立しない)の場合(¬A、又はA∧Bの場合)(404)は、データパディング(padding)処理(406)を行い、データの後に0x80を付与し、データの長さが16の倍数となるまで0x00を付与する。   When A∧¬B is false (condition 402 is not satisfied) (when ¬A or A∧B) (404), data padding (406) is performed, and 0x80 is added after the data. Then, 0x00 is given until the data length is a multiple of 16.

ここで、上記の条件が成立しない場合、即ち、A∧¬Bが偽の場合(¬(A∧¬B))は、¬(A∧¬B)=(¬A)∨B=¬A+B=¬A+¬A・B+A・B=¬A・(1+B)+A・B=¬A+A・B=(¬A)∨(A∧B)と書き換えられ、A∧¬Bが偽であるとは、Aではない、あるいは、AであってかつBである、という条件に言い換えられる。   Here, when the above condition is not satisfied, that is, when A∧¬B is false (¬ (A∧¬B)), ¬ (A∧¬B) = (¬A) ∨B = ¬A + B = A + ¬A · B + A · B = ¬A · (1 + B) + A · B = ¬A + A · B = (¬A) ∨ (A∧B) where A∧¬B is false In other words, the condition is A and B.

即ち、入力されたデータの長さが16の倍数でない場合(405)は(¬A)、データの後に0x80を付与し、データの長さが16の倍数となるまで0x00(余白、padding)を付与する。   That is, if the length of the input data is not a multiple of 16 (405) (¬A), 0x80 is added after the data, and 0x00 (blank, padding) is added until the data length is a multiple of 16. Give.

入力されたデータの最後のバイトが0x80の場合には、データの長さが16の倍数であっても(A∧B)、データの後に0x80を付与し、データの長さが16の倍数となるまで0x00を付与する(406)。   If the last byte of the input data is 0x80, even if the data length is a multiple of 16 (A∧B), 0x80 is added after the data, and the data length is a multiple of 16. 0x00 is assigned until 406 (406).

次に、暗号初期化処理(407)を呼び出し、入力された暗号設定情報を引き渡し、暗号初期化を実行する。この際、暗号初期化エラー が生じた場合は、それをエラーメッセージとして出力する(408)。   Next, encryption initialization processing (407) is called, the input encryption setting information is delivered, and encryption initialization is executed. At this time, if an encryption initialization error occurs, it is output as an error message (408).

次に、暗号処理を呼び出し、入力されたデータを引き渡して暗号処理を実行する(410)。暗号処理の際、暗号処理エラー が生じた場合は、それをエラーメッセージとして出力する(409)。   Next, the encryption process is called, and the input data is delivered and the encryption process is executed (410). If a cryptographic processing error occurs during cryptographic processing, it is output as an error message (409).

最後に、暗号データ長、及び暗号データを出力する(411)。   Finally, the encrypted data length and the encrypted data are output (411).

図6は、図4の受信データ変換処理における復号実行(318)の処理フローを示した図である。   FIG. 6 is a diagram showing a processing flow of decoding execution (318) in the received data conversion processing of FIG.

はじめに、本処理は、アルゴリズムID、鍵ID、初期ベクトル、暗号データ長、暗号データ を入力装置14から入力する(500)。次に、入力されたデータのフォーマットや値の範囲が適切かどうか判定する(501)。この際、入力データフォーマットエラーが生じた場合は、それをエラーメッセージとして出力する(502)。   First, in this process, an algorithm ID, a key ID, an initial vector, an encrypted data length, and encrypted data are input from the input device 14 (500). Next, it is determined whether the format of the input data and the value range are appropriate (501). At this time, if an input data format error occurs, it is output as an error message (502).

次に、暗号初期化処理(503)を呼び出し、入力された暗号設定を引き渡して暗号初期化を実行する。この際、暗号初期化エラーが生じた場合は、それをエラーメッセージとして出力する(504)。   Next, the encryption initialization process (503) is called, the input encryption setting is delivered, and the encryption initialization is executed. At this time, if an encryption initialization error occurs, it is output as an error message (504).

次に、復号処理を呼び出し、入力されたデータを引き渡して復号処理を実行する(505)。復号処理の際、エラーが生じた場合は、それをエラーメッセージとして出力する(506)。   Next, the decoding process is called, and the inputted data is delivered and the decoding process is executed (505). If an error occurs during the decoding process, it is output as an error message (506).

次に、復号されたデータの最後から順にスキャンし、最後のバイトから16バイト以内に0x80が出現するかを検証し、0x80が存在する場合にはパディングが付与されているかを判定する(507)。パディングが付与されている場合(509)は、最後のバイトから0x80が出現するバイトまでのデータを除去する、パディング除去を実行する(510)。   Next, the decoded data is scanned in order from the end to verify whether 0x80 appears within 16 bytes from the last byte, and if 0x80 exists, it is determined whether padding is added (507). . If padding is added (509), padding removal is performed to remove data from the last byte to the byte where 0x80 appears (510).

最後に、平文データ長と平文データを出力する(511)。   Finally, the plaintext data length and plaintext data are output (511).

図7は、図3の送信データ変換処理におけるMAC生成処理実行(217)の処理フローを示した図である。   FIG. 7 is a diagram showing a processing flow of MAC generation processing execution (217) in the transmission data conversion processing of FIG.

はじめに、本処理は、アルゴリズムID、鍵ID、初期ベクトル、データ長、データを入力装置14から入力する(600)。次に、入力されたデータのフォーマットや値の範囲が適切かどうか判定する(601)。この際、入力データフォーマットエラーが生じた場合は、それをエラーメッセージとして出力する(602)。   First, in this process, an algorithm ID, a key ID, an initial vector, a data length, and data are input from the input device 14 (600). Next, it is determined whether the format and value range of the input data are appropriate (601). At this time, if an input data format error occurs, it is output as an error message (602).

次に、フォーマット判定の際にエラーがなかった場合は、入力されたデータの長さが16の倍数であって、かつ入力されたデータの最後のバイトが0x80でないかを判定する(603)。   Next, if there is no error in the format determination, it is determined whether the length of the input data is a multiple of 16 and the last byte of the input data is not 0x80 (603).

図3に示すように、MAC生成実行(217)の前に送信データ生成(214)が行われ、そこでは、図11に示すようにデータの並べ替えが行われるため、MAC生成処理でも、再度、データ長判定(603)を行う必要がある。従って、データ長判定(603)では、特に、データの長さが16の倍数かどうかがチェックされる。   As shown in FIG. 3, transmission data generation (214) is performed before MAC generation execution (217). In this case, data is rearranged as shown in FIG. The data length determination (603) needs to be performed. Therefore, in the data length determination (603), it is checked in particular whether the data length is a multiple of 16.

図5の処理と同様に、「入力されたデータの長さが16の倍数である」を条件A、「入力されたデータの最後のバイトが0x80である」を条件Bとすると、上記の判定条件は、A∧¬Bで表わされる。「∧」は集合の積、「¬B」は集合Bの補集合(否定)を表す。   Similar to the processing of FIG. 5, if the condition that “the input data length is a multiple of 16” is condition A and “the last byte of the input data is 0x80” is condition B, then the above determination The condition is represented by A∧¬B. “∧” represents the product of the set, and “¬B” represents the complement (negative) of the set B.

A∧¬Bが真(条件603が成立)の場合(605)は、何もせず(NOP)に次の暗号初期化処理(607)に進む。   If A∧B is true (condition 603 is met) (605), nothing is done (NOP) and the process proceeds to the next encryption initialization process (607).

A∧¬Bが偽(条件603が成立しない)の場合(¬A、又はA∧Bの場合)(604)は、データパディング(padding)処理(606)を行い、データの後に0x80を付与し、データの長さが16の倍数となるまで0x00を付与する。   If A∧¬B is false (condition 603 is not satisfied) (¬A or A∧B) (604), data padding processing (606) is performed and 0x80 is added after the data. Then, 0x00 is given until the data length is a multiple of 16.

ここで、上記の条件が成立しない場合は、図5に関する説明で述べたように、Aではない、あるいは、AであってかつBである、という条件に言い換えられる。   Here, when the above condition is not satisfied, it is paraphrased as a condition that it is not A, or is A and B, as described in the explanation regarding FIG.

即ち、入力されたデータの長さが16の倍数でない場合(604)は(¬A)、データの後に0x80を付与し、データの長さが16の倍数となるまで0x00を付与する。   That is, if the length of the input data is not a multiple of 16 (604) (A), 0x80 is added after the data, and 0x00 is added until the data length is a multiple of 16.

入力されたデータの最後のバイトが0x80の場合にはデータの長さが16の倍数であっても(A∧B)、データの後に0x80を付与し、データの長さが16の倍数となるまで0x00を付与する(606)。   If the last byte of the input data is 0x80, even if the data length is a multiple of 16 (A∧B), 0x80 is added after the data, and the data length is a multiple of 16. 0x00 is given until (606).

暗号初期化処理を呼び出し、入力された暗号設定情報を引き渡し暗号初期化を実行する(607)。この際、暗号初期化エラー が生じた場合は、それをエラーメッセージとして出力する(608)。   The encryption initialization process is called, the input encryption setting information is delivered, and encryption initialization is executed (607). At this time, if an encryption initialization error occurs, it is output as an error message (608).

次に、MAC生成処理を呼び出し、入力されたデータを引き渡しMAC生成処理を実行する(609)。この際、エラーが生じた場合は、それをエラーメッセージとして出力する(610)。
最後に、MACデータ長、MACデータを出力する(611)。
Next, the MAC generation process is called, the input data is delivered, and the MAC generation process is executed (609). At this time, if an error occurs, it is output as an error message (610).
Finally, the MAC data length and MAC data are output (611).

図8は、図4の受信データ変換処理におけるMAC検証処理実行(314)の処理フローを示した図である。   FIG. 8 is a diagram showing a process flow of the MAC verification process execution (314) in the received data conversion process of FIG.

はじめに、本処理は、アルゴリズムID、鍵ID、初期ベクトル、データ長、データ、MACデータ長、MACデータを入力装置14から入力する(700)。次に、入力されたデータのフォーマットや値の範囲が適切かどうか判定する(701)。この際、入力データフォーマットエラーが生じた場合は、それをエラーメッセージとして出力する(702)。   First, in this process, algorithm ID, key ID, initial vector, data length, data, MAC data length, and MAC data are input from the input device 14 (700). Next, it is determined whether the format and value range of the input data are appropriate (701). At this time, if an input data format error occurs, it is output as an error message (702).

次に、フォーマット判定の際にエラーがなかった場合は、入力されたデータの長さが16の倍数であって、かつ入力されたデータの最後のバイトが0x80でないかを判定する(703)。   Next, if there is no error in the format determination, it is determined whether the length of the input data is a multiple of 16 and the last byte of the input data is not 0x80 (703).

図4に示すように、MAC検証実行(314)の前に受信データ生成(311)が行われ、そこでは、図11に示すようにデータの並べ替えが行われたデータが生成されるため、MAC検証実行でも、再度、データ長判定(703)を行う必要がある。従って、データ長判定(703)では、特に、データの長さが16の倍数かどうかがチェックされる。   As shown in FIG. 4, the received data generation (311) is performed before the MAC verification execution (314), where data rearranged as shown in FIG. 11 is generated. Even in the MAC verification execution, it is necessary to perform the data length determination (703) again. Therefore, in the data length determination (703), it is checked in particular whether the data length is a multiple of 16.

図5の処理と同様に、「入力されたデータの長さが16の倍数である」を条件A、「入力されたデータの最後のバイトが0x80である」を条件Bとすると、上記の判定条件は、A∧¬Bで表わされる。「∧」は集合の積、「¬B」は集合Bの補集合(否定)を表す。   Similar to the processing of FIG. 5, if the condition that “the input data length is a multiple of 16” is condition A and “the last byte of the input data is 0x80” is condition B, then the above determination The condition is represented by A∧¬B. “∧” represents the product of the set, and “¬B” represents the complement (negative) of the set B.

A∧¬Bが真(条件703が成立)の場合(705)は、何もせず(NOP)に次の暗号初期化処理(707)に進む。   If A∧B is true (condition 703 is met) (705), nothing is done (NOP) and the process proceeds to the next encryption initialization process (707).

A∧¬Bが偽(条件703が成立しない)の場合(¬A、又はA∧Bの場合)(704)は、データパディング(padding)処理(706)を行い、データの後に0x80を付与し、データの長さが16の倍数となるまで0x00を付与する。   When A∧¬B is false (condition 703 is not satisfied) (¬A or A∧B) (704), data padding processing (706) is performed, and 0x80 is added after the data. Then, 0x00 is given until the data length is a multiple of 16.

ここで、上記の条件が成立しない場合は、図5に関する説明で述べたように、Aではない、あるいは、AであってかつBである、という条件に言い換えられる。   Here, when the above condition is not satisfied, it is paraphrased as a condition that it is not A, or is A and B, as described in the explanation regarding FIG.

即ち、入力されたデータの長さが16の倍数でない場合(704)は(¬A)、データの後に0x80を付与し、データの長さが16の倍数となるまで0x00を付与する。   That is, when the length of the input data is not a multiple of 16 (704) (A), 0x80 is given after the data, and 0x00 is given until the data length is a multiple of 16.

入力されたデータの最後のバイトが0x80の場合にはデータの長さが16の倍数であっても(A∧B)、データの後に0x80を付与し、データの長さが16の倍数となるまで0x00を付与する(706)。   If the last byte of the input data is 0x80, even if the data length is a multiple of 16 (A∧B), 0x80 is added after the data, and the data length is a multiple of 16. 0x00 is assigned until (706).

次に、暗号初期化処理を呼び出し、入力された暗号設定情報を引き渡し暗号初期化を実行する(707)。この際、暗号初期化エラーが生じた場合は、それをエラーメッセージとして出力する(708)。   Next, the encryption initialization process is called, the input encryption setting information is delivered, and encryption initialization is executed (707). At this time, if an encryption initialization error occurs, it is output as an error message (708).

次に、MAC検証処理を呼び出し、入力されたデータおよびMACデータを引き渡し、MAC検証処理を実行する(709)。この際、エラーが生じた場合は、それをエラーメッセージとして出力する(710)。   Next, the MAC verification process is called, the input data and the MAC data are delivered, and the MAC verification process is executed (709). At this time, if an error occurs, it is output as an error message (710).

図12は、本発明の第一の実施形態が適用された部分暗号による通信保護システムにおいて、送信装置(110)において実施される複数パケットから成る平文の部分暗号による暗号実行の概要を示す図である。本暗号実行において、平文は、平文パケット1(1200)、平文パケット2(1201)、及び平文パケット3(1202)の3つのパケットから構成される。これらは、全て暗号処理(1202)されるのではなく、たとえば、平文パケット2(1201)のみ暗号処理(1200)が実施され、暗号パケット(1203)が生成される。即ち、平文パケット2(1201)では、図9の暗号通信フラグ(900−1)は「01」(暗号通信有)であるが、平文パケット1(1200)、及び平文パケット3(1202)では、暗号通信フラグ(900−1)は「00」(暗号通信無)である。   FIG. 12 is a diagram showing an outline of cipher execution by a plaintext partial cipher composed of a plurality of packets executed in the transmission device (110) in the partial cipher communication protection system to which the first embodiment of the present invention is applied. is there. In this cipher execution, the plaintext is composed of three packets: a plaintext packet 1 (1200), a plaintext packet 2 (1201), and a plaintext packet 3 (1202). These are not all subjected to cryptographic processing (1202). For example, only plaintext packet 2 (1201) is subjected to cryptographic processing (1200) to generate an encrypted packet (1203). That is, in the plaintext packet 2 (1201), the encryption communication flag (900-1) in FIG. 9 is “01” (with encryption communication), but in the plaintext packet 1 (1200) and the plaintext packet 3 (1202), The encryption communication flag (900-1) is “00” (no encryption communication).

ここで、平文の構成要素は上記のパケット群に限定されるものではない。また、暗号処理(1202)対象平文パケットは上記に限定されるものではない。   Here, the components of the plaintext are not limited to the above packet group. The plaintext packet subject to the cryptographic process (1202) is not limited to the above.

また、上記は、3パケットに1回暗号化処理を実施するが、10パケットに1回等、この暗号処理回数を増減させてもよい。上記は、制御系は、データの有効期間が短く、暗号化する頻度も低くて良い場合がありうることに基づく。また、図12の暗号実行は、平文の内容とは関係なく、定期的に暗号化して内容を撹乱することで情報を秘匿化する目的で行われる。   In the above, the encryption process is performed once every 3 packets, but the number of encryption processes may be increased or decreased such as once every 10 packets. The above is based on the fact that the control system may have a short data validity period and may be encrypted less frequently. 12 is performed for the purpose of concealing information by periodically encrypting and disturbing the contents regardless of the contents of plaintext.

図13は、本発明の第一の実施形態が適用された部分暗号による通信保護システムにおいて、送信装置(110)において実施される複数パケットから成る平文の改ざん検知処理の概要を例示する図である。本改ざん検知処理において、平文は、平文パケット1(1300)、平文パケット2(1201)、及び平文パケット3(1202)の3つのパケットから構成される。これらのパケットは、単一でその都度、改ざん検知処理(1303)が実行されるのではなく、これらのパケットを一括りとして改ざん検知対象データと見なした場合の改ざん検知処理を行う。即ち、3つの平文パケットのそれぞれからMACが抽出され、3つのMACに対して一括してMAC検証(314a、b)を実行する。
ここで、平文パケットの構成要素数は上記に限定されるものではない。
FIG. 13 is a diagram illustrating an overview of plaintext tampering detection processing composed of a plurality of packets performed in the transmission device (110) in the partial cipher communication protection system to which the first embodiment of the present invention is applied. . In the falsification detection process, the plaintext is composed of three packets: a plaintext packet 1 (1300), a plaintext packet 2 (1201), and a plaintext packet 3 (1202). For each of these packets, the alteration detection processing (1303) is not executed each time, but the alteration detection processing is performed when these packets are regarded as the alteration detection target data as a whole. That is, the MAC is extracted from each of the three plaintext packets, and the MAC verification (314a, b) is executed on the three MACs at once.
Here, the number of components of the plaintext packet is not limited to the above.

上記は、制御系は、複数回の命令によって実行され、複数の命令が 確実に実施されることが重要であり、上記のようなパケットの括りで改ざんされないことを確認することが重要なことに基づく。また、図13のように、複数個の平文に対してまとめて改ざん検知を実行することにより、個々の平文に対してその都度改ざん検知を行う煩雑さが低減される。   In the above, it is important that the control system is executed by a plurality of instructions, and that the plurality of instructions are surely executed, and it is important to confirm that the packet is not tampered with as described above. Based. Further, as shown in FIG. 13, by performing falsification detection on a plurality of plaintexts collectively, the complexity of performing falsification detection on each plaintext is reduced.

なお、本発明は、上記の実施形態に限定されるものではなく、その要旨の範囲内で様々な変形が可能である。そのような場合においてもシステム全体において行う処理に本質的な変化はない。   In addition, this invention is not limited to said embodiment, A various deformation | transformation is possible within the range of the summary. Even in such a case, there is no essential change in the processing performed in the entire system.

11:CPU、12:メモリ、13:ハードディスクドライブ、14:入力装置、15:出力装置、16:通信装置、100:通信保護システム、110:送信装置、111:送信データ生成部、112、132:暗号設定取得部、113:暗号ヘッダ生成部、114:暗号処理部、115、135:暗号通信種別判定部、116、136:データフィルタ部、117、137:通信部、119、139:入力データフォーマット判定部、120:ネットワーク、130:受信装置、131:受信データ生成部、133:暗号ヘッダ検証部、134:復号処理部、204:暗号設定テーブル、118:鍵情報記憶装置、303:鍵情報テーブル、306:アルゴリズムテーブル 11: CPU, 12: memory, 13: hard disk drive, 14: input device, 15: output device, 16: communication device, 100: communication protection system, 110: transmission device, 111: transmission data generation unit, 112, 132: Encryption setting acquisition unit, 113: Encryption header generation unit, 114: Encryption processing unit, 115, 135: Encryption communication type determination unit, 116, 136: Data filter unit, 117, 137: Communication unit, 119, 139: Input data format Determination unit, 120: network, 130: reception device, 131: reception data generation unit, 133: encryption header verification unit, 134: decryption processing unit, 204: encryption setting table, 118: key information storage device, 303: key information table 306: Algorithm table

Claims (8)

部分的な暗号処理によりデータを保護する通信保護システムは、
データを送信する少なくとも1台の送信装置、
前記データを受信する少なくとも1台の受信装置、及び
前記送信装置と前記受信装置とを接続するネットワーク
を備え、
前記送信装置は、入力された平文データを送信用データに変換する送信データ変換部を備え、
前記送信データ変換部は、暗号設定を格納する暗号設定テーブルと、送信先IDに紐づく暗号設定を前記暗号設定テーブルから取得する暗号設定取得部と、前記暗号設定を用いて暗号ヘッダを生成する暗号ヘッダ生成部と、前期暗号設定に記載されているフィルタ情報を用いて前記平文データから暗号処理対象データを切り出すデータフィルタ部と、前記暗号処理対象データに対し、前記暗号設定に基づき暗号処理する暗号実行処理部と、前記暗号ヘッダと前記暗号処理データと前記平文データを組み合わせて、暗号送信データを生成する暗号送信データ生成部と、を備え、
前記暗号処理対象データと前記平文データのサイズ比は、前記暗号送信データの機密性の確保期間に応じて決定され、
前記受信装置は、入力された受信データを平文データに変換する受信データ変換部を備え、
前記受信データ変換部は、暗号アルゴリズム情報を格納するアルゴリズムテーブルと、鍵情報を格納する鍵情報テーブルと、前記受信データから暗号ヘッダを取得する暗号ヘッダ取得部と、前記アルゴリズムテーブルや前記鍵情報テーブルを用いて、前記暗号ヘッダが適切か判定する暗号ヘッダ検証部と、前記暗号ヘッダから暗号設定を取得する暗号設定取得部と、前記暗号設定に記載されているフィルタ情報を用いて、前記受信データから復号処理対象外データと復号処理対象データに切り、復号処理対象データを切り出すデータフィルタ部と、前記復号処理対象データに対し、前記暗号設定に基づき復号処理する復号実行処理部と、前記復号処理データと前記受信データを組み合わせて、平文受信データを生成する平文受信データ生成部と、を備える、
ことを特徴とする部分暗号による通信保護システム。
Communication protection system that protects data by partial encryption processing,
At least one transmitter for transmitting data,
At least one receiving device that receives the data; and a network that connects the transmitting device and the receiving device;
The transmission device includes a transmission data conversion unit that converts input plaintext data into transmission data,
The transmission data conversion unit generates an encryption header using an encryption setting table that stores encryption settings, an encryption setting acquisition unit that acquires encryption settings associated with a transmission destination ID from the encryption setting table, and the encryption settings. An encryption header generation unit, a data filter unit that extracts encryption processing target data from the plaintext data using filter information described in the previous encryption setting, and encryption processing is performed on the encryption processing target data based on the encryption setting A cryptographic execution processing unit, and a cryptographic transmission data generation unit that generates cryptographic transmission data by combining the cryptographic header, the cryptographic processing data, and the plaintext data,
The size ratio between the encryption processing target data and the plaintext data is determined according to a confidentiality ensuring period of the encrypted transmission data,
The receiving device includes a received data conversion unit that converts input received data into plain text data,
The received data conversion unit includes an algorithm table that stores cryptographic algorithm information, a key information table that stores key information, a cryptographic header acquisition unit that acquires a cryptographic header from the received data, the algorithm table, and the key information table The received data using the encryption header verification unit that determines whether the encryption header is appropriate, the encryption setting acquisition unit that acquires the encryption setting from the encryption header, and the filter information described in the encryption setting. A data filter unit that cuts the decryption process target data from the decryption process target data to the decryption process target data, a decryption execution processing unit that decrypts the decryption process target data based on the cipher settings, and the decryption process Plaintext received data generation unit for generating plaintext received data by combining data and the received data , And a,
A communication protection system using partial encryption.
前記送信装置と前記受信装置は、
取得した暗号設定情報を用いて、暗号通信種別が、改ざん検知のみ、暗号のみ、改ざん検知+暗号のいずれかを判定する
ことを特徴とする請求項1記載の部分暗号による通信保護システム。
The transmitting device and the receiving device are:
2. The communication protection system using partial encryption according to claim 1, wherein the encryption communication type is determined to be any of falsification detection only, encryption only, falsification detection + cryptography, using the acquired encryption setting information.
前記送信装置は、
MAC生成実行処理を呼び出し、取得した暗号設定と生成した送信データを引き渡し、
前記受信装置は、入力された暗号受信データから、メッセージ認証のための情報であるMACを分離し、受信データを生成する受信データ生成部を備え、
MAC検証実行処理を呼び出し、取得した暗号設定と生成した受信データと前記MACを引き渡すことを特徴とする請求項2記載の部分暗号による通信保護システム。
The transmitter is
Call the MAC generation execution process, deliver the acquired encryption settings and the generated transmission data,
The receiving device includes a received data generation unit that separates a MAC that is information for message authentication from input encrypted received data, and generates received data,
3. The communication protection system using partial encryption according to claim 2, wherein the MAC verification execution process is called, and the acquired encryption setting, the generated reception data, and the MAC are delivered.
データを送信する少なくとも1台の送信装置と前記データを受信する少なくとも1台の受信装置とがネットワークを介して接続されたネットワークシステムにおいて、暗号通信種別に応じて、部分的な暗号処理によりデータを保護する通信保護方法であって、
前記送信装置は、
前記暗号通信種別に改ざん検知が含まれている場合は、暗号化のための暗号設定情報を含む暗号ヘッダと平文とからなる送信データに、メッセージ認証のためのMACを付加して暗号送信データを生成して前記受信装置に送信し、
前記暗号通信種別に暗号が含まれている場合は、データフィルタにより平文から暗号化対象データを抽出し、
前記暗号設定情報に基づいて前記暗号化対象データを暗号化して暗号データを生成し、
前記暗号ヘッダ、前記暗号データ及び暗号化対象データ以外の平文である他の平文からなる前記暗号送信データを生成して前記受信装置に送信し、
前記受信装置は、
前記暗号通信種別に改ざん検知が含まれている場合は、前記送信装置から、前記暗号設定情報を含む前記暗号ヘッダ、前記平文及び前記MACからなる暗号受信データを受信し、
前記暗号受信データから受信データである前記平文を抽出して出力し、
前記暗号受信データから分離した前記MACを用いて改ざんの有無を判定し、
前記暗号通信種別に暗号が含まれている場合は、前記送信装置から、前記暗号設定情報を含む前記暗号ヘッダ、前記他の平文及び前記暗号データからなる前記暗号受信データを受信し、
前記暗号受信データから抽出した前記他の平文と前記暗号データから、データフィルタにより復号化対象データを抽出し、
前記暗号受信データの前記暗号ヘッダから取り出した前記暗号設定情報に基づいて前記復号化対象データを復号して復号データを生成し、
前記暗号受信データから抽出した前記他の平文と前記復号データとを合成して平文受信データを生成して出力する、
ことを特徴とする部分暗号による通信保護方法。
In a network system in which at least one transmission device that transmits data and at least one reception device that receives the data are connected via a network, the data is obtained by partial encryption processing according to the encryption communication type. A communication protection method to protect,
The transmitter is
When tampering detection is included in the encryption communication type, the MAC for message authentication is added to the transmission data composed of the encryption header and plaintext including the encryption setting information for encryption, and the encrypted transmission data is Generate and send to the receiver,
When encryption is included in the encryption communication type, data to be encrypted is extracted from plaintext by a data filter,
Encrypt the data to be encrypted based on the encryption setting information to generate encrypted data,
Generate the encrypted transmission data consisting of other plaintext that is plaintext other than the encryption header, the encrypted data and the data to be encrypted, and transmit it to the receiving device,
The receiving device is:
When the tampering detection is included in the encryption communication type, the encryption reception data including the encryption header including the encryption setting information, the plaintext, and the MAC is received from the transmission device,
Extracting and outputting the plaintext that is received data from the encrypted received data,
Using the MAC separated from the encrypted received data to determine the presence or absence of falsification,
When encryption is included in the encryption communication type, the encryption reception data including the encryption header including the encryption setting information, the other plaintext, and the encryption data is received from the transmission device,
From the other plaintext extracted from the encrypted received data and the encrypted data, extract data to be decrypted by a data filter,
Decrypting the decryption target data based on the encryption setting information extracted from the encryption header of the encryption reception data to generate decryption data;
Combining the other plaintext extracted from the encrypted received data and the decrypted data to generate and output plaintext received data;
A communication protection method using partial encryption.
前記平文は複数の平文パケットで構成され、前記複数の平文パケットの中の少なくとも1つの特定の平文パケットに対して暗号処理を行うことを特徴とする請求項4記載の部分暗号による通信保護方法。   The communication protection method using partial encryption according to claim 4, wherein the plaintext is composed of a plurality of plaintext packets, and encryption processing is performed on at least one specific plaintext packet among the plurality of plaintext packets. 前記平文は複数の平文パケットで構成され、前記複数の平文パケットに対して、改ざんの検知処理を一括して実施することを特徴とする請求項4記載の部分暗号による通信保護方法。   5. The communication protection method using partial encryption according to claim 4, wherein the plaintext is composed of a plurality of plaintext packets, and tampering detection processing is collectively performed on the plurality of plaintext packets. 前記送信データでは、前記暗号設定情報を含む前記暗号ヘッダ、いくつかの前記暗号データが格納される暗号化領域、及び暗号処理の非対象領域である前記他の平文の順に各データが並べ替えられることを特徴とする請求項4記載の部分暗号による通信保護方法。   In the transmission data, each data is rearranged in the order of the encryption header including the encryption setting information, an encryption area in which some of the encryption data is stored, and the other plaintext that is a non-target area for encryption processing. The communication protection method using partial encryption according to claim 4. データを送信する少なくとも1台の送信装置と前記データを受信する少なくとも1台の受信装置とがネットワークを介して接続されたネットワークシステムにおいて、暗号通信種別に応じて、部分的な暗号処理によりデータを保護する通信保護方法を実行するためのプログラムを格納した、計算機で読み取り可能な記憶媒体であって、
前記通信保護方法において、
前記送信装置は、
前記暗号通信種別に改ざん検知が含まれている場合は、暗号化のための暗号設定情報を含む暗号ヘッダと平文とからなる送信データに、メッセージ認証のためのMACを付加して暗号送信データを生成して前記受信装置に送信し、
前記暗号通信種別に暗号が含まれている場合は、データフィルタにより平文から暗号化対象データを抽出し、
前記暗号設定情報に基づいて前記暗号化対象データを暗号化して暗号データを生成し、
前記暗号ヘッダ、前記暗号データ及び暗号化対象データ以外の平文である他の平文からなる前記暗号送信データを生成して前記受信装置に送信し、
前記受信装置は、
前記暗号通信種別に改ざん検知が含まれている場合は、前記送信装置から、前記暗号設定情報を含む前記暗号ヘッダ、前記平文及び前記MACからなる暗号受信データを受信し、
前記暗号受信データから受信データである前記平文を抽出して出力し、
前記暗号受信データから分離した前記MACを用いて改ざんの有無を判定し、
前記暗号通信種別に暗号が含まれている場合は、前記送信装置から、前記暗号設定情報を含む前記暗号ヘッダ、前記他の平文、及び前記暗号データからなる前記暗号受信データを受信し、
前記暗号受信データから抽出した前記他の平文と前記暗号データから、データフィルタにより復号化対象データを抽出し、
前記暗号受信データの前記暗号ヘッダから取り出した前記暗号設定情報に基づいて前記復号化対象データを復号して復号データを生成し、
前記暗号受信データから抽出した前記他の平文と前記復号データとを合成して平文受信データを生成して出力する、
ことを特徴とする記憶媒体。
In a network system in which at least one transmission device that transmits data and at least one reception device that receives the data are connected via a network, the data is obtained by partial encryption processing according to the encryption communication type. A computer-readable storage medium storing a program for executing a communication protection method for protection,
In the communication protection method,
The transmitter is
When tampering detection is included in the encryption communication type, the MAC for message authentication is added to the transmission data composed of the encryption header and plaintext including the encryption setting information for encryption, and the encrypted transmission data is Generate and send to the receiver,
When encryption is included in the encryption communication type, data to be encrypted is extracted from plaintext by a data filter,
Encrypt the data to be encrypted based on the encryption setting information to generate encrypted data,
Generate the encrypted transmission data consisting of other plaintext that is plaintext other than the encryption header, the encrypted data and the data to be encrypted, and transmit it to the receiving device,
The receiving device is:
When the tampering detection is included in the encryption communication type, the encryption reception data including the encryption header including the encryption setting information, the plaintext, and the MAC is received from the transmission device,
Extracting and outputting the plaintext that is received data from the encrypted received data,
Using the MAC separated from the encrypted received data to determine the presence or absence of falsification,
When encryption is included in the encryption communication type, the encryption reception data including the encryption header including the encryption setting information, the other plaintext, and the encryption data is received from the transmission device,
From the other plaintext extracted from the encrypted received data and the encrypted data, extract data to be decrypted by a data filter,
Decrypting the decryption target data based on the encryption setting information extracted from the encryption header of the encryption reception data to generate decryption data;
Combining the other plaintext extracted from the encrypted received data and the decrypted data to generate and output plaintext received data;
A storage medium characterized by that.
JP2013038175A 2013-02-28 2013-02-28 Communication protection system and method using partial encryption, and storage medium Active JP6000164B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013038175A JP6000164B2 (en) 2013-02-28 2013-02-28 Communication protection system and method using partial encryption, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013038175A JP6000164B2 (en) 2013-02-28 2013-02-28 Communication protection system and method using partial encryption, and storage medium

Publications (2)

Publication Number Publication Date
JP2014165894A true JP2014165894A (en) 2014-09-08
JP6000164B2 JP6000164B2 (en) 2016-09-28

Family

ID=51616077

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013038175A Active JP6000164B2 (en) 2013-02-28 2013-02-28 Communication protection system and method using partial encryption, and storage medium

Country Status (1)

Country Link
JP (1) JP6000164B2 (en)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006035501A1 (en) * 2004-09-29 2006-04-06 Fujitsu Limited Concealment communication system
JP2008017463A (en) * 2006-06-07 2008-01-24 Hitachi Ltd Radio control security system
JP2008035300A (en) * 2006-07-31 2008-02-14 Fujitsu Ltd Packet encryption processor and packet encryption processing method
JP2008067102A (en) * 2006-09-07 2008-03-21 Victor Co Of Japan Ltd Content distribution server
JP2008147926A (en) * 2006-12-08 2008-06-26 Nippon Telegr & Teleph Corp <Ntt> Encrypting device and decrypting device and method
JP2009253563A (en) * 2008-04-03 2009-10-29 Nec Corp Content encryption distribution system, content encryption distribution method, and program for content encryption distribution
JP2010536298A (en) * 2007-08-13 2010-11-25 モビクリップ Method and apparatus for partial encryption of digital content

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006035501A1 (en) * 2004-09-29 2006-04-06 Fujitsu Limited Concealment communication system
JP2008017463A (en) * 2006-06-07 2008-01-24 Hitachi Ltd Radio control security system
JP2008035300A (en) * 2006-07-31 2008-02-14 Fujitsu Ltd Packet encryption processor and packet encryption processing method
JP2008067102A (en) * 2006-09-07 2008-03-21 Victor Co Of Japan Ltd Content distribution server
JP2008147926A (en) * 2006-12-08 2008-06-26 Nippon Telegr & Teleph Corp <Ntt> Encrypting device and decrypting device and method
JP2010536298A (en) * 2007-08-13 2010-11-25 モビクリップ Method and apparatus for partial encryption of digital content
JP2009253563A (en) * 2008-04-03 2009-10-29 Nec Corp Content encryption distribution system, content encryption distribution method, and program for content encryption distribution

Also Published As

Publication number Publication date
JP6000164B2 (en) 2016-09-28

Similar Documents

Publication Publication Date Title
US10652015B2 (en) Confidential communication management
US8155311B2 (en) Method and apparatus for encrypting message for maintaining message integrity, and method and apparatus for decrypting message for maintaining message integrity
Bernstein et al. The security impact of a new cryptographic library
CN107086915B (en) Data transmission method, data sending end and data receiving end
KR101737299B1 (en) Encoder, decoder and methods
CN109428867B (en) Message encryption and decryption method, network equipment and system
CN102594548B (en) Method capable of achieving data sectional encryption and decryption
CN102664740B (en) Remote-authorization-based bidding document encryption and decryption method
CN103716157A (en) Grouped multiple-key encryption method and grouped multiple-key encryption device
US8250356B2 (en) Method to construct a high-assurance IPSec gateway using an unmodified commercial implementation
JPWO2016027454A1 (en) Authentication encryption method, authentication decryption method, and information processing apparatus
CN104660590A (en) Cloud storage scheme for file encryption security
CN102857503A (en) Secure wireless transmission method for fingerprint data
Agarwal et al. Authenticating cryptography over network in data
CN109005151A (en) A kind of encryption of information, decryption processing method and processing terminal
Sahu et al. Securing messages from brute force attack by combined approach of honey encryption and blowfish
JP6000164B2 (en) Communication protection system and method using partial encryption, and storage medium
US20090228700A1 (en) Internet Gatekeeper Protocol
Akhter et al. Bangla and English text cryptography based on modified blowfish and Lempel-Ziv-Welch algorithm to minimize execution time
CN110233735B (en) Comprehensive safety protection method and system for grid-connected power station industrial control system
JP6631989B2 (en) Encryption device, control method, and program
JP2014220668A (en) Transmission side device and reception side device
EP2683112B1 (en) Secure message transmission
Li Exploring the Application of Data Encryption Technology in Computer Network Security
Xiao Implementation Analysis of Encryption and Decryption Algorithm Based on python Language

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150318

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160126

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160324

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160802

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160830

R150 Certificate of patent or registration of utility model

Ref document number: 6000164

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150