JP6012355B2 - 制御機器、制御システム、データ格納方法及びプログラム - Google Patents

制御機器、制御システム、データ格納方法及びプログラム Download PDF

Info

Publication number
JP6012355B2
JP6012355B2 JP2012204926A JP2012204926A JP6012355B2 JP 6012355 B2 JP6012355 B2 JP 6012355B2 JP 2012204926 A JP2012204926 A JP 2012204926A JP 2012204926 A JP2012204926 A JP 2012204926A JP 6012355 B2 JP6012355 B2 JP 6012355B2
Authority
JP
Japan
Prior art keywords
data
decoding
pattern
unit
control device
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.)
Expired - Fee Related
Application number
JP2012204926A
Other languages
English (en)
Other versions
JP2014060618A (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.)
Fuji Electric Co Ltd
Fuji Electric FA Components and Systems Co Ltd
Original Assignee
Fuji Electric Co Ltd
Fuji Electric FA Components and Systems Co 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 Fuji Electric Co Ltd, Fuji Electric FA Components and Systems Co Ltd filed Critical Fuji Electric Co Ltd
Priority to JP2012204926A priority Critical patent/JP6012355B2/ja
Publication of JP2014060618A publication Critical patent/JP2014060618A/ja
Application granted granted Critical
Publication of JP6012355B2 publication Critical patent/JP6012355B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、データを格納する際にセキュリティを考慮する制御機器、制御システム、データ格納方法及びプログラムに関する。
従来、プログラムの書き換えに関する方式について、複数の提案がなされている。一方で、暗号化されたプログラムデータは、復号処理を実行しなければ実行ができないプログラムデータである。プログラムデータの性質から暗号化と復号処理のレベルは、同一レベルとして予め決めておく必要がある。
このプログラムデータを格納するプロセッサに対し、セキュリティを高めた技術がある。例えば、このプロセッサは、データのロード、データのストアを行う機能及び暗号化と復号処理の機能を有し、暗号化と復号処理を実行する場合には、選択した鍵を用いてデータの書き換えを可能とする(例えば特許文献1参照)。
また、暗号化された素材の動的な変換に対し、暗号化されたデータを復号処理機能へデータ転送することなく、変換機能を通過させることで、即時に復号処理を実行することができ、リアルタイムの復号処理を提供する方式がある(例えば特許文献2参照)。
特開2011−233157号公報 特開2008−193724号公報
しかしながら、従来技術では、データに対する暗号化レベルや、データの復号処理を実行する場所(又はタイミング)を容易に変更することができなかった。つまり、従来技術では、秘匿したいデータに対し、シングル暗号化から多重暗号化までの暗号化レベルと、復号処理を行うタイミングとを選択できないため、システム構成に応じたセキュリティの強度を選択できないという問題点があった。
そこで、以下に開示する技術では、システム構成に応じてセキュリティの強度が選択され、選択されたセキュリティの強度に基づく処理が施されたデータを取得することができる制御機器、制御システム、データ格納方法及びプログラムを提供することを目的とする。
本発明の一態様における制御機器は、外部からデータを受信し、該データを記憶する制御機器であって、外部の書き込み手段からのデータ受信後における第1記憶手段への書き込み前を含む所定のタイミングで復号処理が必要か否かを示すパターンが付加されたデータを前記書き込み手段から取得し、該パターンに基づいて復号処理の要否を判定する第1判定手段と、前記第1判定手段により復号処理が必要と判定された場合、前記データを復号する第1復号手段と、前記第1復号手段により復号されたデータ、又は前記第1判定手段により復号処理が不要と判定された前記データを記憶する前記第1記憶手段とを備える。
また、本発明の他の態様における制御システムは、書き込み手段が前記データを受信してから前記制御機器へデータを送信するまでの所定のタイミングで復号処理が必要か否かを示す第1ビット情報、及び前記制御機器でのデータ受信後における第1記憶手段への書き込み前所定のタイミングで復号処理が必要か否かを示し、前記第1ビット情報とは異なる第2ビット情報を含むパターンに基づいてデータの暗号化を行い、暗号化データに前記パターンを付加する暗号化手段と、前記パターンが付加された暗号化データを取得し、前記パターンに含まれる前記第1ビット情報に基づいて復号処理が必要と判定された場合は前記暗号化データに復号処理が行われたデータを、又は前記パターンに基づいて復号処理が不要と判定された場合は前記暗号化データを前記制御機器に送信する書き込み手段と、を備え、前記制御機器は、前記書き込み手段からデータを取得し、前記パターンに含まれる前記第2ビット情報に基づいて復号処理の要否を判定する第1判定手段と、前記第1判定手段により復号処理が必要と判定された場合、前記書き込み手段から取得されたデータを復号する第1復号手段と、前記第1復号手段により復号されたデータ、又は前記第1判定手段により復号処理が不要と判定された前記書き込み手段から取得されたデータを記憶する前記第1記憶手段と
を備える。
また、本発明の他の態様におけるデータ格納方法は、外部からデータを受信し、該データを記憶する制御機器に対する書き込み手段が前記データを受信してから前記制御機器へデータを送信するまでの所定のタイミングで復号処理が必要か否かを示す第1ビット情報、及び前記制御機器でのデータ受信後における第1記憶手段への書き込み前所定のタイミングで復号処理が必要か否かを示し、前記第1ビット情報とは異なる第2ビット情報を含むパターンに基づいてデータに暗号化を行い、暗号化されたデータに前記パターンを付加する暗号化ステップと、前記書き込み手段が、前記パターンが付加された暗号化データを取得し、前記パターンに含まれる前記第1ビット情報に基づいて復号処理が必要と判定された場合は前記暗号化データに復号処理が行われたデータを、又は前記パターンに基づいて復号処理が不要と判定された場合は前記暗号化データを前記制御機器に送信する書き込みステップと、前記書き込み手段からデータを取得し、前記パターンに含まれる前記第2ビット情報に基づいて復号処理の要否を判定する第1判定ステップと、前記第1判定ステップにより復号処理が必要と判定された場合、前記書き込み手段から取得されたデータを復号する第1復号ステップと、前記第1復号ステップにより復号されたデータ、又は前記第1判定ステップにより復号処理が不要と判定された前記書き込み手段から取得されたデータを前記第1記憶手段に記憶する第1記憶ステップとを有する。
また、本発明の他の態様におけるプログラムは、外部からデータを受信し、該データを記憶するコンピュータに実行させるためのプログラムであって、外部の書き込み手段からのデータ受信後における第1記憶手段への書き込み前を含む所定のタイミングで復号処理が必要か否かを示すパターンが付加されたデータを前記書き込み手段から取得し、該パターンに基づいて復号処理の要否を判定する第1判定ステップと、前記第1判定ステップにより復号処理が必要と判定された場合、前記データを復号する第1復号ステップと、前記第1復号ステップにより復号されたデータ、又は前記第1判定ステップにより復号処理が不要と判定された前記データを前記第1記憶手段に記憶する記憶ステップとを有する。
開示の技術によれば、システム構成に応じてセキュリティの強度が選択され、選択されたセキュリティの強度に基づく処理が施されたデータを取得することができる。
実施例におけるシステム構成の一例を示す図。 実施例における制御機器が組み込まれた第3情報処理装置のハードウェアの一例を示すブロック図。 実施例における各装置の機能の一例を示すブロック図。 レベルパターンテーブル(その1)の一例を示す図。 暗号化データのデータ構造(その1)の一例を示す図。 具体例(その1)を説明する図。 具体例(その2)を説明する図。 実施例における格納処理(その1)の一例を示すフローチャート。 実施例における格納処理(その2)の一例を示すフローチャート。 実施例における格納処理(その3)の一例を示すフローチャート。 レベルパターンテーブル(その2)の一例を示す図。 具体例(その3)を説明する図。 暗号化データのデータ構造(その2)の一例を示す図。
以下、システム構成に応じてセキュリティの強度が柔軟に選択され、選択されたセキュリティの強度に基づく処理が施されたデータを取得する実施例について、添付図面を参照しながら説明する。
[実施例]
<システム構成>
図1は、実施例におけるシステム構成の一例を示す図である。図1に示す制御システム1は、開発環境で用いられる第1情報処理装置10と、ローダとしても機能する第2情報処理装置20と、ファームウェアを有する制御機器30とを備える。各装置(制御機器30も含む)は、有線又は無線によりデータ通信可能となっている。
第1情報処理装置10は、暗号化ツールを有しており、データに対して所定の暗号化を行う。所定の暗号化は、シングル暗号化、多重暗号化双方を行うことが可能である。所定の暗号化は、どの暗号化を行うかを示すパターンにより決定される。このパターンは、どのタイミングで復号処理が必要か否かを示すパターンでもあり、レベルパターンとも称される。
第1情報処理装置10は、暗号化されたデータに対し、レベルパターンを管理情報として付加する。付加する位置は、暗号化データのヘッダ、フッタ、又は予め決められた位置のいずれでもよい。第1情報処理装置10は、レベルパターンが付加された暗号化データを第2情報処理装置20に送信する。
第2情報処理装置20は、レベルパターンが付加された暗号化データを取得し、レベルパターンに基づいて、制御機器30への書き込み前に、暗号化データの復号処理の要否を判定する。
第2情報処理装置20は、暗号化データの復号処理が必要であれば復号処理を行う。また、第2情報処理装置20は、復号化されたデータ、又は復号処理が不要と判定された場合の暗号化データをローダとしての機能を用いて、制御機器30のメモリ(記憶部)に書き込むよう通信を行う。ローダは、データ書き込み用のソフトウェアである。
制御機器30は、第2情報処理装置20からデータを受信し、メモリに書き込む前に、復号処理が必要か否かを判定する。制御機器30は、自身が有するプロセッサにより、データに付加されたレベルパターンに基づいて復号処理の要否を判定する。
制御機器30は、復号処理が必要であれば、受信されたデータに対して復号処理を行い、復号後のデータをメモリに書き込む。また、制御機器30は、復号処理が不要であれば、受信されたデータをそのままメモリに書き込む。
なお、制御機器30は、マルチプロセッサを有する場合もある。この場合、他のプロセッサを動作するのに必要なデータに対して、一方のプロセッサが、レベルパターンに基づいて復号処理の要否を判定する。復号処理が必要であれば、一方のプロセッサが復号処理を行って、他のプロセッサが読み出すメモリに復号後のデータを書き込む。復号処理が不要であれば、一方のプロセッサは復号処理を行わずに、他のプロセッサが読み出すメモリに、他のプロセッサに必要なデータを書き込む。
<ハードウェア構成>
次に、制御機器30が組み込まれた情報処理装置について説明する。図2は、実施例における制御機器30が組み込まれた第3情報処理装置50のハードウェアの一例を示すブロック図である。図2に示す例では、第3情報処理装置50は、制御機器30と、ドライブ装置105と、通信部107とを有する。各構成は、バスを介してそれぞれデータ通信可能なように接続されている。
制御機器30は、第1プロセッサ101と、第2プロセッサ103とを有する。制御機器30は、プロセッサを1つだけ有してもよいし、3つ以上有してもよい。制御機器30は、例えば、制御基板やマザーボードである。
第1プロセッサ101は、第1演算部111と、第1RAM(Random Access Memory)113と、第1ROM(Read Only Memory)115とを有する。なお、第1RAM113、第1ROM115のいずれか、又は両方は、第1プロセッサ101に内蔵されていなくてもよい。
第1演算部111は、例えば、第1RAM113又は第1ROM115に記憶された所定のプログラムを実行し、第3情報処理装置50の所定の処理を実行する。また、第1演算部111は、第1ROM115に書き込まれる前のデータに対し、復号処理が必要か否かを判定し、必要であれば復号処理を実行する。
第1RAM113は、例えば、第1演算部111で処理されたデータやロードされたプログラムデータなどを記憶する。
第1ROM115は、例えば、第2情報処理装置20から書き込まれたデータを記憶する。このデータが第1ROM115に書き込まれる際、第1演算部111により、復号処理が必要であれば復号処理が行われる。
第2プロセッサ103は、第2演算部131と、第2RAM133とを有する。なお、第2RAM133は、第2プロセッサ103に内蔵されていなくてもよい。
第2演算部131は、例えば、第2RAM133に記憶された所定のプログラムを実行し、第3情報処理装置50の所定の処理を実行する。また、第1演算部111は、例えば電源ON時に、イニシャル処理として、第1ROM115から必要なデータを読み出し、このデータに対し、第2RAM133に書き込まれる前に、復号処理が必要か否かを判定し、必要であれば復号処理を実行したりする。
第2RAM133は、例えば、電源ON時に、第1演算部111によって復号処理されたデータや、第1ROM115から読み出されたデータなどを記憶する。
ドライブ装置105は、記録媒体109、例えばフレキシブルディスクやCD(Compact Disc)から所定のプログラムを読み出し、記憶装置にインストールする。
また、記録媒体109に、所定のプログラムを格納し、この記録媒体109に格納されたプログラムは、ドライブ装置105を介して処理装置にインストールされる。インストールされた所定のプログラムは、第3情報処理装置50により実行可能となる。
通信部107は、有線又は無線で周辺機器とデータ通信を行う。通信部107は、例えばネットワークを介して、第2情報処理装置20からデータを受信し、第1ROM115などに記憶する。
なお、第1情報処理装置10、及び第2情報処理装置20のハードウェアは、第3情報処理装置50と同様であるため、その説明を省略する。第1情報処理装置10や、第2情報処理装置20は、シングルプロセッサでもよく、また、入力部や表示部を有していてもよい。
<機能構成>
次に、各装置の機能につい説明する。図3は、実施例における各装置の機能の一例を示すブロック図である。なお、以降では、秘匿するデータの一例として、制御機器30を動作させるためのプログラムデータを例に挙げて説明する。
図3に示す例では、第1情報処理装置10は、コンパイル手段151と、暗号化手段153とを有する。第2情報処理装置20は、書き込み手段171を有する。制御機器30は、第1判定手段201と、第1復号手段203と、第1記憶手段205と、第2判定手段207と、第2復号手段209と、第2記憶手段211とを有する。以下、各装置の機能について順番に説明する。
《第1情報処理装置10》
コンパイル手段151は、制御機器30を動作させるためのプログラムをコンパイルし、例えばHEXファイルを生成する。
暗号化手段153は、HEXファイルに対し、所定の暗号化を行う。暗号化は、例えばAES(Advanced Encryption Standard)が用いられる。所定の暗号化については、設定手段155により設定された暗号化レベルを示すパターン(レベルパターン)に基づいて、シングル又は多重的に行われる。このパターンは、どのタイミングで復号処理が必要か否かを示すパターンでもある。
設定手段155は、暗号化レベルの設定が可能である。設定手段155は、ユーザに設定されたレベルパターンを保持する。なお、レベルパターンは、予め複数のパターンが用意されている。
図4は、レベルパターンテーブル(その1)の一例を示す図である。図4に示す例では、レベルパターンは、0〜7の8個を有し、3ビットを用いてどのタイミングで復号処理が必要となるかを表している。
3ビットのうち、0ビット目が、ローダ(例えば第2情報処理装置20)での復号処理の要否を示す。また、1ビット目が、フラッシュメモリ(例えば第1記憶手段205)にストアする前での復号処理の要否を示す。また、2ビット目が、フラッシュメモリからプログラムデータを読み込み、RAM(例えば第2記憶手段211)へ転送する前での復号処理の要否を示す。
例えば、パターン1では、ローダで復号処理を行うだけで、プログラムデータは平文に戻る。パターン3では、ローダで復号処理を行い、さらに、フラッシュメモリへの書き込み前にも2重に復号処理が行われる。パターン7では、ローダで復号処理を行い、さらに、フラッシュメモリへの書き込み前にも復号処理が行われ、さらに、フラッシュメモリからプログラムを読み込み、RAMへの転送(書き込み)前に3重に復号処理が行われる。
暗号化手段153は、設定手段155で設定されたパターンに従って、プログラムデータに対し、シングル又は多重的に鍵を用いて暗号化する。また、暗号化手段153は、利用したパターンを示すパターン情報を暗号化データに付加する。
暗号化に用いる鍵は、各暗号化で同じ鍵を用いてもよいし、異なる鍵を用いてもよい。セキュリティを考慮すると、異なる鍵を用いる方がよいため、以下では異なる鍵を用いる例について説明する。
また、多重的に暗号化が行われる場合は、全て同じ暗号化アルゴリズムが用いられてもよいし、異なる暗号化アルゴリズムが用いられてもよい。暗号化手段153は、パターンを示すビット列において少なくとも「1」が2つある場合は、多重暗号化を行う。暗号化手段153は、多重的に暗号化する場合、暗号化したプログラムデータをさらに暗号化して多重暗号化を行う。
暗号化手段153は、暗号化されたプログラムデータを第2情報処理装置20に送信する。図5は、暗号化データのデータ構造(その1)の一例を示す図である。図5に示す例では、暗号化データは、付加部に含まれる管理情報と、データ部に含まれるデータとを含む。データは、暗号化されたプログラムデータ、又は多重暗号化の場合は多重で暗号化されたプログラムデータ(管理情報を含む暗号化データでもよい)である。管理情報は、パターン情報を含む。図5に示す例では、管理情報は、ヘッダ部分に付加されているが、フッタ部分に付加されてもよいし、データの途中の予め決められた位置に付加されてもよい。
なお、コンパイル手段151、暗号化手段153は、例えば第1情報処理装置10のプロセッサにより暗号化プログラムが実行されることで機能する。
これにより、第1情報処理装置10では、暗号化データに対する復号タイミング、シングル暗号化又は多重暗号化を含む暗号化レベルを適宜選択することができるようになる。
例えば、プログラムデータの暗号化処理を実行する場合には、設定されたレベルパターンを基にして暗号化し、さらにそのレベルパターンの組み合せによってシングル暗号化又は多重暗号化の対応レベルを選択することができる。暗号化処理を実行する場合に、暗号化したプログラムデータには、復号処理を実行するタイミングを示すビット情報(パターン情報)が含まれるようにする。
《第2情報処理装置20》
次に、第2情報処理装置20の機能について説明する。図3に戻り、書き込み手段171は、ローダとして機能する手段である。書き込み手段171は、例えば制御装置30とは異なる外部に存在する手段である。書き込み手段171は、第1情報処理装置10から取得した暗号化データを、必要に応じて復号処理を行い、制御機器30に書き込む。そのため、書き込み手段171は、判定手段173と、復号手段175とを有する。
判定手段173は、取得された暗号化データに付加されたパターン情報が示すパターン(レベルパターン)に基づいて、復号処理の要否を判定する。判定手段173は、例えばパターンの0ビット目を参照し、0ビット目が「1」であれば復号処理が必要と判定し、0ビット目が「0」であれば復号処理が不要と判定する。判定手段173は、判定結果を復号手段175に通知する。
復号手段175は、判定手段173により復号処理が必要と判定された場合、鍵1を用いて復号処理を行う。また、復号手段175は、判定手段173により復号処理が不要と判定された場合、何もしない。
よって、書き込み手段171は、パターンに基づいて復号処理が必要と判定された場合は暗号化データに復号処理が行われたデータを、又はパターンに基づいて復号処理が不要と判定された場合は暗号化データを制御機器30に書き込むために送信する。
なお、書き込み手段171は、例えば第2情報処理装置20のプロセッサにより書き込みプログラムが実行されることで機能する。
これにより、第2情報処理装置20は、暗号化レベルを示すパターンに基づいて、自身で復号処理をするかしないかを判定し、必要であれば復号処理を行ったデータを制御機器30に書き込むことができる。
《制御機器30》
次に、制御機器30の機能について説明する。第1判定手段201、第1復号手段203は、例えば第1演算部111により実現され、第1記憶手段205は、例えば第1ROM115により実現される。また、第2判定手段207、第2復号手段209は、例えば第1演算部111により実現され、第2記憶手段211は、例えば第2RAM133により実現される。また、各復号処理は、例えばファームウェアとして制御機器30に実装されたプログラムにより実行される。
第1判定手段201は、書き込み手段171からデータを取得し、データに付加されたパターン情報が示すパターンに基づいて、復号処理の要否を判定する。第1判定手段201は、例えばパターンの1ビット目が「1」であれば復号処理が必要と判定し、1ビット目が「0」であれば復号処理が不要と判定する。第1判定手段201は、復号処理が不要と判定した場合、書き込み手段171から取得したデータを第1記憶手段205に書き込む。第1判定手段201は、判定結果を第1復号手段203に通知する。
第1復号手段203は、第1判定手段201により復号処理が必要と判定された場合、書き込み手段171から取得したデータに対し、復号処理を行う。第1復号手段203は、復号したデータを第1記憶手段205に書き込む。第1復号手段203は、第1判定手段201により復号処理が不要と判定された場合、書き込み手段171から取得されたデータに対し、何もしない。
第1記憶手段205は、第1復号手段203により復号されたデータ、又は第1判定手段201により復号処理が不要と判定された、書き込み手段171から取得したデータを記憶する。第1記憶手段205内の記憶領域のうち、第1プロセッサ101で必要となるデータの記憶領域を領域Aとし、第2プロセッサ103で必要となるデータの記憶領域を領域Bとする。
第1記憶手段205には、データの種類に応じて領域Aか領域Bかに記憶される。例えば、第1復号手段203により復号された平文のプログラムデータが第1プロセッサ101により実行される場合は、このプログラムデータは領域Aに記憶される。また、例えば第1判定手段201により直接記憶されたプログラムデータが第2プロセッサ103により実行される場合は、このプログラムデータは領域Bに記憶される。
第2判定手段207は、第1記憶手段205の領域Bからデータを読み出し、データに付加されたパターン情報が示すパターンに基づいて、復号処理の要否を判定する。第2判定手段207は、例えばパターンの2ビット目が「1」であれば復号処理が必要と判定し、2ビット目が「0」であれば復号処理が不要と判定する。第2判定手段207は、復号処理が不要と判定した場合、第1記憶手段205から取得したデータを第2記憶手段211に書き込む。第2判定手段207は、判定結果を第2復号手段209に通知する。
第2復号手段209は、第2判定手段207により復号処理が必要と判定された場合、第1記憶手段205から読み出されたデータに対し、復号処理を行う。第2復号手段209は、復号したデータを第2記憶手段211に書き込む。第2復号手段209は、第2判定手段207により復号処理が不要と判定された場合、第1記憶手段205から読み出されたデータに対し、何もしない。
第2記憶手段211は、第2復号手段209により復号されたデータ、又は第2判定手段207により復号処理が不要と判定された、第1記憶手段205から読み出されたデータを記憶する。第2記憶手段211内の記憶領域のうち、第2プロセッサ103で必要となるデータの記憶領域を領域Cとする。領域Cには、第2プロセッサ103がデータを判読可能なように平文であるデータが記憶される。
例えば、制御機器30を含む第3情報処理装置50の電源がONになったときに、第1プロセッサ101は、第1記憶手段205(例えば第1ROM115)の領域Bに記憶されたデータを読み出す。このデータに付加されたパターンに基づいて、第1プロセッサ101は、必要であれば復号処理を行って、第2記憶手段211(例えば第2RAM133)にデータを記憶する。これにより、第2プロセッサ103は、第2記憶手段211に記憶された平文のデータを用いて動作を実行することができる。
<具体例>
次に、実施例における処理の具体例について説明する。実施例では、データはプログラムデータとし、制御機器30には、2つのプロセッサが実装されているとする。また、第1記憶手段205は、例えばフラッシュメモリとする。
図6は、具体例(その1)を説明する図である。図6に示す例では、プログラムデータA(プログラムA)は、第1プロセッサ101により実行され、プログラムデータB(プログラムB)は、第2プロセッサ103により実行されるとする。
まず、プログラムA及びプログラムBは、コンパイルされ、平文のプログラムデータとなる。平文のプログラムデータは、例えばxxxxx.exeという名称のプログラムファイルとする。平文のプログラムデータとなったプログラムA及びプログラムBは、暗号化ツール(暗号化手段153)により、暗号化処理が実行される。
このとき、プログラムA、プログラムBそれぞれに設定された暗号化レベルのパターンに従って暗号化処理が行われる。例えば、プログラムAには、パターン3が設定され、プログラムBには、パターン5が設定されているとする。パターンについては図4を参照されたい。
暗号化ツールは、対応するパターンの鍵を用いてそれぞれのプログラムデータを暗号化する。この暗号化には多重暗号化も含まれる。例えば、暗号化ツールは、プログラムAについては、鍵2を用いて暗号化した後に、鍵1を用いてさらに暗号化を行う。
また、暗号化ツールでは、暗号化に用いたパターンXを管理情報として暗号化ファイルに付加する。管理情報は、パターンXを示すビット列(図6に示す例では3ビット)である。
ここで、パターンが示す復号タイミングについて3つのタイミングを例に挙げて説明する。
(1)ローダで復号
(2)フラッシュストア前(フラッシュメモリに書き込む前)
(3)プログラムロード前(電源ON時にRAMにプログラムがロードされる前)
ローダ(書き込み手段171)は、暗号化ツールにより暗号化された暗号化ファイルを取得する。図6に示すように暗号化ファイルには管理情報が含まれる。ローダは、管理情報を参照し、0ビット目が「1」の場合は、鍵1を用いて復号用DLL(ダイナミックリンクライブラリ)により復号処理を行う。ここで、プログラムA及びプログラムBの管理情報はともに0ビット目が「1」であるため、ローダで復号処理が行われる。
ローダは、復号処理を行ったプログラムA及びプログラムBのそれぞれのデータを、通信を行うことで制御機器30のフラッシュメモリに書き込む。
制御機器30の第1演算部111(第1判定手段201)は、ローダから取得されたプログラムデータに付加されるパターンに基づいて、復号処理の要否を判定する。図6に示す例では、プログラムAのパターンの1ビット目が「1」であり、プログラムBのパターンの1ビット目が「0」である。
よって、第1演算部111(第1復号手段203)は、プログラムAのデータに対してのみ、鍵2を用いて2重に復号処理を行う。これにより、プログラムAは、第1プロセッサ101で実行されるプログラムであるため、平文でフラッシュメモリ(例えば第1記憶手段205)に記憶される。
第1演算部111は、プログラムBのデータを、暗号文のままフラッシュメモリに記憶する。
次に、電源が投入され電源ONになったときに、第1演算部111(第2判定手段207)は、フラッシュメモリからプログラムBのデータを読み出し、プログラムBのデータに付加されたパターンに基づいて、復号処理の要否を判定する。プログラムBのパターンの2ビット目は「1」であるため、復号処理が行われる。
第1演算部111(第2復号手段209)は、プログラムBのデータに対して、鍵3を用いて2重に復号処理を行う。これにより、プログラムBは、第2プロセッサ103で実行されるプログラムであるため、平文でRAM(第2記憶手段211)に記憶される。よって、第2プロセッサ103は、RAMに記憶された平文のプログラムBを判読して実行することができるようになる。
次に、具体例(その2)について説明する。図7は、具体例(その2)を説明する図である。図7に示す例では、プログラムデータC(プログラムC)は、第1プロセッサ101により実行され、プログラムデータD(プログラムD)は、第2プロセッサ103により実行されるとする。
図7に示す例では、暗号化ツールにおいて、プログラムC、プログラムDそれぞれに設定された暗号化レベルのパターンに従って暗号化処理が行われる。例えば、プログラムCには、パターン1が設定され、プログラムDには、パターン7が設定されているとする。パターンについては図4を参照されたい。
暗号化ツール(暗号化手段153)は、対応するパターンの鍵を用いてそれぞれのプログラムデータを暗号化する。この暗号化には多重暗号化も含まれる。例えば、暗号化ツールは、プログラムDについては、鍵3を用いて暗号化した後に、鍵2を用いてさらに暗号化し、さらに、鍵1を用いて3重に暗号化を行う。
また、暗号化ツールは、暗号化に用いたパターンXを管理情報として暗号化ファイルに付加する。管理情報は、パターンXを示すビット列(図7に示す例では3ビット)である。
ローダ(書き込み手段171)は、暗号化ツールにより暗号化された暗号化ファイルを取得する。図7に示すように暗号化ファイルには管理情報が含まれる。ローダは、管理情報を参照し、0ビット目が「1」の場合は、鍵1を用いて復号用DLL(ダイナミックリンクライブラリ)により復号処理を行う。ここで、プログラムC及びプログラムDの管理情報はともに0ビット目が「1」であるため、ローダで復号処理が行われる。
ローダは、復号処理を行ったプログラムC及びプログラムDのそれぞれのデータを、通信を行うことで制御機器30のフラッシュメモリに書き込む。
制御機器30の第1演算部111(第1判定手段201)は、ローダから取得されたプログラムデータに付加されるパターンに基づいて、復号処理の要否を判定する。図7に示す例では、プログラムDのパターンの1ビット目が「1」であり、プログラムCのパターンの1ビット目が「0」である。
よって、第1演算部111(第1復号手段203)は、プログラムDのデータに対してのみ、鍵2を用いて2重に復号処理を行う。第1演算部111は、プログラムCの平文のデータを、フラッシュメモリに記憶する。
次に、電源が投入され、電源ONになったときに、第1演算部111(第2判定手段207)は、フラッシュメモリからプログラムDのデータを読み出し、プログラムDのデータに付加されたパターンに基づいて、復号処理の要否を判定する。プログラムDのパターンの2ビット目は「1」であるため、復号処理が行われる。
第1演算部111(第2復号手段209)は、プログラムDのデータに対して、鍵3を用いて3重に復号処理を行う。これにより、プログラムDは、第2プロセッサ103で実行されるプログラムであるため、平文でRAM(第2記憶手段211)に記憶される。よって、第2プロセッサ103は、RAMに記憶された平文のプログラムDを判読して実行することができるようになる。
以上の機能、構成を有する制御システム1は、暗号化したデータを判読可能にするために、復号処理を実行するタイミングを示したビット情報を、暗号化したデータと共に設定する。これにより、制御システム1は、復号処理を実行するタイミングを選択し、さらにビット情報の組み合せによって、シングル暗号化又は多重暗号化の対応レベルを選択することができる。
<動作>
次に、実施例における制御システム1の動作について説明する。図8は、実施例における格納処理(その1)の一例を示すフローチャートである。格納処理(その1)は、ローダ(第2情報処理装置20)で行われる処理である。なお、データをメモリへ記憶する処理を格納処理とも称す。
ステップS101で、第2情報処理装置20は、暗号化手段153により暗号化されたデータを受信する。暗号化されたデータには、管理情報が付加されている。
ステップS102で、判定手段173は、暗号化データに付加されたレベルパターンを取得する。
ステップS103で、判定手段173は、復号処理の要否判定を行う。つまり、判定手段173は、レベルパターンの0ビット目が「1」であるか否かを判定する。0ビット目が「1」であれば(ステップS103−YES)ステップS104に進み、0ビット目が「0」であれば(ステップS103−NO)ステップS105に進む。
ステップS104で、復号手段175は、暗号化されたデータに対し、鍵1を用いて復号処理を行う。
ステップS105で、書き込み手段171は、レベルパターンに基づいて復号処理が必要と判定された場合は復号処理が行われたデータを、又はレベルパターンに基づいて復号処理が不要と判定された場合は暗号化データを制御機器30に書き込むために、復号処理が行われたデータ又は暗号化データを制御機器30に送信する。
図9は、実施例における格納処理(その2)の一例を示すフローチャートである。図9に示す格納処理(その2)は、第1演算部111により、第1ROM115(第1記憶手段205、フラッシュメモリ)にデータが書き込まれる前に行われる処理である。
ステップS201で、制御機器30は、ローダとの通信により、データを受信する。ステップS202で、第1判定手段201は、取得されたデータに付加されたレベルパターンを取得する。
ステップS203で、第1判定手段201は、復号処理の要否判定を行う。つまり、第1判定手段201は、レベルパターンの1ビット目が「1」であるか否かを判定する。1ビット目が「1」であれば(ステップS203−YES)ステップS204に進み、1ビット目が「0」であれば(ステップS203−NO)ステップS206に進む。
ステップS204で、第1復号手段203は、ローダから取得されたデータに対し、鍵2を用いて復号処理を行う。
ステップS205で、第1復号手段203は、復号したデータをフラッシュメモリ(第1記憶手段205)に記憶する。
ステップS206で、第1判定手段201は、受信されたデータをそのままフラッシュメモリに記憶する。
図10は、実施例における格納処理(その3)の一例を示すフローチャートである。図10に示す格納処理(その3)は、第1演算部111により、第2RAM133(第2記憶手段211)にデータが書き込まれる前に行われる処理である。
ステップS301で、第1演算部111は、電源がONになったときに、第2演算部131での処理が行われるための初期化処理を行う。
ステップS302で、第2判定手段207は、フラッシュメモリからデータを読み出し、このデータに付加されたレベルパターンを取得する。
ステップS303で、第2判定手段207は、復号処理の要否判定を行う。つまり、第2判定手段207は、レベルパターンの2ビット目が「1」であるか否かを判定する。2ビット目が「1」であれば(ステップS303−YES)ステップS304に進み、2ビット目が「0」であれば(ステップS303−NO)ステップS308に進む。
ステップS304で、第2復号手段209は、フラッシュメモリからデータの一部を読み出す。第2復号手段209は、例えばプログラムデータはデータ量が多いので図10に示すように分割してデータを読み出すようにしてもよい。なお、第2復号手段209は、読み出す対象のデータのデータ量が小さい場合には、一度に全てのデータを読み出すようにしてもよい。
ステップS305で、第2復号手段209は、読み出したデータに対し、鍵3を用いて復号処理を行う。
ステップS306で、第2復号手段209は、復号したデータを第2記憶手段211(第2プロセッサ103の第2RAM133)に転送する(書き込む)処理を行う。
ステップS307で、第2復号手段209は、読み出したデータがデータの最後か否かを判定する。データの最後であれば(ステップS307−YES)処理を終了し、データの最後でなければ(ステップS307−NO)ステップS304に戻る。
ステップS308で、第2判定手段207は、読み出したデータを第2記憶手段211に転送する処理を行う。
以上、実施例による制御システム1は、システム構成に応じてセキュリティの強度が選択され、選択されたセキュリティの強度に基づく処理が施されたデータを取得することができる。また、一般的に、多重暗号化を実施すると、重複して復号処理を実行するため、復号処理に時間がかかる。そこで、制御システム1では、レベルパターンを固定にするのではなく、システム構成によってセキュリティの強度を柔軟に選択することによって、性能面を重視したい場合には、シングル暗号化を選択し、セキュリティを強化したい場合には、多重暗号化を選択することができる。
[変形例]
次に、上記実施例の変形例について説明する。
(変形例1)
まず、変形例1は、制御機器30に1つのプロセッサしか実装してない場合である。この変形例1のレベルパターンは、図11に示す通りである。
図11は、レベルパターンテーブル(その2)の一例を示す図である。図11に示すように、制御機器30には1つのプロセッサしかないので、復号処理を行うタイミングは、(1)ローダと、(2)フラッシュメモリへの書き込み前の2つである。よって、レベルパターンは、2ビットで表すことができる。
次に、変形例1における具体例について説明する。図12は、具体例(その3)を説明する図である。図12に示す例では、プログラムデータE(プログラムE)は、第1プロセッサ101により実行されるとする。
図12に示す例では、暗号化ツールにおいて、プログラムEに設定された暗号化レベルのパターンに従って暗号化処理が行われる。例えば、プログラムEには、パターン3が設定されているとする。パターンについては図11を参照されたい。
暗号化ツール(暗号化手段153)は、対応するパターンの鍵を用いてそれぞれのプログラムデータを暗号化する。この暗号化には多重暗号化も含まれる。例えば、暗号化ツールは、プログラムEについては、鍵2を用いて暗号化した後に、鍵1を用いてさらに暗号化する。
また、暗号化ツールは、暗号化に用いたパターンXを管理情報として暗号化ファイルに付加する。管理情報は、パターンXを示すビット列(図12に示す例では2ビット)である。
ローダ(書き込み手段171)は、暗号化ツールにより暗号化された暗号化ファイルを取得する。図12に示すように暗号化ファイルには管理情報が含まれる。ローダは、管理情報を参照し、0ビット目が「1」の場合は、鍵1を用いて復号用DLL(ダイナミックリンクライブラリ)により復号処理を行う。ここで、プログラムEの管理情報は0ビット目が「1」であるため、ローダで復号処理が行われる。
ローダは、復号処理を行ったプログラムEのデータを、通信を行うことで制御機器30のフラッシュメモリに書き込む。
制御機器30の第1演算部111(第1判定手段201)は、ローダから取得されたプログラムデータに付加されるパターンに基づいて、復号処理の要否を判定する。図12に示す例では、プログラムEのパターンの1ビット目が「1」である。
よって、第1演算部111(第1復号手段203)は、プログラムEのデータに対して、鍵2を用いて復号処理を行う。第1演算部111は、プログラムEの平文のデータを、フラッシュメモリに記憶する。
以上のように、制御機器30内にプロセッサが1つしか実装されていない場合でも、制御システム1では、システム構成に応じてセキュリティの強度が選択され、選択されたセキュリティの強度に基づく処理が施されたデータを取得することができる。
また、制御機器30内に3つ以上のプロセッサを実装し、レベルパターンの数を増加することで、実施例と同様の効果を得るようにしてもよい。
(変形例2)
次に、変形例2について説明する。変形例2では、管理情報に鍵生成情報を含める。各復号手段では、鍵生成情報に基づいて鍵を生成し、生成した鍵を用いて復号処理を行うことができる。鍵生成情報は、例えば32ビットのビット列であり、鍵生成アルゴリズムは、例えばAESで定められたアルゴリズムを用いればよい。
図13は、暗号化データのデータ構造(その2)の一例を示す図である。図13に示すように、暗号化データに、鍵生成情報が付加される。図13に示す例では、鍵生成情報は、管理情報に含められる。あるいは、鍵2の鍵生成情報は、鍵1により暗号化されて、鍵3の鍵生成情報は、鍵1や鍵2により暗号化されてデータ部のデータに含められてもよい。
これにより、変形例2では、暗号化、復号に用いる鍵を変更することができ、セキュリティの向上を図ることができる。
(変形例3)
次に、変形例3について説明する。変形例3では、秘匿対象のデータとして、制御機器30で実行されるプログラムデータ以外にも、制御機器30で実行されるプログラムで用いる重要なパラメータなどでもよい。この場合、コンパイル手段151は必要ない。
なお、前述した実施例や変形例で説明した制御処理を実現するためのプログラムを記録媒体に記録することで、実施例や変形例での制御処理をコンピュータに実施させることができる。例えば、このプログラムを記録媒体に記録し、このプログラムが記録された記録媒体をコンピュータに読み取らせて、前述した制御処理を実現させることも可能である。
なお、記録媒体は、CD−ROM、フレキシブルディスク、光磁気ディスク等の様に情報を光学的、電気的或いは磁気的に記録する記録媒体、ROM、フラッシュメモリ等の様に情報を電気的に記録する半導体メモリ等、様々なタイプの記録媒体を用いることができる。この記録媒体には、搬送波は含まれない。
以上、実施例や変形例について詳述したが、特定の実施例や変形例に限定されるものではなく、特許請求の範囲に記載された範囲内において、種々の変形及び変更が可能である。また、前述した実施例や変形例の構成要素を全部又は複数を組み合わせることも可能である。
10 第1情報処理装置
20 第2情報処理装置
30 制御機器
50 第3情報処理装置
101 第1プロセッサ
103 第2プロセッサ
111 第1演算部
113 第1RAM
115 第1ROM
131 第2演算部
133 第2RAM
153 暗号化手段
171 書き込み手段
201 第1判定手段
203 第1復号手段
205 第1記憶手段
207 第2判定手段
209 第2復号手段
211 第2記憶手段

