JP6360781B2 - 暗号化制御システムおよび暗号化制御方法、並びにプログラム - Google Patents

暗号化制御システムおよび暗号化制御方法、並びにプログラム Download PDF

Info

Publication number
JP6360781B2
JP6360781B2 JP2014226964A JP2014226964A JP6360781B2 JP 6360781 B2 JP6360781 B2 JP 6360781B2 JP 2014226964 A JP2014226964 A JP 2014226964A JP 2014226964 A JP2014226964 A JP 2014226964A JP 6360781 B2 JP6360781 B2 JP 6360781B2
Authority
JP
Japan
Prior art keywords
control
encryption
encrypted
plant
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014226964A
Other languages
English (en)
Other versions
JP2016090884A (ja
Inventor
公尚 小木曽
公尚 小木曽
貴大 藤田
貴大 藤田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
THE UNIVERSITY OF ELECTRO-COMUNICATINS
Original Assignee
THE UNIVERSITY OF ELECTRO-COMUNICATINS
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 THE UNIVERSITY OF ELECTRO-COMUNICATINS filed Critical THE UNIVERSITY OF ELECTRO-COMUNICATINS
Priority to JP2014226964A priority Critical patent/JP6360781B2/ja
Publication of JP2016090884A publication Critical patent/JP2016090884A/ja
Application granted granted Critical
Publication of JP6360781B2 publication Critical patent/JP6360781B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本開示は、暗号化制御システムおよび暗号化制御方法、並びにプログラムに関し、特に、よりセキュリティ強化を図ることができるようにした暗号化制御システムおよび暗号化制御方法、並びにプログラムに関する。
近年、電気やガス、水道などの生活を支えるインフラを制御する制御システムのネットワーク化が進んでいる。このようなネットワーク化やICT(Information and Communication Technology)の進化により、制御システムに多大な恩恵が与えられる一方、サイバー攻撃という新たな脅威を呼び込むことが懸念されている。実際に、発電所や工場などのプラント動作を監視または制御する制御システムに対するサイバー攻撃が出現しており、社会的に重要な問題として注目されている。
そのため、重要インフラを支える制御システムをサイバー攻撃から守るための技術開発が急務とされており、制御システムへの情報系セキュリティ技術の転用やサイバー攻撃の検知などに関する研究が進められている。
例えば、特許文献1には、ネットワークを介してPLC(Programmable Logic Controller)に暗号化された制御プログラムを送信し、その制御プログラムをPLCが復号して設備機器を制御する制御システムが開示されている。
また、特許文献2には、産業用コントローラが認証済みネットワークを介してのみ命令を受信することによって、特許文献3には、セキュリティサーバへのセキュリティ通知を集約することによって、セキュリティ性を高めた産業用制御システムが開示されている。
特開2008−67162号公報 特開2013−232190号公報 特開2013−232191号公報
ところで、従来の産業ネットワークにおいて、暗号化された情報を、コントローラおよびプラントの間を接続する制御系バスを介して送受信する構成を採用することによって、セキュリティ性を高めることが行われている。このような構成では、コントローラ側で制御入力を決定する際に一旦復号を行うため、コントローラおよびプラントの双方が秘密鍵を保持する必要があった。
このため、例えば、コントローラがハッキングされて秘密鍵が漏洩した場合には、コントローラおよびプラントの間で送受信される情報が漏洩することが懸念されており、セキュリティを強化することが求められている。
本開示は、このような状況に鑑みてなされたものであり、よりセキュリティ強化を図ることができるようにするものである。
本開示の一側面の暗号化制御システムは、制御装置およびプラントが制御系バスを介して接続された暗号化制御システムにおいて、プラント側で、制御結果として出力される制御出力を暗号化して、暗号化制御出力を求める制御出力暗号化部と、制御装置側で、制御出力暗号化部が暗号化制御出力を暗号化するのに使用した公開鍵と同一の公開鍵を使用してプラントの制御に用いられるパラメータが予め暗号化された暗号化パラメータと、制御系バスを介して取得される暗号化制御出力とを暗号化したまま用いて、プラントを制御するための制御入力が暗号化されている暗号化制御入力を算出する演算部と、プラント側で、制御系バスを介して取得される暗号化制御入力を、公開鍵に対応する秘密鍵を使用して復号する復号部とを備える。
本開示の一側面の暗号化制御方法またはプログラムは、制御装置およびプラントが制御系バスを介して接続された暗号化制御システムの暗号化制御方法、または、この暗号化制御システムを制御するコンピュータに実行させるプログラムにおいて、プラント側で、制御結果として出力される制御出力を暗号化して、暗号化制御出力を求め、制御装置側で、暗号化制御出力を暗号化するのに使用した公開鍵と同一の公開鍵を使用してプラントの制御に用いられるパラメータが予め暗号化された暗号化パラメータと、制御系バスを介して取得される暗号化制御出力とを暗号化したまま用いて、プラントを制御するための制御入力が暗号化されている暗号化制御入力を算出し、プラント側で、制御系バスを介して取得される暗号化制御入力を、公開鍵に対応する秘密鍵を使用して復号するステップを含む。
本開示の一側面においては、プラント側で、制御結果として出力される制御出力が暗号化されて、暗号化制御出力が求められ、制御装置側で、暗号化制御出力を暗号化するのに使用した公開鍵と同一の公開鍵を使用してプラントの制御に用いられるパラメータが予め暗号化された暗号化パラメータと、制御系バスを介して取得される暗号化制御出力とが暗号化したまま用いられて、プラントを制御するための制御入力が暗号化されている暗号化制御入力が算出され、プラント側で、制御系バスを介して取得される暗号化制御入力が、公開鍵に対応する秘密鍵を使用して復号される。
本開示の一側面によれば、よりセキュリティ強化を図ることができる。
本技術を適用したFAシステムの一実施の形態の構成例を示すブロック図である。 FAシステムにおける制御処理について説明するフローチャートである。 シミュレーション結果を示す図である。 暗号化された信号について説明する図である。 本技術を適用したFAシステムの変形例を示すブロック図である。 本技術を適用したコンピュータの一実施の形態の構成例を示すブロック図である。
<暗号について>
まず、本技術を適用した具体的な実施の形態について説明する前に、本技術において用いられる暗号について説明する。
一般的に、整数の集合Zに含まれる平文Mを、整数の集合Zに含まれる暗号文Cに変換する暗号は、次の式(1)で表される。
Figure 0006360781
また、平文Mと平文Mとの二項演算M○Mを暗号化した暗号文Enc(M○M)を、平文Mを暗号化した暗号文Enc(M)と、平文Mを暗号化した暗号文Enc(M)とを用いて計算することができる暗号は、準同型暗号と称される。このような準同型暗号は、クラウドコンピューティングや金融機関の暗証システムなどに応用されている。
例えば、乗法に関して準同型性を持つRSA(Rivest Shamir Adleman)暗号は、多桁の素因数分解問題の困難性を利用した公開鍵暗号であり、デジタル署名などに応用されている。以下では、RSA暗号の暗号化および復号のアルゴリズム、および、RSA暗号の乗法に関する準同型性について説明する。
RSA暗号により暗号化を行う際には、まず、公開鍵e、公開鍵n、および秘密鍵dが生成され、公開鍵eおよび公開鍵nのみを用いて平文が暗号化される。一方、RSA暗号により復号を行う際には、秘密鍵dを知る必要がある。
公開鍵nは、2つの大きな値の素数pおよび素数qを決定し、素数pおよび素数qの積(n=p×q)を演算することにより生成される。一方、公開鍵eは、公開鍵nのオイラーの関数φ(n)=(p−1)×(q−1)と互いに素(gcd(e,φ(n))=1)となる任意の正整数となるように生成される。また、秘密鍵dは、法をφ(n)とした公開鍵eの逆数として生成され、次の式(2)のように定められる。
Figure 0006360781
また、剰余の定義より、秘密鍵dは、次の式(3)に示すような、未知定数Qを用いた不定方程式を解くことにより求められる。なお、次の式(4)に示すような形をとる不定方程式は、拡張ユークリッド互除法により効率的に解くことができる。
Figure 0006360781
Figure 0006360781
このように、公開鍵nおよび秘密鍵dは共に、事前に決定される素数pおよび素数qから生成される。このとき、素数pおよび素数qの桁数が十分に大きければ、公開鍵n(=p×q)を公開しても素因数分解により素数pおよび素数qを復元することは困難であることより、素数pおよび素数qが漏洩しない限り、秘密鍵dを知ることは困難である。
次に、整数の集合Zに含まれる平文Mは、次の式(5)に示すように暗号文Cへと変換(暗号化)される。
Figure 0006360781
但し、式(5)において、平文Mの桁数は公開鍵nの桁数未満(M<n)でなければならず、平文Mの桁数が公開鍵nの桁数以上(M≧n)の場合には、公開鍵nの桁数ごとに平文Mを分割して暗号化する必要がある。また、この暗号化には、大きな整数のべき乗計算が含まれており、その計算を行うための効率的なアルゴリズムが存在する。
一方、暗号文Cは、次の式(6)に示すように平文Mに変換(復号)される。
Figure 0006360781
ここで、式(6)について証明を行う。まず、次の式(7)に示すような補題を導入する。
Figure 0006360781
また、暗号文Cを、次の式(8)のように定義すると、剰余の定義より定数Qを介してX=Q×n+Cと置くことができ、上述の式(7)の左辺は、次の式(9)に示すように置き換えられる。
Figure 0006360781
Figure 0006360781
一方、この式(9)の右辺を二項定理により展開すると、次の式(10)のように、右辺=左辺となる。
Figure 0006360781
そして、復号の演算に、上述した式(7)を用いると、次の式(11)のようになり、この式(11)に上述した式(3)を代入すると、次の式(12)が求められる。
Figure 0006360781
Figure 0006360781
ここで、次の式(13)に示すオイラーの定理より、式(12)は、次の式(14)のようになる。
Figure 0006360781
Figure 0006360781
従って、暗号化時の仮定より、平文Mの桁数は公開鍵nの桁数未満(M<n)であるならばM mod n = Mであることより、復号が達成されることが証明された。
次に、準同型性について説明する。RSA暗号は、乗法に関する準同型性を持ち、次の式(15)に示す関係が成立する。
Figure 0006360781
ここで、式(15)について証明を行う。被除数が負の場合を含むとき、剰余の定義は複数あるが、一例として、次の式(16)に示す定義を用いる。
Figure 0006360781
このとき、次の式(17)に示すような2つの暗号文について考えると、次の式(18)に示すようになる。
Figure 0006360781
Figure 0006360781
従って、上述した式(15)の左辺は、次の式(19)に示すように右辺に一致することより、式(15)に示すような関係が成立することが証明された。
Figure 0006360781
本技術では、以上のような準同型性を持つRSA暗号が利用される。
以下、本技術を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。
<FAシステムの構成例>
図1は、本技術を適用したFA(Factory Automation)システムの一実施の形態の構成例を示すブロック図である。なお、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
図1において、FAシステム11は、準同型暗号を用いた制御系として構成され、入力装置12、コントローラ13、プラント14、および制御系バス15を備え、コントローラ13およびプラント14が制御系バス15を介して接続されて構成される。
FAシステム11においては、オペレータが入力装置12を操作して、コントローラ13がプラント14を制御するためのパラメータを入力する。そのパラメータは、入力装置12において暗号化された後にコントローラ13に送信され、コントローラ13がパラメータを暗号化したまま処理を行い、制御系バス15を介してプラント14に対する制御が実行される。
入力装置12は、パラメータ入力部21および暗号化部22を備えて構成される。
パラメータ入力部21は、例えば、キーボードやタッチパネルなどの操作手段を有しており、オペレータによる操作に応じて入力されるパラメータを暗号化部22に供給する。暗号化部22は、パラメータ入力部21から供給されるパラメータを、公開鍵を用いて暗号化し、暗号化されたパラメータEnc(Parameters)をコントローラ13に送信する。
コントローラ13は、暗号化パラメータ取得部31、受信部32、演算部33、送信部34、および記録部35を備えて構成される。
暗号化パラメータ取得部31は、入力装置12と通信を行って、暗号化部22から送信される暗号化されたパラメータEnc(Parameters)を取得し、演算部33に供給する。受信部32は、プラント14から送信される暗号化された制御出力Enc(x)を受信し、演算部33に供給する。
演算部33は、暗号化パラメータ取得部31から供給される暗号化されたパラメータEnc(Parameters)と、受信部32から供給される暗号化された制御出力Enc(x)とを用いて、プラント14に対する制御を実行するための演算を行う。このとき、演算部33は、パラメータおよび制御出力を暗号化したまま演算{Enc(u[k])=g'(Enc(x), Enc(u))}して、復号および暗号化を行わずに、プラント14を制御するために入力される制御入力uが暗号化された状態の制御入力Enc(u)を算出する。
そして、演算部33は、演算により求めた暗号化された制御入力Enc(u)を送信部34に供給し、送信部34は、制御系バス15を介して、暗号化された制御入力Enc(u)をプラント14に送信する。
記録部35は、暗号化パラメータ取得部31が取得した暗号化されたパラメータEnc(Parameters)を記録する。さらに、記録部35は、暗号化されたパラメータEnc(Parameters)とともに、その暗号化されたパラメータEnc(Parameters)を用いた演算部33の演算において用いられた暗号化された制御出力Enc(x)と、その演算により求められた暗号化された制御入力Enc(u)を記録する。なお、記録部35は、暗号化されたパラメータEnc(Parameters)、暗号化された制御出力Enc(x)、および暗号化された制御入力Enc(u)のうち、少なくともいずれか1つを記録するように構成されていればよい。
プラント14は、受信部41、復号部42、制御実行部43、暗号化部44、および送信部45を備えて構成される。
受信部41は、コントローラ13の送信部34から制御系バス15を介して送信されてくる暗号化された制御入力Enc(u)を受信し、復号部42に供給する。復号部42は、暗号化部22が暗号化に用いた公開鍵に対応する秘密鍵を有しており、受信部41から供給される暗号化された制御入力Enc(u)を復号して得られる平文の制御入力uを、制御実行部43に供給する。
制御実行部43は、復号部42から供給される制御入力uに従って、例えば、図示しないアクチュエータに対する制御を実行する。また、制御実行部43は、例えば、アクチュエータの駆動を測定するセンサを有しており、そのセンサによって測定された追従偏差を、制御入力uに従った制御に対する制御出力xとして暗号化部44に供給する。または、制御実行部43は、制御入力uに従った制御に対する制御出力xを求めるための演算{x[k]=f(x,u)}を行ってもよい。
暗号化部44は、制御実行部43から供給される制御出力xを暗号化し、暗号化された制御出力Enc(x)を送信部45に供給する。送信部45は、暗号化部44から供給される暗号化された制御出力Enc(x)を、制御系バス15を介してコントローラ13に送信する。
以上のように、FAシステム11は構成されており、コントローラ13およびプラント14を接続する制御系バス15を介して送受信される情報の暗号化に、準同型暗号が採用される。これにより、コントローラ13の演算部33は、制御出力Enc(x)を復号することなく、プラント14に対する制御を実行するための演算を行うことができる。従って、FAシステム11は、プラント14の復号部42のみが秘密鍵を保持する構成とすることができる。
上述したような従来の産業ネットワークでは、コントローラおよびプラントの双方が秘密鍵を保持する構成であり、このような構成と比較して、FAシステム11は、秘密鍵を保持する箇所を削減することができる。従って、FAシステム11は、仮に、コントローラ13がハッキングされたとしても秘密鍵が漏洩することを回避することができ、また、コントローラ13の記録部35に記録されたパラメータ、制御出力および制御入力のそれぞれが暗号化されているため、たとえこれらが漏洩したとしても、コントローラ13およびプラント14の情報が漏洩することがなく、よりセキュリティ強化を図ることができる。即ち、FAシステム11においては、コントローラ13およびプラント14が離れた位置に配置され、制御系バス15を介して制御入力および制御出力を送受信するような構成であっても、コントローラ13およびプラント14の間で情報が漏洩してしまう危険性を低減することができる。
このように、FAシステム11は、従来の産業ネットワークよりも、被攻撃箇所を削減することができる。なお、準同型暗号の性質上、各種のゲインなどのようにコントローラ13が演算を行うためのパラメータは暗号化しておく必要があるが、これらのパラメータの暗号化は公開鍵のみで行うことができ、脆弱性は増加することはない。
また、FAシステム11において、上述したようなRSA暗号を使用した場合、RSA暗号は、加法に関して準同型性を持たないため、コントローラ13は、加法の必要ない比例制御(P制御)を用いてプラント14に対する制御を行う。同様に、フィードバック誤差の演算を暗号文に対して行うことができないため、制御実行部43は、例えば、レギュレーション問題またはセンサにより偏差を直接的に測定可能となるように構成される。
次に、FAシステム11において、コントローラ13に比例制御を実装した例について説明する。
例えば、オペレータは、比例制御で用いられるPゲインKをパラメータとして、パラメータ入力部21に入力する。そして、暗号化部22は、次の式(20)に示すように、公開鍵eおよび公開鍵nを用いてPゲインKを暗号化して、暗号化されたPゲインEnc(K)をコントローラ13に送信する。
Figure 0006360781
一方、プラント14では、制御実行部43が、センサにより測定した追従偏差εを、制御出力として暗号化部44に供給する。そして、暗号化部44は、次の式(21)に示すように、公開鍵eおよび公開鍵nを用いて追従偏差εを暗号化して、暗号化された追従偏差Enc(ε)をコントローラ13に送信する。この際、暗号化部44は、観測信号が実数である場合には、暗号化のために整数値に変換した後に暗号化を行う。
Figure 0006360781
そして、コントローラ13では、演算部33が、RSA暗号の準同型性を利用し、暗号化されたPゲインEnc(K)および追従偏差Enc(ε)を用いて、次の式(22)に示す演算を行うことで、暗号化された制御入力Enc(u)を求める。
Figure 0006360781
そして、演算部33が求めた暗号化された制御入力Enc(u)は、送信部34を介してプラント14に送信される。
その後、プラント14では、復号部42が、次の式(23)に示すように、秘密鍵dを用いて暗号化された制御入力Enc(u)を復号して、平文の制御入力uを制御実行部43に供給する。
Figure 0006360781
これにより、制御実行部43は、制御入力uに従って、図示しないアクチュエータを動作させる。
このように、FAシステム11は、RSA暗号の準同型性を利用して、演算部33が、暗号化されたPゲインEnc(K)および追従偏差Enc(ε)を復号することなく、暗号化された制御入力Enc(u)を求めることができるように構成されている。従って、FAシステム11は、プラント14の復号部42が復号を行うときのみ秘密鍵dが必要となる構成であることより、よりセキュリティ強化を図ることができる。
次に、図2のフローチャートを参照して、FAシステム11における制御処理について説明する。
制御処理が開始され、ステップS11において、オペレータがパラメータとしてPゲインKを入力すると、入力装置12では、パラメータ入力部21がPゲインKを取得して、暗号化部22に供給する。
ステップS12において、入力装置12では、暗号化部22が、ステップS11でパラメータ入力部21から供給されたPゲインKを、公開鍵eおよび公開鍵nを用いて暗号化する。そして、暗号化部22は、コントローラ13の暗号化パラメータ取得部31と通信を行い、暗号化されたPゲインKをコントローラ13に送信する。
ステップS13において、プラント14では、制御実行部43が、センサにより追従偏差εを測定し、制御出力として暗号化部44に供給する。そして、暗号化部44は、その追従偏差εを公開鍵eおよび公開鍵nを用いて暗号化し、送信部45は、暗号化された追従偏差Enc(ε)を、制御系バス15を介してコントローラ13に送信する。
ステップS14において、コントローラ13では、暗号化パラメータ取得部31が、暗号化部22により暗号化されたPゲインEnc(K)を取得して演算部33に供給し、受信部32が、暗号化部44により暗号化された追従偏差Enc(ε)を受信して演算部33に供給する。そして、演算部33は、暗号化されたPゲインEnc(K)および追従偏差Enc(ε)から、上述した式(22)に示す演算を行うことで、暗号化された制御入力Enc(u)を求める。送信部34は、演算部33が求めた暗号化された制御入力Enc(u)を、制御系バス15を介してプラント14に送信する。
ステップS15において、プラント14では、受信部41が、コントローラ13から送信されてくる暗号化された制御入力Enc(u)を受信する。復号部42は、秘密鍵dを用いて制御入力Enc(u)を復号して、平文の制御入力uを制御実行部43に供給する。
ステップS16において、プラント14では、制御実行部43が、制御入力uに従った駆動するようにアクチュエータを制御し、制御処理は終了される。
以上のように、FAシステム11では、予め暗号化されたPゲインEnc(K)を暗号化パラメータ取得部31が取得し、演算部33は、暗号化されたPゲインEnc(K)および追従偏差Enc(ε)を暗号化したまま用いて、暗号化された状態の制御入力Enc(u)を直接的に算出することができる。従って、コントローラ13において暗号鍵を保持する必要がなく、従来よりもセキュリティ強化を図ることができる。
<シミュレーション結果について>
このようなFAシステム11における制御処理の動作について、数値例を用いたシミュレーションを行うことにより確認する。
例えば、RSA暗号の初期設定において、RSA暗号に必要なパラメータとして、公開鍵eに23を設定し、素数pに1009を設定し、素数qに2003を設定する。これらのパラメータを用いることで、公開鍵nとして2021027が生成され、秘密鍵dとして526439が生成される。
また、シミュレーション条件として、プラント14の制御実行部43は、次の式(24)に示す演算に従い動作する。なお、制御実行部43による処理は、10msで離散化して行われる。
Figure 0006360781
そして、シミュレーション条件として、パラメータ入力部21に入力するパラメータとしてPゲインKに3を設定すると、暗号化部22により、次の式(25)に示す値が、暗号化されたPゲインEnc(K)として求められる。
Figure 0006360781
このようなシミュレーション条件に基づいてシミュレーションを行った。なお、暗号化部44による暗号化時における整数化は、例えば、12bit AD/DAコンバータの使用を想定し、次の式(26)に示すように行った。但し、式(26)において、εは、暗号化部44へ与える追従偏差の整数値であり、εrawは、制御実行部43が有するセンサから得られた追従偏差の実数値である。
Figure 0006360781
図3には、上述したシミュレーション条件におけるシミュレーション結果が示されている。
図3において、横軸は、時刻(Time[s])を示しており、縦軸は、制御実行部43からの制御出力(Output)を示している。また、図3では、制御の追従目標(tracking target)が破線で表され、暗号化したままで制御の演算を行ったシミュレーション結果(With encoding)が実線で表され、従来のように復号して演算を行ったシミュレーション結果(Without encoding)が丸印で表されている。
図3に示すように、FAシステム11において、演算部33が暗号化したままで制御の演算を行った応答は、微細な誤差はあるものの、復号して演算を行った応答とほぼ同一であるというシミュレーション結果を得ることができた。なお、この誤差は、暗号化時における整数化での打ち切りによるものであると考えられる。
このように、FAシステム11は、乗法に関して準同型性を持つRSA暗号を利用して比例制御を行うとき、演算部33が暗号化したままで制御の演算を行っても、応答が劣化することを回避することができる。
また、FAシステム11では、プラント14およびコントローラ13を接続する制御系バス15において、暗号化された信号(制御出力および制御入力)が伝達される。このため、FAシステム11は、コントローラ13およびプラント14が離れた位置に配置され、制御系バス15を介して制御入力および制御出力を送受信するような構成であっても、制御系バス15において情報が漏洩することを防止することができる。
ここで、図4を参照して、暗号化された信号について説明する。図4には、シミュレーション条件として、y[0]=1およびr[k]≡0を設定した場合におけるシミュレーション結果が示されている。
図4Aには、図3と同様のシミュレーション結果が示されており、図4Bには、暗号化された制御出力(Encoded Output)が示されており、図4Cには、暗号化された制御入力(Encoded Control Input)が示されている。
例えば、図4Aに示すように、y[k]がr[k]≡0を追従するようにシミュレーションを行ったときに、プラント14からコントローラ13に制御系バス15を介して送信される信号が図4Bに示されている。同様に、コントローラ13からプラント14に制御系バス15を介して送信される信号が図4Cに示されている。
図4に示すように、制御系バス15を介して伝送される信号(制御出力および制御入力)は暗号化されており、セキュリティ性を高めることができる。
このように、FAシステム11では、コントローラ13およびプラント14の間でやり取りされる測定量や操作量などの信号を秘匿することができ、例えば、制御システムにおけるリプレイアタック対策を実現することができる。また、FAシステム11では、入力装置12からコントローラ13に伝送される目標信号(パラメータ)を秘匿することができるので、例えば、化学プラントにおいて、その企業独自のプラント運転手順などのレシピ情報を秘匿することができる。さらに、FAシステム11は、コントローラ13およびプラント14の内部における制御アルゴリズムも秘匿することができる。
以上のように、FAシステム11では、制御システムにおける3つの秘密情報を秘匿したままでの演算を可能としており、従来よりも、より強固なセキュリティを実現することができる。
なお、FAシステム11は、制御系に暗号化処理を応用しており、制御のリアルタイム性に影響を与えることが懸念される。そこで、プラント14において、暗号化部44が追従偏差εを暗号化して、復号部42が制御入力uを復号するまでの制御周期ごとの所要時間をシミュレーションにより求めたところ、0.5ms以下であるというシミュレーション結果が得られた。例えば、一般的な制御周期は数秒以上であることより、FAシステム11は、暗号化処理のリアルタイム性を十分に確保できることが確認された。
ところで、上述したように、FAシステム11では、乗法に関して準同型性を持つRSA暗号を利用して、演算部33が、暗号化されたPゲインEnc(K)および追従偏差Enc(ε)から、暗号化された制御入力Enc(u)を求める演算を行うことができる。この構成では、FAシステム11において、演算に乗法のみを用いる制御の実装に限定されることになる。
これに対し、例えば、FAシステム11は、乗法および加法に関して準同型性を持つ暗号(Gentryが提案した完全準同型暗号)を利用する構成を採用するこができる。この構成により、例えば、乗法および加法の必要なPID(Proportional Integral Derivative)制御をFAシステム11に実装することが可能となり、より実用性を高めることができる。
次に、図5は、本技術を適用したFAシステムの変形例を示すブロック図である。
図5に示すFAシステム11Aにおいて、図1のFAシステム11と共通する構成については同一の符号を付し、その詳細な説明は省略する。即ち、FAシステム11Aは、入力装置12およびコントローラ13は、図1のFAシステム11と共通の構成とされる。但し、FAシステム11Aは、プラント14Aにおいて、復号部42と制御実行部43との間に加算処理部46が設けられている点で、図1のFAシステム11と異なる構成となっている。
例えば、FAシステム11Aでは、演算部33は、PID制御において加算を行う対象となる一部分ごとに所定数Nに分割して乗算を行い、それらの乗算により求められる一部分ごとの暗号化された制御入力Enc(u)(i=1〜N)を算出する。そして、演算部33は、このようにして求めた所定数Nの一部分ごとの制御入力Enc(u)を、送信部34を介してプラント14に送信する。
プラント14では、復号部42は、所定数Nの一部分ごとの制御入力Enc(u)をそれぞれ復号し、加算を行う対象となる所定数Nの制御入力uを加算処理部46に供給する。そして、加算処理部46は、所定数Nの制御入力uを全て加算する処理を行って、PID制御における制御入力uを求め、制御実行部43に供給する。
また、制御実行部43は、所定数Nの制御出力xを求めて暗号化部44に供給し、暗号化部44は、暗号化された制御出力Enc(x)を、送信部45を介して暗号化パラメータ取得部31に送信する。
このような構成とすることで、FAシステム11Aは、乗法および加法に準同型性を持つ暗号を利用することができ、PID制御を実行することができる。
なお、本実施の形態では、暗号化パラメータ取得部31が暗号化パラメータを取得するたびに演算部33が演算を行うように構成されている。これに対し、例えば、暗号化パラメータ取得部31は、取得した暗号化パラメータが既に記録部35に記録されている場合、その暗号化パラメータに対応付けられて記録されている暗号化された制御出力および制御入力を読み出して演算部33に供給するようにしてもよい。この場合、演算部33は、暗号化された制御出力も一致していれば、暗号化された制御入力を求める演算をすることなく、暗号化パラメータ取得部31から供給される暗号化された制御入力を、そのまま送信部34を介してプラント14に送信する。これにより、FAシステム11では、処理の高速化を図ることができる。
また、FAシステム11は、上述したような比例制御またはPID制御を行う他、例えば、モデル予測制御を行ってもよい。即ち、FAシステム11は、制御方法により限定されることはない。
なお、上述のフローチャートを参照して説明した各処理は、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)も含むものである。また、プログラムは、1のコンピュータにより処理されるものであっても良いし、複数のコンピュータによって処理されるものであっても良い。
また、上述した一連の処理(情報処理方法)は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラムが記録されたプログラム記録媒体からインストールされる。
図6は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
コンピュータにおいて、CPU(Central Processing Unit)101,ROM(Read Only Memory)102,RAM(Random Access Memory)103は、バス104により相互に接続されている。
バス104には、さらに、入出力インタフェース105が接続されている。入出力インタフェース105には、キーボード、マウス、マイクロホンなどよりなる入力部106、ディスプレイ、スピーカなどよりなる出力部107、ハードディスクや不揮発性のメモリなどよりなる記憶部108、ネットワークインタフェースなどよりなる通信部109、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア111を駆動するドライブ110が接続されている。
以上のように構成されるコンピュータでは、CPU101が、例えば、記憶部108に記憶されているプログラムを、入出力インタフェース105及びバス104を介して、RAM103にロードして実行することにより、上述した一連の処理が行われる。
コンピュータ(CPU101)が実行するプログラムは、例えば、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)等)、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア111に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供される。
そして、プログラムは、リムーバブルメディア111をドライブ110に装着することにより、入出力インタフェース105を介して、記憶部108にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部109で受信し、記憶部108にインストールすることができる。その他、プログラムは、ROM102や記憶部108に、あらかじめインストールしておくことができる。
なお、本実施の形態は、上述した実施の形態に限定されるものではなく、本開示の要旨を逸脱しない範囲において種々の変更が可能である。
11 FAシステム, 12 入力装置, 13 コントローラ, 14 プラント, 15 制御系バス,21 パラメータ入力部, 22 暗号化部, 31 暗号化パラメータ取得部, 32 受信部, 33 演算部, 34 送信部, 35 記録部, 41 受信部, 42 復号部, 43 制御実行部, 44 暗号化部, 45 送信部, 46 加算処理部

