JP2017175297A - 集積回路及び情報処理装置 - Google Patents
集積回路及び情報処理装置 Download PDFInfo
- Publication number
- JP2017175297A JP2017175297A JP2016057620A JP2016057620A JP2017175297A JP 2017175297 A JP2017175297 A JP 2017175297A JP 2016057620 A JP2016057620 A JP 2016057620A JP 2016057620 A JP2016057620 A JP 2016057620A JP 2017175297 A JP2017175297 A JP 2017175297A
- Authority
- JP
- Japan
- Prior art keywords
- data
- address
- unit
- module
- storage area
- 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.)
- Pending
Links
- 230000010365 information processing Effects 0.000 title claims description 15
- 238000012545 processing Methods 0.000 claims abstract description 63
- 238000000034 method Methods 0.000 description 28
- 230000006870 function Effects 0.000 description 20
- 238000007726 management method Methods 0.000 description 10
- 230000004044 response Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 6
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1416—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1408—Protection against unauthorised use of memory or access to memory by using cryptography
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
- G06F21/80—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in storage media based on magnetic or optical technology, e.g. disks with sectors
- G06F21/805—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in storage media based on magnetic or optical technology, e.g. disks with sectors using a security table for the storage sub-system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1052—Security improvement
Abstract
【課題】処理を行う処理回路が有する要素毎の使用の可否を管理すること。【解決手段】モジュール40は、自回路の記憶領域である内部レジスタ41にデータを記憶して処理を行う。CPU8は、モジュール40を使用する場合、すなわちモジュール40に何らかの処理の実行を要求する場合、その処理に用いられる分割領域のアドレスを指定して、その処理で用いるデータの書き込みを要求する。LUT記憶部34が記憶するLUTは、モジュール40の記憶領域のうち使用が許可された範囲を表す。アクセス制御部35は、モジュール40の記憶領域の指定されたアドレスに書込みデータを書き込むよう要求された場合において、LUT記憶部34にそのアドレスを含む範囲を表すLUTが記憶されているときに、その書込みデータを指定されたアドレスに書き込む。【選択図】図2
Description
本発明は、集積回路及び情報処理装置に関する。
特許文献1には、IPモジュールの使用を許可するか否かをフラグレジスタによって一括管理することで、顧客毎の半導体集積回路のカスタマイズを不要とし、半導体集積回路の開発コストを低減する技術が開示されている。
特許文献1の技術では、集積回路が提供される際に、IPモジュールという処理回路毎の使用可否が管理されるが、処理回路が有する機能やパラメータといった要素毎の使用可否を管理することは考慮されていない。
そこで、本発明は、処理を行う処理回路が有する要素毎の使用の可否を管理することを目的とする。
そこで、本発明は、処理を行う処理回路が有する要素毎の使用の可否を管理することを目的とする。
本発明の請求項1に係る集積回路は、自回路の記憶領域にデータを記憶して処理を行う処理回路と、前記記憶領域のうち使用が許可された範囲を表す許可情報を記憶する第1記憶部と、前記記憶領域の指定されたアドレスにデータを書き込むよう要求された場合において、当該アドレスを含む前記範囲を表す前記許可情報が記憶されているときに、当該データを前記アドレスに書き込む書込部とを備えることを特徴とする。
本発明の請求項2に係る集積回路は、請求項1に記載の構成において、暗号化されたデータの復号化に用いる第1復号鍵を記憶する第2記憶部と、前記許可情報の更新内容を表す更新データによる前記許可情報の更新を要求された場合において、記憶された前記第1復号鍵で当該更新データが復号化されたときに、復号化された前記更新データが表す更新内容で前記許可情報を更新する更新部とを備えることを特徴とする。
本発明の請求項3に係る集積回路は、請求項1又は2に記載の構成において、前記記憶領域のアドレスに対応付けられた第2復号鍵を記憶する第3記憶部を備え、前記書込部は、前記指定されたアドレスへのデータの書き込みを要求された場合において、当該アドレスに対応付けられた第2復号鍵で当該データが復号化されたときに、当該復号化されたデータを当該アドレスに書き込むことを特徴とする。
本発明の請求項4に係る集積回路は、請求項1から3のいずれか1項に記載の構成において、前記指定されたアドレスが前記範囲に含まれていない場合に、当該アドレスへのデータの書き込みを要求してきた要求元への報知を行う報知部を備えることを特徴とする。
本発明の請求項5に係る情報処理装置は、請求項1から4のいずれか1項に記載の集積回路と、前記記憶領域のアドレスを指定してデータの書き込みを要求する要求部とを備えることを特徴とする。
本発明の請求項6に係る集積回路は、自回路の記憶領域にデータを記憶して処理を行う処理回路と、前記記憶領域のうち使用が許可された範囲を表す許可情報を記憶する第1記憶部と、前記記憶領域の指定されたアドレスからデータを読み出すよう要求された場合において、当該アドレスを含む前記範囲を表す前記許可情報が記憶されているときに、当該データを前記アドレスから読み出す読出部とを備えることを特徴とする。
請求項1、5、6に係る発明によれば、処理を行う処理回路が有する要素毎の使用の可否を管理することができる。
請求項2に係る発明によれば、第1復号鍵に対応した鍵で暗号化した更新データでなければ許可情報が更新されないようにすることができる。
請求項3に係る発明によれば、第2復号鍵に対応した鍵で暗号化したデータでなければ指定したアドレスに書き込めないようにすることができる。
請求項4に係る発明によれば、要求元への報知が行われない場合に比べて、データ書き込みの要求元が、次のデータ書き込みの要求に早く移ることができる。
請求項2に係る発明によれば、第1復号鍵に対応した鍵で暗号化した更新データでなければ許可情報が更新されないようにすることができる。
請求項3に係る発明によれば、第2復号鍵に対応した鍵で暗号化したデータでなければ指定したアドレスに書き込めないようにすることができる。
請求項4に係る発明によれば、要求元への報知が行われない場合に比べて、データ書き込みの要求元が、次のデータ書き込みの要求に早く移ることができる。
[1]実施例
図1は実施例に係る画像処理装置1のハードウェア構成を表す。画像処理装置1は、スキャンやプリント、コピー、ファクシミリなど、画像情報を処理する情報処理装置である。画像処理装置1は、制御部2と、ストレージ3と、通信I/F(InterFace)4と、UI(User Interface)5と、スキャナ6と、プリントエンジン7と、SOC(System-on-a-chip)20とを備え、SOC20は、ライセンス管理ユニット30と、モジュール40−1、40−2、40−3(これらを区別しない場合は「モジュール40」という)とを備える。
図1は実施例に係る画像処理装置1のハードウェア構成を表す。画像処理装置1は、スキャンやプリント、コピー、ファクシミリなど、画像情報を処理する情報処理装置である。画像処理装置1は、制御部2と、ストレージ3と、通信I/F(InterFace)4と、UI(User Interface)5と、スキャナ6と、プリントエンジン7と、SOC(System-on-a-chip)20とを備え、SOC20は、ライセンス管理ユニット30と、モジュール40−1、40−2、40−3(これらを区別しない場合は「モジュール40」という)とを備える。
制御部2は、自装置が備える各部を制御する。ストレージ3は、HDD(Hard Disk Drive)やSSD(Solid State Drive)などの記憶媒体であり、プログラムやデータなどを記憶する。通信I/F4は、通信回線に接続され、通信回線を介した外部装置との通信を仲介する。UI5は、ユーザとの情報のやり取りを仲介するインターフェースである。UI5は、タッチスクリーンやボタンなどを備え、自装置の状態や処理の状態などを表す情報を表示するとともに、操作子などの画像を表示してユーザの操作を受け付けたり、ボタンを押すことによる操作を受け付けたりする。スキャナ6は、イメージセンサなどを備え、用紙の表面に表された画像を光学的に読み取る。プリントエンジン7は、例えば電子写真方式で用紙等の媒体に画像を形成する。
SOC20は、画像処理に関連する機能を集積した半導体集積回路である。モジュール40は、画像処理を行う回路やその他の処理を行う回路など、SOC20に設けられた回路(モジュール)である。モジュールの中には、複数の個別機能を実現するものや、複数通りの個別パラメータに基づいて処理を行うものがある。例えば画像のファイルフォーマットを変換するモジュールAが、一般的なフォーマットに変換する機能B1と、特殊なフォーマットに変換する機能B2とをそれぞれ実現したり、同じフォーマットでも解像度のパラメータが複数通り(パラメータC1、C2など)から選べるようになっていたりする。
本実施例では、画像処理装置1を提供する提供者と画像処理装置1を利用する利用者とが使用許諾契約(ライセンス契約)を取り交わしており、提供者から利用者に対してモジュール毎に使用が許可されている。もちろん反対に、利用者に対して使用が許可されていないモジュールもある。さらに言うと、モジュールの使用の許可は、前述した個別機能や個別パラメータ毎に行われている。例えばモジュールAであれば、或るユーザには機能B1、B2、パラメータC1、C2の使用がいずれも許可されており、他のユーザには機能B1とパラメータC1での利用だけが許可されているという具合である。ライセンス管理ユニット30は、各モジュール40のライセンスを管理するユニットである。ライセンス管理方法の詳細は後述する。
図2は制御部2及びSOC20の詳細構成を表す。制御部2は、CPU(Central Processing Unit)8と、RAM(Random Access Memory)9と、ROM(Read Only Memory)10とを備える。CPU8は、RAM9をワークエリアとして用いてROM10やストレージ3に記憶されているプログラムを実行することで各部の動作を制御する。SOC20が備えるライセンス管理ユニット30とモジュール40とは、インターコネクト11によって接続され、データ交換がされるようになっている。
モジュール40−1、40−2、40−3は、それぞれ内部レジスタ41−1、41−2、41−3(以下区別しない場合は「内部レジスタ41」という)を備える。モジュール40は、自回路の記憶領域である内部レジスタ41にデータを記憶して処理を行う。モジュール40が内部レジスタ41に記憶するデータは、例えば処理に用いるパラメータや処理の対象となるデータ自身、処理の対象となるデータ(外部に記憶されているもの)が記憶されている記憶領域のアドレスなどである。内部レジスタ41に記憶するデータがパラメータである場合、モジュール40は、記憶するパラメータの内容に基づいて処理を行う。モジュール40は本発明の「処理回路」の一例である。内部レジスタ41は、本実施例ではいずれも2以上の記憶領域に分割されており、それぞれの分割された記憶領域(以下「分割領域」という)に処理に用いるデータや処理結果のデータなどを記憶する。
CPU8は、モジュール40を使用する場合、すなわちモジュール40に何らかの処理の実行を要求する場合、その処理に用いられる分割領域のアドレスを指定して、その処理で用いるデータの書き込みを要求する。CPU8は本発明の「要求部」の一例である。具体的には、CPU8は、要求する処理に用いられる分割領域のアドレスを指定するアドレスデータと、その処理を実行させるコマンド(命令)を表すコマンドデータと、その処理で用いるために分割領域に書き込む書込みデータとをライセンス管理ユニット30に供給する。書込みデータは、例えば要求された処理に用いるデータである。ライセンス管理ユニット30は、供給されたこれらのデータに基づいて、要求されている処理をモジュール40に実行させること、すなわちそのモジュール40の使用が許可されているか否かを判断する。
ライセンス管理ユニット30は、内部レジスタ部31と、復号化部32と、アドレスデコーダ部33と、LUT(Lookup table)記憶部34と、アクセス制御部35とを備える。内部レジスタ部31は、CPU8から提供される1つの秘密鍵と、1以上の公開鍵とを記憶する。CPU8が供給する書込みデータは、この秘密鍵と、これらの公開鍵のいずれかを用いて暗号化されている(詳細は後述する)。
復号化部32は、CPU8から暗号化された書込みデータが供給されると、内部レジスタ部31に記憶されている秘密鍵及び公開鍵を用いてその書込みデータを復号化する。復号化部32は、復号化した書込みデータをアクセス制御部35に供給する。復号化部32がどの公開鍵を用いて書込みデータを復号化するかについては、アドレスデコーダ部33から供給される情報に基づいて決定される(詳細は後述する)。
CPU8は、上記のアドレスデータをアドレスデコーダ部33に供給する。アドレスデコーダ部33は、CPU8から供給されたアドレスデータを用いて、CPU8が要求する処理を実行させるというモジュール40の使用が許可されているか否かを判断する。アドレスデコーダ部33は、LUT記憶部34に記憶されているLUTを参照してこの判断を行う。
図3はLUT記憶部34が記憶するLUTの一例を表す。図3のLUTは、「エントリ」、「有効/無効情報」、「アドレス範囲」及び「復号鍵番号」がそれぞれ対応付けられている。「エントリ」は、LUTの各行の通し番号を表す。「有効/無効情報」は、分割領域の使用が許可されているか否かを表す。「1」は有効、すなわち分割領域の使用が許可されていることを表し、「0」は無効、すなわち分割領域の使用が許可されていないことを表す。このように、LUTは、モジュール40の記憶領域(内部レジスタ41)のうち使用が許可された範囲を表す。LUTは本発明の「許可情報」の一例であり、LUT記憶部34はその許可情報を記憶する「第1記憶部」の一例である。
「アドレス範囲」は、1行目を除き、内部レジスタ41の分割領域の先頭のアドレスと終端のアドレスにより分割領域の範囲を表す。1行目の「0x000−0x0FF」というアドレス範囲は、モジュール40ではなくライセンス管理ユニット30の内部レジスタ部31のアドレス範囲を表している。「復号鍵番号」は、各分割領域に書き込むデータの暗号化に用いられる復号鍵の番号を表す。復号鍵番号は、内部レジスタ部31に記憶されている1以上の公開鍵に割り当てられた番号である。
アドレスデコーダ部33は、CPU8から供給されたアドレスデータにより指定されるアドレスを含むアドレス範囲がLUTに有る場合、そのアドレス範囲に対応付けられている有効/無効情報及び復号鍵番号を読み出す。アドレスデコーダ部33は、例えば「0x185」というアドレスを指定するアドレスデータが供給された場合、そのアドレスを含む「0x100−0x1FF」というアドレス範囲に対応付けられている「1」という有効/無効情報と、そのアドレス範囲に対応付けられている「6」という復号鍵番号を読み出す。アドレスデコーダ部33は、読み出した有効/無効情報を、CPU8から供給されたアドレスデータとともにアクセス制御部35に供給し、読み出した復号鍵番号を復号化部32に供給する。
復号化部32は、供給された復号鍵番号が割り当てられた公開鍵と秘密鍵とを内部レジスタ部31から読み出して、前述した書込みデータを復号化する。例えばストレージ3にはアドレス範囲と復号鍵番号とをLUTと共通の組み合わせで対応付けた情報が記憶されており、CPU8は、その情報を参照して、分割領域のアドレス範囲に対応付けられている復号鍵番号が割り当てられた公開鍵を用いて暗号化をしている。そのため、復号化部32は、CPU8が暗号化に用いた公開鍵を用いて書込みデータを復号化することになる。
アクセス制御部35は、CPU8のモジュール40へのアクセスを制御する。アクセス制御部35には、アドレスデコーダ部33から有効/無効情報及びアドレスデータが供給され、CPU8からコマンドデータが供給され、復号化部32から書込みデータが供給される。アクセス制御部35は、「1」(つまり有効)を表す有効/無効情報が供給されると、モジュール40の内部レジスタ41へのデータの書き込みが許可されていると判断する。
アクセス制御部35は、許可されていると判断すると、復号化部32から供給された書込みデータを、アドレスデコーダ部33から供給されたアドレスデータにより指定されるアドレスを有するモジュール40に対し、そのアドレスデータ及びCPU8から供給されたコマンドデータとともに、インターコネクト11を介して供給する。インターコネクト11からそれらのデータが供給されたモジュール40は、供給されたアドレスデータにより指定されるアドレスに供給された書込みデータを書き込み、供給されたコマンドデータが表すコマンドに従って、内部レジスタ41に書き込んだ書込みデータを用いた処理(例えば書込みデータが表す値を用いた演算処理など)を行う。
このように、アクセス制御部35は、モジュール40の記憶領域(内部レジスタ41)の指定されたアドレスに書込みデータを書き込むよう要求された場合において、LUT記憶部34にそのアドレスを含む範囲を表す許可情報(LUT)が記憶されているときに、その書込みデータを指定されたアドレスに書き込む。アクセス制御部35は本発明の「書込部」の一例である。モジュール40は、上記処理を行うと、その処理が行われた旨を示す応答データをアクセス制御部35にインターコネクト11を介して供給する。アクセス制御部35は、供給された応答データをCPU8に供給する。
一方、アクセス制御部35は、有効/無効情報に基づいてデータの書き込みが許可されていないと判断すると、CPU8に対してその旨を示す応答データを供給する。CPU8は、こうしてアクセス制御部35から供給される応答データにより、モジュール40に対して発行したコマンドに基づく処理が実行されたか否かを判断する。このように、アクセス制御部35は、指定されたアドレスが使用を許可されたアドレス範囲に含まれていない場合に、そのアドレスへのデータの書き込みを要求してきた要求元(つまりCPU8)への報知を行う報知部として機能する。
また、アクセス制御部35は、この場合に、供給された書込みデータを指定されたアドレスに対して供給しないで破棄する。これにより、書き込みが許可されていないアドレスの分割領域に書込みデータが書き込まれないようになっている。なお、書込みデータが書き込まれないようにする方法は、これに限らない。アクセス制御部35は、例えば対象の分割領域にデータを書き込む回路へのクロックの入力を遮断するよう指示したり、その回路をリセットし続けるよう指示したりすることで、分割領域にデータが書き込まれないようにしてもよい。アクセス制御部35は、以上のとおりモジュール40へのアクセスを、内部レジスタ41の分割領域毎に制御する。
図3に表すLUTは一例であり、画像処理装置1の利用者が装置の利用を開始する際に、画像処理装置1の提供者と利用者とのライセンス契約に応じた内容のLUTがLUT記憶部34に記憶される。また、その際に、内部レジスタ部31への秘密鍵及び公開鍵の書き込みも行われる。この利用開始時の一連の処理を初期設定処理という。
図4は初期設定処理の前に記憶されているLUTの一例を表す。図4の例では、「0」というエントリに「1」という有効/無効情報と、「0x000−0x0FF」というアドレス範囲と、「0」という復号鍵番号とが対応付けられ、それ以外のエントリには、「0」という有効/無効情報と、「−」という値がないことを示す記号が対応付けられている。この「0x000−0x0FF」というアドレス範囲は、上述したように内部レジスタ部31のアドレス範囲を表している。図4に表すLUTから図3に表すLUTに更新する処理、すなわち初期設定処理における画像処理装置1の各部の動作について、図5を参照して説明する。
図5は初期設定処理における各部の動作手順の一例を表す。この動作手順は、画像処理装置1の提供者から利用者に対して秘密鍵、L個の公開鍵(公開鍵0、・・・公開鍵(L−1))及び復号鍵番号(0から(L−1)までの各公開鍵の番号)を表す鍵データと、LUTの更新内容を表す更新データとが提供され、その利用者がそれらの鍵データ及び更新データをストレージ3に記憶させて初期設定を開始させる操作を行うことを契機に開始される。
まず、CPU8が、ストレージ3から鍵データを読み出して、内部レジスタ部31にその鍵データが表す秘密鍵、各公開鍵及び復号鍵番号を記憶させる(ステップS101)。次に、内部レジスタ部31が、記憶した秘密鍵及び各公開鍵を復号化部32に供給する(ステップS102)。ステップS101及びS102は、鍵データを導入する鍵導入処理S100を表す。
次に、CPU8は、LUT記憶部34のLUTが記憶されているアドレスを指定するアドレスデータをアドレスデコーダ部33に供給し(ステップS201)、LUTの更新を指示するコマンドを表すコマンドデータをアクセス制御部35に供給し(ステップS211)、秘密鍵及び公開鍵0で暗号化した更新データを書込みデータとして復号化部32に供給する(ステップS221)。ステップS201、S211、S221は順次行われてもよいし、並行して行われてもよい。
アドレスデコーダ部33は、ステップS201でアドレスデータが供給されると、LUT記憶部34に記憶されているLUT(図4に表すLUT)を参照し(ステップS202)、そのアドレスデータにより指定されるアドレスに対応付けられている「1」という有効/無効情報及び「0」という復号鍵番号を読み出す(ステップS203)。アドレスデコーダ部33は、読み出した有効/無効情報をアドレスデータとともにアクセス制御部35に供給し(ステップS204)、読み出した復号鍵番号を復号化部32に供給する(ステップS205)。
アクセス制御部35は、ステップS204で「1」(有効)という有効/無効情報及びアドレスデータが供給され、ステップS211でコマンドデータが供給されると、それらのコマンドデータ及びアドレスデータをインターコネクト11に供給する(ステップS212)。
復号化部32は、ステップS205で「0」という復号鍵番号が供給され、ステップS221で暗号化された書込みデータが供給されると、その復号鍵番号が示す公開鍵及び秘密鍵で書込みデータを復号化し、復号化した書込みデータ、すなわちLUTの更新データをインターコネクト11に供給する(ステップS222)。インターコネクト11は、ステップS212で供給されたコマンドデータ及びアドレスデータと、ステップS222で供給された更新データをLUT記憶部34に供給する(ステップS223)。
LUT記憶部34は、供給された更新データを用いて、供給されたアドレスデータにより指定されるアドレスに記憶されたLUTを、供給されたコマンドデータが表すコマンドの指示により更新し、LUTを更新した旨を示す応答データをインターコネクト11に供給する(ステップS224)。インターコネクト11は、供給された応答データをアクセス制御部35に供給し(ステップS225)、アクセス制御部35は、供給された応答データをCPU8に供給する(ステップS226)。ステップS201からS226までは、LUTを更新する更新処理S200を表す。
以上のとおり、図4に表す復号鍵番号「0」が割り当てられた公開鍵は、暗号化された更新データの復号化に用いる鍵であり、本発明の「第1復号鍵」の一例である。この公開鍵を記憶する復号化部32は、本発明の「第2記憶部」の一例である。復号化部32は、LUTの更新内容を表す更新データによるLUTの更新を要求された場合において、自身が記憶する第1復号鍵(本実施例では「0」が割り当てられた公開鍵)でその更新データを復号化する。アクセス制御部35は、こうして更新データが復号化されたときに、その更新データが表す更新内容でLUTを更新する。アクセス制御部35は本発明の「更新部」の一例である。
画像処理装置1は、以上のとおり更新されたLUTを用いて、モジュール40を使用するモジュール使用処理を行う。
図6はモジュール使用処理における各部の動作手順の一例を表す。この動作手順は、ユーザの操作等に基づいてモジュール40を使用する処理が要求されることを契機に開始される。
図6はモジュール使用処理における各部の動作手順の一例を表す。この動作手順は、ユーザの操作等に基づいてモジュール40を使用する処理が要求されることを契機に開始される。
まず、CPU8が、モジュール40の内部レジスタ41のアドレスを指定するアドレスデータをアドレスデコーダ部33に供給し(ステップS301)、要求された処理の実行を指示するコマンドを表すコマンドデータをアクセス制御部35に供給し(ステップS311)、秘密鍵及びステップS301で登場したアドレスに対応付けられた公開鍵で暗号化した書込みデータを復号化部32に供給する(ステップS321)。ステップS301、S311、S321は順次行われてもよいし、並行して行われてもよい。
アドレスデコーダ部33は、ステップS301でアドレスデータが供給されると、LUT記憶部34に記憶されているLUT(図3に表すLUT)を参照し(ステップS302)、そのアドレスデータにより指定されるアドレスに対応付けられている有効/無効情報及び復号鍵番号を読み出す(ステップS303)。アドレスデコーダ部33は、読み出した有効/無効情報をアドレスデータとともにアクセス制御部35に供給し(ステップS304)、読み出した復号鍵番号を復号化部32に供給する(ステップS305)。
この例では、ステップS204で「1」(有効)という有効/無効情報が供給されたとする。アクセス制御部35は、ステップS204でその有効/無効情報及びアドレスデータが供給され、ステップS211でコマンドデータが供給されると、それらのコマンドデータ及びアドレスデータをインターコネクト11に供給する(ステップS312)。
復号化部32は、ステップS305で復号鍵番号が供給され、ステップS221で暗号化された書込みデータが供給されると、その復号鍵番号が示す公開鍵及び秘密鍵で書込みデータを復号化し、復号化した書込みデータをインターコネクト11に供給する(ステップS322)。インターコネクト11は、ステップS312で供給されたコマンドデータ及びアドレスデータと、ステップS322で供給された書込みデータとを、モジュール40の内部レジスタ41に供給する(ステップS323)。
モジュール40は、内部レジスタ41に供給された書込みデータ、アドレスデータ及びコマンドデータに基づいて、要求された処理を実行し、その処理を実行した旨を示す応答データをインターコネクト11に供給する(ステップS324)。インターコネクト11は、供給された応答データをアクセス制御部35に供給し(ステップS325)、アクセス制御部35は、供給された応答データをCPU8に供給する(ステップS326)。ステップS301からS326までは、要求された処理をモジュール40が実行する実行処理S300を表す。
以上のとおり、図3に表す分割領域のアドレス範囲に対応付けられた復号鍵番号(エントリ「1」から「N−1」までに対応付けられた復号鍵番号)が割り当てられた公開鍵は、いずれも分割領域のアドレスに対応付けられた鍵であり、本発明の「第2復号鍵」の一例である。これらの公開鍵を記憶する復号化部32は、本発明の「第3記憶部」の一例である。
復号化部32は、指定されたアドレスへの書込みデータの書き込みを要求された場合において、自身が記憶する第2復号鍵(例えば「6」が割り当てられた公開鍵)でその書込みデータを復号化する。アクセス制御部35は、指定されたアドレスに対応付けられた公開鍵で書込みデータが復号化されたときに、その復号化された書込みデータを指定されたアドレスに書き込む。
本実施例では、モジュール40の内部レジスタ41の分割領域毎にデータの書き込みが許可される。それにより、例えばモジュール40が複数の機能を有している場合に、それらの機能毎に用いられる分割領域を決めておくことで、機能毎に使用の可否が管理されることになる。また、複数のパラメータのうちのいずれかを用いる機能がある場合に、それらのパラメータ毎に用いられる分割領域を決めておくことで、パラメータ毎に使用の可否が管理されることになる。このように、本実施例によれば、モジュール40が有する機能やパラメータといった要素毎に使用の可否が管理される。
また、本実施例では、内部レジスタ部31のアドレス範囲に対応付けられた復号鍵番号(図4の例では「0」)が割り当てられた公開鍵を用いて更新データが復号化される。そのため、その公開鍵に対応した鍵で暗号化した更新データでなければLUTが更新されないようになっている。
また、本実施例では、各分割領域のアドレス範囲に対応付けられた復号鍵番号(図3の例ではエントリ「1」から「N−1」までに対応付けられた復号鍵番号)が割り当てられた公開鍵を用いて書込みデータが復号化される。そのため、それらの公開鍵に対応した鍵で暗号化した書込みデータでなければ指定したアドレスに書き込めないようになっている。
また、本実施例では、指定されたアドレスが使用を許可されたアドレス範囲に含まれていない場合にアクセス制御部35がCPU8への報知を行っている。CPU8は、書込みデータの書き込みがされた結果に基づいて次のデータ書き込みの要求を行うことがある。その場合に、この報知が行われなければ、CPU8は、例えば決められた時間が経過したときに次のデータ書き込みの要求を行うといったことが必要になる。本実施例では、アクセス制御部35による報知が行われるので、この報知が行われない場合に比べて、データ書き込みの要求元であるCPU8が、次のデータ書き込みの要求に早く移ることになる。
[2]変形例
上述した実施例は本発明の実施の一例に過ぎず、以下のように変形させてもよい。また、実施例及び各変形例は、必要に応じて組み合わせて実施してもよい。
上述した実施例は本発明の実施の一例に過ぎず、以下のように変形させてもよい。また、実施例及び各変形例は、必要に応じて組み合わせて実施してもよい。
[2−1]情報処理装置
本発明は画像処理装置以外の情報処理装置に適用してもよい。例えばサーバ装置に適用して、使用可能な機能やパラメータを利用者毎に管理してもよい。また、店舗等に設置されて様々な機能を提供するキオスク端末に適用し、使用可能な機能やパラメータを店舗毎に管理してもよい。要するに、利用者毎にモジュールの機能やパラメータを管理することがある情報処理装置であれば、どのような装置に本発明を適用してもよい。
本発明は画像処理装置以外の情報処理装置に適用してもよい。例えばサーバ装置に適用して、使用可能な機能やパラメータを利用者毎に管理してもよい。また、店舗等に設置されて様々な機能を提供するキオスク端末に適用し、使用可能な機能やパラメータを店舗毎に管理してもよい。要するに、利用者毎にモジュールの機能やパラメータを管理することがある情報処理装置であれば、どのような装置に本発明を適用してもよい。
[2−2]情報処理装置の構成
本発明が適用される情報処理装置の構成は図1及び図2に表すものに限らず、様々な構成を備えていてもよい。いずれの場合も、その情報処理装置が、少なくとも本発明の「処理回路」、「第1記憶部」、「書込部」に相当する構成を備え、また、必要に応じて本発明の「第2記憶部」、「更新部」、「第3記憶部」、「報知部」、「要求部」に相当する構成を備えていればよい。
本発明が適用される情報処理装置の構成は図1及び図2に表すものに限らず、様々な構成を備えていてもよい。いずれの場合も、その情報処理装置が、少なくとも本発明の「処理回路」、「第1記憶部」、「書込部」に相当する構成を備え、また、必要に応じて本発明の「第2記憶部」、「更新部」、「第3記憶部」、「報知部」、「要求部」に相当する構成を備えていればよい。
[2−3]データの読み出し
実施例ではモジュール40の記憶領域(内部レジスタ41)の指定されたアドレスに書込みデータを書き込むよう要求された場合を説明したが、指定されたアドレスからデータを読み出すよう要求される場合もある。この場合、アクセス制御部35は、LUT記憶部34にそのアドレスを含む範囲を表す許可情報(LUT)が記憶されているときに、その指定されたアドレスからデータを読み出す。アクセス制御部35は本発明の「読出部」の一例である。本変形例でも、モジュール40が有する機能やパラメータといった要素毎に使用の可否が管理される。
実施例ではモジュール40の記憶領域(内部レジスタ41)の指定されたアドレスに書込みデータを書き込むよう要求された場合を説明したが、指定されたアドレスからデータを読み出すよう要求される場合もある。この場合、アクセス制御部35は、LUT記憶部34にそのアドレスを含む範囲を表す許可情報(LUT)が記憶されているときに、その指定されたアドレスからデータを読み出す。アクセス制御部35は本発明の「読出部」の一例である。本変形例でも、モジュール40が有する機能やパラメータといった要素毎に使用の可否が管理される。
[2−4]発明のカテゴリ
本発明は、上述したSOCのようにライセンス管理ユニット及びモジュールを備える集積回路や、上述した画像処理装置やサーバ装置、キオスク端末のようにその集積回路を備える情報処理装置として捉えられる。また、本発明は、それらの集積回路や情報処理装置が実施する処理を実現するための情報処理方法としても捉えられるし、それらの処理をコンピュータに実行させるためのプログラムとしても捉えられる。このプログラムは、それを記憶させた光ディスク等の記録媒体の形態で提供されてもよいし、インターネット等の通信回線を介してコンピュータにダウンロードさせ、それをインストールして利用可能にするなどの形態で提供されてもよい。
本発明は、上述したSOCのようにライセンス管理ユニット及びモジュールを備える集積回路や、上述した画像処理装置やサーバ装置、キオスク端末のようにその集積回路を備える情報処理装置として捉えられる。また、本発明は、それらの集積回路や情報処理装置が実施する処理を実現するための情報処理方法としても捉えられるし、それらの処理をコンピュータに実行させるためのプログラムとしても捉えられる。このプログラムは、それを記憶させた光ディスク等の記録媒体の形態で提供されてもよいし、インターネット等の通信回線を介してコンピュータにダウンロードさせ、それをインストールして利用可能にするなどの形態で提供されてもよい。
1…画像処理装置、2…制御部、3…ストレージ、8…CPU、9…RAM、10…ROM、20…SOC、30…ライセンス管理ユニット、31…内部レジスタ部、32…復号化部、33…アドレスデコーダ部、34…LUT記憶部、35…アクセス制御部、40…モジュール、41…内部レジスタ。
Claims (6)
- 自回路の記憶領域にデータを記憶して処理を行う処理回路と、
前記記憶領域のうち使用が許可された範囲を表す許可情報を記憶する第1記憶部と、
前記記憶領域の指定されたアドレスにデータを書き込むよう要求された場合において、当該アドレスを含む前記範囲を表す前記許可情報が記憶されているときに、当該データを前記アドレスに書き込む書込部と
を備える集積回路。 - 暗号化されたデータの復号化に用いる第1復号鍵を記憶する第2記憶部と、
前記許可情報の更新内容を表す更新データによる前記許可情報の更新を要求された場合において、記憶された前記第1復号鍵で当該更新データが復号化されたときに、復号化された前記更新データが表す更新内容で前記許可情報を更新する更新部とを備える
請求項1に記載の集積回路。 - 前記記憶領域のアドレスに対応付けられた第2復号鍵を記憶する第3記憶部を備え、
前記書込部は、前記指定されたアドレスへのデータの書き込みを要求された場合において、当該アドレスに対応付けられた第2復号鍵で当該データが復号化されたときに、当該復号化されたデータを当該アドレスに書き込む
請求項1又は2に記載の集積回路。 - 前記指定されたアドレスが前記範囲に含まれていない場合に、当該アドレスへのデータの書き込みを要求してきた要求元への報知を行う報知部を備える
請求項1から3のいずれか1項に記載の集積回路。 - 請求項1から4のいずれか1項に記載の集積回路と、
前記記憶領域のアドレスを指定してデータの書き込みを要求する要求部と
を備える情報処理装置。 - 自回路の記憶領域にデータを記憶して処理を行う処理回路と、
前記記憶領域のうち使用が許可された範囲を表す許可情報を記憶する第1記憶部と、
前記記憶領域の指定されたアドレスからデータを読み出すよう要求された場合において、当該アドレスを含む前記範囲を表す前記許可情報が記憶されているときに、当該データを前記アドレスから読み出す読出部と
を備える集積回路。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016057620A JP2017175297A (ja) | 2016-03-22 | 2016-03-22 | 集積回路及び情報処理装置 |
US15/246,924 US20170277641A1 (en) | 2016-03-22 | 2016-08-25 | Integrated circuit, information processing apparatus, and information processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016057620A JP2017175297A (ja) | 2016-03-22 | 2016-03-22 | 集積回路及び情報処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017175297A true JP2017175297A (ja) | 2017-09-28 |
Family
ID=59896459
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016057620A Pending JP2017175297A (ja) | 2016-03-22 | 2016-03-22 | 集積回路及び情報処理装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20170277641A1 (ja) |
JP (1) | JP2017175297A (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10902381B2 (en) * | 2016-12-19 | 2021-01-26 | General Electric Company | Methods and systems for providing improved data access framework |
KR102445243B1 (ko) * | 2017-10-23 | 2022-09-21 | 삼성전자주식회사 | 데이터 암호화 방법 및 그에 따른 전자 장치 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5627987A (en) * | 1991-11-29 | 1997-05-06 | Kabushiki Kaisha Toshiba | Memory management and protection system for virtual memory in computer system |
US5845129A (en) * | 1996-03-22 | 1998-12-01 | Philips Electronics North America Corporation | Protection domains in a single address space |
JP3710671B2 (ja) * | 2000-03-14 | 2005-10-26 | シャープ株式会社 | 1チップマイクロコンピュータ及びそれを用いたicカード、並びに1チップマイクロコンピュータのアクセス制御方法 |
JP2003122537A (ja) * | 2001-10-15 | 2003-04-25 | Minolta Co Ltd | ライセンス管理装置及び同管理システム |
GB2423603A (en) * | 2005-02-25 | 2006-08-30 | Canon Europa Nv | Authorising printer access via a removable memory |
JP4416704B2 (ja) * | 2005-07-01 | 2010-02-17 | シャープ株式会社 | 無線伝送システム |
US8407704B2 (en) * | 2006-09-26 | 2013-03-26 | International Business Machines Corporation | Multi-level memory architecture using data structures for storing access rights and performing address translation |
US8832389B2 (en) * | 2011-01-14 | 2014-09-09 | International Business Machines Corporation | Domain based access control of physical memory space |
-
2016
- 2016-03-22 JP JP2016057620A patent/JP2017175297A/ja active Pending
- 2016-08-25 US US15/246,924 patent/US20170277641A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20170277641A1 (en) | 2017-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5090834B2 (ja) | 情報処理装置及び認証制御プログラム | |
US8275884B2 (en) | Method and system for securely sharing content | |
JP2011141683A (ja) | 画像処理装置、表示装置、認証システム、表示制御方法、表示制御プログラム、及びそのプログラムを記録した記録媒体 | |
JP2006323503A (ja) | 文書管理装置及びその制御方法、コンピュータプログラム、記憶媒体 | |
JP2015156055A (ja) | 情報処理装置、情報処理方法 | |
JP4305428B2 (ja) | デバイス管理用プログラム及びデバイス管理装置 | |
JP5743475B2 (ja) | 情報処理装置、情報処理装置の制御方法及びプログラム | |
JP2007110351A (ja) | デジタル複合機 | |
JP6938983B2 (ja) | 情報処理システム、情報処理装置及び情報処理方法 | |
JP5741665B2 (ja) | 画像処理装置、表示装置、認証システム、表示制御方法、及び表示制御プログラム。 | |
JP2017175297A (ja) | 集積回路及び情報処理装置 | |
JP2015104022A (ja) | 情報処理装置、その制御方法、及びプログラム | |
CN110636182A (zh) | 信息处理装置、信息处理方法、及认证协作系统 | |
JP2006091548A (ja) | 画像形成装置およびその制御方法および制御プログラム | |
JP2020014143A (ja) | 画像形成装置及びプログラム | |
JP2007226391A (ja) | 画像形成装置、画像形成方法及び画像形成プログラム | |
JP2013089153A (ja) | プリンタードライバー | |
JP2006350775A (ja) | 画像処理装置、データ管理プログラムおよびデータ管理方法 | |
US20180270372A1 (en) | Operation device, computer-readable recording medium, and device management system | |
JP2002283623A (ja) | 印刷装置 | |
JP2016157282A (ja) | データ処理装置、データ処理システム及びコンピュータプログラム | |
US20240069816A1 (en) | System including first device copying shortcut information to portable memory, and second device performing shortcut related process based on the shortcut information stored in the portable memory | |
JP2009239491A (ja) | 情報処理システム、情報処理方法、コンピュータプログラム及び記憶媒体群 | |
JP2015125723A (ja) | データ移行システム及びデータ移行方法 | |
JP2013008390A (ja) | 情報処理装置、プログラム、及び記録媒体 |