Claims (9)

  1. 外部からデータを受信し、該データを記憶する制御機器であって、
    外部の書き込み手段からのデータ受信後における第1記憶手段への書き込み前を含む所定のタイミングで復号処理が必要か否かを示すパターンが付加されたデータを前記書き込み手段から取得し、該パターンに基づいて復号処理の要否を判定する第1判定手段と、
    前記第1判定手段により復号処理が必要と判定された場合、前記データを復号する第1復号手段と、
    前記第1復号手段により復号されたデータ、又は前記第1判定手段により復号処理が不要と判定された前記データを記憶する前記第1記憶手段と
    を備える制御機器。
  2. 前記所定のタイミングに、第2記憶手段への書き込み前を含み、
    前記第1記憶手段から読み出されたデータに対し、前記パターンに基づいて復号処理が必要か否かを判定する第2判定手段と、
    前記第2判定手段により復号処理が必要と判定された場合、前記読み出されたデータを復号する第2復号手段と、
    前記第2復号手段により復号されたデータ、又は前記第2判定手段により復号処理が不要と判定された前記読み出されたデータを記憶する前記第2記憶手段と
    をさらに備える請求項1記載の制御機器。
  3. 各復号処理で用いられる鍵を生成するための鍵生成情報が、前記データに付加される請求項1又は2記載の制御機器。
  4. 前記データは、前記制御機器を動作させるためのプログラムデータである請求項1乃至3いずれか一項に記載の制御機器。
  5. 外部からデータを受信し、該データを記憶する制御機器と、
    書き込み手段が前記データを受信してから前記制御機器へデータを送信するまでの所定のタイミングで復号処理が必要か否かを示す第1ビット情報、及び前記制御機器でのデータ受信後における第1記憶手段への書き込み前所定のタイミングで復号処理が必要か否かを示し、前記第1ビット情報とは異なる第2ビット情報を含むパターンに基づいてデータの暗号化を行い、暗号化データに前記パターンを付加する暗号化手段と、
    前記パターンが付加された暗号化データを取得し、前記パターンに含まれる前記第1ビット情報に基づいて復号処理が必要と判定された場合は前記暗号化データに復号処理が行われたデータを、又は前記パターンに基づいて復号処理が不要と判定された場合は前記暗号化データを前記制御機器に送信する書き込み手段と、を備え、
    前記制御機器は、
    前記書き込み手段からデータを取得し、前記パターンに含まれる前記第2ビット情報に基づいて復号処理の要否を判定する第1判定手段と、
    前記第1判定手段により復号処理が必要と判定された場合、前記書き込み手段から取得されたデータを復号する第1復号手段と、
    前記第1復号手段により復号されたデータ、又は前記第1判定手段により復号処理が不要と判定された前記書き込み手段から取得されたデータを記憶する前記第1記憶手段と
    を備える制御システム。
  6. 外部からデータを受信し、該データを記憶する制御機器に対する書き込み手段が前記データを受信してから前記制御機器へデータを送信するまでの所定のタイミングで復号処理が必要か否かを示す第1ビット情報、及び前記制御機器でのデータ受信後における第1記憶手段への書き込み前所定のタイミングで復号処理が必要か否かを示し、前記第1ビット情報とは異なる第2ビット情報を含むパターンに基づいてデータに暗号化を行い、暗号化されたデータに前記パターンを付加する暗号化ステップと、
    前記書き込み手段が、前記パターンが付加された暗号化データを取得し、前記パターンに含まれる前記第1ビット情報に基づいて復号処理が必要と判定された場合は前記暗号化データに復号処理が行われたデータを、又は前記パターンに基づいて復号処理が不要と判定された場合は前記暗号化データを前記制御機器に送信する書き込みステップと、
    前記書き込み手段からデータを取得し、前記パターンに含まれる前記第2ビット情報に基づいて復号処理の要否を判定する第1判定ステップと、
    前記第1判定ステップにより復号処理が必要と判定された場合、前記書き込み手段から取得されたデータを復号する第1復号ステップと、
    前記第1復号ステップにより復号されたデータ、又は前記第1判定ステップにより復号処理が不要と判定された前記書き込み手段から取得されたデータを前記第1記憶手段に記憶する第1記憶ステップと
    を有するデータ格納方法。
  7. 外部からデータを受信し、該データを記憶するコンピュータに実行させるためのプログラムであって、
    外部の書き込み手段からのデータ受信後における第1記憶手段への書き込み前を含む所定のタイミングで復号処理が必要か否かを示すパターンが付加されたデータを前記書き込み手段から取得し、該パターンに基づいて復号処理の要否を判定する第1判定ステップと、
    前記第1判定ステップにより復号処理が必要と判定された場合、前記データを復号する第1復号ステップと、
    前記第1復号ステップにより復号されたデータ、又は前記第1判定ステップにより復号処理が不要と判定された前記データを前記第1記憶手段に記憶する記憶ステップと
    を有するプログラム。
  8. 前記暗号化には、多重暗号化が含まれ、
    前記パターンは、前記多重暗号化の暗号化レベルに応じてビット列が定まる請求項5に記載の制御システム。
  9. 前記パターンは、前記書き込み手段及び前記制御機器が有する複数のプロセッサに応じてビット列が定まる請求項5に記載の制御システム。