Claims (9)

  1. 制御装置およびプラントが制御系バスを介して接続された暗号化制御システムにおいて、
    前記プラント側で、制御結果として出力される制御出力を暗号化して、暗号化制御出力を求める制御出力暗号化部と、
    前記制御装置側で、前記制御出力暗号化部が前記暗号化制御出力を暗号化するのに使用した公開鍵と同一の公開鍵を使用して前記プラントの制御に用いられるパラメータが予め暗号化された暗号化パラメータと、前記制御系バスを介して取得される前記暗号化制御出力とを暗号化したまま用いて、前記プラントを制御するための制御入力が暗号化されている暗号化制御入力を算出する演算部と、
    前記プラント側で、前記制御系バスを介して取得される前記暗号化制御入力を、前記公開鍵に対応する秘密鍵を使用して復号する復号部と
    を備える暗号化制御システム。
  2. オペレータによる操作に応じて前記パラメータが入力されるパラメータ入力部と、
    前記パラメータ入力部に入力された前記パラメータを、前記公開鍵を使用して暗号化して、前記暗号化パラメータを求めるパラメータ暗号化部と
    をさらに備える請求項1に記載の制御システム。
  3. 前記暗号化パラメータ、前記暗号化制御出力、および前記暗号化制御入力のうち、少なくともいずれか1つを記録する記録部
    をさらに備える請求項1または2に記載の制御システム。
  4. 前記暗号化パラメータは、準同型性を持つ暗号により暗号化されたものである
    請求項1乃至3のいずれかに記載の制御システム。
  5. 前記暗号化パラメータは、乗法に関して準同型性を持つ暗号により暗号化されたものであり、
    前記演算部は、比例制御のゲインとして入力された前記パラメータが暗号化された前記暗号化パラメータを用いて、前記プラントに対して比例制御を実行するための演算を行う
    請求項1乃至4のいずれかに記載の制御システム。
  6. 前記暗号化パラメータは、乗法および加法に関して準同型性を持つ暗号により暗号化されたものであり、
    前記演算部は、PID(Proportional Integral Derivative)制御の目標値として入力された前記パラメータが暗号化された前記暗号化パラメータを用いて、前記プラントに対して前記PID制御を実行するための演算を行う
    請求項1乃至4のいずれかに記載の制御システム。
  7. 前記演算部は、前記PID制御において加算を行う対象となる一部分ごとに所定数に分割して乗算を行うことで、その一部分ごとの前記暗号化制御入力を算出し、
    前記復号部は、一部分ごとの前記暗号化制御入力を復号して、加算を行う対象となる所定数の一部分ごとの制御入力を求め、
    前記プラント側で、所定数の一部分ごとの前記制御入力を加算する処理を行って前記制御入力を求める加算処理部をさらに備える
    請求項6に記載の制御システム。
  8. 制御装置およびプラントが制御系バスを介して接続された暗号化制御システムの暗号化制御方法において、
    前記プラント側で、制御結果として出力される制御出力を暗号化して、暗号化制御出力を求め、
    前記制御装置側で、前記暗号化制御出力を暗号化するのに使用した公開鍵と同一の公開鍵を使用して前記プラントの制御に用いられるパラメータが予め暗号化された暗号化パラメータと、前記制御系バスを介して取得される前記暗号化制御出力とを暗号化したまま用いて、前記プラントを制御するための制御入力が暗号化されている暗号化制御入力を算出し、
    前記プラント側で、前記制御系バスを介して取得される前記暗号化制御入力を、前記公開鍵に対応する秘密鍵を使用して復号する
    を含む暗号化制御方法。
  9. 制御装置およびプラントが制御系バスを介して接続された暗号化制御システムを制御するコンピュータに実行させるプログラムにおいて、
    前記プラント側で、制御結果として出力される制御出力を暗号化して、暗号化制御出力を求め、
    前記制御装置側で、前記暗号化制御出力を暗号化するのに使用した公開鍵と同一の公開鍵を使用して前記プラントの制御に用いられるパラメータが予め暗号化された暗号化パラメータと、前記制御系バスを介して取得される前記暗号化制御出力とを暗号化したまま用いて、前記プラントを制御するための制御入力が暗号化されている暗号化制御入力を算出し、
    前記プラント側で、前記制御系バスを介して取得される前記暗号化制御入力を、前記公開鍵に対応する秘密鍵を使用して復号する
    ステップを含む処理をコンピュータに実行させるプログラム。
