• ポートフォリオ機能


ポートフォリオを新規に作成して保存
既存のポートフォリオに追加保存

  • この表をプリントする
PDF PDFをダウンロード
審決分類 審判 査定不服 特17条の2、3項新規事項追加の補正 特許、登録しない。 G06F
審判 査定不服 2項進歩性 特許、登録しない。 G06F
管理番号 1254511
審判番号 不服2010-18899  
総通号数 149 
発行国 日本国特許庁(JP) 
公報種別 特許審決公報 
発行日 2012-05-25 
種別 拒絶査定不服の審決 
審判請求日 2010-08-20 
確定日 2012-03-29 
事件の表示 特願2003-372374「情報処理装置」拒絶査定不服審判事件〔平成17年 5月26日出願公開、特開2005-135265〕について、次のとおり審決する。 
結論 本件審判の請求は、成り立たない。 
理由 1.手続の経緯
出願日 平成15年10月31日
拒絶理由(起案日) 平成21年10月20日
意見書及び手続補正書 平成21年12月24日
拒絶理由(最後)(起案日) 平成22年2月24日
意見書及び手続補正書 平成22年4月28日
拒絶査定(起案日) 平成22年5月19日
補正却下の決定(起案日) 平成22年5月19日
同謄本送達 平成22年6月1日
審判請求 平成22年8月20日
手続補正書 平成22年8月20日
前置報告書(作成日) 平成22年9月27日
審尋(起案日) 平成23年4月22日
回答書 平成23年6月21日

2.平成22年8月20日付の手続補正についての補正却下の決定
[補正却下の決定の結論]
平成22年8月20日付の手続補正を却下する。
[理由]
(1)補正の内容
平成22年8月20日付の手続補正(以下、「本件補正」という。)の特許請求の範囲に係る補正の内容は次のとおりである。なお、平成22年4月28日付の手続補正は却下されたので、本件補正前の特許請求の範囲の請求項1乃至請求項3は、平成21年12月24日付の手続補正により補正されたものである。(本件補正後の特許請求の範囲における補正部分には下線を付した。)
(本件補正後)
「【請求項1】
記憶手段と、
該記憶手段に書き込まれたプログラムを実行するCPUと、
セキュアモジュールと
を有する情報処理装置において、
前記セキュアモジュールは、
実行可能な複数のプログラム部品を含むプログラムを暗号化した暗号化プログラムを受け取る手段と、
受け取った暗号化プログラムから、相互に異なる部分を有する複数の復号されたプログラム部品を生成する手段と、
前記CPUによるプログラム部品の実行を開始すべき時期を契機として、該実行の対象となる生成されたプログラム部品を、あらかじめ無効なプログラム部品を配置してある前記記憶手段のプログラム部品の書き込み可能領域に書き込み、該書き込み可能領域へ分岐する条件分岐の条件を、該書き込み可能領域に書き込む手段と、
該記憶手段に書き込んだプログラム部品を、前記CPUが当該プログラム部品を実行した後に、前記記憶手段から削除する手段と
を備えることを特徴とする情報処理装置。
【請求項2】
前記生成する手段は、前記生成したプログラム部品に対して、当該プログラム部品の実行が終了した後に、次に実行すべきプログラム部品を前記セキュアモジュールに要求させるように前記CPUを動作させる命令コードを付加するようにしてあり、
前記書き込む手段は、前記CPUからプログラム部品を要求された場合に、前記CPUの実行対象となるプログラム部品を前記記憶手段に書き込むようにしてある
ことを特徴とする請求項1記載の情報処理装置。
【請求項3】
前記受け取る手段は、前記暗号化プログラムに対応付けて、前記プログラムの分割に関する情報を受け取るようにしてあり、
前記生成する手段は、前記プログラムの分割に関する情報に基づいて前記受け取った暗号化プログラムから複数の復号されたプログラム部品を生成するようにしてある
ことを特徴とする請求項1又は2記載の情報処理装置。」
(以下、請求項1?3をそれぞれ「補正後の請求項1?補正後の請求項3」という。)

(本件補正前)
「【請求項1】
記憶手段と、
該記憶手段に書き込まれたプログラムを実行するCPUと、
セキュアモジュールと、
を有する情報処理装置において、
前記セキュアモジュールは、
実行可能な複数のプログラム部品を含むプログラムを暗号化した暗号化プログラムを受け取る手段と、
受け取った暗号化プログラムから、相互に異なる部分を有する複数の復号されたプログラム部品を生成する手段と、
前記CPUによるプログラム部品の実行を開始すべき時期を契機として、該実行の対象となる生成されたプログラム部品を前記記憶手段に書き込む手段と、
該記憶手段に書き込んだプログラム部品を、前記CPUが当該プログラム部品を実行した後に、前記記憶手段から削除する手段と、
を備えることを特徴とする情報処理装置。
【請求項2】
前記生成する手段は、前記生成したプログラム部品に対して、当該プログラム部品の実行が終了した後に、次に実行すべきプログラム部品を前記セキュアモジュールに要求させるように前記CPUを動作させる命令コードを付加するようにしてあり、
前記書き込む手段は、前記CPUからプログラム部品を要求された場合に、前記CPUの実行対象となるプログラム部品を前記記憶手段に書き込むようにしてある、
ことを特徴とする請求項1記載の情報処理装置。
【請求項3】
前記受け取る手段は、前記暗号化プログラムに対応付けて、前記プログラムの分割に関する情報を受け取るようにしてあり、
前記生成する手段は、前記プログラムの分割に関する情報に基づいて前記受け取った暗号化プログラムから複数の復号されたプログラム部品を生成するようにしてある、
ことを特徴とする請求項1又は2記載の情報処理装置。」
(以下、請求項1?3をそれぞれ「補正前の請求項1?補正前の請求項3」という。)