JP2012204926A 2012-09-18 2012-09-18 制御機器、制御システム、データ格納方法及びプログラム Expired - Fee Related JP6012355B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012204926A JP6012355B2 (ja) 2012-09-18 2012-09-18 制御機器、制御システム、データ格納方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012204926A JP6012355B2 (ja) 2012-09-18 2012-09-18 制御機器、制御システム、データ格納方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2014060618A JP2014060618A (ja) 2014-04-03
JP6012355B2 true JP6012355B2 (ja) 2016-10-25

Family

ID=50616702

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012204926A Expired - Fee Related JP6012355B2 (ja) 2012-09-18 2012-09-18 制御機器、制御システム、データ格納方法及びプログラム

Country Status (1)

Country Link
JP (1) JP6012355B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6298732B2 (ja) * 2014-07-02 2018-03-20 株式会社デンソー マイクロコンピュータ及びセキュリティ設定システム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002229861A (ja) * 2001-02-07 2002-08-16 Hitachi Ltd 著作権保護機能つき記録装置
JP2004259077A (ja) * 2003-02-27 2004-09-16 Hitachi Ltd 組込み機器プログラム更新方法
US20060059372A1 (en) * 2004-09-10 2006-03-16 International Business Machines Corporation Integrated circuit chip for encryption and decryption having a secure mechanism for programming on-chip hardware
CN101112041A (zh) * 2005-02-28 2008-01-23 日本电气株式会社 通信系统、通信装置、通信方法以及程序
JP4340253B2 (ja) * 2005-05-23 2009-10-07 福井コンピュータ株式会社 アプリケーションプログラム、及び、記憶媒体
JP2008077366A (ja) * 2006-09-21 2008-04-03 Hitachi Ltd 記憶制御装置及び記憶制御装置の暗号化機能制御方法
JP5151531B2 (ja) * 2008-02-15 2013-02-27 株式会社リコー 画像形成装置及びデータ管理方法