JP2014226964A 2014-11-07 2014-11-07 暗号化制御システムおよび暗号化制御方法、並びにプログラム Active JP6360781B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014226964A JP6360781B2 (ja) 2014-11-07 2014-11-07 暗号化制御システムおよび暗号化制御方法、並びにプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014226964A JP6360781B2 (ja) 2014-11-07 2014-11-07 暗号化制御システムおよび暗号化制御方法、並びにプログラム

Publications (2)

Publication Number Publication Date
JP2016090884A JP2016090884A (ja) 2016-05-23
JP6360781B2 true JP6360781B2 (ja) 2018-07-18

Family

ID=56017967

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014226964A Active JP6360781B2 (ja) 2014-11-07 2014-11-07 暗号化制御システムおよび暗号化制御方法、並びにプログラム

Country Status (1)

Country Link
JP (1) JP6360781B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019079048A1 (en) * 2017-10-18 2019-04-25 Cryptography Research, Inc. PROTECTION OF A MODULAR INVERSION OPERATION AGAINST EXTERNAL SURVEILLANCE ATTACKS
JP7391368B2 (ja) 2017-10-20 2023-12-05 国立大学法人電気通信大学 暗号化制御方法及び暗号化制御プログラム
DE102018108309A1 (de) * 2018-04-09 2019-10-10 Wago Verwaltungsgesellschaft Mbh Automatisierungssystem, Reihenklemme für Automatisierungssysteme sowie Verfahren hierzu
KR102404762B1 (ko) * 2020-09-25 2022-06-02 서울대학교산학협력단 플랜트 장치, 원격 제어 장치 및 그의 제어 방법
KR102430495B1 (ko) * 2021-08-04 2022-08-09 삼성전자주식회사 저장 장치, 호스트 장치 및 그것의 데이터 전송 방법

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002276849A (ja) * 2001-03-19 2002-09-25 Yoshiteru Morihiro バルブ用アクチュエータの制御システムにおけるデータ漏洩防止方法。
JP2008067162A (ja) * 2006-09-08 2008-03-21 Pit:Kk 制御システムおよびシステムの制御方法
JP2014126865A (ja) * 2012-12-27 2014-07-07 Fujitsu Ltd 暗号処理装置および方法
US8966277B2 (en) * 2013-03-15 2015-02-24 Mitsubishi Electric Research Laboratories, Inc. Method for authenticating an encryption of biometric data