(2)新規事項有無についての判断
(2.1)補正後の請求項1の、
「セキュアモジュールは、…実行の対象となる生成されたプログラム部品を、あらかじめ無効なプログラム部品を配置してある前記記憶手段のプログラム部品の書き込み可能領域に書き込み、該書き込み可能領域へ分岐する条件分岐の条件を、該書き込み可能領域に書き込む手段、…とを備える」は、発明特定事項として、
A.セキュアモジュールは、該書き込み可能領域へ分岐する条件分岐の条件を、該書き込み可能領域に書き込む手段を備えること、
を含む。
そして、発明特定事項Aにおいて、「該書き込み可能領域」が「あらかじめ無効なプログラム部品を配置してある記憶手段のプログラム部品の書き込み可能領域」を指すので、発明特定事項Aは、
・あらかじめ無効なプログラム部品を配置してある記憶手段のプログラム部品の書き込み可能領域へ分岐する条件分岐の条件であって、
・上記条件分岐の条件を、あらかじめ無効なプログラム部品を配置してある記憶手段のプログラム部品の書き込み可能領域に書き込むこと
を行う手段をセキュアモジュールが備える態様を含む。

(2.2)次に、発明特定事項Aが、願書に最初に添付した明細書、特許請求の範囲又は図面に記載した事項の範囲内においてなされたものであるか検討する。(下線は、参考のために当審で付した。)

ア.願書に最初に添付した明細書の段落【0030】?【0046】には、実施の形態1のうち一つの態様として以下の記載がある。
「 【0030】
(実施の形態1)
以下、本発明の実施の形態1に係る情報処理装置について図面に基づいて具体的に説明する。本実施の形態1では、情報処理装置として一つのコンピュータ、例えばPCを用いて具現化する場合について説明する。もちろん、実行されるプログラムで使用されるデータは、通信手段を介して接続された他のPC、又はDVD等の可搬型記録媒体に記録されていてもよく、通信手段についても特に限定されるものではない。
…(中略)…
【0043】
図4は、実行するプログラムが要求するプログラム部品が実行される直前に、セキュアモジュール20により対応するプログラム部品をRAM13へ書き込む方法の説明図である。図4(a)に示すように、プログラムの中に条件分岐命令を設定する。該条件分岐命令の条件は一定値とし、必ず一方の経路を選択するようにしておく。他方の経路には無効なプログラム部品を配置する。無効なプログラム部品は、例えばnop列、0列等、動作しないプログラムコードである。なお、無効なプログラム部品が配置された領域に、要求されたプログラム部品の書き込み可能領域を確保しておく。
【0044】
セキュアモジュール20は、RAM13へ書き込まれていないプログラム部品の実行が必要になったタイミング、すなわちプログラム部品の実行要求命令がプログラムで実行された時点で、図4(b)に示すように、RAM13の無効なプログラム部品が配置された領域のプログラム部品の書き込み可能領域に、要求されたプログラム部品を書き込む。なお、RAM13へ該プログラム部品が書き込まれた後、図4(c)に示すように該プログラム部品を要求したプログラムの条件分岐命令の条件を変更し、他方の経路を選択するようにして、CPU11が、書き込まれたプログラム部品を実行する。…」

この記載によれば、プログラムの中に条件分岐命令を設定する際に、該条件分岐命令の条件は一定値とし、必ず一方の経路を選択するようにしておき、他方の経路の無効なプログラム部品が配置された領域に、要求されたプログラム部品の書き込み可能領域を確保しておき、RAM13へ該プログラム部品が書き込まれた後、図4(c)に示すように該プログラム部品を要求したプログラムの条件分岐命令の条件を変更し、他方の経路を選択するようにして、CPU11が、書き込まれたプログラム部品を実行する事項が発明の詳細な説明に記載されている。
しかしながら、条件分岐命令の条件を変更することが記載されているが、前記条件分岐命令の条件について、具体的に該条件をどのように変更するのかについて記載も示唆もない。
しかも、明らかに条件分岐の条件が配置されている領域は無効なプログラム部品が配置された領域ではないので、前記発明の詳細な説明に記載された態様は、条件分岐の条件を、あらかじめ無効なプログラム部品を配置してある記憶手段のプログラム部品の書き込み可能領域に書き込むものでもない。
したがって、前記発明の詳細な説明及び関連する図面(図1?図4)には、
・あらかじめ無効なプログラム部品を配置してある記憶手段のプログラム部品の書き込み可能領域へ分岐する条件分岐の条件であって、
・上記条件分岐の条件を、あらかじめ無効なプログラム部品を配置してある記憶手段のプログラム部品の書き込み可能領域に書き込むこと
について記載も示唆もない。

イ.願書に最初に添付した明細書の段落【0047】?【0050】には、実施の形態1のうち一つの態様として「プログラム部品を動的にRAM13へ書き込む場合」(段落【0047】)であって、「セキュアモジュール20は、割り込み命令、アクセス違反等の例外処理を生じる命令を実行要求プログラム50に付加し、実行要求プログラム50を実行する」態様が記載されている。
しかしながら、当該箇所及び関連する図面(図5)には、
・あらかじめ無効なプログラム部品を配置してある記憶手段のプログラム部品の書き込み可能領域へ分岐する条件分岐の条件であって、
・上記条件分岐の条件を、あらかじめ無効なプログラム部品を配置してある記憶手段のプログラム部品の書き込み可能領域に書き込むこと
について記載も示唆もない。

ウ.願書に最初に添付した明細書の段落【0051】?【0053】には、実施の形態2として、「実施の形態1のようにプログラム部品自体をセキュアモジュール20から動的にRAM13へ書き込むのではなく、プログラム部品はRAM13へ常時書き込んでおき、各プログラム部品中の他のプログラム部品の呼び出しアドレスだけを更新」(段落【0051】)する態様が記載されている。
しかしながら、当該箇所及び関連する図面(図6)には、
・あらかじめ無効なプログラム部品を配置してある記憶手段のプログラム部品の書き込み可能領域へ分岐する条件分岐の条件であって、
・上記条件分岐の条件を、あらかじめ無効なプログラム部品を配置してある記憶手段のプログラム部品の書き込み可能領域に書き込むこと
について記載も示唆もない。

