IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ファナック株式会社の特許一覧

<>
  • 特許-制御装置 図1
  • 特許-制御装置 図2
  • 特許-制御装置 図3
  • 特許-制御装置 図4
  • 特許-制御装置 図5
  • 特許-制御装置 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-11-27
(45)【発行日】2023-12-05
(54)【発明の名称】制御装置
(51)【国際特許分類】
   G05B 19/18 20060101AFI20231128BHJP
   G05B 19/414 20060101ALI20231128BHJP
【FI】
G05B19/18 X
G05B19/414 Q
【請求項の数】 7
(21)【出願番号】P 2022533929
(86)(22)【出願日】2021-06-24
(86)【国際出願番号】 JP2021023913
(87)【国際公開番号】W WO2022004544
(87)【国際公開日】2022-01-06
【審査請求日】2023-01-19
(31)【優先権主張番号】P 2020112468
(32)【優先日】2020-06-30
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】390008235
【氏名又は名称】ファナック株式会社
(74)【代理人】
【識別番号】100106002
【弁理士】
【氏名又は名称】正林 真之
(74)【代理人】
【識別番号】100165157
【弁理士】
【氏名又は名称】芝 哲央
(74)【代理人】
【識別番号】100160794
【弁理士】
【氏名又は名称】星野 寛明
(72)【発明者】
【氏名】由井 夢樹
(72)【発明者】
【氏名】木村 剛史
【審査官】牧 初
(56)【参考文献】
【文献】特開2010-98367(JP,A)
【文献】特開2011-242988(JP,A)
【文献】国際公開第2021/019637(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 19/18-19/416
G05B 19/42-19/46
(57)【特許請求の範囲】
【請求項1】
産業機械を制御し暗号化部を含む制御装置であって、
複数の仕向け先毎に対応した複数の前記暗号化部と複数の前記暗号化部のいずれかを無効化するもしくは複数の前記暗号化部を無効化する複数の無効化部とを含む暗号化装置部と、
前記制御装置の仕向け先に応じて前記複数の無効化部それぞれに複数の前記暗号化部のいずれかを無効化させるか複数の前記暗号化部を無効化させるかを指定して、暗号化部の無効化を選択する操作部と、
を備える制御装置。
【請求項2】
前記暗号化部は、少なくともTPM(Trusted Platform Module)、TPM準拠の専用チップで実装されたディスクリートTPM、マイコン内部のセキュリティ領域で実行されるファームウェアTPM、又はTPM規格に準拠しないディスクリートICのいずれかのセキュリティチップである、請求項1に記載の制御装置。
【請求項3】
前記無効化部はヒューズであり、
前記暗号化装置部は、
前記仕向け先に対応する暗号化部以外の無効化対象の暗号化部を無効化するように前記無効化部を動作させる加負荷回路を備える、請求項1又は請求項2に記載の制御装置。
【請求項4】
前記複数の暗号化部の各々の動作を制御する複数の制御ソフトウェアを記憶する補助記憶装置部と、
前記無効化部により少なくとも1つの無効化対象の暗号化部が無効化された場合、無効化された前記無効化対象の暗号化部に対応する制御ソフトウェアを前記補助記憶装置部から削除する演算部と、を備える、請求項3に記載の制御装置。
【請求項5】
前記制御装置の起動時に、前記無効化対象の暗号化部全てが無効化されているか否かを判定する起動時チェック処理部をさらに備え、
前記演算部は、前記起動時チェック処理部により前記無効化対象の暗号化部全てが無効化されていないと判定された場合、前記無効化対象の暗号化部全てが無効化されていないことを示すアラートを出力する、請求項4に記載の制御装置。
【請求項6】
前記加負荷回路は、前記起動時チェック処理部により前記無効化対象の暗号化部全てが無効化されたと判定された場合、無効化処理を行わない誤作動防止機能を有する、請求項5に記載の制御装置。
【請求項7】
前記演算部は、前記制御装置の仕向け先を前記補助記憶装置部に記憶し、前記操作部が前記補助記憶装置部に記憶された仕向け先と異なる仕向け先を受け付けた場合、前記補助記憶装置部に記憶された仕向け先と異なることを示すアラートを出力する、請求項4から請求項6のいずれか1項に記載の制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、制御装置に関する。
【背景技術】
【0002】
エンドユーザの数値制御装置においては、予め設定された通信設定情報に基づいて、暗号化された加工プログラムを工作機械メーカのホストコンピュータに要求して、受信した暗号化された加工プログラムを復号し、復号された加工プログラムを実行して工作機械を制御することで、加工プログラムが不正に再利用されることを防止する技術が知られている。例えば、特許文献1参照。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2015-138527号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
工作機械やロボット等の産業機械を制御する制御装置の内部データ(例えば、機械メーカのプログラム等)の保護やファームウェアの改ざんを防ぐために、信頼のおける暗号機能を有した暗号化チップを制御装置に搭載することが今後重要となる。
一方で、制御装置の販売者は販売する同じ制御装置の暗号技術に関しては仕向け先国(地域)それぞれの法規に従う必要があり、加えて、ある仕向け先国(地域)に対応できる暗号技術を使用可能な状態で別の仕向け国(地域)に販売できない法規もあることから、一種類の暗号化チップでは、すべての仕向け先国(地域)の法規を満たせない場合がある。
そのため、制御装置の販売者は、仕向け先の国(地域)毎に適切な暗号化チップを使う必要等があるため、国(地域)毎に異なる暗号化チップを実装した制御装置を複数用意する必要がある。
また、制御装置を工作機械や生産システムに組み込んで商品開発する機械メーカは、それぞれ異なる国に出荷する場合に、それぞれの国に対応した暗号化チップを実装した制御装置の在庫を持つ必要があり、機械メーカにとっても在庫コスト(製造コスト)がかかるという問題もある。
【0005】
そこで、仕向け先毎の制御装置を予め用意することなく、在庫コストを低減することが望まれている。
【課題を解決するための手段】
【0006】
本開示の制御装置の一態様は、産業機械を制御し暗号化部を含む制御装置であって、複数の仕向け先毎に対応した複数の前記暗号化部と複数の前記暗号化部のいずれかを無効化するもしくは複数の前記暗号化部を無効化する複数の無効化部とを含む暗号化装置部と、前記制御装置の仕向け先に応じて前記複数の無効化部それぞれに複数の前記暗号化部のいずれかを無効化させるか複数の前記暗号化部を無効化させるかを指定して、暗号化部の無効化を選択する操作部と、を備える。
【発明の効果】
【0007】
一態様によれば、仕向け先毎の制御装置を予め用意することなく、在庫コストを低減することができる。
【図面の簡単な説明】
【0008】
図1】一実施形態に係る制御装置の機能的構成の一例を示す機能ブロック図である。
図2】補助記憶装置部に格納されるデータの一例を示す図である。
図3】暗号化装置部の構成例を示す図である。
図4】制御装置の仕向け先で使用不可のセキュリティチップの削除処理について説明するフローチャートである。
図5】制御装置の起動時の処理について説明するフローチャートである。
図6】暗号化装置部の構成例を示す図である。
【発明を実施するための形態】
【0009】
以下、一実施形態について図面を用いて説明する。ここでは、産業機械として工作機械を、制御装置として数値制御装置を例示する。なお、本発明は、工作機械に限定されず、例えば産業用ロボット、サービス用ロボット等にも適用可能である。この場合、制御装置は、ロボット制御装置である。
【0010】
<一実施形態>
図1は、一実施形態に係る制御装置の機能的構成例を示す機能ブロック図である。
制御装置10は、当業者にとって公知の数値制御装置であり、制御情報に基づいて動作指令を生成し、生成した動作指令を工作機械(図示しない)に出力する。これにより、制御装置10は、工作機械(図示しない)の動作を制御する。なお、工作機械(図示しない)がロボット等の場合、制御装置1は、ロボット制御装置等でもよい。
【0011】
制御装置10は、図示しない接続インタフェースを介して工作機械(図示しない)と互いに直接接続されてもよい。なお、制御装置10と工作機械(図示しない)とは、LAN(Local Area Network)やインターネット等の図示しないネットワークを介して相互に接続されていてもよい。この場合、制御装置10は、かかる接続によって相互に通信を行うための図示しない通信部を備えている。
【0012】
ここで、図示しない工作機械は、例えば、工作機械やロボット、周辺装置等である。なお、図示しない工作機械は、工作機械やロボット、周辺装置に限定されず、産業機械全般に広く適用することができる。産業機械とは、例えば、工作機械、産業用ロボット、サービス用ロボット、鍛圧機械及び射出成形機といった様々な機械を含む。
【0013】
図1に示すように、制御装置10は、制御部100、操作部110、主記憶装置部120、補助記憶装置部130、及び暗号化装置部140を有する。そして、制御部100、操作部110、主記憶装置部120、補助記憶装置部130、及び暗号化装置部140は、図示しないバスを介して通信可能に接続されている。
【0014】
<操作部110>
操作部110は、例えば、制御装置10に含まれる図示しないMDIユニットのキーボードや表示器のタッチパネルあるいは物理的なロータリスイッチ等であり、制御装置10の販売者や機械メーカの設計者等からの操作を受け付ける。
具体的には、操作部110は、機械メーカの設計者等による操作に基づいて、制御装置10の仕向け先の指定を受け付け、受け付けた仕向け先に応じて後述する暗号化装置部140に含まれるn個のセキュリティチップのうち無効化対象のセキュリティチップを指定する(nは2以上の整数)。
なお、後述する補助記憶装置部130が、例えば、暗号化装置部140のn個のセキュリティチップそれぞれと仕向け先とを対応付けした仕向け先テーブル(図示しない)を予め記憶し、操作部110が制御装置10の仕向け先の指定を受け付け、指定された仕向け先に対応する有効のままとするセキュリティチップを選択した場合、後述する制御部100は、選択されたセキュリティチップと仕向け先テーブル(図示しない)とに基づいて、無効化対象のセキュリティチップを判定するようにしてもよい。
【0015】
<主記憶装置部120>
主記憶装置部120は、例えば、RAM(Random Access Memory)等のメモリであり、後述する制御部100がプログラムを実行する上で一時的に必要とされるデータを格納する。
【0016】
<補助記憶装置部130>
補助記憶装置部130は、例えば、ROM(Read Only Memory)やHDD(Hard Disk Drive)やフラッシュメモリ等である。
図2は、補助記憶装置部130に格納されるデータの一例を示す図である。
図2に示すように、補助記憶装置部130は、後述する制御部100が実行するシステムプログラム及びアプリケーションプログラム等を格納する既存ソフトウェア領域131を有する。また、補助記憶装置部130は、後述する暗号化装置部140に含まれるn個のセキュリティチップそれぞれを実行するセキュリティチップ制御ソフトウェア134(1)-134(n)を格納するセキュリティ領域132を有する。
セキュリティチップ制御ソフトウェア134(1)-134(n)それぞれは、後述する暗号化装置部140に含まれる暗号化部としてのn個のセキュリティチップのうち対応する1つのセキュリティチップを実行することにより、制御装置10の仕向け先(例えば、第1地域(国)から第n地域(国)のいずれかの地域(国))に応じた暗号化処理を実現する。
【0017】
なお、補助記憶装置部130は、既存ソフトウェア領域131の格納されたソフトウェア、及びセキュリティ領域132に格納されたセキュリティチップ制御ソフトウェア134(1)-134(n)の各々をファイル名ベースで管理してもよい。そうすることで、補助記憶装置部130は、後述する制御部100からファイル名に基づいて削除指示されたソフトウェアを削除することができる。あるいは、補助記憶装置部130は、既存ソフトウェア領域131に格納されたソフトウェア、及びセキュリティ領域132に格納されたセキュリティチップ制御ソフトウェア134(1)-134(n)の各々をファイルシステム上でアドレス管理してもよい。そうすることで、補助記憶装置部130は、各ソフトウェアが格納されているアドレスと範囲とを予め分かっていることから、後述する制御部100からのアドレスに基づいて削除指示されたソフトウェアを削除することができる。
【0018】
また、補助記憶装置部130は、セキュリティチップ制御抽象化プログラム133及び起動時チェック処理プログラム135を格納してもよい。
後述する制御部100(具体的には演算部101)によりセキュリティチップ制御抽象化プログラム133を実行することにより、抽象化された共通インタフェースにより、セキュリティチップ(j)(1≦j≦n)に対応する制御を実行するセキュリティチップ制御ソフトウェア134(j)に対して、指示することを可能とする。なお、このような抽象化処理は、当業者に取って公知であり、詳細な説明は省略する。
また、制御装置10の起動時に、制御部100(具体的には演算部101)により起動時チェック処理プログラム135を実行することにより、制御装置10の構成や設定等のチェック処理を実行する。なお、起動時チェック処理プログラム135を実行することにより提供される起動時チェック処理機能部(起動時チェック処理部)については後述する。
【0019】
<暗号化装置部140>
図3は、暗号化装置部140の構成の一例を示す図である。
図3に示すように、暗号化装置部140は、暗号化部として、n個のヒューズ141(1)-141(n)、n個のセキュリティチップ142(1)-142(n)、n個のスイッチSW1-SWn、ダイオード143、スイッチ144、及び電源145を有する。n個のヒューズ141(1)-141(n)、n個のセキュリティチップ142(1)-142(n)、n個のスイッチSW(1)-SW(n)、ダイオード143、スイッチ144、及び電源145は、図示しない1つの制御回路に配置されてもよい。
なお、電源150は、例えば、セキュリティチップ142(1)-142(n)それぞれが動作するのに必要な電力を供給する、外部の定電流源である。
【0020】
ヒューズ141(1)-141(n)は、セキュリティチップ142(1)-142(n)それぞれと接続され、無効化部として動作する。
【0021】
暗号化部としてのセキュリティチップ142(1)-142(n)としては、例えば、TCG(Trusted Computing Group)(登録商標)で定義されたセキュリティの仕様に準拠したセキュリティチップTPM(Trusted Platform Module)を適用することができる。なお、セキュリティチップ142(1)-142(n)は、TPMとしたが、これに限定されない。例えば、セキュリティチップ142(1)-142(n)は、暗号化部として、TPM準拠の専用チップで実装されたディスクリートTPMでもよく、前記ディスクリートTPMによる暗号化でもよい。また、セキュリティチップ142(1)-142(n)は、暗号化部として、マイコン内部のセキュリティ領域で実行されるファームウェアTPMでもよく、前記ファームウェアTPMによる暗号化でもよい。あるいは、セキュリティチップ142(1)-142(n)は、暗号化部として、TPM規格に準拠しないディスクリートICでもよく、前記ディスクリートICによる暗号化でもよい。また、セキュリティチップ142(1)-142(n)は、暗号化部として、マイコンによるソフトウェア暗号化でもよい。
前述したように、例えば仕向け先(第1地域(国)から第n地域(国)のいずれかの地域(国))毎に指定されるそれぞれのセキュリティチップ142(1)-142(n)は、セキュリティ領域132に格納された、対応するそれぞれのセキュリティチップ制御ソフトウェア134(1)-134(n)を実行することにより、仕向け先に特化したそれぞれに対応した暗号化処理を行うことができる。
【0022】
スイッチSW(1)-SW(n)、ダイオード143、スイッチ144、及び電源145は、例えば、後述する制御部100からの制御指示に基づいて、加負荷回路として動作する。
具体的には、操作部110が、例えば、制御装置10の仕向け先として第i地域(国)の指定を受け付けた場合、セキュリティチップ142(i)以外の無効化対象のセキュリティチップ142(j)(j≠i)を制御回路から切断するために、後述する制御部100からの制御指示に基づいて、スイッチSW(i)はOFFになり、スイッチSW(i)以外のスイッチSW(j)(j≠i)はONになる。なお、iは1からnの整数である。この場合、後述する制御部100からの指示に基づきスイッチ144がONになると、電源145からの電力がヒューズ141(i)以外のヒューズ141(j)(j≠i)に印加されることで、ヒューズ141(i)以外のヒューズ141(j)が焼き切られる。これにより、セキュリティチップ142(i)以外のセキュリティチップ142(j)が制御回路から切断され無効化される。
なお、加負荷回路として動作するスイッチSW(1)-SW(n)及びスイッチ144は、セキュリティチップ142(i)以外のセキュリティチップ142(j)(j≠i)全てが制御回路から切断されている場合、無効化処理を行わない誤作動防止機能を有してもよい。
また、加負荷回路としてのダイオード143及びスイッチ144があることにより、無効化処理のタイミングを決定することができ、電源投入時にすぐに無効化処理にならないことで、誤って仕向け先が決まってしまうことを避けることができる。ただし、ダイオード143及びスイッチ144は加負荷回路になくてもよい。
【0023】
電源145は、ヒューズ141(1)-141(n)を焼き切るのに必要な電力を供給する定電流源である。
【0024】
<制御部100>
制御部100は、演算部101を備え、例えば制御装置10を全体的に制御するプロセッサである。制御部100は、図示しないバスを介して主記憶装置部120、及び補助記憶装置部130と通信可能に接続される。
演算部101は、補助記憶装置部130の既存ソフトウェア領域131に格納されたシステムプログラム及びアプリケーションプログラムを、バスを介して読み出し、前記システムプログラム及びアプリケーションプログラムに従って制御装置10全体を制御する。
同様に、演算部101は、補助記憶装置部130に格納されたセキュリティチップ制御抽象化プログラム133、セキュリティチップ制御ソフトウェア134(1)-134(n)、及び起動時チェック処理プログラム135を、バスを介して読み出し、前記システムプログラム及びアプリケーションプログラムに従って、制御装置10に係るセキュリティ処理を制御する。
これにより、図1に示すように、制御部100は、前述したセキュリティチップ制御抽象化機能、及び起動時チェック処理機能を実現するように構成される。
【0025】
制御部100は、暗号化装置部140に配置されるスイッチSW(1)-SW(n)及びスイッチ144の加負荷回路の作動により、セキュリティチップ142(i)以外の少なくとも1つの無効化対象のセキュリティチップ142(j)(j≠i)が無効化された場合、無効化されたセキュリティチップ142(j)に対応するセキュリティチップ制御ソフトウェア134(j)(j≠i)を補助記憶装置部130から削除するようにしてもよい。
具体的には、制御部100は、例えば、操作部110が制御装置10の仕向け先として第i地域(国)の指定を機械メーカの設計者等から受け付けた場合、セキュリティチップ142(i)以外のセキュリティチップ142を制御回路から切断するために、スイッチSW(i)をOFFにし、スイッチSW(i)以外のスイッチSWをONにする。そして、制御部100は、スイッチ144をONにすることで、ヒューズ141(i)以外のヒューズ141(j)(j≠i)を焼き切り、セキュリティチップ142(i)以外の無効化対象のセキュリティチップ142(j)を制御回路から切断し無効化する。その際、制御部100は、セキュリティチップ制御ソフトウェア134(i)以外のセキュリティチップ制御ソフトウェア134(j)(j≠i)全てを補助記憶装置部130から削除するようにしてもよい。
【0026】
そうすることで、制御装置10の販売者は出荷時に機械メーカ等にどの仕向地向けかを設定せずに販売することができ、機械メーカの設計者等は機械の出荷までに、制御装置10の仕向け先の設定操作を行うことで、選択された仕向け先向けの暗号機能のみを有する制御装置10とすることができる。
なお、無効化対象のセキュリティチップ142(j)(j≠i)は仕向け先では使われないため、仕向け先とは関係ないセキュリティ情報を含むセキュリティチップ制御ソフトウェア134(i)以外のセキュリティチップ制御ソフトウェア134(j)(j≠i)を残さないようにすることで、ハッキングされるリスクを減らすことができる。また、仕向け先への出荷前に、セキュリティチップ制御ソフトウェア134(i)以外のセキュリティチップ制御ソフトウェア134(j)(j≠i)を削除することによって、セキュリティチップ制御ソフトウェア134(i)以外のセキュリティチップ制御ソフトウェア134(j)(j≠i)が仕向け先の法律による開示要求等の影響を受けずに済むという効果を奏することができる。
なお、セキュリティチップ制御ソフトウェア134(j)(j≠i)の削除は、当業者にとって公知のゼロ上書き後削除や、乱数上書き後削除等で行われてもよい。
【0027】
ところで、例えば、セキュリティチップ142(i)以外の無効化対象のセキュリティチップ142(j)(j≠i)を制御回路から切断するため、ヒューズ141(i)以外のヒューズ141(j)(j≠i)を焼き切っているときに、機械メーカの設計者等が誤って制御装置10の電源を落としてしまう等の場合が考えられる。この場合、ヒューズ141(i)以外のヒューズ141(j)(j≠i)の一部が焼き切られず、無効化対象のセキュリティチップ142(j)(j≠i)の一部が制御回路に接続された状態のままとなるリスクが発生する可能性がある。
【0028】
そこで、制御部100は、例えば、制御装置10の仕向け先に対応するセキュリティチップ142(i)の識別情報を補助記憶装置部130に記憶してもよい。そうすることで、制御部100は、制御装置10が起動されたとき、起動時チェック処理プログラム135を起動することで、補助記憶装置部130に記憶されたセキュリティチップ142(i)の識別情報と、公知の断線検知の手法と、に基づいて、セキュリティチップ142(i)以外のセキュリティチップ142(j)(j≠i)全てが制御回路から切断されているか否かを判定するようにしてもよい。
具体的には、制御部100は、起動時チェック処理プログラム135を実行することで、例えば、セキュリティチップ142(i)以外の無効化対象のセキュリティチップ142(j)(j≠i)それぞれに制御用コマンドを送信する。制御部100は、前記制御用コマンドに対する応答を受けたか否かで、無効化対象のセキュリティチップ142(j)(j≠i)全てが制御回路から切断されているか否かを判定してもよい。すなわち、制御部100は、起動時チェック処理プログラム135を実行することで、無効化対象のセキュリティチップ142(j)(j≠i)から正しい応答が帰る場合、接続と判定し、正しくない応答若しくは応答がない場合、切断されていると判定するようにしてもよい。
【0029】
なお、起動時に、万が一、無効化対象のセキュリティチップ142が制御回路から切断されていないことを検知した場合、制御装置10を起動できないようにするとともに、無効化対象のセキュリティチップ142(j)(j≠i)が制御回路から切断されていないことを示すアラートを出力し、制御装置10の図示しない表示器に表示してもよい。その後、例えば、制御装置10の販売者等により、セキュリティチップ142の再設定を行うようにしてもよい。
ただし、一度無効化処理を実行した場合、機械メーカの設計者等が誤って違う仕向け先に変えないように、制御部100は、一度目の無効化処理で残す地域(国)を補助記憶装置部130に記憶してもよい。そして、機械メーカの設計者等が一度目に設定した仕向け先と違う仕向け先を設定しようとした場合、制御部100は、一度目に設定した仕向け先と違う仕向け先を設定しようとしていることを示すアラート等を出力し、制御装置10の図示しない表示器に表示するようにしてもよい。
そうすることで、制御装置10は、仕向け先が一度指定されると、ユーザにより制御装置10が使用可能となる前に、無効化対象のセキュリティチップ142(j)(j≠i)を確実に無効化することができ、無効化対象のセキュリティチップ142(j)(j≠i)に対応するセキュリティチップ制御ソフトウェア134(j)(j≠i)を補助記憶装置部130から確実に削除することができる。
【0030】
<制御装置10の仕向け先で使用不可のセキュリティチップの削除処理>
次に、本実施形態に係る制御装置10の削除処理に係る動作について説明する。
図4は、制御装置10の仕向け先で使用不可のセキュリティチップの削除処理について説明するフローチャートである。ここで示すフローは、制御装置10の仕向け先が指定される度に実行される。
【0031】
ステップS11において、操作部110は、機械メーカの設計者等による入力操作に基づいて、制御装置10の仕向け先の指定を受け付ける。
【0032】
ステップS12において、制御部100は、ステップS11で指定された仕向け先に対応するセキュリティチップ142(i)以外の無効化対象のセキュリティチップ142(j)(j≠i)を制御回路から切断するために、スイッチSW(i)をOFFに、スイッチSW(i)以外のスイッチSW(j)(j≠i)をONにそれぞれ設定する。
【0033】
ステップS13において、制御部100は、スイッチ144をONにすることにより、ヒューズ141(i)以外のヒューズ141(j)(j≠i)を焼き切り、無効化対象のセキュリティチップ142(j)(j≠i)を制御回路から切断する。
【0034】
ステップS14において、演算部101は、無効化対象のセキュリティチップ142(j)に対応するセキュリティチップ制御ソフトウェア134(j)を補助記憶装置部130から削除する。
【0035】
<制御装置10の起動時の処理>
次に、本実施形態に係る制御装置10の起動時の処理に係る動作について説明する。
図5は、制御装置10の起動時の削除処理について説明するフローチャートである。ここで示すフローは、制御装置10が起動される度に実行される。
【0036】
ステップS21において、制御部100は、起動時チェック処理プログラム135を実行することで、起動時に仕向け先のセキュリティチップ142(i)以外の無効化対象のセキュリティチップ142(j)(j≠i)全てが制御回路から切断されているか否かを判定する。無効化対象のセキュリティチップ142(j)(j≠i)全てが制御回路から切断されている場合、ステップS23に進む。一方、無効化対象のセキュリティチップ142(j)(j≠i)全てが制御回路から切断されていない場合、処理はステップS22に進む。
【0037】
ステップS22において、制御部100は、制御装置10を起動できないようにするとともに、無効化対象のセキュリティチップ142(j)(j≠i)が制御回路から切断されていないことを示すアラートを出力し、図示しない表示器に表示して、起動処理を終了する。
【0038】
ステップS23において、制御部100は、制御装置10の通常の起動処理を行う。
【0039】
以上により、一実施形態の制御装置10は、複数の地域の各々に対応した暗号化機能を有するセキュリティチップ142(1)-142(n)を予め有する。制御装置10は、機械メーカの設計者等による入力操作に基づいて、制御装置10の仕向け先の指定を受け付けた場合、指定された仕向け先に対応するセキュリティチップ142(i)以外の無効化対象のセキュリティチップ142(j)(j≠i)を制御回路から切断することで無効化することができる。
これにより、仕向け先毎の制御装置10を予め用意することなく、在庫コストを低減することができる。すなわち、制御装置10の販売者は、仕向け先毎に在庫を用意する必要がなくなり、制御装置10の販売者の在庫コストを低減することができる。また、機械メーカや生産システムインテグレータは、仕向け先毎に制御装置10の在庫を用意する必要がなくなり、在庫コストを低減することができる。
また、制御装置10は、無効化対象のセキュリティチップ142(j)(j≠i)に対応するセキュリティチップ制御ソフトウェア134(j)(j≠i)全てを削除することにより、ハッキングされるリスクを減らすことができる。
また、制御装置10は、起動時に、仕向け先に対応するセキュリティチップ142(i)以外の無効化対象のセキュリティチップ142(j)(j≠i)全てが制御回路から切断されているか否かを判定する。そして、制御装置10は、無効化対象のセキュリティチップ142(j)(j≠i)全てが切断されていない場合、制御装置10を起動できないようにするとともに、無効化対象のセキュリティチップ142(j)(j≠i)が制御回路から切断されていないことを示すアラートを、制御装置10の図示しない表示器に表示してもよい。そうすることで、例えば、制御装置10の販売者等により、セキュリティチップ142の再設定を行うようにしてもよい。
【0040】
以上、一実施形態について説明したが、制御装置10は、上述の実施形態に限定されるものではなく、目的を達成できる範囲での変形、改良等を含む。
【0041】
<変形例1>
上述の実施形態では、暗号化装置部140は、図3に示すような構成を有したが、これに限定されない。
図6は、暗号化装置部140の構成例を示す図である。なお、図3の暗号化装置部140の要素と同様の機能を有する要素については、同じ符号を付し、詳細な説明は省略する。
図6に示すように、ヒューズ141(1)-141(n)それぞれと、スイッチSW(1)-SW(n)のそれぞれと、セキュリティチップ142(1)-142(n)のそれぞれと、が直列に接続される。そして、演算部101は、例えば、制御装置10の仕向け先として第i地域(国)の指定を受け付けた場合、図3の場合と同様に、スイッチSW(i)をOFFにし、スイッチSW(i)以外のスイッチSWをONにすることにより、セキュリティチップ142(i)以外の無効化対象のセキュリティチップ142を制御回路から切断してもよい。
【0042】
<変形例2>
また例えば、上述の実施形態では、制御部100は、起動時チェック処理プログラム135を実行することで、起動時に仕向け先のセキュリティチップ142(i)以外の無効化対象のセキュリティチップ142(j)(j≠i)全てが制御回路から切断されていない場合、無効化対象のセキュリティチップ142(j)(j≠i)が制御回路から切断されていないことを示すアラートを出力し、制御装置10の図示しない表示器に表示したが、これに限定されない。
例えば、制御部100は、制御装置10の再起動時に、起動時チェック処理プログラム135を実行することで、再度無効化対象のセキュリティチップ142(j)(j≠i)全てを制御回路から切断するようにしてもよい。また、制御部100は、無効化対象のセキュリティチップ142(j)(j≠i)に対応するセキュリティチップ制御ソフトウェア134(j)(j≠i)を補助記憶装置部130から削除してもよい。
そうすることで、制御装置10は、セキュリティチップ142(i)以外の無効化対象のセキュリティチップ142(j)(j≠i)全てを確実に無効化することができ、無効化対象のセキュリティチップ142(j)(j≠i)に対応するセキュリティチップ制御ソフトウェア134(j)(j≠i)全てを補助記憶装置部130から確実に削除することができる。
【0043】
なお、一実施形態に係る制御装置10に含まれる各機能は、ハードウェア、ソフトウェア又はこれらの組み合わせによりそれぞれ実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータがプログラムを読み込んで実行することにより実現されることを意味する。
また、制御装置10に含まれる各構成部は、電子回路等を含むハードウェア、ソフトウェア又はこれらの組み合わせにより実現することができる。
【0044】
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(Non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(Tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM)を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(Transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は、無線通信路を介して、プログラムをコンピュータに供給できる。
【0045】
なお、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【0046】
以上を換言すると、本開示の制御装置は、次のような構成を有する各種各様の実施形態を取ることができる。
【0047】
(1)本開示の制御装置10は、産業機械を制御し暗号化部を含む制御装置であって、複数の仕向け先毎に対応した複数のセキュリティチップ142と複数のセキュリティチップ142のいずれかを無効化するもしくは複数のセキュリティチップ142を無効化する複数の無効化部とを含む暗号化装置部140と、制御装置10の仕向け先に応じて複数の無効化部それぞれに複数のセキュリティチップ142のいずれかを無効化させるか複数のセキュリティチップ142を無効化させるかを指定して、セキュリティチップ142の無効化を選択する操作部110と、を備える。
この制御装置10によれば、仕向け先毎の制御装置10を予め用意することなく、在庫コストを低減することができる。
【0048】
(2) (1)に記載の制御装置10において、セキュリティチップ142(1)-142(n)は、少なくともTPM、TPM準拠の専用チップで実装されたディスクリートTPM、マイコン内部のセキュリティ領域で実行されるファームウェアTPM、又はTPM規格に準拠しないディスクリートICのいずれかのセキュリティチップであってもよい。
そうすることで、制御装置10は、所望のセキュリティチップを使用することができる。
【0049】
(3) (1)又は(2)に記載の制御装置10において、無効化部はヒューズ141(1)-141(n)であり、暗号化装置部140は、仕向け先に対応するセキュリティチップ142(1)以外の無効化対象のセキュリティチップ142(j)(j≠i)を無効化するようにヒューズ141(j)(j≠i)を動作させる加負荷回路を備えてもよい。
そうすることで、制御装置10は、無効化対象のセキュリティチップ142(j)(j≠i)を確実に切断することができる。
【0050】
(4) (3)に記載の制御装置10において、複数のセキュリティチップ142(1)-142(n)の各々の動作を制御する複数のセキュリティチップ制御ソフトウェア134(1)-134(n)を記憶する補助記憶装置部130と、ヒューズ141(1)-141(n)により少なくとも1つの無効化対象のセキュリティチップ142が無効化された場合、無効化されたセキュリティチップ142に対応するセキュリティチップ制御ソフトウェア134を補助記憶装置部130から削除する演算部101とを、を備えてもよい。
そうすることで、制御装置10は、ハッキングされるリスクを減らすことができる。
【0051】
(5) (4)に記載の制御装置10において、制御装置10の起動時に、無効化対象のセキュリティチップ142(j)(j≠i)全てが無効化されているか否かを判定する起動時チェック処理部をさらに備え、演算部101は、起動時チェック処理部により無効化対象のセキュリティチップ142(j)(j≠i)全てが無効化されていないと判定された場合、無効化対象のセキュリティチップ142(j)(j≠i)全てが無効化されていないことを示すアラートを出力してもよい。
そうすることで、制御装置10は、ユーザにより制御装置10が使用可能となる前に、無効化対象のセキュリティチップ142(j)(j≠i)全てを確実に無効化することができる。
【0052】
(6) (5)に記載の制御装置10において、加負荷回路は、起動時チェック処理部により無効化対象のセキュリティチップ142(j)(j≠i)全てが無効化されたと判定された場合、無効化処理を行わない誤作動防止機能を有してもよい。
そうすることで、制御装置10は、無効化対象のセキュリティチップ142全てを安全に無効化することができる。
【0053】
(7) (4)から(6)のいずれかに記載の制御装置10において、演算部101は、制御装置10の仕向け先を補助記憶装置部130に記憶し、操作部110が補助記憶装置部130に記憶された仕向け先と異なる仕向け先を受け付けた場合、補助記憶装置部130に記憶された仕向け先と異なることを示すアラートを出力してもよい。
そうすることで、制御装置10は、機械メーカの設計者等が一度設定した仕向け先を再度仕向け先を変えようとした場合、既に仕向け先が設定されている旨を機械メーカの設計者等に通知することができる。
【符号の説明】
【0054】
10 制御装置
100 制御部
101 演算部
110 操作部
120 主記憶装置部
130 補助記憶装置部
131 既存ソフトウェア領域
132 セキュリティ領域
134(1)-134(n) セキュリティチップ制御ソフトウェア
135 起動時チェック処理プログラム
140 暗号化装置部
141(1)-141(n) ヒューズ
142(1)-142(n) セキュリティチップ
SW(1)-SW(n)、144 スイッチ
図1
図2
図3
図4
図5
図6