Also Published As

Publication number Publication date
JP2016090884A (ja) 2016-05-23

Similar Documents

Publication Publication Date Title
US11551035B2 (en) Machine learning based on homomorphic encryption
JP6360781B2 (ja) 暗号化制御システムおよび暗号化制御方法、並びにプログラム
US9160728B2 (en) Message sending/receiving method
JP6194886B2 (ja) 暗号化統計処理システム、復号システム、鍵生成装置、プロキシ装置、暗号化統計データ生成装置、暗号化統計処理方法、および、暗号化統計処理プログラム
US11196723B2 (en) Encrypted control system, encrypted control method, and encrypted control program
Zhang et al. Secure state estimation using hybrid homomorphic encryption scheme
WO2016088453A1 (ja) 暗号化装置、復号装置、暗号処理システム、暗号化方法、復号方法、暗号化プログラム、及び復号プログラム
KR20150043062A (ko) 동형 암호화 알고리즘과 공개키 암호화 알고리즘을 이용하여, 암호화 데이터를 연산하는 방법 및 이를 이용한 서버
CN113225371A (zh) 一种电力物联网终端控制指令加解密系统及方法
Kogiso et al. Development and examination of encrypted control systems
JP2014197726A (ja) 計測装置、情報処理装置、鍵管理装置および使用量計算システム
Fujita et al. Security enhancements of networked control systems using RSA public-key cryptosystem
Suryavanshi et al. Encrypted model predictive control design for security to cyberattacks
Kumari et al. To secure the communication in powerful internet of things using innovative post-quantum cryptographic method
CN116094688A (zh) 基于同态加密的安全控制方法、装置及系统
JP5415569B2 (ja) 評価ユニット、評価方法、評価プログラム、及び記録媒体
Xu et al. Fine-grained access control scheme based on improved proxy re-encryption in cloud
Theodouli et al. Implementing private k-means clustering using a LWE-based cryptosystem
JP6952337B2 (ja) 暗号化システム
JP6093719B2 (ja) 暗号化装置、復号装置、およびプログラム
Satinder Design an algorithm for data encryption used in hybrid technique to implementation in database
Furka et al. Usage of homomorphic encryption algorithms in process control
WO2020179672A1 (ja) 暗号化制御システム、暗号化制御方法および暗号化制御プログラム
Chen et al. Security analysis of enhanced Schmidt-Samoa scheme
Furka et al. Guidelines for Secure Process Control: Harnessing the Power of Homomorphic Encryption and State Feedback Control

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171025

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180606

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180625

R150 Certificate of patent or registration of utility model

Ref document number: 6360781

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150