Also Published As

Publication number Publication date
JP2014060618A (ja) 2014-04-03

Similar Documents

Publication Publication Date Title
JP4551802B2 (ja) プロセッサ、メモリ、コンピュータシステムおよびデータ転送方法
EP1654661B1 (en) Apparatus and method for memory encryption with reduced decryption latency
JP5248153B2 (ja) 情報処理装置、方法及びプログラム
US8352751B2 (en) Encryption program operation management system and program
RU2620712C2 (ru) Устройство виртуальной машины, имеющее управляемую ключом обфускацию, и способ
CN101231622B (zh) 基于闪存的数据存储方法和设备、及数据读取方法和设备
JP2003198534A (ja) データ暗号化装置及びその方法
JP4758904B2 (ja) 機密情報処理方法
JP5645725B2 (ja) データ処理装置およびデータ処理システムおよびその制御方法
JP2007501481A (ja) 暗号化指示情報を有する記録媒体
JP6012355B2 (ja) 制御機器、制御システム、データ格納方法及びプログラム
JP5374751B2 (ja) メモリ管理方法
JP2009175880A (ja) 情報処理装置及びプログラム
JP4125995B2 (ja) データ変換システム
JP2011123229A (ja) プログラムコード暗号化装置及びプログラム
JP2008135893A (ja) 使い捨ての暗号鍵を添付する暗号化文書を作成する暗号化装置およびプログラム
JP2008310678A (ja) 記憶装置、情報機器、及びコンテンツ変換方法
JP5539024B2 (ja) データ暗号化装置およびその制御方法
JP2010146635A (ja) コンテンツ記録再生装置並びにコンテンツの書き込み及び読み出し方法
JP7063628B2 (ja) 暗号化装置、暗号化方法およびプログラム
CN101763485A (zh) 数据保护方法
JP2009271884A (ja) 情報処理装置及び情報処理プログラム
JP7101500B2 (ja) 暗号化装置、暗号化システム、及び暗号化方法
WO2011096073A1 (ja) メモリ管理方法
JP2009075474A (ja) 暗号処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150812

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160524

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160721

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160920

R150 Certificate of patent or registration of utility model

Ref document number: 6012355

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees