(57)【要約】      （修正有）【課題】チップにおけるソフトウェア、ファームウェア及び重要なデータが不正に窃盗されることを防止するための安全装置に適応される制御システム及び制御方法を提供する。【解決手段】制御システムはソース側１０、検証側２０及び製造側３０を含む。ソース側１０は、提供されたソースファイルＦ１に対し、暗号化及び署名処理などをすることにより、伝送ファイルＦ３を生成すると共に、認証情報Ｓを生成する。伝送ファイルＦ３は製造側３０に伝送され、認証情報Ｓは検証側２０に伝送される。製造側３０は、検証側２０による認証を受信した場合、伝送ファイルに対し署名検証及び復号化などの処理を行い、また、選択に応じて、再暗号化するか又は暗号化をすることなしに、製品Ｐに書き込むか又は製品Ｐを生成する。【選択図】図１
2020202535.tif 000002
【特許請求の範囲】
【請求項１】
安全製造に適用される制御システムであって、
暗号化キー、暗号化公開キー及び署名プライバシーキーを有する第１のセキュリティモジュールと、暗号化モジュールと、セキュリティ伝送処理モジュールとを含む、認証情報及び伝送ファイルを生成するソース側と、
セキュリティ検証モジュールを有する検証側と、
署名検証公開キー、復号化プライバシーキー及び復号化キーを有する第２のセキュリティモジュールと、セキュリティ処理モジュールと、製造モジュールとを備える製造側と、を含む、
ことを特徴とする安全製造に適用される制御システム。
【請求項２】
前記署名プライバシーキーと前記署名検証公開キーとは、前記第１のセキュリティモジュールから生成された非対称キーペアである、
ことを特徴とする請求項１に記載の安全製造に適用される制御システム。
【請求項３】
前記暗号化公開キーと前記復号化プライバシーキーとは、前記第２のセキュリティモジュールから生成された非対称キーペアである、
ことを特徴とする請求項１に記載の安全製造に適用される制御システム。
【請求項４】
前記暗号化モジュールは、ソースファームウェアを前記第１のセキュリティモジュール及び前記暗号化キーで暗号化処理することにより、暗号化されたファームウェアを生成し、
前記復号化キーは、前記暗号化されたファームウェアを復号化するために使用されている、
ことを特徴とする請求項１に記載の安全製造に適用される制御システム。
【請求項５】
前記セキュリティ伝送処理モジュールは、前記暗号化されたファームウェアを前記第１のセキュリティモジュール、前記暗号化公開キー及び前記署名プライバシーキーで暗号化及び署名処理をすることにより、前記伝送ファイルを生成する、
ことを特徴とする請求項１に記載の安全製造に適用される制御システム。
【請求項６】
前記セキュリティ検証モジュールは、前記ソース側からの前記認証情報を受信し、前記認証情報に基づいて前記製造側の身分を検証してから認証を行う、
ことを特徴とする請求項１に記載の安全製造に適用される制御システム。
【請求項７】
前記セキュリティ処理モジュールは、前記セキュリティ伝送処理モジュールからの前記伝送ファイルを受信し、
前記製造側が前記セキュリティ検証モジュールにより認証された後、前記セキュリティ処理モジュールは、製造予備処理（プリプロセッシング）を実行して製造ファイルを生成し、
前記製造モジュールは、前記製造ファイルを製品に追加するか、又は、前記製造ファイルに基づいて製品を生成する、
ことを特徴とする請求項１に記載の安全製造に適用される制御システム。
【請求項８】
前記製造予備処理（プリプロセッシング）は、前記第２のセキュリティモジュール、前記署名検証公開キー、前記復号化プライバシーキー及び前記復号化公開キーを利用することにより、前記伝送ファイルを前記製造ファイルに復元・変換する、
ことを特徴とする請求項７に記載の安全製造に適用される制御システム。
【請求項９】
前記製造予備処理（プリプロセッシング）は、前記第２のセキュリティモジュール、前記署名検証公開キー、前記復号化プライバシーキー及び前記復号化公開キーを利用し、前記伝送ファイルを復元してから、製品の持つ特徴に基づいて暗号化を行うことにより、前記製造ファイルに変換する、ことを特徴とする請求項７に記載の安全製造に適用される制御システム。
【請求項１０】
前記セキュリティ処理モジュールは、前記製造モジュールが製造した前記製品の数を算出すると共に、前記数を前記検証側に伝送する、
ことを特徴とする請求項１または７に記載の安全製造に適用される制御システム。
【請求項１１】
前記製品とは、ファームウェア又はソフトウェアを含むすべてのチップ製品である、
ことを特徴とする請求項１または８に記載の安全製造に適用される制御システム。
【請求項１２】
前記ソース側は、前記ソースファイルを更新し、更新ファイルを生成し、さらに、前記更新ファイルを、前記第１のセキュリティモジュール及び前記暗号化モジュールで暗号化することにより、暗号化更新ファイルと更新認証情報とを共に生成し、
前記暗号化更新ファイルが前記セキュリティ処理モジュールに伝送され、前記検証側に前記更新認証情報が伝送され、そして、前記検証側の前記セキュリティ検証モジュールが処理した後、前記セキュリティ処理モジュールに伝送され、前記製品は、前記セキュリティ処理モジュールに更新要求を提出し、前記セキュリティ処理モジュールは、更新要求及び前記更新認証情報によって検証を行い、前記セキュリティ処理モジュールの更新要求が検証により認可された後、前記暗号化更新ファイルは、前記第２のセキュリティモジュールを用いて復号化した後、前記セキュリティ処理モジュールから製品に伝送して更新することを特徴とする請求項１に記載の安全製造に適用される制御システム。
【請求項１３】
ソースファイルを提供し、
ソース側で前記ソースファイルを暗号化することにより、伝送ファイルを生成すると共に、認証情報を生成し、
検証側に前記認証情報を伝送すると共に、前記伝送ファイルを製造側に伝送し、
前記検証側は、前記認証情報に基づいて前記製造側を検証し、
前記製造側が前記検証により認可された場合、前記製造側は、前記伝送ファイルを復号化する、
ことを特徴とする安全製造に適用される制御方法。
【請求項１４】
前記製造側は、前記伝送ファイルを復号化してから製造ファイルを生成し、
前記製造側は、前記製造ファイルを製品に追加するか、又は前記製造ファイルに基づいて製品を生成する、
ことを特徴とする請求項１３に記載の安全製造に適用される制御方法。
【請求項１５】
前記製造側は、前記伝送ファイルを復号化し、さらに前記製品固有の特徴によって再びに暗号化した後製造ファイルが生成され、
前記製造側は、前記製造ファイルを製品に追加するか、又は、前記製造ファイルに基づいて製品を生成する、
ことを特徴とする請求項１３に記載の安全製造に適用される制御方法。
【請求項１６】
前記製造された製品の数を統計すると共に、製造された製品の数を前記認証情報の認証された数量とを比較して、製品の数が認証された数に至る場合、製造プロセスを停止させる、
ことを特徴とする請求項１５に記載の安全製造に適用される制御方法。
【請求項１７】
前記ソース側は、暗号化キー、暗号化公開キー、及び署名プライバシーキーを含み、
前記ソース側は、前記暗号化キー、前記暗号化公開キー、及び前記署名プライバシーキーを利用することにより、前記ソースファイルを暗号化して伝送ファイルを生成し、
前記製造側は、署名検証公開キー、復号化プライバシーキー、及び復号化キーを含み、
前記製造側は、前記署名検証公開キー、前記復号化プライバシーキー、及び前記復号化キーを利用することにより、前記伝送ファイルを復号化し、
前記署名検証公開キーは、前記署名プライバシーキーに対応しており、
前記復号化プライバシーキーは、前記暗号化公開キーに対応しており、
前記復号化キーは、前記暗号化キーに対応している、
ことを特徴とする請求項１３に記載の安全製造に適用される制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、安全製造に適用される制御システム及び制御方法に関する。
【背景技術】
【０００２】
スマートデバイス、ウェアラブルデバイス、IOT(Internet of Things)デバイス等に係わる開発は、CPU又はマイクロコントローラ(MCU)のソフトウェア・ファームウェアに対する開発をすることに集中されている。かかる様々のデバイスを大量に生産する過程には、それらのソフトウェア・ファームウェアを工場でバーニング又は処理することが必要となる。しかし、当該のソフトウェア・ファームウェアは、人的要因を含む様々な原因により漏れられたり、製品開発メーカ又は製造業者に重大な損失を与えたりするおそれがある。
【０００３】
正式に発売された製品が非常にうまく機能すると評価された場合、競争相手は、学びまたは模倣しようと思料する可能性が高くなるため、チップにおけるソフトウェア・ファームウェア及び重要なデータは、クローン(Clone)又はリバースエンジニアリングにより不正に窃盗される恐れがある。一旦、チップにおけるソフトウェア・ファームウェアが盗まれたり解読されたりすると、当該製品はすぐにその競争上の優位性を失うことが招来したり、さらに、顧客の個人データが盗まれたこと、又は、システムが侵害されたことを引き起こしたりする。物のインターネット時代の到来に伴い、ハッカーがインターネットを介して様々の関連製品に侵入可能であるため、チップにおけるソフトウェア・ファームウェアが不正的にコピーや解読されるのを防止保護する可能な科学的技術手段への開発は現実に遅れる時間がなく不可欠である。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明は、安全製造に適用される制御システム及び制御方法を提供することを目的とする。ファームウェアが伝送中に盗まれるのを防ぐために、ファームウェアの伝送前には、一回目の暗号化保護処理が実行される。また、ファームウェアがチップにバーニングされた際に二回目の暗号化保護処理を行うことができ、しかも、チップを起動するのは、復号化処理をしなければならない。ここで、例としてファームウェアを挙げて説明したが、これに限定されるものではない。なお、あらゆる電子ファイルの不正コピーや不正解読により知的財産を損害することを防止するためには、本発明に適用することができる。
【課題を解決するための手段】
【０００５】
本発明に係る安全製造に適用される制御システムは、製品を製造及び輸送の過程にて管理するために使用される制御システムである。実施形態によれば、前記制御システムは、ソース側と、検証側と、製造側とを含む。前記ソース側は、第１のセキュリティモジュールと、暗号化モジュールと、セキュリティ伝送処理モジュールとを含む。前記第１のセキュリティモジュールは、前記暗号化モジュールに暗号化キーを提供する。そして、ソースファイルに対し、前記暗号化モジュールを介して前記暗号化キーを加えることにより、暗号化されたファイルが生成される。前記第１のセキュリティモジュールは、前記セキュリティ伝送処理モジュールに暗号化公開キーと署名プライバシーキーとを提供する。そして、前記暗号化されたファイルに対し、前記セキュリティ伝送処理モジュールを介して前記暗号化公開キー及び前記署名プライバシーキーを加えることにより、伝送ファイルが生成される。前記ソース側は認証情報を生成する。前記検証側は、セキュリティ検証モジュールを含む。前記セキュリティ検証モジュールは、前記認証情報を受信する。前記製造側は、第２のセキュリティモジュールと、セキュリティ処理モジュールと、製造モジュールとを含む。前記セキュリティ処理モジュールは、前記伝送ファイルを受信する。前記第２のセキュリティモジュールは、署名検証公開キーと、復号化プライバシーキーと、復号化キーとを含む。前記署名検証公開キーは前記署名プライバシーに対応している。前記復号化プライバシーキーは前記暗号化公開キーに対応している。前記復号化キーは前記暗号化キーに対応している。前記伝送ファイルは、前記第２のセキュリティモジュールにおける前記署名検証公開キーにより、検証がされる。そして、前記伝送ファイルは検証により認可された場合は、前記伝送ファイルに対し、第２のセキュリティモジュールにおける復号化プライバシーキーで復号化して前記暗号化されたファイルにすると共に、前記暗号化されたファイルに対し、前記復号化キーで復号化をする。
【０００６】
本発明に係る安全製造に適用される制御方法の一実施形態では、ソースファイルを提供し、ソース側では、前記ソースファイルを暗号化することにより、伝送ファイルを生成すると共に、認証情報を生成する。また、前記認証情報を検証側に伝送すると共に、前記伝送ファイルを製造側に伝送する。前記検証側では、前記認証情報に基づいて前記製造側に対し検証を行う。そして、前記製造側は前記検証により認可された場合、前記製造側は、前記伝送ファイルに対し復号化をする。
【０００７】
本発明の上記に述べた事情及び他の目的、特徴、及び利点により明らかに理解されるために、以下に、添付の図面を参照しながら実施形態を挙げて詳細に説明する。
【図面の簡単な説明】
【０００８】
【図１】本発明に係る安全製造に適用される制御システムの一実施形態を示すシステムブロック図である。
【図２】本発明に係る安全製造に適用される制御システムの適用例を示すシステムブロック図である。
【図３】本発明に係る安全製造に適用される制御システムの他の実施形態を示すシステムブロック図である。
【図４】本発明に係る安全製造に適用される制御システムの他の適用例を示すシステムブロック図である。
【図５】本発明に係る安全製造に適用される制御システムのファイル更新のためのシステムブロック図である。
【図６】本発明に係る安全製造に適用される制御方法の一実施形態を示すフローチャートである。
【図７】図６の続きであり、本発明に係る安全製造に適用される制御方法の一実施形態を示すフローチャートである。
【発明を実施するための形態】
【０００９】
図１及び図３は、本発明に係る安全製造に適用される制御システムの一実施形態を示す図である。図１及び図３を参照すると、この制御システムは、製造及び輸送の過程においてファームウェア及びバーニング（burning、書き込み）可能なチップＣを管理するために使用することができる。本発明に係る安全製造に適用される制御システムは、ソース側１０と、検証側２０と、製造側３０とを含む。
【００１０】
ソースファイル(ソースファームウェア)Ｆ１が提供され、ソース側１０は、暗号化モジュール１１と、第１のセキュリティモジュール１２と、セキュリティ伝送処理モジュール１３とを含む。ここで、第１のセキュリティモジュール１２は、暗号化キー、暗号化公開キー、及び署名プライバシーキーを含む。ソース側１０は、輸送(電子配信又は実体輸送)の過程において、ソースファイルＦ１が盗まれたりコピーや解読されたりするのを防止するために、暗号化モジュール１１を用いてソースファイルＦ１に対して暗号化処理を実行することにより、暗号化されたファイルＦ２を生成する。この実施形態では、暗号化モジュール１１は、第１のセキュリティモジュール１２を用いてソースファイルＦ１を暗号化キーで暗号化することにより、暗号化されたファイルＦ２を生成する。そして、暗号化されたファイルＦ２はセキュリティ伝送処理モジュール１３に伝送される。セキュリティ伝送処理モジュール１３は、第１のセキュリティモジュール１２を用いて、暗号化公開キーと署名プライバシーキーとで、暗号化されたファイルＦ２及び暗号化キー（対称式）に対して暗号化及び署名を行うことにより、伝送ファイルＦ３を生成する。セキュリティ伝送処理モジュール１３は、伝送ファイルＦ３を製造側３０に伝送すると共に、認証情報Ｓを検証側２０に伝送する。
【００１１】
検証側２０は、セキュリティ検証モジュール２１を含む。セキュリティ検証モジュール２１は、認証情報Ｓを受信する。本実施形態では、認証情報Ｓは、製造側３０がソース側１０により指定される製造側であるか否かのこと、製造側３０によるバーニングが承認されたチップの数がいくつであるかのことに関するものである。
【００１２】
製造側３０は、セキュリティ処理モジュール３１と、製造モジュール３２と、第２のセキュリティモジュール３３とを含む。製造モジュール３２は、セキュリティ処理モジュール３１に接続され、第２のセキュリティモジュール３３は、セキュリティ処理モジュール３１に接続される。セキュリティ処理モジュール３１は、ソース側１０の伝送ファイルＦ３を受信する。セキュリティ処理モジュール３１は、検証側２０のセキュリティ検証モジュール２１により認証情報が取得されてから、製品の製造数に係わる認証を取得する。
【００１３】
第２のセキュリティモジュール３３は、署名検証公開キーと、復号化プライバシーキーと、復号化キーとを含む。セキュリティ処理モジュール３１に伝送ファイルＦ３が伝送された場合、セキュリティ処理モジュール３１は認証を得た後に、第２のセキュリティモジュール３３を用いて、署名検証公開キー及び伝送ファイルＦ３の署名プライバシーキーで検証することにより、伝送ファイルＦ３が正しいソース側１０から由来されるものであるか否かについての検証をする。伝送ファイルＦ３が正しいソース側１０から由来されるものであると検証された場合、セキュリティ処理モジュール３１は、第２のセキュリティモジュール３３を用いて、検証された伝送ファイルＦ３に対し復号化プライバシーキーで復号化をすることにより、暗号化されたファイルＦ２及び暗号化キーを第２のセキュリティモジュール３３にて生成する。ここで、暗号化キーは対称式で、すなわち復号化キーである。セキュリティ処理モジュール３１は、第２のセキュリティモジュール３３にて、暗号化されたファイルＦ２に対し復号化キーで復号化をすることにより、ソースファイルＦ１を生成する。そして、最後には、製造モジュールの要求に応じて製造ファイルＦ４を生成する。製造モジュール３２は、製造ファイルＦ４をターゲット製品に追加するか、又は、製造ファイルＦ４に基づいてターゲット製品を生成する。
【００１４】
本実施形態では、署名プライバシーキーと署名検証公開キーとは、第１のセキュリティモジュール１２から生成された非対称キーペアである。暗号化公開キーと復号化プライバシーキーとは、第２のセキュリティモジュール３３から生成された非対称キーペアである。従って、伝送ファイルＦ３を製造側３０にて検証するためには、署名公開キーが第１のセキュリティモジュール１２が生成された後に、製造側３０の第２のセキュリティモジュール３３に伝送しなければならない。同様に、ソースファイルＦ１を暗号化するためには、暗号化公開キーが第２のセキュリティモジュール３３にて生成された後に、ソース側１０の第１のセキュリティモジュール１２に伝送しなければならない。
【００１５】
図３に示すように、実応用では、製造モジュール３２は、バーンインモジュールでもよく、ソースファイルＦ１は、ソースファームウェアでもよく、暗号化されたファイルＦ２は、暗号化されたファームウェアでもよく、製造ファイルＦ４は、バーンインファイルでもよい。バーンインファイルは、チップに書き込むためのファームウェアを含む。ターゲット製品（チップ製品Ｃ）は、ファームウェア又はソフトウェアを含むすべてのチップでもよく、例えば、マイクロコントローラ(MCU)、マイクロプロセッサ(MPU)、GPU(Graphics Processing Unit)、CPU、フラッシュメモリ、組み込みモジュール(Embedded Module)、組み込みシステム(Embedded System)、ウェアラブル端末(Wearable Device)、  IOT(Internet of Things)デバイスなどが挙げられるが、これに限定されるものではない。ソースファイルＦ１及び製造ファイルＦ４は、三次元印刷されたデザインデータであってもよく、製造モジュール３２は、三次元印刷装置であり、ターゲット製品Ｐは、三次元印刷された製品である。
【００１６】
セキュリティ処理モジュール３１が製造予備処理（プリプロセッシング）を完了した後、セキュリティ処理モジュール３１は、製造モジュール３２に製造ファイルＦ４を伝送する。そして、製造モジュール３２は、ターゲット製品に製造ファイルＦ４を認証された数に応じて１つずつ追加するか、又は、ターゲット製品を認証された数までするように生成する。安全処理モジュール３１は、製造モジュール３２が製造ファイルＦ４をターゲット製品に追加するたび、又は、ターゲット製品を生成するたびに、数をカウントすることにより、製造された製品の数を算出してから、統計された製造数を検証側２０に伝送し、製造された製品の数が、認証された製造数と同じであるかどうかについて、検証側２０によって検証される。
【００１７】
この実施形態では、ソース側１０は、ソフトウェア・ファームウェアの開発メーカでもよい。製造側３０は、バーニング工場でもよい。セキュリティ処理モジュール３１及び第２のセキュリティモジュール３３は、バーニング工場の制御センターでもよい。製造モジュール３２は、チップバーニング装置でもよい。検証側２０は、ソフトウェア開発メーカ又は第三者の公正監督機関でもよい。
【００１８】
本発明に係る安全製造に適用される制御システムの他の実施形態では、図１の実施形態において、図２及び図４に示すように、輸送中の盗難を防止するために、暗号化モジュール１１によるソースファームウェアＦ１への一回目の暗号化をすることができる他に、製品の設計がバーニングプロセス中に盗まれること、又は、製品が工場から出荷された後にリバースエンジニアリングにより設計情報を得ることを防ぐために、バーニングする前に製造ファイルＦ４に対し二回目の暗号化をすることもできる。二回目の暗号化をする方法は、以下の通りである。製品特徴、例えば、チップ固有の識別コードを製造モジュール３２により取得することができる。製造モジュール３２は、製品特徴をセキュリティ処理モジュール３１に伝送する。そして、セキュリティ処理モジュール３１は、伝送ファイルＦ３を第２のセキュリティモジュール３３で復号することにより、ソースファームウェアＦ１を生成する。そして、セキュリティ処理モジュール３１は、さらに第２のセキュリティモジュール３３を用いて、キー材料を製品特徴として対称式キーを生成してから、ソースファームウェアＦ１を二回目の暗号化し、最後に、製造モジュールのニーズに応じて、バーンインファイルＦ４’を生成する。製造モジュール３２は、バーニングファイルＦ４’をチップ製品Ｃに書き込む。
【００１９】
二回目の暗号化されたファームウェアが書き込まれたチップに対し、その二回目の暗号化及び復号化をする方法は、チップのハードウェア特性に応じて設計することができしかも、製品の特徴はチップ製品Ｃに固有であるので、二回目の暗号化されたファームウェアは、このチップ製品Ｃのみにて正しく復号化や動作をするだけである。このようにすれば、競争相手やハッカーがチップ製品Ｃ を入手した場合であっても、そのうちのソースファームウェアを不正に入手することができなくなったため、製品の設計(ソフトウェア・ファームウェア)が製造の過程や販売した時点以降に盗まれたりリバースエンジニアリングされたりすることを効果的に防止することができる。さらに、このチップ製品Ｃとその関連システムが侵入されるという危険性を低下することができる。
【００２０】
また、製造モジュール３２がある製造段階に達する場合、セキュリティ処理モジュール３１は、次の製造要求を検証側２０に伝送して検証を行う。セキュリティ処理モジュール３１における次のバーニング要求が認証された後に、製造モジュール３２は、次のバーニングを実行する。前記製造段階は、製造モジュール３２が製品Ｐに対する毎回の書き込みを実行することであってもよい。前記バーニング段階は、製造モジュール３２が製品Ｐに対する所定の数の書き込みを所定の時間内に完成することであってもよい。一例として、例えば、書き込まれた製品Ｐの数が６００枚である場合、製造モジュール３２が１時間ごとに1ロット６０枚をバーニングした後に、安全処理モジュール３１は、次のバーニング要求を発送し、次のバーニング要求が検証により認可されてから、チップに対する次のロットのバーニングを行うことができる。製造期間においては製造モジュール３２と検証側２０と接続することができない場合にも、製造モジュール３２は、チップ製品Ｃに対し、検証により認可された当該のロットのバーニングを行い続けて完了することができ、しかも、製造モジュール３２がチップをバーニングする期間においては、セキュリティ処理モジュール３１と第２の検証側３０との接続状態を回復することができる。また、セキュリティ処理モジュール３１と第２の検証側３０との接続が切断された場合、バーニング作業の生産能力に影響を与えないためには、製造モジュール３２が一定枚数のチップ製品Ｃに対しバーニングをさせ続けることができるように予め設定してもよい。しかし、一回目のバーニング作業の前には、セキュリティ処理モジュール３１と第２の検証側３０とを接続する状態にて検証をしなければならず、そうでなければ、バーニング作業を全体的に行うことができなくなる。
【００２１】
図５を参照すると、ソース側１０がソースファイルＦ１を更新することにより、更新ファイルＦ５を生成することができる。さらに、更新ファイルＦ５に対し、図１に示すように、暗号化モジュール１１、第１のセキュリティモジュール１２、及びセキュリティ伝送処理モジュール１３により暗号化及び署名されてから、暗号化された更新ファイルＦ６を生成すると共に、更新認証情報Ｓ’を生成する。暗号化された更新ファイルＦ６は製造側３０のセキュリティ処理モジュール３１に伝送され、更新認証情報Ｓ’は検証側２０に伝送される。製造側３０は、ファームウェア更新通知をチップＣのユーザに発行することができる。ユーザがファームウェアを更新したい場合、ユーザは、ネットワークＮを介してセキュリティ処理モジュール３１に更新要求を提出する子Ｔができる。セキュリティ処理モジュール３１は、更新要求に応じて検証を行いしようと検証側２０に求めることができる。検証側２０は、更新認証情報Ｓ’に基づいて更新要求を検証することができる。セキュリティ処理モジュール３１における更新要求が検証により認可された場合、暗号化された更新ファイルＦ６に対し、第２のセキュリティモジュール３３で復号化を行ってから、ネットワークＮを介して、復号化された更新ファイルＦ５をセキュリティ処理モジュール３１によりチップＣに伝送して更新することができる。
【００２２】
図６、図７を参照すると、本発明に係る安全製造に適用される制御方法は、以下のステップを含む。
【００２３】
ステップＳ１では、ソースファイルＦ１が提供された。そして、ステップＳ２に進む。
【００２４】
ステップＳ２では、暗号化モジュール１１は、第１のセキュリティモジュール１２を用いて、ソースファイルＦ１に対し暗号化キーで暗号化処理を行うことにより、暗号化されたファイルＦ２を生成する。そして、ステップＳ３に進む。
【００２５】
ステップＳ３では、ソース側１０におけるセキュリティ伝送処理モジュール１３は、第１のセキュリティモジュール１２を用いて、暗号化されたファイルＦ２及び暗号化キー(対称式)に対し、暗号化公開キー及び署名プライバシーキーで暗号化及び署名を行うことにより、伝送ファイルＦ３を生成すると共に、認証情報Ｓを生成する。そして、ステップＳ４に進む。
【００２６】
ステップＳ４では、認証情報Ｓは検証側２０に伝送され、伝送ファイルＦ３は製造側３０に伝送される。そして、ステップＳ５に進む。
【００２７】
ステップＳ５では、製造側３０におけるセキュリティ処理モジュール３１、及び検証側２０における認証情報に対し認証を行ってから、認証された場合はステップＳ６に進む一方、認証されなかった場合は、エラーとして報告された後、ステップＳ７に進む。
【００２８】
ステップＳ６では、セキュリティ処理モジュール３１は、第２のセキュリティモジュール３３を用いて、伝送ファイルＦ３の署名プライバシーキーと署名検証公開キーとを照合することにより、伝送ファイルＦ３が正しいソース側１０から由来されるものであるか否かについての検証をする。伝送ファイルＦ３が正しいソース側１０から由来されるものであると検証された場合は、ステップＳ８に進む一方、伝送ファイルＦ３が正しいソース側１０から由来されるものではないと検証された場合は、エラーとして報告された後、ステップＳ７に進む。
【００２９】
ステップＳ７では、製造プロセスを停止させる。その時点では、製造側３０は、ソース側１０により伝送された伝送ファイルＦ３が正しいか否かについて問い合わせをすることができる。
【００３０】
ステップＳ８では、セキュリティ処理モジュール３１は、第２のセキュリティモジュール３３を用いて、署名した伝送ファイルＦ３に対し復号化プライバシーキーで復号化をする。しかも、第２のセキュリティモジュール３３にて暗号化されたファイルＦ２を生成すると共に、暗号化キーを生成する。暗号化キーは、対称式、すなわち復号化キーである。そして、セキュリティ処理モジュール３１は、暗号化されたファイルＦ２に対し、第２のセキュリティモジュール３３にて復号化キーで復号化をすることにより、ソースファイルＦ１を生成する。そして、ステップＳ９に進む。
【００３１】
ステップＳ９では、復号化されたソースファイルＦ１に対し２回目の暗号化を製品特徴で行う必要があるか否かについて判定を行う。復号化されたソースファイルＦ１に対し製品特徴で２回目の暗号化を行う必要があると判定された場合は、ステップＳ１０に進む。復号化されたソースファイルＦ１に対し製品特徴で２回目の暗号化を行う必要がないと判定された場合、ステップＳ１１に進む。
【００３２】
ステップＳ１０では、製品特徴が製造モジュール３３により読み取られ、セキュリティ処理モジュール３１に製品特徴が伝送されてから、セキュリティ処理モジュール３１は、第２のセキュリティモジュール３３を用いて、前記復号化されたソースファイルＦ１に対し二回目の暗号化を行う。そして、ステップＳ１１に進む。
【００３３】
ステップＳ１１では、セキュリティ処理モジュール３１は、製造ファイルＦ４、Ｆ４’を生成し、さらに、製造ファイルＦ４、Ｆ４’を製造モジュール３２に伝送する。そして、ステップＳ１２に進む。
【００３４】
ステップＳ１２では、製造モジュール３２は、製造ファイルＦ４、Ｆ４’を製品に書き込む。そして、ステップＳ１３に進む。
【００３５】
ステップＳ１３では、セキュリティ処理モジュール３１は、製造された製品の数を統計すると共に、統計された数と認証情報Ｓにより認証された数とを比較する。製造された製品の数が認証された数未満である場合は、ステップＳ９に戻り、二回目の暗号化が行われるか否かを判断し、製造された製品の数が認証された数に達した場合は、ステップＳ７に進み、製造プロセスを終了する。
【００３６】
本実施形態では、ソースファイル(ソースファームウェア)Ｆ１を伝送前に一回目の暗号化処理することによりにより、伝送中にファームウェアが盗まれることを防ぐ。また、二回目の暗号化処理を行うによれば、たとえファームウェア搭載チップ製品Ｃが不正な人物により入手された場合であっても、当該チップ製品Ｃに既にインストールされているソースファームウェア又はそのオリジナルコードをクローン又はリバースエンジニアリングで入手するのはできなくなる。
【００３７】
本発明は、上記通りに実施形態によって説明したが、本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲で当業者が変更や補正を実施することが可能であるので、本発明の保護範囲は、特許要求の範囲によって規定される。
【符号の説明】
【００３８】
１０  ソース側
１１  暗号化モジュール
１２  第１のセキュリティモジュール
１３  セキュリティ伝送処理モジュール
２０  検証側
２１  セキュリティ検証モジュール
３０  製造側
３１  セキュリティ処理モジュール
３２  製造モジュール
３３  第２のセキュリティモジュール
Ｆ１  ソースファイル
Ｆ２  暗号化されたファイル
Ｆ３  伝送ファイル
Ｆ４  製造ファイル
Ｆ４’  バーニングファイル
Ｆ５  更新ファイル
Ｆ６  暗号化更新ファイル
Ｎ  ネットワーク
Ｓ  認証情報
Ｓ’  更新認証情報
Ｐ  製品
Ｓ１〜Ｓ１２  ステップ
【図１】
2020202535.tif 000003
【図２】
2020202535.tif 000004
【図３】
2020202535.tif 000005
【図４】
2020202535.tif 000006
【図５】
2020202535.tif 000007
【図６】
2020202535.tif 000008
【図７】
2020202535.tif 000009