エ.願書に最初に添付した明細書の段落【0054】には「実施の形態1及び2を組み合わせることにより、呼び出し元プログラム部品の呼び出し先アドレスの書き換えと、プログラム部品のRAM13への書き込みを同時に行い、プログラム部品が動的にRAM13へ書き込まれ、かつRAM13へ書き込まれるごとに呼び出しアドレスが変化するようにしてもよい。これにより、より実行するプログラムの安全性を高めることが可能となる。」との記載がある。
しかしながら、実施の形態1(段落【0030】?【0050】,図1?図5)及び実施の形態2(段落【0051】?【0053】,図6)を併せて参照しても、
・あらかじめ無効なプログラム部品を配置してある記憶手段のプログラム部品の書き込み可能領域へ分岐する条件分岐の条件であって、
・上記条件分岐の条件を、あらかじめ無効なプログラム部品を配置してある記憶手段のプログラム部品の書き込み可能領域に書き込むこと
について記載も示唆もない。

オ.願書に最初に添付した明細書の段落【0055】?【0057】には、実施の形態3として、「実行するプログラムを事前に分割してRAM13へ書き込む場合」の「情報処理装置1で実行するプログラムのプログラム部品への分割」(段落【0055】)の態様が記載されている。
しかしながら、当該箇所及び関連する図面(図7?図8)には、
・あらかじめ無効なプログラム部品を配置してある記憶手段のプログラム部品の書き込み可能領域へ分岐する条件分岐の条件であって、
・上記条件分岐の条件を、あらかじめ無効なプログラム部品を配置してある記憶手段のプログラム部品の書き込み可能領域に書き込むこと
について記載も示唆もない。

カ.願書に最初に添付した明細書の段落【0058】?【0062】には、プログラムの実行開始時の動作の説明図(図9)及びフローチャート(図10)に関する説明が記載されている。
しかしながら、当該箇所及び関連する図面(図9?図10)には、
・あらかじめ無効なプログラム部品を配置してある記憶手段のプログラム部品の書き込み可能領域へ分岐する条件分岐の条件であって、
・上記条件分岐の条件を、あらかじめ無効なプログラム部品を配置してある記憶手段のプログラム部品の書き込み可能領域に書き込むこと
について記載も示唆もない。

キ.願書に最初に添付した明細書の段落【0063】?【0068】には、以下の記載がある。
「 【0063】
セキュアモジュール20が行う特殊コード呼び出し処理は、セキュアモジュール20が動作タイミングを制御する部分のプログラムコード呼び出し処理である。図11及び図12は、セキュアモジュール20が行う特殊コード呼び出し処理の説明図である。…(中略)…
【0064】
セキュアモジュール20は、特殊コード呼び出し部80をRAM13へ書き込み、特殊コード呼び出し部80をプログラム部品41から呼び出すようリンクする。特殊コード呼び出し部80は、セキュアモジュール20で自動生成してもよいし、プログラム部品としてセキュア化プログラムデータ30に含めておいてもよい。
【0065】
RAM13へ書き込んだ特殊コード呼び出し部80は、条件分岐から参照されるデータ、条件分岐コード及び特殊コードを呼び出す部分からなる。図12(a)には、特殊コード呼び出し部80がアドレス13845fa0hに書き込まれる例が示されている。その先頭には条件分岐で参照されるデータが埋め込まれている。
【0066】
通常、先頭に埋め込まれる条件分岐で参照される値は0である。特殊コードの実行条件を具備しない間は0のままである。図12(a)の条件分岐では、アドレス13845fa0hに記憶された値が0である場合、即座にリターンするようにしておく。これにより、プログラム部品41から特殊コード呼び出し部80が呼び出された場合であっても、特殊コードの実行条件を具備しない場合は即座にリターンすることができる。
【0067】
条件分岐で参照される値が0でない場合は、続くプログラムコードが実行される。続くプログラムコードは、分岐条件で参照される値に0を設定するコードと、プログラムの実行領域100を呼び出すコードから構成される。プログラム実行開始時の初期書き込み時には、プログラムの実行領域100には無効なプログラムデータが書き込まれている。
【0068】
プログラムの実行中に、特殊コードの実行条件を具備した場合、セキュアモジュール20は、実行領域100に、実行条件を具備した特殊コードを書き込む。図12(b)の例では、特殊コードは「コンテンツ鍵変更時に実行」されるというコードであることから、セキュアモジュール20は、コンテンツ鍵の変更直前に実行領域100へプログラム部品45を書き込む。プログラム部品45を書き込んだ後、アドレス13845fa0hの条件分岐から参照されるデータを書き換える。書き換えることにより、特殊コードの実行条件を具備した状態となる。特殊コードの実行条件を具備した状態で、特殊コード呼び出し部80が実行されると、即座にリターンすることなく、条件分岐で参照される値に0を設定するコードと、プログラム部品45を呼び出すコードが実行される。」

