JP7227086B2 - 正当性確認機器 - Google Patents

正当性確認機器 Download PDF

Info

Publication number
JP7227086B2
JP7227086B2 JP2019115448A JP2019115448A JP7227086B2 JP 7227086 B2 JP7227086 B2 JP 7227086B2 JP 2019115448 A JP2019115448 A JP 2019115448A JP 2019115448 A JP2019115448 A JP 2019115448A JP 7227086 B2 JP7227086 B2 JP 7227086B2
Authority
JP
Japan
Prior art keywords
computer
kitting
validity confirmation
validity
management system
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
JP2019115448A
Other languages
English (en)
Other versions
JP2021002204A (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.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Priority to JP2019115448A priority Critical patent/JP7227086B2/ja
Priority to DE102020205704.4A priority patent/DE102020205704A1/de
Priority to US15/930,855 priority patent/US11392693B2/en
Priority to CN202010553625.6A priority patent/CN112115421A/zh
Publication of JP2021002204A publication Critical patent/JP2021002204A/ja
Application granted granted Critical
Publication of JP7227086B2 publication Critical patent/JP7227086B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/105Arrangements for software license management or administration, e.g. for managing licenses at corporate level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Stored Programmes (AREA)

Description

本発明は、ソフトウェアの正当性確認機器に関する。
コンピュータの利用に際して、サイバーセキュリティの対策が非常に重要になっている。例えば、インターネットを経由して悪意あるサイトにアクセスし、又は汚染されたUSBメモリを使用することで、コンピュータ内にマルウェアの混入を許してしまうことが発生するリスクがある。マルウェアの混入が原因で、秘匿データの漏洩や、コンピュータの乗っ取り、コンピュータの機能不全等が発生することは社会問題となっている。従来、マルウェアに対しては、ブラックリストによるマルウェアの検出と削除、ホワイトリストによるマルウェアの実行禁止等の対策が行われてきた。これに対して、コンピュータの導入時におけるキッティング作業時におけるマルウェア対策については、特段の対策はなされていなかった。
個人利用のコンピュータの導入時については、コンピュータの利用者本人が、コンピュータを購入し、OS、ミドルウェア、アプリケーションソフトウェア等をインストールしたり、コンピュータが利用可能なように設定を行ったりする、いわゆるキッティング作業を行うことが多い。なお、個人利用のコンピュータであったとしても、利用者が購入してすぐに利用できるように、購入前に予め必要なソフトウェアがプリキッティングされている場合もあるが、この場合は、コンピュータを提供するメーカによりプリキッティングされている場合が多い。
これに対して、業務用途でコンピュータを利用する場合や、多数のコンピュータで構成されるコンピュータシステムを導入する場合については、キッティング作業はキッティングサービス業者や、システムインテグレータ等の専門知識を持った作業者が行うことが多い。
コンピュータの利用者自身がキッティングを行わない場合、悪意を持った作業者であればキッティング時にコンピュータにマルウェアを仕掛けることができる。また、作業者に悪意がない場合でも、作業者が使用する機器がマルウェアに感染していることにより、間接的にキッティング対象のコンピュータにマルウェアが仕掛けられることもある。このため、仮にブラックリストやホワイトリストを使ったマルウェア対策ソフトウェアをコンピュータに導入していたとしても、マルウェア対策ソフトウェア自体がマルウェアにすり替えられてしまうと、サイバーセキュリティ対策の効果がない。
製造装置の分野においては、昨今、製造現場にエッジサーバを設置して、当該エッジサーバのキッティング作業後に、様々な機能や目的を持ったサーバアプリケーションソフトウェア(以降、単に「アプリケーション」、「アプリ」ともいう。)を、特定のセキュアなダウンロードサイトからのみダウンロードし、当該アプリをエッジサーバで使用する業務形態が始められている。
ここで、エッジサーバとは、工場等の製造現場に設置された、CNC工作機械、産業機器、産業用ロボット等を含む製造装置、及び画像センサ、PLC(programmable logic controller)等の製造装置に付帯する機器である各種エッジ機器と通信可能に接続されたサーバである。そうすることで、エッジサーバは、例えばエッジ機器に係る機能を実行し、及び/又は、エッジ機器の処理データにアクセスし、当該アプリケーションに係る所定の情報処理をする。エッジ機器の処理データとは、例えば当該エッジ機器に係る動作状態を示すデータ、生産状況を示すデータ、生産物の品質状況を示すデータ、稼働状況を示すデータ等を指す。
製造装置の分野におけるエッジサーバの運用においては、エッジサーバ購入時のキッティング作業時にキッティングが正常になされた場合、それ以降に、エッジサーバにより稼働させるアプリケーションは全て、特定のセキュアなダウンロードサイトからのみインストールするように運用するため、キッティング作業終了後に、マルウェアを仕掛けられる恐れはない。しかしながら、仮にエッジサーバ購入時のキッティング作業時に、悪意を持った作業者にマルウェアを仕掛けられた場合、インストールされるアプリケーションを特定のセキュアなダウンロードサイトからのみインストールする場合であっても、秘匿データの漏洩や、コンピュータの乗っ取り、コンピュータの機能不全等が発生する可能性が高くなる。さらに、マルウェアが混入された状態で、エッジサーバを稼働させた場合、特定のセキュアなダウンロードサイトに対しても、不正な処理を行う可能性があり、その結果、当該ダウンロードサーバに接続される他のエッジサーバに対して、多大な被害を発生させる可能性がある。
この点、例えば特許文献1には、クライアント装置(例えばECU)の起動時に、メインプログラム、更新用プログラム及び外部通信用のプログラムの正当性を検証してから、正当な場合にクライアント装置(例えばECU)を起動する技術が開示されている。
しかしながら、特許文献1には、クライアント装置のキッティング作業時において、悪意のある作業者が、仮にOS、ミドルソフトウェア等の基本ソフトウェアにマルウェアを仕掛けた場合の対策については何も開示されていない。特許文献1に記載の技術は、正常なキッティング作業がなされたことを前提としていると推定される。例えば、悪意のあるキッティング作業者により、クライアント装置にマルウェアが仕掛けられた場合に、クライアント装置の利用者が当該クライアント装置内にキッティングされたソフトウェアが正当であることを確認するための術はない。
特開2011-108167号公報
このように、コンピュータを導入する場合に行われる、コンピュータを利用可能にするために行われるキッティング作業を外部の作業者が行った場合、コンピュータの利用者が当該コンピュータ内にキッティングされたソフトウェアが正当であることを容易に確認できることが望まれる。
(1)本開示の一態様は、予め設定されたキッティング資材によりキッティングされるコンピュータに対して、前記キッティングされた状態が正当であるか否かを確認するために、前記キッティング資材に予め対応づけて設定される正当性確認データと、前記正当性確認データに基づいて、キッティング作業の正当性を確認するための正当性確認プログラムと、を記憶する記憶部を備え、前記コンピュータに接続された後、前記コンピュータに電源が投入されると、前記記憶部に記憶された前記正当性確認プログラムにより前記コンピュータを起動させることで、前記コンピュータに、前記キッティングされた状態が正当か否かを、前記正当性確認データに基づいて判定させ、正当性が判定された場合、前記コンピュータを管理する管理システムに対して、前記コンピュータの使用登録を行わせる、正当性確認機器に関する。
一態様によれば、コンピュータを導入する場合に行われる、コンピュータを利用可能にするために行われるキッティング作業を外部の作業者が行った場合、コンピュータの利用者が当該コンピュータ内にキッティングされたソフトウェアが正当であることを容易に確認することができる。
本実施形態における正当性管理システムの基本的構成を示す概略図である。 本実施形態における正当性管理システムの機能ブロック図である。 本実施形態におけるキッティング機器によるコンピュータのキッティング作業に係る処理を示すフローチャートである。 本実施形態における正当性確認機器によるコンピュータの正当性の確認作業に係る処理を示すフローチャートである。 本実施形態における正当性の確認されたコンピュータの管理システムへの登録に係る処理を示すフローチャートである。
(実施形態)
以下、本発明の正当性確認システムの好ましい実施形態の一例である一実施形態について、図を参照しながら説明する。
図1に、正当性確認システム1の全体構成を示す。
なお、本実施形態においては、コンピュータにキッティングされたソフトウェアの正当性が確認された場合、当該コンピュータを上位の管理システムに登録するものとする。管理システムに登録することで、前述したように、当該コンピュータは、業務に必要なアプリケーションは管理システムから取得することができる。他方、コンピュータにキッティングされたソフトウェアの正当性が確認されなかった場合(例えば、正体不明なソフトウェアがインストールされているような場合)、当該コンピュータは、管理システムに登録することが許可されず、したがって、業務に必要なアプリケーションを導入することができないものとする。
図1に示すように、正当性確認システム1は、キッティングされるコンピュータとしてのコンピュータ10と、キッティング資材としてのキッティング機器20(「キッティングデバイス」ともいう)と、正当性確認機器としての正当性確認機器30(「正当性確認デバイス」ともいう)と、管理システムとしての管理システム40と、ネットワーク60と、を含んで構成される。
なお、図中では、これら各機器及び装置の間でやり取りされる情報についても例示しているが、これらの情報はあくまで一例である。
コンピュータ10は、キッティング作業の対象となるコンピュータである。キッティングされた後、正当性確認機器30により、その正当性が確認されない場合、コンピュータ10を利用した業務ができないように構成される。
キッティング機器20は、作業者がコンピュータ10に対してキッティング作業を行うときに使用する機器(デバイス)である。すなわち、コンピュータ10は、キッティング機器20を介してキッティングされる。なお、本実施形態においては、キッティング機器20は、例えば、管理システム40を運用する運用管理者又はコンピュータ10を提供するコンピュータメーカ等の信頼できる者により用意され、キッティング作業者に提供されるものとする。
正当性確認機器30は、キッティング機器20によりキッティングされたコンピュータ10にインストールされたOS等を起動することなく、キッティングされたソフトウェアの正当性を確認する。また、コンピュータ10の正当性が確認された場合、管理システム40に対してコンピュータ10を登録することができる。なお、本実施形態においては、正当性確認機器30についても、キッティング機器20と同様に、例えば、管理システム40を運用する運用管理者又はコンピュータ10を提供するコンピュータメーカ等の信頼できる者により用意され、コンピュータ10の利用者に提供されるものとする。
管理システム40は、前述したように、正当性の確認されたコンピュータ10を登録することで、登録されたコンピュータ10に対してのみ、業務に必要なアプリケーションを提供することができる。
次に、これらの機器及び装置について詳細に説明する。
<コンピュータ10>
コンピュータ10は、例えば、工場等の製造現場に導入されるエッジサーバが一例として挙げられる。ただし、エッジサーバに限られない。任意のコンピュータに適用することができる。図2に、正当性確認システム1の機能ブロック図を示す。
コンピュータ10は、例えば、CPU、メモリ、ハードドライブ、及び通信機等を備える。キッティング前においては、コンピュータ10には、OS等のソフトウェアは導入されていない状態である。ここで、CPUは制御部11ともいう。また、メモリ、ハードドライブ等を記憶部12ともいう。通信機を通信部15ともいう。
コンピュータ10は、システムBIOSを備える。システムBIOSは、例えば、コンピュータ10を起動可能な起動ソフトが格納されている可能性があるデバイス等について、予め決められた順(「起動順序」ともいう)にデバイスをチェックして、起動ソフトが格納されているかどうかを調べる。そうすることで、デバイスに起動ソフトが格納されている場合、当該デバイスに格納されている起動ソフトにより、コンピュータ10を起動するように構成される。
このような起動ソフトを格納するデバイスとしては、例えば、ハードドライブ、フロッピードライブ、CD又はDVD 光学式ドライブ、USBストレージデバイス又はネットワーク上のデバイス等が例示される。コンピュータ10は、起動順序にしたがって、これらのデバイスを順番にチェックする。
コンピュータ10は、電源オン時における起動順序を予め設定しておくことができる。例えば、管理システム40を運用する運用管理者又はコンピュータ10の供給元(メーカ)等の信頼できる者により、電源オン時における起動順序の初期設定がなされているものとする。
そうすることで、例えば、キッティング作業時に、キッティング機器20をコンピュータ10に接続したうえで、コンピュータ10に電源を投入すると、キッティング機器20に格納されている起動ソフトにより、コンピュータ10を起動させることができる。起動ソフトはキッティングのためのプログラムを含み、キッティング作業を行う。同様に、正当性確認作業時に、正当性確認機器30をコンピュータ10に接続したうえで、コンピュータ10に電源を投入すると、正当性確認機器30に格納されている起動ソフトにより、コンピュータ10を起動させることができる。起動ソフトは正当性確認のためのプログラムを含み、正当性確認を行う。詳細については後述する。
<キッティング機器20>
前述したように、キッティング作業時の起動順序として、キッティング機器20が起動順序の最初となるように設定されている。具体的には、システムBIOSは、キッティング機器20を構成するデバイスを最初にチェックすることで、キッティング機器20に格納されている起動ソフトにより、コンピュータ10を起動するように構成される。
例えば、キッティング機器20として、USBストレージデバイスを適用してもよい。また、起動ソフトが格納されたCD又はDVDを予めセットしたCD又はDVD 光学式ドライブをキッティング機器20としてもよい。また、(正当なコンピュータであることが保証されている)第2のコンピュータをキッティング機器20としてもよい。
この場合、第2のコンピュータに格納された起動ソフト(例えば、OSイメージ)により起動(ネットワークブート)させるようにしてもよい。
図2に示すように、キッティング機器20は記憶部22を備え、記憶部22に作業者のキッティング作業に必要なインストーラが格納される。また、コンピュータ10にインストールされるソフトウェアが予めコンパイルされたプログラムやスクリプト等のファイル群(以下、「インストールされるプログラム」ともいう)として格納されている。また、コンピュータ10にインストールされるプログラムに対して、例えば、IPアドレス等のネットワークアドレス、コンピュータ10の固有名、コンピュータ10の内部で使用する仮想ネットワークアドレス、連携するクラウド機能の種類等の情報を与える必要がある。このため、これらの情報を入力するための入力インタフェースを提供するパラメータ設定支援プログラムをキッティング機器20(記憶部22)に格納するようにしてもよい。
キッティング作業者は、例えば運用管理者から提供されるキッティング機器20によりコンピュータ10を起動させて、キッティング作業を行わせることができる。
具体的には、キッティング機器20をコンピュータ10に接続したうえで、コンピュータ10に電源が投入されると、キッティング機器20に格納された(インストーラを含む)起動ソフトは、コンピュータ10を起動する。コンピュータ10は、キッティング機器20に格納された起動ソフトにより起動されると、コンピュータ10にインストールされるプログラムをコンピュータ10のプログラム記憶部としてのストレージデバイス(記憶部12)にコピーするように動作する。
また前述したように、コンピュータ10にインストールされるプログラムに対して、例えば、IPアドレス等のネットワークアドレス、コンピュータ10の固有名、コンピュータ10の内部で使用する仮想ネットワークアドレス、連携するクラウド機能の種類等の情報を入力するために、パラメータ設定支援プログラムが起動されるようにしてもよい。なお、これらの情報は、コンピュータ10の設置される環境に依存するため、コンピュータの利用者が入力することが好ましい。
<正当性確認機器30>
前述したように、正当性確認作業時の起動順序として、正当性確認機器30が起動順序の最初となるように設定される。具体的には、システムBIOSは、正当性確認機器30を構成するデバイスを最初にチェックすることで、正当性確認機器30に格納されている起動ソフトにより、コンピュータ10を起動するように構成される。
例えば、正当性確認機器30として、USBストレージデバイスを適用してもよい。また、起動ソフトが格納されたCD又はDVDを予めセットしたCD又はDVD 光学式ドライブを正当性確認機器30としてもよい。また、(正当なコンピュータであることが保証されている)第2のコンピュータ(図示せず)を正当性確認機器30としてもよい。
この場合、第2のコンピュータに格納された起動ソフト(例えば、OSイメージ)により起動(ネットワークブート)させるようにしてもよい。
正当性確認ツールは、前述したように、キッティング機器20と同様に、例えば、管理システム40を運用する運用管理者又はコンピュータ10を提供するコンピュータメーカ等の信頼できる者により、コンピュータ10のキッティング時に使用されたキッティング機器10に対応して作成され、コンピュータ10の利用者に提供されるものとする。
図2に示すように正当性確認機器30は記憶部32を備え、コンピュータ10の利用者の正当性確認作業に必要なプログラム(「正当性確認プログラム」ともいう)及び正当性確認に必要なデータ(「正当性確認データ」ともいう)が格納される。
具体的には、記憶部32には、コンピュータ10の利用者の正当性確認作業に必要なプログラム(正当性確認プログラム)が格納されている。さらに、記憶部32には、少なくともコンピュータ10のキッティング時に格納されるべきプログラムファイルの一覧リストデータ(「正当プログラムファイル一覧リスト」ともいう)と、各プログラムファイルのハッシュ値(「正当プログラムファイルのハッシュ値」ともいう)と、を含む正当性確認データを格納するようにしてもよい。ここで、正当プログラムファイルのハッシュ値は、例えば予め設定されたハッシュ関数により計算されている。なお、ハッシュ関数として、MD5、SHA256、HMAC等の任意のハッシュ関数を適用することができる。
そうすることで、コンピュータ10の利用者は、運用管理者等から提供される正当性確認機器30を介して、正当性確認作業を行うことができる。
正当性確認機器30をコンピュータ10に接続したうえで、コンピュータ10に電源が投入されると、正当性確認機器30に格納された起動ソフトは、コンピュータ10を起動する。そうすることで、コンピュータ10にインストールされたOS等による起動がなされずに、コンピュータ10の制御部11を正当性確認制御部として機能させることができる。
正当性確認制御部としての制御部11(以下「正当性確認制御部11」という)は、コンピュータ10の記憶部12をスキャンして、実際に作業者によりコンピュータ10にインストールされたプログラムファイルの一覧リスト(「インストールされたプログラムファイル一覧リスト」ともいう)を作成する。また、正当性確認制御部11は、前述したハッシュ関数により、コンピュータ10にインストールされた各プログラムファイルのハッシュ値(「インストールされたプログラムファイルのハッシュ値」ともいう)を計算する。
次に、正当性確認制御部11は、正当プログラムファイル一覧リストとインストールされたプログラムファイル一覧リストと、を比較して、一致するか否かを判定する。正当プログラムファイル一覧リストとインストールされたプログラムファイル一覧リストと、が一致しない場合、正当性確認制御部11は、コンピュータ10が正当でないと判断して、例えばアラームを出力するようにしてもよい。
正当プログラムファイル一覧リストとインストールされたプログラムファイル一覧リストと、が一致する場合、正当性確認制御部11は、プログラムファイルごとに、正当プログラムファイルのハッシュ値と、インストールされたプログラムファイルのハッシュ値とを比較して一致するか否かを判定する。一つでも一致しないプログラムファイルがある場合、正当性確認制御部11は、コンピュータ10が正当でないと判断して、例えばアラームを出力するようにしてもよい。
また、正当性確認制御部11は、例えば、IPアドレス等のネットワークアドレス、コンピュータ10の固有名、コンピュータ10の内部で使用する仮想ネットワークアドレス、連携するクラウド機能の種類等の情報について、コンピュータ10の利用者が確認できるように、出力インタフェースを提供してもよい。なお、間違いがあれば、コンピュータ10の利用者が修正できるように、入力インタフェースを提供してもよい。
正当性確認制御部11は、コンピュータ10にキッティングされたソフトウェアの正当性を確認すると、管理システム40に対して、コンピュータ10の登録をするようにしてもよい。なお、コンピュータ10の据え付け時に管理システム40と物理的にネットワークで接続されているものとする。
具体的には、正当性確認制御部11は、例えば、鍵対(公開鍵、秘密鍵)を生成し、コンピュータ10固有のシリアル番号と公開鍵と、を管理システム40に登録するようにしてもよい。コンピュータ10が管理システム40に登録された後は、管理システム40は、コンピュータ10から、秘密鍵で暗号化したシリアル番号を受信することで、コンピュータ10の真正性を確認し、コンピュータ10からのアクセスを許可して、例えば、コンピュータ10へのアプリケーションの配布を許可することができる。
なお、コンピュータ10の正当性が確認されない場合には、管理システム40に登録することができず、このため前述したように、業務に必要なアプリケーションを導入することができない。
以上、正当性確認機器30について説明した。
<管理システム40>
図2に示すように管理システム40は、制御部41と記憶部42と通信部45とを備える。管理システム40は、コンピュータ10の上位システムであって、通信部45によってコンピュータ10と通信可能に接続することができる。
管理システム40は、正当性確認機器30により正当性の確認されたコンピュータ10を登録して管理する。また、管理システム40は、登録されたコンピュータ10からのアプリ要求に応じて、アプリケーションを当該コンピュータ10に配信することができる。
具体的には、制御部41は、登録部411と、認証部412と、配信部413と、を備える。
登録部411は、正当性確認機器30によってキッティングされたコンピュータ10が正当であることを確認された場合、コンピュータ10から送信される当該コンピュータ固有のシリアル番号と公開鍵とを受信して、記憶部42に格納する。
認証部412は、登録されたコンピュータ10から、秘密鍵で暗号化されたコンピュータ10固有のシリアル番号を、例えば、ログイン時の識別ID又はパスワードとして受信すると、当該コンピュータ10の登録時に記憶部42に記憶した公開鍵に基づいて、秘密鍵で暗号化されたシリアル番号を解読し、解読後の番号が当該コンピュータ10の登録時に記憶部42に記憶したコンピュータ10のシリアル番号と一致する場合、コンピュータ10の真正性を認定し、アクセスを許可する。
配信部413は、アプリケーションの要求に応じて、要求されたアプリケーションをコンピュータ10に対して配信する。
なお、管理システム40は、複数個の管理システム40-n(nは添え字)から構成されてもよい。この場合、管理システム40-nに登録されるコンピュータ10の登録情報は、他の管理システム40-mとの間で共有されるようにしてもよい。すなわち、コンピュータ10は、いずれかの管理システム40-nに登録することで、他の管理システム40-mに対してもアクセス可能となり、アプリケーションの配布を受けることができるようにしてもよい。
以上、正当性確認システムの一実施形態を、コンピュータ10、キッティング機器20、正当性確認機器30、及び管理システム40の構成に基づいて説明した。
<本実施形態の動作>
次に、図3Aから図3Cを参照して、コンピュータ10に対して、キッティング機器20によるキッティング作業がなされ、その後、正当性確認機器30によりコンピュータ10の正当性の確認作業がなされ、その後、管理システム40に正当性の確認されたコンピュータ10を登録するまでの動作について説明する。
ここで、図3Aは、キッティング機器20によるコンピュータ10のキッティング作業に係る処理を示すフローチャートである。図3Bは、正当性確認機器30によるコンピュータ10の正当性の確認作業に係る処理を示すフローチャートである。図3Cは、正当性の確認されたコンピュータ10の管理システム40への登録に係る処理を示すフローチャートである。
なお、キッティング機器20及び正当性確認機器30は、管理システム40の管理者等により予め用意され、それぞれ、キッティング作業者及びコンピュータ10の利用者に提供されているものとする。
図3Aを参照すると、ステップS11において、キッティング機器20をコンピュータ10に接続したうえで、コンピュータ10に電源を投入する。
ステップS12において、コンピュータ10は、キッティング機器20に格納された(インストーラを含む)起動ソフトにより起動される。
ステップS13において、(インストーラを含む)起動ソフトにより、キッティング機器20に格納されたプログラムのファイル群等を使用して、コンピュータ10においてキッティング作業が実行される。
ステップS14において、(インストーラを含む)起動ソフトによるキッティング作業が終了すると、コンピュータ10の電源がオフにされる。
図3Bを参照すると、ステップS21において、正当性確認機器30をコンピュータ10に接続したうえで、コンピュータ10に電源が投入される。
ステップS22において、コンピュータ10は、正当性確認機器30に格納された(正当性確認プログラムを含む)起動ソフトにより起動される。
ステップS23において、(正当性確認プログラムを含む)起動ソフトにより、正当性確認機器30に格納された正当性確認データを参照して、コンピュータ10の正当性確認が実行される。
ステップS24において、(正当性確認プログラムを含む)起動ソフトにより、コンピュータ10のキッティングが正当か否かを判定される。正当な場合(Yesの場合)ステップS31に移る。正当でない場合、ステップS25に移る。
ステップS25において、(正当性確認プログラムを含む)起動ソフトにより、コンピュータ10のキッティングが正当でないことを利用者に通知される。
図3Cを参照すると、ステップS31において、(正当性確認プログラムを含む)起動ソフトにより、鍵対(公開鍵、秘密鍵)を生成される。
ステップS32において、(正当性確認プログラムを含む)起動ソフトにより、コンピュータ10固有のシリアル番号と公開鍵と、が管理システム40に登録される。
これ以降、正当性確認機器30をコンピュータ10から外した状態で、コンピュータ10を(キッティングされたOSにより)起動した場合、秘密鍵で暗号化したシリアル番号を管理システム40に送信することで、管理システム40にコンピュータ10の真正性が認証され、管理システム40からのアプリケーションの配布を受けることができる。
以上により、コンピュータ10に対して、キッティング機器20によるキッティング作業がなされ、その後、正当性確認機器30によりコンピュータ10の正当性の確認作業がなされ、その後、管理システム40に正当性の確認されたコンピュータ10を登録する動作について説明した。
上述した実施形態は、本発明の好適な実施形態ではあるが、上記実施形態のみに本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において種々の変更を施した形態での実施が可能である。
上述した実施形態では、管理システム40は、コンピュータ10の上位システムとして例示したが、管理システム40は、例えば、クラウド上の仮想サーバとしてもよい。
本発明で使用するアプリケーションを初めとするプログラムは、様々なタイプの非一時的なコンピュータ可読媒体(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(random access memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
<本実施形態の効果>
以下、本開示の実施形態を列記する。
(1) 本実施形態によれば、正当性確認機器30は、
予め設定されたキッティング機器20によりキッティングされるコンピュータ10に対して、キッティングされた状態が正当であるか否かを確認するために、
キッティング機器20に予め対応づけて設定される正当性確認データ(例えばファイルのリスト、ファイルのハッシュ値等)と、
正当性確認データに基づいて、キッティング作業の正当性を確認するための正当性確認プログラムと、を記憶する記憶部を備え、
コンピュータ10に接続された後、コンピュータ10に電源が投入されると、記憶部32に記憶された正当性確認プログラムによりコンピュータ10を起動させることで、
コンピュータ10に
キッティングされた状態が正当か否かを、正当性確認データに基づいて判定させ、
正当性が判定された場合、コンピュータ10を管理する管理システム40に対して、コンピュータ10の使用登録を行わせることができる。
これにより、コンピュータ10を導入する場合に、コンピュータ10が利用可能になるように各種パラメータ設定を行うキッティング作業を作業者が行ったとき、コンピュータ10の利用者は当該コンピュータ内にキッティングされたソフトウェアが正当であることを容易に確認することができる。
これにより、利用者がキッティングされたコンピュータの正当性の確認が完了してから、コンピュータの使用登録を行うので、仮に悪意ある作業者によってマルウェアがキッティング時にコンピュータに混入されたとしても、正当性が確認されるまではコンピュータの使用登録をすることができない。このため、実質的に、コンピュータ10を機能する術がなく、マルウェアの被害を受けることがない。
(2) (1)に記載の正当性確認機器30は、
正当性確認プログラムによりコンピュータ10を起動させることで、コンピュータ10に、キッティングされた状態が正当か否かを、正当性確認データに基づいて判定させ、
正当でないと判定された場合、コンピュータ10が正当でないことのアラームを出力させるようにしてもよい。
これにより、利用者は、コンピュータ10の使用前に、コンピュータ10のキッティング作業が正当でなかったことを容易に確認することができる。
(3) (1)又は(2)に記載の管理システム40は、コンピュータ10の使用登録がなされた後、コンピュータ10に対するアプリケーションの配信を許可するようにしてもよい。
これにより、仮に悪意ある作業者によってマルウェアがキッティング時にコンピュータ10に混入されたとしても、正当性が確認されるまではコンピュータ10はアプリケーションの配信を受けることができないので、実質的に稼働することはできない。
(4) (1)から(3)のいずれかに記載の正当性確認機器30は、コンピュータ10の起動デバイスとして機能するようにしてもよい。
これにより、コンピュータ10にキッティングされたOSを起動することなく、正当性確認を実行することができる。
(5) (1)から(3)のいずれかに記載の正当性確認機器30は、コンピュータ10と異なる第2のコンピュータ50であり、コンピュータ10は、第2のコンピュータ50のOSイメージを使用して起動されるようにしてもよい。
これにより、コンピュータ10にキッティングされたOSを起動することなく、正当性確認を実行することができる。
(6) (1)から(5)に記載のコンピュータ10は、産業用機械を含む製造装置及び前記製造装置に付帯する機器に接続されるエッジサーバであり、
管理システム40は、エッジサーバで実行するアプリケーションの配信を管理する上位システムであるようにしてもよい。
これにより、例えば、エッジサーバに外部作業者によりキッティング作業がなされた場合に、キッティング作業終了後に、エッジサーバの正当性の確認が完了してから、管理システムの使用登録を行うので、仮に悪意ある作業者によってマルウェアがキッティング時にエッジサーバに混入されたとしても、正当性が確認されるまではエッジサーバは実質的に機能することがなく、マルウェアの被害を受けることがない。
1 正当性確認システム
10 コンピュータ
11 制御部、正当性確認制御部
12 記憶部
15 通信部
20 キッティング機器
22 記憶部
30 正当性確認機器
32 記憶部
40 管理システム
41 制御部
42 記憶部
45 通信部

Claims (6)

  1. 予め設定されたキッティング資材によりキッティングされるコンピュータに対して、前記キッティングされた状態が正当であるか否かを確認する、正当性確認機器であって、
    前記正当性確認機器は、
    前記キッティング資材に予め対応づけて設定される正当性確認データと
    前記正当性確認データに基づいて、キッティング作業の正当性を確認するための正当性確認プログラムと、を記憶する記憶部を備え、
    前記コンピュータに接続された後、前記コンピュータに電源が投入されると、前記記憶部に記憶された前記正当性確認プログラムにより前記コンピュータを起動させることで、
    前記コンピュータに
    前記キッティングされた状態が正当か否かを、前記正当性確認データに基づいて判定させ、
    正当性が判定された場合、前記コンピュータを管理する管理システムに対して、前記コンピュータの使用登録を行わせる、
    正当性確認機器。
  2. 前記正当性確認プログラムにより前記コンピュータを起動させることで、前記コンピュータに、前記キッティングされた状態が正当か否かを、前記正当性確認データに基づいて判定させ、
    正当でないと判定された場合、前記コンピュータが正当でないことのアラームを出力させる、請求項1に記載の正当性確認機器。
  3. 前記管理システムは、前記コンピュータの使用登録がなされた後、前記コンピュータに対するアプリケーションの配信を許可する、請求項1又は請求項2に記載の正当性確認機器。
  4. 前記正当性確認機器は、前記コンピュータの起動デバイスとして機能する、請求項1から請求項3のいずれか1項に記載の正当性確認機器。
  5. 前記正当性確認機器は、前記コンピュータと異なる第2のコンピュータであり、前記コンピュータは、前記第2のコンピュータのOSイメージを使用して起動される、請求項1から請求項3のいずれか1項に記載の正当性確認機器。
  6. 前記コンピュータは、産業用機械を含む製造装置及び前記製造装置に付帯する機器に接続されるエッジサーバであり、
    前記管理システムは、前記エッジサーバで実行するアプリケーションの配信を管理する上位システムである、請求項1から請求項5のいずれか1項に記載の正当性確認機器。
JP2019115448A 2019-06-21 2019-06-21 正当性確認機器 Active JP7227086B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2019115448A JP7227086B2 (ja) 2019-06-21 2019-06-21 正当性確認機器
DE102020205704.4A DE102020205704A1 (de) 2019-06-21 2020-05-06 Validitätsbestätigungsausrüstung
US15/930,855 US11392693B2 (en) 2019-06-21 2020-05-13 Validity confirmation equipment
CN202010553625.6A CN112115421A (zh) 2019-06-21 2020-06-17 正当性确认设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019115448A JP7227086B2 (ja) 2019-06-21 2019-06-21 正当性確認機器

Publications (2)

Publication Number Publication Date
JP2021002204A JP2021002204A (ja) 2021-01-07
JP7227086B2 true JP7227086B2 (ja) 2023-02-21

Family

ID=73654355

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019115448A Active JP7227086B2 (ja) 2019-06-21 2019-06-21 正当性確認機器

Country Status (4)

Country Link
US (1) US11392693B2 (ja)
JP (1) JP7227086B2 (ja)
CN (1) CN112115421A (ja)
DE (1) DE102020205704A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7289544B2 (ja) * 2021-01-29 2023-06-12 株式会社日本アシスト 信号切替機及びキッティングツール
JP7221372B1 (ja) 2021-12-27 2023-02-13 センコーグループホールディングス株式会社 キッティングシステム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010128818A (ja) 2008-11-27 2010-06-10 Dainippon Printing Co Ltd プラットフォーム完全性検証システム及び方法
JP2016025628A (ja) 2014-07-24 2016-02-08 株式会社リコー 情報処理システム、および電子機器
JP2017045308A (ja) 2015-08-27 2017-03-02 セコムトラストシステムズ株式会社 ソフトウェア改ざん検知システム、及びネットワークセキュリティシステム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6236901B1 (en) * 1998-03-31 2001-05-22 Dell Usa, L.P. Manufacturing system and method for assembly of computer systems in a build-to-order environment
US11316958B2 (en) * 2008-08-11 2022-04-26 Icontrol Networks, Inc. Virtual device systems and methods
US9542577B2 (en) * 2005-12-09 2017-01-10 Tego, Inc. Information RFID tagging facilities
US7937176B2 (en) * 2008-11-14 2011-05-03 International Business Machines Corporation Hybrid part installation process combining mass part installation techniques with discrete part number assembly activities
JP5321277B2 (ja) * 2009-06-19 2013-10-23 富士通株式会社 端末装置、設定報知システム、報知方法
JP2011108167A (ja) 2009-11-20 2011-06-02 Toyota Infotechnology Center Co Ltd コンピューターシステム
JP6361380B2 (ja) * 2014-08-29 2018-07-25 セイコーエプソン株式会社 プリンター、プリンターの制御方法、及び、印刷システム
JP6861606B2 (ja) * 2017-10-03 2021-04-21 Sbフレームワークス株式会社 キッティング支援システム及びプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010128818A (ja) 2008-11-27 2010-06-10 Dainippon Printing Co Ltd プラットフォーム完全性検証システム及び方法
JP2016025628A (ja) 2014-07-24 2016-02-08 株式会社リコー 情報処理システム、および電子機器
JP2017045308A (ja) 2015-08-27 2017-03-02 セコムトラストシステムズ株式会社 ソフトウェア改ざん検知システム、及びネットワークセキュリティシステム

Also Published As

Publication number Publication date
US20200401693A1 (en) 2020-12-24
CN112115421A (zh) 2020-12-22
DE102020205704A1 (de) 2020-12-24
US11392693B2 (en) 2022-07-19
JP2021002204A (ja) 2021-01-07

Similar Documents

Publication Publication Date Title
EP2913956B1 (en) Management control method and device for virtual machines
EP3262560B1 (en) System and method for verifying integrity of an electronic device
CN107408172B (zh) 从用户信任的设备安全地引导计算机
US8370905B2 (en) Domain access system
US8528062B1 (en) Method and service for securing a system networked to a cloud computing environment from malicious code attacks
CN110325995A (zh) 安全的工业控制平台
TWI708159B (zh) 包含安全處理器之裝置平台、裝置中之安全處理器、以及相關儲存媒體
KR101029758B1 (ko) 펌웨어의 원격 업데이트 방법
CN101681406A (zh) 用于恶意软件检测的可信操作环境
US11398896B2 (en) Building device with blockchain based verification of building device files
US11416604B2 (en) Enclave handling on an execution platform
WO2013185724A2 (zh) 移动终端及其软件升级的方法
JP7227086B2 (ja) 正当性確認機器
CN110798310A (zh) 使用准许的区块链向IoT中枢的组件委托
KR102063033B1 (ko) 클라우드 서비스를 사용하는 사용자 단말기, 단말기의 보안 통합 관리 서버 및 단말기의 보안 통합 관리 방법
JP6069160B2 (ja) 制御システム及び認証装置
US11520595B2 (en) Industrial internet of things gateway boot methods
JP4818824B2 (ja) プログラム管理システムおよび端末装置
US11770373B2 (en) Provisioning of vendor credentials
KR102284183B1 (ko) 웹 기반 sql 툴을 이용한 접근 제어 시스템 및 방법
KR101738604B1 (ko) 라이브러리의 불법 사용 방지 시스템 및 방법
TW201917620A (zh) 文件保護組件及其保護方法
JP5555394B2 (ja) 情報漏洩防止プログラムのアンインストール実行可否制御方法および情報漏洩防止システム
KR20150074128A (ko) 적어도 하나의 소프트웨어 구성요소를 컴퓨팅 디바이스에 다운 로딩하는 방법, 관련 컴퓨터 프로그램 제조물, 컴퓨팅 디바이스, 컴퓨터 시스템
US20240129736A1 (en) Mitigating against spurious deliveries in device onboarding

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191011

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220317

TRDD Decision of grant or rejection written
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20221227

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230110

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230209

R150 Certificate of patent or registration of utility model

Ref document number: 7227086

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150