この記載によれば、プログラム部品41に含まれる特殊コード呼び出し部80は、条件分岐から参照されるデータ、条件分岐コード及び特殊コードを呼び出す部分からなり、プログラム実行開始時の初期書き込み時にプログラムの実行領域100に書き込まれた無効なプログラムデータの箇所に、プログラム部品45を書き込んだ後、プログラム部品41に含まれる特殊コード呼び出し部80にてアドレス13845fa0hの条件分岐(「if (Val[13845fe0h: == 0) return; 」)から参照されるデータを書き換え、特殊コードの実行条件を具備した状態となり、特殊コードの実行条件を具備した状態で、特殊コード呼び出し部80が実行されると、即座にリターンすることなく、条件分岐で参照される値に0を設定するコードと、プログラム部品45を呼び出すコードが実行される事項が記載されている。
しかしながら、上記態様は、アドレス13845fa0hの条件分岐が、あらかじめ無効なプログラム部品を配置してある記憶手段のプログラム部品の書き込み可能領域であるプログラムの実行領域100に書き込まれるものではない。
したがって、当該箇所及び関連する図面(図11?図12)には、
・あらかじめ無効なプログラム部品を配置してある記憶手段のプログラム部品の書き込み可能領域へ分岐する条件分岐の条件であって、
・上記条件分岐の条件を、あらかじめ無効なプログラム部品を配置してある記憶手段のプログラム部品の書き込み可能領域に書き込むこと
について記載も示唆もない。

ク.願書に最初に添付した明細書の段落【0069】?【0075】には、以下の記載がある。
「【0069】
次にセキュアモジュール20が実行するプログラムリンク処理について述べる…(中略)…
【0070】
図13の例では、プログラム部品41に対応する部品リンク情報412から、プログラム部品41はプログラム部品42とプログラム部品43の呼び出しを含んでいることがわかる。それぞれの書込情報420、430を参照すると、プログラム部品42は実行時までRAM13に書き込まず、プログラム部品43は開始時にRAM13に書き込まれるように記述されている。プログラム部品43は常にRAM13に書き込まれるコードであることから、プログラム部品41の実行開始時に、プログラム部品41からプログラム部品43の呼び出しは実行される。
【0071】
図14(a)では、プログラム部品43は、RAM13のアドレス13900000hの領域に書き込まれている。そこで、プログラム部品41のオフセット320hにあるプログラム部品43の呼び出しコマンドには、プログラム部品43のアドレスを設定する。本実施例では、プログラム部品43のオフセット30hを呼び出しているので、プログラム部品41には、13900030hを呼び出すよう呼び出しコマンドの呼び出し先アドレスを設定しておく。
【0072】
一方、プログラム部品42は、プログラム部品41の実行開始時にRAM13に書き込まれていないので、プログラム部品42の実行依頼コードをRAM13へ書き込んでおき、プログラム部品41からは実行依頼コードを呼び出すようにしておく。実行依頼コードは、例えばセキュアモジュール20のレジスタアドレスへの書き込みプログラムにより実現される。
【0073】
実行依頼コードの末尾には、例外処理を発生するコードと、キャッシュフラッシュ命令と、プログラム部品42本体の呼び出しコードとが含まれる。本実施例では例外処理を発生するコードとしてint 3命令を使用しているが、これ以外の例外処理、例えばメモリアクセス違反を起こすようなコードを使用してもよい。また、プログラム部品42の書き込まれるアドレスが一定ではないようにしており、呼び出しアドレスには無効な値を記憶している。さらに、キャッシュフラッシュ命令を用いてキャッシュを一旦クリアし、セキュアモジュール20が設定した呼び出しアドレスが確実に呼び出されるようにしている。キャッシュフラッシュ命令はアーキテクチャに依存するものであることから、アーキテクチャによっては使用できない。
【0074】
プログラムの実行が開始される場合、図14(b)に示すように、プログラム部品41が実行され、プログラム部品42の実行依頼コードが実行されると、PCからセキュアモジュール20に、プログラム部品42のRAM13への書き込みが要求される。そして、プログラムは、次の例外処理発生コード(int 3)を実行し、割り込みハンドラが起動される。割り込みハンドラは、セキュアモジュール20からのプログラム書き込み完了割り込み処理が発生するまで待機し、割り込み処理の発生後、続きのコードを実行するようにしておく。実行依頼を受けたセキュアモジュール20は、プログラム部品42をRAM13へ書き込むと共に、呼び出し元の呼び出し先アドレスを設定する。…」

この記載によれば、プログラム部品41からプログラム部品43を呼び出すようにされており、さらに、プログラム部品41はRAM13に書き込まれた実行依頼コードを呼び出し、プログラム部品42のRAM13への書き込みが要求され、割り込みハンドラが起動されてセキュアモジュール20からのプログラム書き込み完了割り込み処理が発生するまで待機して、割り込み処理の発生後に続きのコードを実行することが記載されている。
さらに、実行依頼を受けたセキュアモジュール20は、プログラム部品42をRAM13に書き込むと共に、呼び出し元の呼び出し先アドレスを設定している。
しかしながら、当該箇所及び関連する図面(図13?図14)には、
・あらかじめ無効なプログラム部品を配置してある記憶手段のプログラム部品の書き込み可能領域へ分岐する条件分岐の条件であって、
・上記条件分岐の条件を、あらかじめ無効なプログラム部品を配置してある記憶手段のプログラム部品の書き込み可能領域に書き込むこと
について記載も示唆もない。

(2.3)小括
以上のように、発明の詳細な説明には、発明特定事項Aについて記載も示唆もない。
したがって、本件補正は、特許法第17条の2第3項(新規事項)の規定に適合していない。

なお、審判請求人は、平成23年6月21日付回答書の2.(1)において、
「 ・条件分岐の位置をセキュアモジュール側が把握して、条件分岐の条件を書き換えるように構成しているので、セキュアモジュールが自由にプログラムを配置可能である無効領域を用意しておき、セキュアモジュールがCPUと独立してプログラムの配置位置と配置タイミングとを決めることができる。」と主張している。
しかしながら、前記主張する構成は願書に添付した特許請求の範囲、明細書及び図面に記載も示唆もないから、当該主張は採用できない。

(3)本件補正についてのむすび
したがって、本件補正は、平成18年法律第55号改正附則第3条第1項によりなお従前の例によるとされる同法による改正前の特許法第17条の2第3項の規定に違反するので、同法第159条第1項において読み替えて準用する同法第53条第1項の規定により却下すべきものである。

よって、上記補正却下の決定の結論のとおり決定する。

3.本願請求項1に係る発明について
(1)平成22年8月20日付の手続補正は上記のとおり却下されたので、本願請求項1に係る発明(以下「本願発明」という。)は、平成21年12月24日付の手続補正書により補正された特許請求の範囲の請求項1に記載されたとおりの次に再掲する事項により特定されるものである。

記憶手段と、
該記憶手段に書き込まれたプログラムを実行するCPUと、
セキュアモジュールと、
を有する情報処理装置において、
前記セキュアモジュールは、
実行可能な複数のプログラム部品を含むプログラムを暗号化した暗号化プログラムを受け取る手段と、
受け取った暗号化プログラムから、相互に異なる部分を有する複数の復号されたプログラム部品を生成する手段と、
前記CPUによるプログラム部品の実行を開始すべき時期を契機として、該実行の対象となる生成されたプログラム部品を前記記憶手段に書き込む手段と、
該記憶手段に書き込んだプログラム部品を、前記CPUが当該プログラム部品を実行した後に、前記記憶手段から削除する手段と、
を備えることを特徴とする情報処理装置。

(2)引用刊行物の発明
(2.1)原審の拒絶の理由に引用された、本願出願前に頒布された刊行物である特開平4-3224号公報(「引用文献1」という。)には、図面とともに次の事項が記載されている。(下線は、参考のため当審で付与した。)

ア.「ソフトモジュール側は、ソフトを起動できるものを限定できないという弱点があり、FDや端末装置にアクセスできるものであれば、誰でも、ロードモジュール(ソースプログラムから、端末装置で実行可能な形式に生成したソフトモジュールであり、端末装置は、このロードモジュールを主記憶装置に格納して実行する)をコピーし、起動することが容易であり、悪用される恐れがあった。
本発明の目的は、これら従来技術の課題を解決し、ICカードを用いて、ソフトモジュールの暗号化、および、復号化を行ない、ソフトモジュールを正常に起動できる者を、ICカードを所持する者に限定し、ソフトモジュールの不正コピーや盗難などに伴う悪用に対処することを可能とするICカードによるソフトモジュール管理方法を提供することである。」(2頁左下13行?右下9行)

イ.『第1図は、本発明を施した電子計算機システムの本発明に係る処理の一実施例の概要を示す説明図である。
任意のロードモジュールを格納するデータ記録部1を有し、このデータ記録部1に格納したロードモジュールに基づき、種々の情報の処理を行なう電子計算機2、電子計算機2のデータ記録部1に格納され、電子計算機2で実行される正当なプログラムが書かれている元ロードモジュール(図中LMと記載)3、元ロードモジュール3の暗号化と復号化を行なうIC部41を内蔵するICカード4、そして、ICカード4により、元ロードモジュール3の一部を暗号化して作成した暗号化ロードモジュール(図中LM’と記載)5から構成されている。
尚、元ロードモジュール3は、部分モジュール「S」31、部分モジュール「A」32、部分モジュール「L」33の三つの部分から構成され、そして、暗号化ロードモジュール5は、元ロードモジュール3の部分モジュール「A」32を、ICカード4を用いて暗号化した部分モジュール「A’」52と、部分モジュール「S」31、および、部分モジュール「L」33から構成されている。
本実施例においては、元ロードモジュール3の一部を、秘密の個別鍵を持つICカード4で暗号化し、暗号化ロードモジュール5として電子計算機2のデータ記録部1に格納する。そして、起動時には、暗号化した暗号化ロードモジュール5を、暗号化に用いた同じ個別鍵を持つ唯一のICカード4で復号化して、元ロードモジュール3に戻し、正常に起動させるまでの処理を示している。』(3頁右上4行?左下14行)

ウ.『この暗号化ロードモジュール5を、電子計算機2のデータ記録部1に格納すれば、たとえ不正コピーされたり、盗まれたりしても、その暗号文を復号する個別鍵を有する唯一のICカード4がない限り、正常には起動出来ない。
…(中略)…
次に、暗号化ロードモジュール5の復号化に関して説明する。
第1図(b)は、暗号化ロードモジュール5の復号化に係る処理の概要を示す説明図である。
暗号化された部分モジュール「A’」52を含む暗号化ロードモジュール5は、そのままでは、正常に起動させることが出来ない。これを正常に起動させるためには、部分モジュール「A’」52を生成した時と同じ個別鍵を持つ唯一のICカード4を用いて復号化する。
すなわち、暗号化ロードモジュール5を起動して、処理が、部分モジュール「S」31から、部分モジュール「A’」52に移ったときに、部分モジュール「A’」52をICカード4に渡して、…(中略)…復号化する。つまり、部分モジュール「A’」52から、部分モジュール「A」32へ復号化し、暗号化ロードモジュール5を元ロードモジュール3に戻す。
…(中略)…
この処理が終了すると、次の処理、すなわち、部分モジュール「L」33の処理へと進み、元ロードモジュール3として、正常に動作させる。
このようにして、起動時には、暗号化した暗号化ロードモジュール5を、暗号化に用いた同じ個別鍵を持つ唯一のICカード4により、元ロードモジュール3に戻すことにより、ICカード4を所有する正当な利用者は、元ロードモジュール3による処理を行なうことができる。
尚、第1図の実施例においては、ICカード4のデータの暗号・復号化機能を用いて、元ロードモジュール3の一部を、ICカード4により暗号化・復号化しているが、元ロードモジュール3の全てを暗号化・復号化しても良い。』(4頁左上8行?左下11行)

エ.『第3図は、第1図における電子計算機システムの本発明に係る復号化の処理動作を示すフローチャートである。
…(中略)…
まず、第1図における電子計算機2のデータ記憶部1に格納してある暗号化ロードモジュール5を読み込み(ステップ301)、実行する(ステップ302)。
実行中に(ステップ303)、実行部分が暗号化した部分、すなわち、第1図の部分モジュール「A’」52になれば(ステップ304)、その部分モジュール「A’」52を第1図のICカード4に送り(ステップ305)、そのICカード4のIC部41で復号化を行なう(ステップ306)。
このICカードが正当なものであり、復号化が正常に行なわれれば(ステップ307)、ステップ302に戻り、次の処理を実行する。
第1図の暗号化ロードモジュール5の復号化、および、実行を、全て完了すれば(ステップ303)、処理を終了する。』(5頁右上3行?左下6行)

オ.第1図(b)には、データ記憶部1に格納された暗号化されたロードモジュール5(LM’)のうち、暗号化された部分モジュール「A’」52をICカード41にて部分モジュール「A」32に復号化し、部分モジュール「A」を、「A’」が配置されていた箇所に配置する事項が記載されていると認める。

a.イ.の「第1図は、本発明を施した電子計算機システムの本発明に係る処理の一実施例の概要を示す説明図である。任意のロードモジュールを格納するデータ記録部1を有し、このデータ記録部1に格納したロードモジュールに基づき、種々の情報の処理を行なう電子計算機2、電子計算機2のデータ記録部1に格納され…(中略)…元ロードモジュール3の暗号化と復号化を行なうIC部41を内蔵するICカード4…(中略)…から構成されている。」との記載によれば、引用文献1には、データ記録部1を備えた電子計算機2とICカード4を含む電子計算機システム3が記載されている。また、電子計算機2は、ロードモジュールに基づき、種々の情報の処理を行うものである。
したがって、引用文献1には、データ記録部と、該データ記録部に格納されたロードモジュールに基づく情報の処理を行う電子計算機と、ICカードと、を有する電子計算機システムが記載されている。
b.ウ.の『暗号化ロードモジュール5を起動して、処理が、部分モジュール「S」31から、部分モジュール「A’」52に移ったときに、部分モジュール「A’」52をICカード4に渡して、…(中略)…復号化する』、及び、エ.の『実行中に(ステップ303)、実行部分が暗号化した部分、すなわち、第1図の部分モジュール「A’」52になれば(ステップ304)、その部分モジュール「A’」52を第1図のICカード4に送り(ステップ305)』との記載によれば、ICカードは暗号化された部分モジュール「A’」を渡されていることから、引用文献1には、ICカードは、渡された部分モジュール「A’」を受け取る手段を備える点が記載されている。
そして、イ.の『元ロードモジュール3は、部分モジュール「S」31、部分モジュール「A」32、部分モジュール「L」33の三つの部分から構成され、そして、暗号化ロードモジュール5は、元ロードモジュール3の部分モジュール「A」32を、ICカード4を用いて暗号化した部分モジュール「A’」52と、部分モジュール「S」31、および、部分モジュール「L」33から構成されている。』との記載において、ウ.の「元ロードモジュール3の一部を、ICカード4により暗号化・復号化しているが、元ロードモジュール3の全てを暗号化・復号化しても良い」との記載を考慮すれば、元モジュール3を構成する部分モジュール「S」、部分モジュール「A」、部分モジュール「L」をすべて暗号化しても良いので、引用文献1には、元ロードモジュールを構成する部分モジュール「S」と部分モジュール「A」と部分モジュール「L」を各々暗号化した部分モジュール「S’」,「A’」,「L’」と、該暗号化した部分モジュール「S’」,「A’」,「L’」から構成された暗号化ロードモジュールが記載されている。
したがって、ICカードは、渡された部分モジュール「A’」を受け取る手段を備える点、及び、元ロードモジュールを構成する部分モジュール「S」と部分モジュール「A」と部分モジュール「L」を各々暗号化した部分モジュール「S’」,「A’」,「L’」と、該暗号化した部分モジュール「S’」,「A’」,「L’」から構成された暗号化ロードモジュールが引用文献1に記載されているので、これらを総合すると、引用文献1には、ICカードは、元ロードモジュールを構成する部分モジュール「S」と部分モジュール「A」と部分モジュール「L」を各々暗号化した部分モジュール「S’」,「A’」,「L’」から構成される暗号化ロードモジュールを受け取る手段が記載されている。
c.ウ.の『部分モジュール「A’」52から、部分モジュール「A」32へ復号化し』との記載、エ.の『その部分モジュール「A’」52を第1図のICカード4に送り(ステップ305)、そのICカード4のIC部41で復号化を行なう(ステップ306)』との記載、及び、b.で検討したように、元ロードモジュール3の全てを暗号化・復号化しても良いので、引用文献1には、ICカードは、受け取った暗号化ロードモジュールを構成する部分モジュール「S’」,「A’」,「L’」から、部分モジュール「S」と部分モジュール「A」と部分モジュール「L」へ復号化する手段が記載されている。
d.ウ.の『暗号化ロードモジュール5を起動して、処理が、部分モジュール「S」31から、部分モジュール「A’」52に移ったときに、部分モジュール「A’」52をICカード4に渡して、…(中略)…復号化する。つまり、部分モジュール「A’」52から、部分モジュール「A」32へ復号化し、暗号化ロードモジュール5を元ロードモジュール3に戻す』との記載、及びオ.の『データ記憶部1に格納された暗号化されたロードモジュール5(LM’)のうち、暗号化された部分モジュール「A’」52をICカード41にて部分モジュール「A」32に復号化し、部分モジュール「A」は、「A’」が配置されていた箇所に配置する』事項から、部分モジュール「A」は暗号化された部分モジュールであるから、引用文献1には、暗号化モジュールを起動して、処理が、部分モジュール「S」から、暗号化された部分モジュール「A’」に移ったときに、部分モジュール「A’」から部分モジュール「A」へ復号化し、復号化された部分モジュール「A」を暗号化された部分モジュール「A’」が配置されていた箇所に配置する手段が記載されている。
さらに、b.で検討したように元ロードモジュール3の全てを暗号化・復号化しても良いので、上述した、部分モジュール「S」は、暗号化された部分モジュール「S’」を復号化した部分モジュール「S」であって良く、これらを総合すると、引用文献1には、暗号化ロードモジュールを起動して、処理が、部分モジュール「S’」を復号化した部分モジュール「S」から、暗号化された部分モジュール「A’」に移ったときに、部分モジュール「A’」から部分モジュール「A」へ復号化し、復号化された部分モジュール「A」を暗号化された部分モジュール「A’」が配置されていた箇所に配置する手段が記載されている。
e.アの「誰でも、ロードモジュール…(中略)…をコピーし、起動することが容易であり、悪用される恐れがあった。本発明の目的は、これら従来技術の課題を解決し、ICカードを用いて、ソフトモジュールの暗号化、および、復号化を行ない、…(中略)…ソフトモジュールの不正コピーや盗難などに伴う悪用に対処することを可能とする」との記載から、引用文献1には、ロードモジュールの不正コピーや盗難などに伴う悪用に対処するという解決しようとする課題が記載されている。

a.?e.をふまえると、引用文献1には、次の発明(以下「引用文献1発明」という。)が示されている。

データ記録部と、
該データ記録部に格納されたロードモジュールに基づく情報の処理を行う電子計算機と、
ICカードと、
を有する電子計算機システムにおいて、
前記ICカードは、
元ロードモジュールを構成する部分モジュール「S」と部分モジュール「A」と部分モジュール「L」を各々暗号化した部分モジュール「S’」,「A’」,「L’」から構成される暗号化ロードモジュールを受け取る手段と、
受け取った暗号化ロードモジュールを構成する部分モジュール「S’」,「A’」,「L’」から、部分モジュール「S」と部分モジュール「A」と部分モジュール「L」へ復号化する手段と、
暗号化ロードモジュールを起動して、処理が、部分モジュール「S’」を復号化した部分モジュール「S」から、暗号化された部分モジュール「A’」に移ったときに、部分モジュール「A’」から部分モジュール「A」へ復号化し、復号化された部分モジュール「A」を暗号化された部分モジュール「A’」が配置されていた箇所に配置する手段と、
を備える、ロードモジュールの不正コピーや盗難などに伴う悪用に対処する電子計算機システム。

(2.2)原審の拒絶の理由に引用された、本願出願前に頒布された刊行物である特開2003-208406号公報(「引用文献2」という。)には、図面とともに次の事項が記載されている。
「【0025】…(中略)…図2は、ICカードを用いた認証システムの概略構成を示す図である。ユーザが使用するパーソナルコンピュータ(PC)110は、インターネットなどのネットワーク120を介してセンタ130と繋がっている。…(中略)…センタ130は、PC110からの要求に応じて、カプセル化されたソフトウェア(以下、単に「カプセル」という)300を提供する。ここでいうカプセル化とは、例えばDES(Data Encryption Standard)等の暗号アルゴリズムを用いて暗号化し、そのままでは使用できないようにすることを指す。」

「【0028】図3は、カプセルの例を示す図である。カプセル300は、ヘッダ部310と暗号化されたソフトウェア320とで構成される。…」

「【0051】[S8]復号鍵復号部203は、暗号化された復号鍵315を、PROM250に保持されている秘密情報252を用いて復号し、PC110に返信する。
[S9]復号鍵を受け取ったPC110は、カプセル起動プログラム311の指令に基づき、暗号化されたソフトウェア320を復号し、そのソフトウェアを実行する。この時、ソフトウェア320は完全に復号されるわけではなく、実行する部分のみが復号されて揮発性メモリに展開されるようにしておき、ソフトウェアが終了されると復号され揮発性メモリに展開されたソフトウェアは消去するようにしておけば、復号されたソフトウェアが不正に使用されることはない。」

したがって、引用文献2には、暗号化されたソフトウェアについて、実行する部分のみが復号されて揮発性メモリに展開されるようにしておき、ソフトウェアが終了されると復号され揮発性メモリに展開されたソフトウェアは消去するようにしておくことにより、復号されたソフトウェアが不正に使用されないようにする技術(以下「引用文献2記載の技術」という。)が示されている。

(3)対比
本願発明と引用文献1発明とを対比する。
ア.引用文献1発明の「データ記録部」、「ICカード」、「ロードモジュール」、「部分モジュール」、「暗号化ロードモジュール」、「電子計算機システム」は、それぞれ、本願発明の「記憶手段」、「セキュアモジュール」、「プログラム」、「プログラム部品」、「暗号化プログラム」、「情報処理装置」に相当する。
イ.引用文献1発明において、「ロードモジュールに基づく情報の処理」することは、本願発明の「プログラムを実行」することに相当する。
したがって、引用文献1発明の「該データ記録部に格納されたロードモジュールに基づく情報の処理を行う電子計算機」と本願発明の「該記憶手段に書き込まれたプログラムを実行するCPU」とは、プログラム部品を実行する主体が電子計算機とCPUとで異なるものの、両者は「該記憶手段に書き込まれたプログラムを実行する手段」を備える点で共通する。
ウ.引用文献1発明の『元ロードモジュールを構成する部分モジュール「S」と部分モジュール「A」と部分モジュール「L」を各々暗号化した部分モジュール「S’」,「A’」,「L’」から構成される暗号化ロードモジュールを受け取る手段』において、複数の部分モジュール「S」,「A」,「L」は、電子計算機によって実行可能なものであることは明らかであるから本願発明の「実行可能な複数のプログラム部品」に相当し、部分モジュール「S」,「A」,「L」から構成される「元モジュール」は、本願発明の「実行可能な複数のプログラム部品を含むプログラム」に相当し、部分モジュール「S」,「A」,「L」を各々暗号化した部分モジュール「S’」,「A’」,「L’」から構成される「暗号化ロードモジュール」は、本願発明の「暗号プログラム」に相当する。
したがって、引用文献1発明の『元ロードモジュールを構成する部分モジュール「S」と部分モジュール「A」と部分モジュール「L」を各々暗号化した部分モジュール「S’」,「A’」,「L’」から構成される暗号化ロードモジュールを受け取る手段』は、本願発明の「実行可能な複数のプログラム部品を含むプログラムを暗号化した暗号化プログラムを受け取る手段」に相当する。
エ.引用文献1発明の『受け取った暗号化ロードモジュールを構成する部分モジュール「S’」,「A’」,「L’」から、部分モジュール「S」と部分モジュール「A」と部分モジュール「L」へ復号化する手段』において、複数の部分モジュールへ復号化した結果得られた部分モジュール「S」,「A」,「L」は、各々ロードモジュールの機能の一部を構成し、順に実行することでロードモジュールの機能を実現するものであって、相互に異なる部分モジュールであるので互いに異なる機能を有する部分モジュールであることは明らかであるから、相互に異なる部分を有する複数の復号された部分モジュールに当たる。さらに、暗号化された部分モジュールから部分モジュールへ復号化することは、暗号化された部分モジュールから部分モジュールを生成することに当たる。
したがって、引用文献1発明の「受け取った前記暗号化ロードモジュールから、前記複数の部分モジュールへ復号化する手段」は、本願発明の「受け取った暗号化プログラムから、相互に異なる部分を有する複数の復号されたプログラム部品を生成する手段」に相当する。
オ.引用文献1発明の『暗号化ロードモジュールを起動して、処理が、部分モジュール「S’」を復号化した部分モジュール「S」から、暗号化された部分モジュール「A’」に移ったときに、部分モジュール「A’」から部分モジュール「A」へ復号化し、復号化された部分モジュール「A」を暗号化された部分モジュール「A’」が配置されていた箇所に配置する手段』のうち、「処理が」、「暗号化された部分モジュール「A’」に移ったとき」は、部分モジュール「A」の実行を開始すべき時期といえるので、ア.で前述したとおり引用文献1発明の「部分モジュール」が本願発明の「プログラム部品」に相当することを考慮すれば、本願発明の「プログラム部品の実行を開始すべき時期を契機として」に相当する。
また、『復号化された部分モジュール「A」を暗号化された部分モジュール「A’」が配置されていた箇所に配置する』における『復号化された部分モジュール「A」』は本願発明の「実行の対象となる生成されたプログラム部品」に相当し、よって、『復号化された部分モジュール「A」を暗号化された部分モジュール「A’」が配置されていた箇所に配置する』ことは、本願発明の「実行の対象となる生成されたプログラム部品を前記記憶手段に書き込む」ことに相当する。よって、引用文献1発明の『復号化された部分モジュール「A」を暗号化された部分モジュール「A’」が配置されていた箇所に配置する』は、本願発明の「該実行の対象となる生成されたプログラム部品を前記記憶手段に書き込む手段」に相当する。
したがって、引用文献1発明の『処理が、暗号化された部分モジュール「A’」に移ったときに、部分モジュール「A’」から部分モジュール「A」へ復号化し、復号化された部分モジュール「A」を暗号化された部分モジュール「A’」が配置されていた箇所に配置する手段』と、本願発明の「前記CPUによるプログラム部品の実行を開始すべき時期を契機として、該実行の対象となる生成されたプログラム部品を前記記憶手段に書き込む手段」とは、ともに、プログラム部品の実行を開始すべき時期を契機として、該実行の対象となる生成されたプログラム部品を前記記憶手段に書き込む手段である点で共通する。

以上の対比によれば、本願発明と引用文献1発明とは、次の事項を備える発明である点で一致し、そして、次の点で相違する。

[一致点]
記憶手段と、
該記憶手段に書き込まれたプログラムを実行する手段と、
セキュアモジュールと、
を有する情報処理装置において、
前記セキュアモジュールは、
実行可能な複数のプログラム部品を含むプログラムを暗号化した暗号化プログラムを受け取る手段と、
受け取った暗号化プログラムから、相互に異なる部分を有する複数の復号されたプログラム部品を生成する手段と、
プログラム部品の実行を開始すべき時期を契機として、該実行の対象となる生成されたプログラム部品を前記記憶手段に書き込む手段と、
を備えることを特徴とする情報処理装置。

[相違点1]
本願発明は、CPUが記憶手段に書き込まれたプログラムを実行するものであって、前記CPUによるプログラム部品の実行を開始すべき時期を、実行の対象となる生成されたプログラム部品を前記記憶手段に書き込む契機としているのに対し、引用文献1発明では、CPUではなく電子計算機がプログラムを実行している点。

[相違点2]
本願発明は「記憶手段に書き込んだプログラム部品を、前記CPUが当該プログラム部品を実行した後に、前記記憶手段から削除する手段」を有するのに対し、引用文献1には、記憶手段に書き込んだプログラム部品を、前記CPUが当該プログラム部品を実行した後に当該プログラム部品を削除する点について記載がない点。

(4)当審判断
(4.1)[相違点1]について
電子計算機がCPUを備え、備えられたCPUにプログラムを実行させることは、当業者にとって常識であり、当該常識に基づいて、本願発明の「該記憶手段に書き込まれたプログラムを実行するCPU」を備えること、及び「前記CPUによるプログラム部品の実行を開始すべき時期を契機として、該実行の対象となる生成されたプログラム部品を前記記憶手段に書き込む」ようにすることは、当業者が適宜なし得る程度の事項にすぎない。

(4.2)[相違点2]について
暗号化されたソフトウェアについて、実行する部分のみが復号されて揮発性メモリに展開されるようにしておき、ソフトウェアが終了されると復号され揮発性メモリに展開されたソフトウェアは消去するようにしておくことにより、復号されたソフトウェアが不正に使用されないようにする技術は、(2.2)における引用文献2記載の技術について検討したとおり、引用文献2に記載されているような本願出願前に知られた技術である。
そして、ロードモジュールの不正コピーや盗難などに伴う悪用に対処することを目的とした電子計算機システムに関する引用文献1発明と、暗号化されたソフトウェアについて復号化されたソフトウェアが不正に使用されないようにする電子計算機システムに関する引用文献2に記載の技術は、ともにソフトウェアが不正に使用されないようにする点で、技術的に共通の分野に属するといえる。
したがって、引用文献1発明において、復号化された部分モジュールに基づく情報の処理が完了した時に、引用文献2に記載されている、復号化されたソフトウェアが不正に使用されないようにするために、ソフトウェアが終了されると復号され揮発性メモリに展開されたソフトウェアは消去する技術を採用し、本願発明のように「記憶手段に書き込んだプログラム部品を、前記CPUが当該プログラム部品を実行した後に、前記記憶手段から削除する手段」を設けて、プログラム実行後のソフトウェアの不正使用を防止するようにすることは、当業者が容易に想到し得る程度のものである。

(4.3)そして、本願発明により奏する効果も、引用文献1及び引用文献2の記載事項から当業者が当然予測できる範囲内のものにすぎない。

(5)本願発明についてのむすび
以上のとおり、本願請求項1に係る発明は、引用文献1及び引用文献2に記載された発明に基いて、当業者が容易に発明をすることができたものであるから、特許法第29条第2項の規定により特許を受けることができない。
したがって、本願は、その余の請求項について論及するまでもなく、拒絶すべきものである。
よって、結論のとおり審決する。
 
審理終結日 2012-01-27 
結審通知日 2012-01-31 
審決日 2012-02-14 
出願番号 特願2003-372374(P2003-372374)
審決分類 P 1 8・ 561- Z (G06F)
P 1 8・ 121- Z (G06F)
最終処分 不成立  
前審関与審査官 岩崎 志保深沢 正志  
特許庁審判長 赤川 誠一
特許庁審判官 殿川 雅也
石井 茂和
発明の名称 情報処理装置  
代理人 河野 登夫  

プライバシーポリシー   セキュリティーポリシー   運営会社概要   サービスに関しての問い合わせ