JP2004118433A - Operation control method for outside program, operation control program, operation controller, and operation control program providing device - Google Patents

Operation control method for outside program, operation control program, operation controller, and operation control program providing device Download PDF

Info

Publication number
JP2004118433A
JP2004118433A JP2002279395A JP2002279395A JP2004118433A JP 2004118433 A JP2004118433 A JP 2004118433A JP 2002279395 A JP2002279395 A JP 2002279395A JP 2002279395 A JP2002279395 A JP 2002279395A JP 2004118433 A JP2004118433 A JP 2004118433A
Authority
JP
Japan
Prior art keywords
document data
program
external program
data
signature
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.)
Granted
Application number
JP2002279395A
Other languages
Japanese (ja)
Other versions
JP3888273B2 (en
Inventor
Takuya Mori
森  拓也
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2002279395A priority Critical patent/JP3888273B2/en
Publication of JP2004118433A publication Critical patent/JP2004118433A/en
Application granted granted Critical
Publication of JP3888273B2 publication Critical patent/JP3888273B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To prevent the unauthorized use of a Web program on an HTML document or a falsified HTML document unintended by the creator of a Web program. <P>SOLUTION: An HTML signature verifying means verifies HTML signatures for an HTML document, and acquires the authentication information of the preparer of the HTML document. Then, a Web program execution control means decides whether the HTML document is altered on the basis of the verification result of the HTML signatures, and decides whether the HTML document is permitted to execute the Web program on the basis of the authentication information of the creator of the HTML document. When it is found that the HTML document is not falsified and the HTML document is permitted to execute the Web program, the Web program is controlled so as to be operated. In other cases, the Web program is controlled so as not to be operated. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
本発明は、Java(登録商標)アプレットに代表される、HTML文書と同時にWWWサーバからダウンロードされ、WWWブラウザ上で動作するプログラム(以下、「Webプログラム」と称する)が、WWWブラウザが動作するクライアントコンピュータ上に接続されている記憶装置や周辺装置に格納されている情報、及び、クライアントコンピュータやその周辺装置の機能(以下、「クライアントリソース」と称する)へ不正にアクセスすることを防止する方法、プログラム、装置、及び、当該プログラムの提供装置に関する。
【0002】
【従来の技術】
従来、Webプログラムは、クライアントリソースの利用が制限されていたが、一方で近年、Webプログラムによるクライアントリソースに対するアクセスを実現する方式も開発されている(例えば、特許文献1参照)。
【0003】
特許文献1のJava(登録商標)アプレットによる周辺装置の制御方法及び装置、記憶媒体は、図5に示すように、PC端末10と、PC端末10に接続されたR/W装置20と、R/W装置20に接続されたICカード30と、PC端末10にIPネットワークを介して接続されたWWWサーバ40とから構成されている。そして、PC端末10は、WWWブラウザ11と、メモリ制御部12と、OS13と、I/Oポート14とを保持し、WWWブラウザ11は、Java(登録商標)インタプリタ110を、メモリ制御部12は、データ等格納領域120、及び、Java(登録商標)インタプリタ用ライブラリ格納領域121を有している。また、Java(登録商標)インタプリタ用ライブラリ格納領域121は、R/W装置ドライバ122を有している。
【0004】
このような構成を有する従来のJava(登録商標)アプレットによる周辺装置の制御方法及び装置、記憶媒体は、概略次のように動作する。
【0005】
すなわち、Java(登録商標)インタプリタ110が、Java(登録商標)アプレット410を翻訳する際に、ライブラリ呼出コードに従ってライブラリ格納領域121からR/W装置ドライバ122を呼び出し、このR/W装置ドライバ122に従ってI/Oポート14を介してR/W装置20を制御することで、ICカード30のデータ操作を行う。
【0006】
【特許文献1】
特開2000−112864号公報
【0007】
【発明が解決しようとする課題】
しかしながら、上記従来技術を用いて、Webプログラムによるクライアントリソースへのアクセスを実現した場合、次のような問題点があった。
【0008】
第1の問題点は、このWebプログラムを第三者が自身の作成するHTML文書内で参照し埋め込むことにより、そのWebプログラムの作成者が意図していないHTML文書上においてもそのWebプログラムを動作させることでき、結果として、クライアントリソースへの不正なアクセスが可能になる、ということである。一般にWebプログラムは、WWWサーバの記憶領域上に格納されており、任意のHTML文書から参照することができる。従って、第三者が、自身の作成するHTML文書内で、このWebプログラムを参照するとともに、このWebプログラムを自身の作成する別のWebプログラムを用いて操作することにより、クライアントリソースに不正にアクセスすることが可能となり、クライアント計算機上の秘密情報の不正取得を許してしまう危険性がある。上記従来技術では、WWWブラウザ、及び、Webプログラムの実行環境に、Webプログラムを参照し埋め込んでいるHTML文書を認証する手段がなく、任意のHTML文書上でのWebプログラムの動作を許しているからである。
【0009】
この第1の問題点について、図6を参照して詳細に説明する。図6において、WWWサーバ2a上のWebプログラム22aは、正規HTML文書21a内で参照されることにより、クライアントリソース14aに正当にアクセスすることを意図したものであるとする。しかし、第三者WWWサーバ3a上の不正HTML文書31a内でWebプログラム22aを参照することも可能であり、この不正HTML文書31aがクライアントPC1aにダウンロードされると、WWWブラウザ11aは、Webプログラム22aの不正HTML文書31a上での動作を許し、結果として、クライアントリソース14aへの不正なアクセスを許してしまう。例えば、Webプログラム22aが、入力された文書に対し、クライアントリソース14aを利用して電子書名を施し、電子署名の施された文書を出力する機能を提供するものだとすると、第三者が不正HTML文書31aでWebプログラム22aを参照し埋め込むことにより、他人の電子署名を偽造することも可能になるのである。
【0010】
第2の問題点は、WWWサーバにWebプログラムとともに保存されているHTML文書を改竄し、そのWebプログラムを不正操作する別のWebプログラムを埋め込むことにより、クライアントリソースへの不正なアクセスが可能になる、ということである。一般にWebプログラムは、外部の別のプログラムから操作可能な場合が多いため、HTML文書を改竄し、クライアントリソースへのアクセスを行うWebプログラムを操作する別のWebプログラムを埋め込むことにより、Webプログラムを経由してクライアント計算機上の秘密情報を不正に取得することが可能となってしまう。上記従来技術では、WWWブラウザ、及び、Webプログラムの実行環境に、Webプログラムを参照しているHTML文書の改竄を検出する手段、及び、改竄を検出した結果、Webプログラムの動作を停止させる手段がないためである。
【0011】
この第2の問題点について、図7を参照して詳細に説明する。図7において、WWWサーバ2bでは、クライアントリソース14bに正当にアクセスすることを意図する正規HTML文書が第三者に改竄され、改竄されたHTML文書21bが、Webプログラム22bを参照している。このような改竄されたHTML文書21bがクライアントPC1bにダウンロードされると、WWWブラウザ11bは、Webプログラム22bの改竄されたHTML文書21b上での動作を許し、結果として、クライアントリソース14aへの不正なアクセスを許してしまう。
【0012】
本発明は、以上のような従来技術の問題点に鑑みてなされたものであって、その目的は、Webプログラムを経由したクライアント計算機上の秘密情報の流出を防止することができる方法、プログラム、装置、及び、当該プログラムの提供装置を提供することにある。
【0013】
本発明の他の目的は、Webプログラムの作成者が意図していないHTMLページ上でのWebプログラムの不正利用を防止することができる方法、プログラム、装置、及び、当該プログラムの提供装置を提供することにある。
【0014】
本発明のさらに他の目的は、改竄されたHTMLページ上でのWebプログラムの不正利用を防止することができる方法、プログラム、装置、及び、当該プログラムの提供装置を提供することにある。
【0015】
【課題を解決するための手段】
本発明の第1の外部プログラムの動作制御方法は、文書データに対する署名データから当該文書データの作成者を特定するための認証情報を取得する第1のステップと、前記第1のステップで取得した認証情報に基づき、前記文書データが当該文書データで参照する外部プログラムを実行することが許可されているかどうかを判定する第2のステップと、前記第2のステップで前記文書データが前記外部プログラムを実行することが許可されていると判定されなかった場合に、当該外部プログラムが動作しないよう制御する第3のステップとを含んでいる。
【0016】
本発明の第2の外部プログラムの動作制御方法は、文書データに対する署名データを検証する第4のステップと、前記第4のステップでの検証の結果に基づき、前記文書データが改竄されているかどうかを判定する第5のステップと、前記第5のステップで前記文書データが改竄されていると判定された場合に、前記文書データで参照する外部プログラムが動作しないよう制御する第6のステップとを含んでいる。
【0017】
本発明の第3の外部プログラムの動作制御方法は、文書データに対する署名データを検証するとともに、当該署名データから当該文書データの作成者を特定するための認証情報を取得する第7のステップと、前記第7のステップでの検証の結果に基づき、前記文書データが改竄されているかどうかを判定する第8のステップと、前記第8のステップで前記文書データが改竄されていないと判定された場合に、前記第7のステップで取得した認証情報に基づき、前記文書データが当該文書データで参照する外部プログラムを実行することが許可されているかどうかを判定する第9のステップと、前記第9のステップで前記文書データが前記外部プログラムを実行することが許可されていると判定された場合に、当該外部プログラムが動作するよう制御する第10のステップと、前記第8のステップで前記文書データが改竄されていると判定された場合、又は、前記第9のステップで前記文書データが前記外部プログラムを実行することが許可されていると判定されなかった場合に、当該外部プログラムが動作しないよう制御する第11のステップとを含んでいる。
【0018】
本発明の第1の外部プログラムの動作制御プログラムは、文書データに対する署名データから当該文書データの作成者を特定するための認証情報を取得する第1の処理と、前記第1の処理で取得した認証情報に基づき、前記文書データが当該文書データで参照する外部プログラムを実行することが許可されているかどうかを判定する第2の処理と、前記第2の処理で前記文書データが前記外部プログラムを実行することが許可されていると判定されなかった場合に、当該外部プログラムが動作しないよう制御する第3の処理とをコンピュータに実行させるためのものである。
【0019】
本発明の第2の外部プログラムの動作制御プログラムは、文書データに対する署名データを検証する第4の処理と、前記第4の処理での検証の結果に基づき、前記文書データが改竄されているかどうかを判定する第5の処理と、前記第5の処理で前記文書データが改竄されていると判定された場合に、前記文書データで参照する外部プログラムが動作しないよう制御する第6の処理とをコンピュータに実行させるためのものである。
【0020】
本発明の第3の外部プログラムの動作制御プログラムは、文書データに対する署名データを検証するとともに、当該署名データから当該文書データの作成者を特定するための認証情報を取得する第7の処理と、前記第7の処理での検証の結果に基づき、前記文書データが改竄されているかどうかを判定する第8の処理と、前記第8の処理で前記文書データが改竄されていないと判定された場合に、前記第7の処理で取得した認証情報に基づき、前記文書データが当該文書データで参照する外部プログラムを実行することが許可されているかどうかを判定する第9の処理と、前記第9の処理で前記文書データが前記外部プログラムを実行することが許可されていると判定された場合に、当該外部プログラムが動作するよう制御する第10の処理と、前記第8の処理で前記文書データが改竄されていると判定された場合、又は、前記第9の処理で前記文書データが前記外部プログラムを実行することが許可されていると判定されなかった場合に、当該外部プログラムが動作しないよう制御する第11の処理とをコンピュータに実行させるためのものである。
【0021】
本発明の第1の外部プログラムの動作制御装置は、文書データと当該文書データで参照する外部プログラムとをサーバコンピュータから取得するデータ取得手段と、前記データ取得手段により取得した文書データに対する署名データから当該文書データの作成者を特定するための認証情報を取得する署名検証手段と、前記署名検証手段により取得した認証情報に基づき、前記文書データが前記データ取得手段により取得した外部プログラムを実行することが許可されているかどうかを判定し、許可されていると判定されなかった場合に、当該外部プログラムが動作しないよう制御する外部プログラム実行制御手段とを備えている。
【0022】
本発明の第2の外部プログラムの動作制御装置は、文書データと当該文書データで参照する外部プログラムとをサーバコンピュータから取得するデータ取得手段と、前記データ取得手段により取得した文書データに対する署名データを検証する署名検証手段と、前記署名検証手段による検証の結果に基づき、前記文書データが改竄されているかどうかを判定し、改竄されていると判定された場合に、前記データ取得手段により取得した外部プログラムが動作しないよう制御する外部プログラム実行制御手段とを備えている。
【0023】
本発明の第3の外部プログラムの動作制御装置は、文書データと当該文書データで参照する外部プログラムとをサーバコンピュータから取得するデータ取得手段と、前記データ取得手段により取得した文書データに対する署名データを検証するとともに、当該署名データから当該文書データの作成者を特定するための認証情報を取得する署名検証手段と、前記署名検証手段による検証の結果に基づき、前記文書データが改竄されているかどうかを判定し、改竄されていないと判定された場合に、前記署名検証手段により取得した認証情報に基づき、前記データ取得手段により取得した外部プログラムを実行することが許可されているかどうかを判定し、許可されていると判定された場合に、当該外部プログラムが動作するよう制御し、一方、前記文書データが改竄されていると判定された場合、又は、前記文書データが前記外部プログラムを実行することが許可されていると判定されなかった場合に、当該外部プログラムが動作しないよう制御する外部プログラム実行制御手段とを備えている。
【0024】
本発明の第1の外部プログラムの動作制御プログラムの提供装置は、文書データを記憶する第1の記憶手段と、前記文書データで参照する外部プログラムを記憶する第2の記憶手段と、前記文書データに対する署名データから当該文書データの作成者を特定するための認証情報を取得する機能を実現する署名検証プログラムを記憶する第3の記憶手段と、前記署名検証プログラムが実現する機能により取得される認証情報に基づき、前記文書データが前記外部プログラムを実行することが許可されているかどうかを判定し、許可されていると判定されなかった場合に、当該外部プログラムが動作しないよう制御する機能を実現する外部プログラム実行制御プログラムを記憶する第4の記憶手段とを備え、クライアントコンピュータからの前記文書データの取得要求に応じて、前記文書データに加え、前記外部プログラム、前記署名検証プログラム、及び、前記外部プログラム実行制御プログラムを当該クライアントコンピュータに提供することを特徴とする。
【0025】
本発明の第2の外部プログラムの動作制御プログラムの提供装置は、文書データを記憶する第5の記憶手段と、前記文書データで参照する外部プログラムを記憶する第6の記憶手段と、前記文書データに対する署名データを検証する機能を実現する署名検証プログラムを記憶する第7の記憶手段と、前記署名検証プログラムが実現する機能による検証の結果に基づき、前記文書データが改竄されているかどうかを判定し、改竄されていると判定された場合に、前記外部プログラムが動作しないよう制御する機能を実現する外部プログラム実行制御プログラムを記憶する第8の記憶手段とを備え、クライアントコンピュータからの前記文書データの取得要求に応じて、前記文書データに加え、前記外部プログラム、前記署名検証プログラム、及び、前記外部プログラム実行制御プログラムを当該クライアントコンピュータに提供することを特徴とする。
【0026】
本発明の第3の外部プログラムの動作制御プログラムの提供装置は、文書データを記憶する第9の記憶手段と、前記文書データで参照する外部プログラムを記憶する第10の記憶手段と、前記文書データに対する署名データを検証するとともに、当該署名データから当該文書データの作成者を特定するための認証情報を取得する機能を実現する署名検証プログラムを記憶する第11の記憶手段と、前記署名検証プログラムが実現する機能による検証の結果に基づき、前記文書データが改竄されているかどうかを判定し、改竄されていないと判定された場合に、前記署名検証プログラムが実現する機能により取得される認証情報に基づき、前記文書データが前記外部プログラムを実行することが許可されているかどうかを判定し、許可されていると判定された場合に、当該外部プログラムが動作するよう制御し、一方、前記文書データが改竄されていると判定された場合、又は、前記文書データが前記外部プログラムを実行することが許可されていると判定されなかった場合に、当該外部プログラムが動作しないよう制御する機能を実現する外部プログラム実行制御プログラムを記憶する第12の記憶手段とを備え、クライアントコンピュータからの前記文書データの取得要求に応じて、前記文書データに加え、前記外部プログラム、前記署名検証プログラム、及び、前記外部プログラム実行制御プログラムを当該クライアントコンピュータに提供することを特徴とする。
【0027】
【発明の実施の形態】
次に、本発明の第1の実施の形態について図面を参照して詳細に説明する。
【0028】
図1を参照すると、本発明の第1の実施の形態は、クライアント計算機1と、WWWサーバ2とから構成されている。
【0029】
クライアント計算機1は、WWWブラウザ11と、HTML署名検証手段12と、Webプログラム実行制御手段13とを含む。Webプログラム実行制御手段13は、アクセス制御リスト131を保持する。
【0030】
これらの手段はそれぞれ概略次のように動作する。
【0031】
WWWブラウザ11は、WWWサーバ2からHTML文書21をダウンロードするとともに、HTML文書21中の記述に従い、Webプログラム22をダウンロードする。すなわち、WWWサーバ2から所望のデータを取得する手段として機能する。
【0032】
HTML署名検証手段12は、クライアント計算機1のCPUが補助記憶装置に記憶されたHTML署名検証プログラムを主記憶装置に読み込むことにより実現されるものである。まず、WWWブラウザ11によりダウンロードされたHTML文書21に含まれるHTML署名211を検証し、HTML文書21が改竄されていないことを確認する。さらに、HTML署名211に含まれるHTML文書21の作成者の公開鍵証明書を検証することにより、HTML文書21の作成者を認証する。最後に、HTML文書21の検証結果をWebプログラム実行制御手段13に通知する。
【0033】
Webプログラム実行制御手段13は、クライアント計算機1のCPUが補助記憶装置に記憶されたWebプログラム実行制御プログラムを主記憶装置に読み込むことにより実現されるものである。HTML署名検証手段12から検証成功の結果を受け取った場合、アクセス制御リスト131を参照し、Webプログラム22がHTML文書21上で動作を許可されているかを確認する。許可されていれば、Webプログラム22に対して動作を許可する通知を行い、そうでなければ、Webプログラム22に対して動作を停止させる通知を行う。
【0034】
WWWサーバ2は、HTML文書21と、Webプログラム22とを含み、クライアント計算機の要求により、それらを送出する。HTML文書21は、HTML署名211を保持する。なお、図1は、HTML署名211がHTML文書21上に記述されるようなされるような図になっているが、HTML文書21上にはHTML署名211のURLを記述しておき、HTML署名211は、そのURLで示される記憶領域に記憶するようにしてもよい。
【0035】
次に、図2のフローチャートを参照して本実施の形態の全体の動作について詳細に説明する。
【0036】
クライアント計算機1の利用者の操作に応じて、WWWブラウザ11は、HTML文書をダウンロードする(ステップA1)。この際、WWWブラウザ11は、HTML文書21の記述に従い、Webプログラム22、HTML署名211もダウンロードする。ここで、HTML署名211としては、例えば、特願2002−146410号に記載した方法により作成したものを用いる。すなわち、HTML署名211には、HTML文書21のURL情報と、HTML文書21のダイジェスト値と、Webプログラム22のURL情報と、Webプログラム22のダイジェスト値と、HTML文書21の作成者の公開鍵証明書と、それら全てを含むデータのダイジェスト値をHTML文書21の作成者の秘密鍵で暗号化して得られた電子署名値とが記述される。
【0037】
次に、HTML署名検証手段12は、HTML文書21が改竄されていないかを確認するために、HTML署名211を検証する(ステップA2)。この検証は、HTML署名211として上記のものを用いた場合、以下のように行われる。すなわち、まず、ダウンロードしたHTML文書21のダイジェスト値を計算し、それがHTML署名211中に記述されているHTML文書21のダイジェスト値と同一であることを確認する。次に、ダウンロードしたWebプログラム22のダイジェスト値を計算し、それがHTML署名211中に記述されているWebプログラム22のダイジェスト値と同一であることを確認する。最後に、HTML署名211中に含まれる、HTML文書21のURL情報、HTML文書21のダイジェスト値、Webプログラム22のURL情報、Webプログラム22のダイジェスト値、公開鍵証明書の全てを含むデータのダイジェスト値を計算し、HTML署名211中に含まれる電子署名値を公開鍵証明書に対する公開鍵で復号化して得られた値と等しいかどうかを確認する。
【0038】
また、HTML署名検証手段12は、HTML文書21の作成者を認証するため、公開鍵証明書に対する認証情報を取得する。この認証情報の取得は、HTML署名211として上記のものを用いた場合、HTML署名211中に含まれる公開鍵証明書に基づき、HTML文書21の作成者を特定するための何らかの情報(メールアドレスその他の情報)を取得することにより行う。
【0039】
最後に、HTML署名検証手段12は、検証結果をWebプログラム実行制御手段13へ通知する。すなわち、HTML文書21のダイジェスト値が一致し、かつ、Webプログラム22のダイジェスト値が一致し、かつ、HTML文書21のURL情報、HTML文書21のダイジェスト値、Webプログラム22のURL情報、Webプログラム22のダイジェスト値、公開鍵証明書の全てを含むデータのダイジェスト値が一致した場合、検証成功を通知し、いずれか一つでも一致しなかった場合、検証失敗を通知する。また、認証情報も通知する。
【0040】
Webプログラム実行制御手段13は、HTML署名211の検証が成功したか、検証結果を判断する(ステップA3)。HTML署名の検証が成功した場合、Webプログラム実行制御手段13は、検証結果からHTML文書21の認証情報を取得し、アクセス制御リスト131の一覧にその認証情報が含まれるかを確認する(ステップA4、A5)。
【0041】
アクセス制御リスト131の一覧に認証情報が含まれている場合、Webプログラム実行制御手段13は、アクセス制御リスト131内に、Webプログラム22がHTML文書21上で動作することが許可されていることを示す情報があるかどうかを確認する(ステップA6、A7)。動作許可の確認は、HTML文書21の認証情報と、Webプログラム22のURLと、動作許可を示す情報との組み合わせが、アクセス制御リスト131に格納されていることを確認することにより行う。
【0042】
Webプログラム22がHTML文書21上で動作することが許可されていることを確認すると、Webプログラム実行制御手段13は、Webプログラム22に対して動作許可を通知する。通知された動作許可の情報は、Webプログラム22に設定され、これにより、Webプログラム22は機能するようになる。
【0043】
一方、ステップA3でHTML署名211の検証に失敗した場合、ステップA5でアクセス制御リスト131からのHTML文書21の認証情報の取得に失敗した場合や、ステップA7でWebプログラム22のHTML文書21上での動作許可を確認できなかった場合は、Webプログラム実行制御手段13は、Webプログラム22に対して動作不許可を通知する(ステップA9)。通知された動作不許可の情報は、Webプログラム22に設定され、これにより、Webプログラム22は機能しないようになる。なお、Webプログラム22を動作許可が通知されない限り機能しないように設定しておき、Webプログラム22の動作が許可されていることが確認された場合に動作許可を通知し、Webプログラム22の動作が許可されていないことが確認された場合には何も通知しないようにしてもよい。
【0044】
次に、本実施の形態について、具体例を用いて説明する。
【0045】
図3に示すように、WWWサーバ3にあるHTML文書31が、WWWサーバ2上のWebプログラム22を参照し、Webプログラム22の不正使用を試みる場合を考える。
【0046】
HTML文書31は、Webブラウザ11により、Webプログラム22と、HTML署名311とともにクライアント計算機1にダウンロードされる。HTML署名検証手段12は、HTML署名311の署名検証を試みる。HTML文書31が、HTML署名311を持っていない場合、あるいは、HTML署名311を持っていながら、HTML署名の検証に失敗した場合、HTML署名検証手段12は、Webプログラム実行制御手段13に検証結果として署名検証失敗を通知する。Webプログラム実行制御手段13は、この署名検証失敗の通知を受け、Webプログラム22に動作不許可を通知する。一方、HTML署名検証手段12により、HTML署名311の検証に成功した場合、HTML署名検証手段12は、検証結果として、署名検証に成功した旨と、HTML文書31の認証情報とを、Webプログラム実行制御手段13に通知する。
【0047】
Webプログラム実行制御手段13は、上記の検証結果を受け取り、自らが保持するアクセス制御リスト131に対して、HTML文書31の認証情報の記述があるか検索を行う。HTML文書31の認証情報が、アクセス制御リスト131に含まれない場合、Webプログラム実行制御手段13は、Webプログラム22のHTML文書31上での実行が許可されていないと判断し、Webプログラム22に対して動作不許可の通知を行う。
【0048】
以上のように、本発明の第1の実施の形態では、HTML署名検証手段を用いてHTMLページの作成者の認証を行い、その認証情報を用いて、Webプログラム実行制御手段によりWebプログラムの動作を制御するようにしたことにより、Webプログラムの作成者が意図していないHTMLページ上でのWebプログラムの不正利用を防止することができ、結果として、Webプログラムを経由したクライアント計算機上の秘密情報の流出を防止できる、という効果が得られる。
【0049】
また、本発明の第1の実施の形態では、HTML署名検証手段を用いてHTMLページの改竄検出を行い、その結果を用いて、Webプログラム実行制御手段によりWebプログラムの動作を制御するようにしたことにより、改竄されたHTMLページ上でのWebプログラムの不正利用を防止することができ、結果として、Webプログラムを経由したクライアント計算機上の秘密情報の流出を防止できる、という効果も得られる。
【0050】
次に、本発明の第2の実施の形態について図面を参照して詳細に説明する。
【0051】
図4を参照すると、本発明の第2の実施の形態は、クライアント計算機1と、WWWサーバ2とから構成されている。
【0052】
クライアント計算機1は、WWWブラウザ11を含む。
【0053】
WWWサーバ2は、HTML文書21と、Webプログラム22と、HTML検証手段23と、Webプログラム実行制御手段24とを含む。Webプログラム実行制御手段13は、アクセス制御リスト241を保持しており、クライアント計算機1の要求により、それらを送出する。HTML文書21は、HTML署名211を保持する。なお、図4は、HTML署名211がHTML文書21上に記述されるようなされるような図になっているが、HTML文書21上にはHTML署名211のURLを記述しておき、HTML署名211は、そのURLで示される記憶領域に記憶するようにしてもよい。
【0054】
これらの手段はそれぞれ概略次のように動作する。
【0055】
WWWブラウザ11は、WWWサーバ2からHTML文書21をダウンロードするとともに、HTML文書21中の記述に従い、Webプログラム22と、HTML署名検証手段23と、Webプログラム実行制御手段24とをダウンロードする。すなわち、WWWサーバ2から所望のデータを取得する手段として機能する。
【0056】
HTML署名検証手段23は、上記第1の実施の形態におけるHTML署名検証プログラムに相当し、WWWサーバ2の補助記憶装置に記憶されているものである。まず、WWWブラウザ11によりダウンロードされたHTML文書21に含まれるHTML署名211を検証し、HTML文書21が改竄されていないことを確認する。さらに、HTML署名211に含まれるHTML文書21の作成者の公開鍵証明書を検証することにより、HTML文書21の作成者を認証する。最後に、HTML文書21の検証結果をWebプログラム実行制御手段24に通知する。
【0057】
Webプログラム実行制御手段24は、上記第1の実施の形態におけるWebプログラム実行制御プログラムに相当し、WWWサーバ2の補助記憶装置に記憶されているものである。HTML署名検証手段23から検証成功の結果を受け取った場合、アクセス制御リスト241を参照し、Webプログラム22が、HTML文書21上で動作を許可されているかを確認する。許可されていれば、Webプログラム22に対して動作を許可する通知を行い、そうでなければ、Webプログラム22に対して動作を停止させる通知を行う。
【0058】
以上のように、本発明の第2の実施の形態では、HTML署名検証手段23と、Webプログラム実行制御手段24を、Webプログラム22とともに、WWWサーバ2側に保持し、実行時にWWWブラウザ11上にダウンロードすることとし、上記第1の実施の形態と同様の効果が得られる。
【0059】
なお、上記第1及び第2の実施の形態においては、HTML文書21で参照されるWebプログラム22の動作の制御に限定して説明してきたが、HTML文書に限らず、ある文書データで参照される外部プログラムがある場合に、その外部プログラムの動作の制御について、本発明は適用可能である。
【0060】
【発明の効果】
本発明には、Webプログラムを経由したクライアント計算機上の秘密情報の流出を防止することができるという効果がある。
【0061】
また、本発明には、Webプログラムの作成者が意図していないHTMLページ上でのWebプログラムの不正利用を防止することができるという効果もある。
【0062】
さらに、本発明には、改竄されたHTMLページ上でのWebプログラムの不正利用を防止することができるという効果もある。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態の構成を示すブロック図である。
【図2】本発明の第1の実施の形態の動作を示す流れ図である。
【図3】本発明の第1の実施の形態の具体例を示すブロック図である。
【図4】本発明の第2の実施の形態の構成を示すブロック図である。
【図5】従来技術の構成を示すブロック図である。
【図6】従来技術の第1の問題点を示すブロック図である。
【図7】従来技術の第2の問題点を示すブロック図である。
【符号の説明】
1   クライアント計算機
11  WWWブラウザ
12  HTML署名検出手段
13  Webプログラム実行制御手段
131 アクセス制御リスト
2   WWWサーバ
21  HTML文書
211 HTML署名
22  Webプログラム
23  HTML署名検出手段
24  Webプログラム実行制御手段
241 アクセス制御リスト
3   WWWサーバ
31  HTML文書
311 HTML署名
22  Webプログラム
[0001]
TECHNICAL FIELD OF THE INVENTION
According to the present invention, a program (hereinafter, referred to as a “Web program”) that is downloaded from a WWW server at the same time as an HTML document and runs on a WWW browser, such as a Java (registered trademark) applet, is a client that runs a WWW browser. Information stored in a storage device or a peripheral device connected to a computer, and a method of preventing unauthorized access to a function of a client computer or a peripheral device thereof (hereinafter, referred to as “client resource”); The present invention relates to a program, an apparatus, and an apparatus for providing the program.
[0002]
[Prior art]
Conventionally, the use of client resources in a Web program has been restricted. On the other hand, in recent years, a method for realizing access to client resources by the Web program has been developed (for example, see Patent Document 1).
[0003]
As shown in FIG. 5, a method and an apparatus for controlling a peripheral device using a Java (registered trademark) applet and a storage medium include a PC terminal 10, an R / W device 20 connected to the PC terminal 10, and an R / W device 20 as shown in FIG. It comprises an IC card 30 connected to the / W device 20 and a WWW server 40 connected to the PC terminal 10 via an IP network. The PC terminal 10 holds a WWW browser 11, a memory control unit 12, an OS 13, and an I / O port 14. The WWW browser 11 controls the Java (registered trademark) interpreter 110, and the memory control unit 12 , A data storage area 120, and a Java (registered trademark) interpreter library storage area 121. The library storage area 121 for Java (registered trademark) has an R / W device driver 122.
[0004]
A conventional method and apparatus for controlling peripheral devices using a Java (registered trademark) applet having such a configuration, and a storage medium generally operate as follows.
[0005]
That is, when the Java (registered trademark) interpreter 110 translates the Java (registered trademark) applet 410, it calls the R / W device driver 122 from the library storage area 121 according to the library call code, and according to the R / W device driver 122. By controlling the R / W device 20 via the I / O port 14, the data operation of the IC card 30 is performed.
[0006]
[Patent Document 1]
JP-A-2000-112864
[0007]
[Problems to be solved by the invention]
However, when accessing a client resource by a Web program using the above-described conventional technology, there are the following problems.
[0008]
The first problem is that a third party refers to and embeds this Web program in an HTML document created by the third party, so that the Web program can operate on an HTML document that is not intended by the creator of the Web program. And, as a result, unauthorized access to client resources is possible. Generally, a Web program is stored in a storage area of a WWW server and can be referred to from any HTML document. Therefore, a third party refers to this Web program in an HTML document created by the third party, and operates the Web program using another Web program created by the third party, thereby illegally accessing the client resource. And there is a risk that illegal acquisition of secret information on the client computer is permitted. In the above-described conventional technology, the WWW browser and the execution environment of the Web program have no means for authenticating the embedded HTML document with reference to the Web program, and allow the operation of the Web program on an arbitrary HTML document. It is.
[0009]
This first problem will be described in detail with reference to FIG. In FIG. 6, it is assumed that the Web program 22a on the WWW server 2a is intended to legitimately access the client resource 14a by being referred to in the regular HTML document 21a. However, it is also possible to refer to the Web program 22a in the malicious HTML document 31a on the third-party WWW server 3a, and when the malicious HTML document 31a is downloaded to the client PC 1a, the WWW browser 11a starts the Web program 22a. The operation on the unauthorized HTML document 31a is permitted, and as a result, the unauthorized access to the client resource 14a is permitted. For example, if the Web program 22a provides a function of giving an electronic signature to an input document by using the client resource 14a and outputting a digitally signed document, a third party may use an unauthorized HTML document. By referring to and embedding the Web program 22a at 31a, it is possible to forge an electronic signature of another person.
[0010]
The second problem is that, by falsifying an HTML document stored together with a Web program in a WWW server and embedding another Web program that illegally operates the Web program, unauthorized access to client resources becomes possible. ,That's what it means. In general, a Web program can be operated from another external program in many cases. Therefore, the HTML document is falsified, and another Web program that operates a Web program that accesses a client resource is embedded. As a result, it becomes possible to illegally obtain secret information on the client computer. In the above-mentioned conventional technology, a WWW browser and a means for detecting falsification of an HTML document referencing the Web program and a means for stopping the operation of the Web program as a result of the detection of the falsification are provided in the execution environment of the Web program. Because there is no.
[0011]
This second problem will be described in detail with reference to FIG. In FIG. 7, in the WWW server 2b, a regular HTML document intended to legitimately access the client resource 14b is falsified by a third party, and the falsified HTML document 21b refers to the Web program 22b. When such a falsified HTML document 21b is downloaded to the client PC 1b, the WWW browser 11b allows the Web program 22b to operate on the falsified HTML document 21b, and as a result, an unauthorized access to the client resource 14a is made. Allow access.
[0012]
The present invention has been made in view of the above-described problems of the related art, and has as its object to provide a method, a program, and a program that can prevent leakage of secret information on a client computer via a Web program. It is an object to provide a device and a device for providing the program.
[0013]
Another object of the present invention is to provide a method, a program, an apparatus, and an apparatus for providing the program, which can prevent unauthorized use of the Web program on an HTML page not intended by the creator of the Web program. It is in.
[0014]
Still another object of the present invention is to provide a method, a program, an apparatus, and an apparatus for providing the program, which can prevent unauthorized use of a Web program on a falsified HTML page.
[0015]
[Means for Solving the Problems]
According to a first operation control method of an external program of the present invention, a first step of obtaining authentication information for specifying a creator of document data from signature data of the document data, and a step of obtaining authentication information in the first step A second step of determining whether or not the document data is permitted to execute an external program referred to by the document data based on the authentication information; and A third step of controlling the external program not to operate when it is not determined that the external program is permitted to be executed.
[0016]
According to a second operation control method of an external program of the present invention, a fourth step of verifying signature data for document data, and whether or not the document data has been falsified based on a result of the verification in the fourth step A fifth step of determining whether the document data has been falsified in the fifth step, and a sixth step of controlling so that an external program referred to by the document data does not operate when it is determined that the document data has been tampered with. Contains.
[0017]
A third method of controlling operation of an external program according to the present invention includes a seventh step of verifying signature data for document data and acquiring authentication information for identifying a creator of the document data from the signature data; An eighth step of determining whether the document data has been tampered based on the result of the verification in the seventh step, and a case in which the document data is determined not to have been tampered in the eighth step A ninth step of determining whether the document data is permitted to execute an external program referred to by the document data based on the authentication information obtained in the seventh step; If it is determined in step that the document data is permitted to execute the external program, the external program operates. If it is determined in the tenth step of controlling and the eighth step that the document data has been tampered with, or in the ninth step, the document data is permitted to execute the external program. And determining that the external program does not operate when it is not determined that the external program has been executed.
[0018]
The operation control program of the first external program of the present invention obtains authentication information for identifying a creator of the document data from signature data for the document data, and obtains the authentication information in the first processing. A second process for determining whether or not the document data is permitted to execute an external program referenced by the document data based on the authentication information; and If the execution of the external program is not determined to be permitted, the third process of controlling the external program to be inactive is performed by the computer.
[0019]
An operation control program of a second external program according to the present invention includes a fourth process for verifying the signature data for the document data, and whether or not the document data has been falsified based on a result of the verification in the fourth process. And a sixth process for controlling, when the fifth process determines that the document data has been tampered with, an external program referenced by the document data so as not to operate. It is intended to be executed by a computer.
[0020]
An operation control program of a third external program of the present invention verifies signature data for the document data, and obtains authentication information for identifying a creator of the document data from the signature data; Eighth processing for determining whether the document data has been falsified based on the result of the verification in the seventh processing, and when it is determined in the eighth processing that the document data has not been falsified A ninth process for determining whether or not the document data is permitted to execute an external program referred to by the document data based on the authentication information acquired in the seventh process; A tenth process for controlling the operation of the external program when it is determined in the process that the document data is permitted to execute the external program; If it is determined in the eighth process that the document data has been tampered with, or it is not determined in the ninth process that the document data is permitted to execute the external program In this case, the computer is configured to execute an eleventh process for controlling the external program not to operate.
[0021]
A first external program operation control device according to the present invention includes: a data acquisition unit that acquires document data and an external program referenced by the document data from a server computer; and a signature data for the document data acquired by the data acquisition unit. A signature verification unit for obtaining authentication information for identifying a creator of the document data; and executing the external program in which the document data is obtained by the data obtaining unit based on the authentication information obtained by the signature verification unit. External program execution control means for judging whether or not the external program is permitted, and controlling the external program not to operate when it is not determined that the external program is permitted.
[0022]
An operation control device for a second external program according to the present invention includes a data acquisition unit that acquires document data and an external program referenced by the document data from a server computer, and a signature data for the document data acquired by the data acquisition unit. A signature verification unit for verifying the document data, determining whether the document data has been tampered with based on a result of the verification by the signature verification unit; External program execution control means for controlling the operation of the program.
[0023]
An operation control device for a third external program according to the present invention includes a data acquisition unit that acquires document data and an external program referred to by the document data from a server computer, and a signature data for the document data acquired by the data acquisition unit. A signature verification unit that verifies and obtains authentication information for identifying a creator of the document data from the signature data; and, based on a result of the verification by the signature verification unit, determines whether the document data has been tampered with. If it is determined that the external program has not been tampered with, it is determined whether the execution of the external program acquired by the data acquisition unit is permitted based on the authentication information acquired by the signature verification unit. If it is determined that the external program is operated, the external program is controlled to operate. If the document data is determined to be falsified, or if it is not determined that the document data is permitted to execute the external program, an external device that controls the external program to operate does not operate. Program execution control means.
[0024]
An apparatus for providing an operation control program for a first external program according to the present invention includes: a first storage unit for storing document data; a second storage unit for storing an external program to be referred to by the document data; Storage means for storing a signature verification program for realizing a function of acquiring authentication information for identifying the creator of the document data from signature data for the third party, and authentication obtained by a function realized by the signature verification program Based on the information, it is determined whether or not the document data is permitted to execute the external program, and if it is not determined that the document data is permitted to be executed, a function of controlling the external program to operate is realized. A fourth storage unit for storing an external program execution control program, wherein In response to an acquisition request for writing data, in addition to the document data, the external program, the signature verification program, and, and providing the external program execution control program to the client computer.
[0025]
An apparatus for providing an operation control program for a second external program according to the present invention includes a fifth storage unit for storing document data, a sixth storage unit for storing an external program referenced by the document data, And a seventh storage unit for storing a signature verification program for realizing a function of verifying the signature data with respect to the document data. And an eighth storage means for storing an external program execution control program for realizing a function of controlling the external program so as not to operate when it is determined that the document data has been tampered with. In response to the acquisition request, in addition to the document data, the external program, the signature verification program, , And providing said external program execution control program to the client computer.
[0026]
According to a third aspect of the present invention, there is provided an apparatus for providing an operation control program of an external program, comprising: ninth storage means for storing document data; tenth storage means for storing an external program referred to by the document data; An eleventh storage unit for storing a signature verification program for realizing a function of verifying the signature data of the document data and obtaining authentication information for identifying the creator of the document data from the signature data, Based on the result of the verification by the function to be realized, it is determined whether or not the document data has been tampered with. If it is determined that the document data has not been tampered with, based on the authentication information obtained by the function to be realized by the signature verification program, Determining whether the document data is permitted to execute the external program; When it is determined that the external program is operated, on the other hand, when it is determined that the document data is falsified, or when the document data is allowed to execute the external program, Twelfth storage means for storing an external program execution control program for realizing a function of controlling the operation of the external program when it is not determined that the external program is not operated. Accordingly, in addition to the document data, the external program, the signature verification program, and the external program execution control program are provided to the client computer.
[0027]
BEST MODE FOR CARRYING OUT THE INVENTION
Next, a first embodiment of the present invention will be described in detail with reference to the drawings.
[0028]
Referring to FIG. 1, the first embodiment of the present invention includes a client computer 1 and a WWW server 2.
[0029]
The client computer 1 includes a WWW browser 11, an HTML signature verification unit 12, and a Web program execution control unit 13. The Web program execution control unit 13 holds an access control list 131.
[0030]
Each of these means operates roughly as follows.
[0031]
The WWW browser 11 downloads the HTML document 21 from the WWW server 2 and also downloads the Web program 22 according to the description in the HTML document 21. That is, it functions as a unit for acquiring desired data from the WWW server 2.
[0032]
The HTML signature verification means 12 is realized by the CPU of the client computer 1 reading the HTML signature verification program stored in the auxiliary storage device into the main storage device. First, the HTML signature 211 included in the HTML document 21 downloaded by the WWW browser 11 is verified to confirm that the HTML document 21 has not been falsified. Further, the creator of the HTML document 21 is authenticated by verifying the public key certificate of the creator of the HTML document 21 included in the HTML signature 211. Finally, the verification result of the HTML document 21 is notified to the Web program execution control means 13.
[0033]
The Web program execution control means 13 is realized by the CPU of the client computer 1 reading the Web program execution control program stored in the auxiliary storage device into the main storage device. When the result of the successful verification is received from the HTML signature verifying means 12, the access control list 131 is referred to, and it is confirmed whether the operation of the Web program 22 on the HTML document 21 is permitted. If the operation is permitted, a notification that the operation is permitted is sent to the Web program 22. If not, a notification that the operation is stopped is sent to the Web program 22.
[0034]
The WWW server 2 includes an HTML document 21 and a Web program 22, and sends them out at the request of the client computer. The HTML document 21 holds an HTML signature 211. Although FIG. 1 is a diagram in which the HTML signature 211 is described on the HTML document 21, the URL of the HTML signature 211 is described on the HTML document 21, and the HTML signature 211 is , May be stored in the storage area indicated by the URL.
[0035]
Next, the overall operation of the present embodiment will be described in detail with reference to the flowchart of FIG.
[0036]
In response to a user operation of the client computer 1, the WWW browser 11 downloads an HTML document (step A1). At this time, the WWW browser 11 also downloads the Web program 22 and the HTML signature 211 according to the description of the HTML document 21. Here, as the HTML signature 211, for example, a signature created by a method described in Japanese Patent Application No. 2002-146410 is used. That is, the HTML signature 211 includes the URL information of the HTML document 21, the digest value of the HTML document 21, the URL information of the Web program 22, the digest value of the Web program 22, and the public key certificate of the creator of the HTML document 21. And a digital signature value obtained by encrypting a digest value of data including all of them with a secret key of the creator of the HTML document 21.
[0037]
Next, the HTML signature verification unit 12 verifies the HTML signature 211 to check whether the HTML document 21 has been tampered with (step A2). This verification is performed as follows when the above-mentioned one is used as the HTML signature 211. That is, first, the digest value of the downloaded HTML document 21 is calculated, and it is confirmed that the digest value is the same as the digest value of the HTML document 21 described in the HTML signature 211. Next, the digest value of the downloaded Web program 22 is calculated, and it is confirmed that the digest value is the same as the digest value of the Web program 22 described in the HTML signature 211. Lastly, a digest of data including all of the URL information of the HTML document 21, the digest value of the HTML document 21, the URL information of the Web program 22, the digest value of the Web program 22, and the public key certificate included in the HTML signature 211. The value is calculated, and it is confirmed whether or not the digital signature value included in the HTML signature 211 is equal to the value obtained by decrypting the digital signature value with the public key for the public key certificate.
[0038]
Further, the HTML signature verification unit 12 acquires authentication information for the public key certificate in order to authenticate the creator of the HTML document 21. When the above information is used as the HTML signature 211, the authentication information is acquired based on a public key certificate included in the HTML signature 211 based on some information (such as a mail address or other information) for specifying the creator of the HTML document 21. Information).
[0039]
Finally, the HTML signature verification unit 12 notifies the Web program execution control unit 13 of the verification result. That is, the digest values of the HTML document 21 match, the digest values of the Web program 22 match, and the URL information of the HTML document 21, the digest value of the HTML document 21, the URL information of the Web program 22, the Web program 22 When the digest value of the data including the digest value of the public key certificate matches the digest value of the public key certificate, a verification success is notified, and when any one of them does not match, a verification failure is notified. Also, authentication information is notified.
[0040]
The Web program execution control unit 13 determines whether the verification of the HTML signature 211 is successful or not (Step A3). If the verification of the HTML signature is successful, the Web program execution control unit 13 acquires the authentication information of the HTML document 21 from the verification result, and checks whether the authentication information is included in the list of the access control list 131 (step A4). , A5).
[0041]
If the authentication information is included in the list of the access control list 131, the Web program execution control unit 13 determines that the access control list 131 permits the Web program 22 to operate on the HTML document 21. It is checked whether there is information to indicate (steps A6, A7). The operation permission is confirmed by confirming that the combination of the authentication information of the HTML document 21, the URL of the Web program 22, and the information indicating the operation permission is stored in the access control list 131.
[0042]
When confirming that the Web program 22 is permitted to operate on the HTML document 21, the Web program execution control unit 13 notifies the Web program 22 of the operation permission. The notified operation permission information is set in the Web program 22, so that the Web program 22 functions.
[0043]
On the other hand, if the verification of the HTML signature 211 fails in step A3, if the authentication information of the HTML document 21 from the access control list 131 fails in step A5, or if the HTML document 21 of the Web program 22 is If the operation permission is not confirmed, the Web program execution control unit 13 notifies the Web program 22 of the operation non-permission (step A9). The notified information indicating that the operation is not permitted is set in the Web program 22, whereby the Web program 22 does not function. The Web program 22 is set so as not to function unless the operation permission is notified, and when it is confirmed that the operation of the Web program 22 is permitted, the operation permission is notified, and the operation of the Web program 22 is performed. If it is confirmed that the permission is not granted, nothing may be notified.
[0044]
Next, the present embodiment will be described using a specific example.
[0045]
As shown in FIG. 3, a case is considered where an HTML document 31 in the WWW server 3 refers to the Web program 22 on the WWW server 2 and tries to use the Web program 22 illegally.
[0046]
The HTML document 31 is downloaded to the client computer 1 by the Web browser 11 together with the Web program 22 and the HTML signature 311. The HTML signature verification unit 12 attempts to verify the signature of the HTML signature 311. If the HTML document 31 does not have the HTML signature 311, or if the HTML signature 311, and the verification of the HTML signature fails, the HTML signature verification unit 12 sends the verification result to the Web program execution control unit 13 as a verification result. Notify signature verification failure. Upon receiving the notification of the signature verification failure, the Web program execution control unit 13 notifies the Web program 22 of the non-permission of the operation. On the other hand, when the HTML signature verification unit 12 successfully verifies the HTML signature 311, the HTML signature verification unit 12 executes the Web program execution as a result of the verification, indicating that the signature verification was successful and the authentication information of the HTML document 31. Notify the control means 13.
[0047]
The Web program execution control means 13 receives the above verification result, and searches the access control list 131 held by itself for whether the authentication information of the HTML document 31 is described. If the authentication information of the HTML document 31 is not included in the access control list 131, the Web program execution control means 13 determines that the execution of the Web program 22 on the HTML document 31 is not permitted, and Then, a notification of operation non-permission is given.
[0048]
As described above, in the first embodiment of the present invention, the creator of the HTML page is authenticated by using the HTML signature verification unit, and the Web program execution control unit is used to execute the operation of the Web program by using the authentication information. , It is possible to prevent unauthorized use of the Web program on an HTML page that is not intended by the creator of the Web program, and as a result, the secret information on the client computer via the Web program can be prevented. The effect that the outflow of water can be prevented is obtained.
[0049]
Further, in the first embodiment of the present invention, the falsification of the HTML page is detected by using the HTML signature verification means, and the operation of the Web program is controlled by the Web program execution control means using the result. As a result, it is possible to prevent unauthorized use of the Web program on the falsified HTML page, and as a result, it is possible to prevent leakage of secret information on the client computer via the Web program.
[0050]
Next, a second embodiment of the present invention will be described in detail with reference to the drawings.
[0051]
Referring to FIG. 4, the second embodiment of the present invention includes a client computer 1 and a WWW server 2.
[0052]
The client computer 1 includes a WWW browser 11.
[0053]
The WWW server 2 includes an HTML document 21, a Web program 22, an HTML verification unit 23, and a Web program execution control unit 24. The Web program execution control unit 13 holds the access control list 241 and sends out the access control list 241 in response to a request from the client computer 1. The HTML document 21 holds an HTML signature 211. FIG. 4 is a diagram in which the HTML signature 211 is described on the HTML document 21. However, the URL of the HTML signature 211 is described on the HTML document 21, and the HTML signature 211 is , May be stored in the storage area indicated by the URL.
[0054]
Each of these means operates as follows.
[0055]
The WWW browser 11 downloads the HTML document 21 from the WWW server 2 and downloads a Web program 22, an HTML signature verification unit 23, and a Web program execution control unit 24 in accordance with the description in the HTML document 21. That is, it functions as a unit for acquiring desired data from the WWW server 2.
[0056]
The HTML signature verification means 23 corresponds to the HTML signature verification program in the first embodiment, and is stored in the auxiliary storage device of the WWW server 2. First, the HTML signature 211 included in the HTML document 21 downloaded by the WWW browser 11 is verified to confirm that the HTML document 21 has not been falsified. Further, the creator of the HTML document 21 is authenticated by verifying the public key certificate of the creator of the HTML document 21 included in the HTML signature 211. Finally, the verification result of the HTML document 21 is notified to the Web program execution control unit 24.
[0057]
The Web program execution control means 24 corresponds to the Web program execution control program in the first embodiment, and is stored in the auxiliary storage device of the WWW server 2. When the result of the successful verification is received from the HTML signature verifying unit 23, the access control list 241 is referred to and it is confirmed whether the operation of the Web program 22 on the HTML document 21 is permitted. If the operation is permitted, a notification that the operation is permitted is sent to the Web program 22. If not, a notification that the operation is stopped is sent to the Web program 22.
[0058]
As described above, in the second embodiment of the present invention, the HTML signature verifying unit 23 and the Web program execution control unit 24 are held together with the Web program 22 on the WWW server 2 side. And the same effect as in the first embodiment can be obtained.
[0059]
In the first and second embodiments, the description has been given of the case where the control of the operation of the Web program 22 referred to in the HTML document 21 is limited. However, the present invention is not limited to the HTML document but may be referred to by certain document data. The present invention is applicable to the control of the operation of an external program when there is an external program.
[0060]
【The invention's effect】
The present invention has an effect that leakage of secret information on a client computer via a Web program can be prevented.
[0061]
Further, the present invention has an effect that illegal use of a Web program on an HTML page not intended by the creator of the Web program can be prevented.
[0062]
Further, the present invention has an effect that illegal use of a Web program on a falsified HTML page can be prevented.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a first exemplary embodiment of the present invention.
FIG. 2 is a flowchart showing an operation of the first exemplary embodiment of the present invention.
FIG. 3 is a block diagram illustrating a specific example of the first exemplary embodiment of the present invention.
FIG. 4 is a block diagram showing a configuration of a second exemplary embodiment of the present invention.
FIG. 5 is a block diagram showing a configuration of a conventional technique.
FIG. 6 is a block diagram showing a first problem of the related art.
FIG. 7 is a block diagram showing a second problem of the related art.
[Explanation of symbols]
1 Client computer
11 WWW Browser
12. HTML signature detecting means
13 Web program execution control means
131 access control list
2 WWW server
21 HTML documents
211 HTML signature
22 Web program
23 HTML signature detecting means
24 Web program execution control means
241 access control list
3 WWW server
31 HTML document
311 HTML signature
22 Web program

Claims (12)

文書データに対する署名データから当該文書データの作成者を特定するための認証情報を取得する第1のステップと、
前記第1のステップで取得した認証情報に基づき、前記文書データが当該文書データで参照する外部プログラムを実行することが許可されているかどうかを判定する第2のステップと、
前記第2のステップで前記文書データが前記外部プログラムを実行することが許可されていると判定されなかった場合に、当該外部プログラムが動作しないよう制御する第3のステップとを含むことを特徴とする外部プログラムの動作制御方法。
A first step of acquiring authentication information for identifying a creator of the document data from signature data for the document data;
A second step of determining, based on the authentication information obtained in the first step, whether or not the document data is permitted to execute an external program referenced by the document data;
A third step of controlling the external program not to operate if it is not determined in the second step that the document data is permitted to execute the external program. To control the operation of external programs.
文書データに対する署名データを検証する第4のステップと、
前記第4のステップでの検証の結果に基づき、前記文書データが改竄されているかどうかを判定する第5のステップと、
前記第5のステップで前記文書データが改竄されていると判定された場合に、前記文書データで参照する外部プログラムが動作しないよう制御する第6のステップとを含むことを特徴とする外部プログラムの動作制御方法。
A fourth step of verifying the signature data for the document data;
A fifth step of determining whether or not the document data has been falsified based on the result of the verification in the fourth step;
And controlling the external program referenced by the document data so that the external program does not operate when it is determined in the fifth step that the document data has been tampered with. Operation control method.
文書データに対する署名データを検証するとともに、当該署名データから当該文書データの作成者を特定するための認証情報を取得する第7のステップと、
前記第7のステップでの検証の結果に基づき、前記文書データが改竄されているかどうかを判定する第8のステップと、
前記第8のステップで前記文書データが改竄されていないと判定された場合に、前記第7のステップで取得した認証情報に基づき、前記文書データが当該文書データで参照する外部プログラムを実行することが許可されているかどうかを判定する第9のステップと、
前記第9のステップで前記文書データが前記外部プログラムを実行することが許可されていると判定された場合に、当該外部プログラムが動作するよう制御する第10のステップと、
前記第8のステップで前記文書データが改竄されていると判定された場合、又は、前記第9のステップで前記文書データが前記外部プログラムを実行することが許可されていると判定されなかった場合に、当該外部プログラムが動作しないよう制御する第11のステップとを含むことを特徴とする外部プログラムの動作制御方法。
A seventh step of verifying the signature data for the document data and acquiring authentication information for identifying a creator of the document data from the signature data;
An eighth step of determining whether the document data has been tampered with, based on a result of the verification in the seventh step;
When it is determined in the eighth step that the document data has not been tampered with, executing an external program that the document data refers to in the document data based on the authentication information obtained in the seventh step. A ninth step of determining whether is authorized;
A tenth step of controlling the external program to operate when it is determined in the ninth step that the document data is permitted to execute the external program;
When it is determined in the eighth step that the document data is falsified, or when it is not determined in the ninth step that the document data is permitted to execute the external program. And an eleventh step of controlling the external program so as not to operate.
文書データに対する署名データから当該文書データの作成者を特定するための認証情報を取得する第1の処理と、
前記第1の処理で取得した認証情報に基づき、前記文書データが当該文書データで参照する外部プログラムを実行することが許可されているかどうかを判定する第2の処理と、
前記第2の処理で前記文書データが前記外部プログラムを実行することが許可されていると判定されなかった場合に、当該外部プログラムが動作しないよう制御する第3の処理とをコンピュータに実行させるためのプログラム。
A first process of acquiring authentication information for identifying a creator of the document data from signature data for the document data;
A second process for determining whether or not the document data is permitted to execute an external program referenced by the document data based on the authentication information acquired in the first process;
And causing the computer to execute a third process of controlling the external program not to operate when the document data is not determined to be permitted to execute the external program in the second process. Program.
文書データに対する署名データを検証する第4の処理と、
前記第4の処理での検証の結果に基づき、前記文書データが改竄されているかどうかを判定する第5の処理と、
前記第5の処理で前記文書データが改竄されていると判定された場合に、前記文書データで参照する外部プログラムが動作しないよう制御する第6の処理とをコンピュータに実行させるためのプログラム。
A fourth process for verifying the signature data for the document data;
A fifth process of determining whether or not the document data has been falsified based on a result of the verification in the fourth process;
A program for causing a computer to execute, when it is determined in the fifth process that the document data has been tampered with, a sixth process of controlling an external program referred to by the document data not to operate.
文書データに対する署名データを検証するとともに、当該署名データから当該文書データの作成者を特定するための認証情報を取得する第7の処理と、
前記第7の処理での検証の結果に基づき、前記文書データが改竄されているかどうかを判定する第8の処理と、
前記第8の処理で前記文書データが改竄されていないと判定された場合に、前記第7の処理で取得した認証情報に基づき、前記文書データが当該文書データで参照する外部プログラムを実行することが許可されているかどうかを判定する第9の処理と、
前記第9の処理で前記文書データが前記外部プログラムを実行することが許可されていると判定された場合に、当該外部プログラムが動作するよう制御する第10の処理と、
前記第8の処理で前記文書データが改竄されていると判定された場合、又は、前記第9の処理で前記文書データが前記外部プログラムを実行することが許可されていると判定されなかった場合に、当該外部プログラムが動作しないよう制御する第11の処理とをコンピュータに実行させるためのプログラム。
A seventh process of verifying the signature data for the document data and acquiring authentication information for identifying a creator of the document data from the signature data;
An eighth process of determining whether or not the document data has been falsified based on a result of the verification in the seventh process;
When it is determined in the eighth process that the document data has not been tampered with, executing an external program that the document data refers to in the document data based on the authentication information acquired in the seventh process. Ninth processing for determining whether or not is permitted;
A tenth process for controlling the operation of the external program when it is determined in the ninth process that the document data is permitted to execute the external program;
When it is determined in the eighth process that the document data has been tampered with, or when it is not determined in the ninth process that the document data is permitted to execute the external program And an eleventh process for controlling the external program so as not to operate.
文書データと当該文書データで参照する外部プログラムとをサーバコンピュータから取得するデータ取得手段と、
前記データ取得手段により取得した文書データに対する署名データから当該文書データの作成者を特定するための認証情報を取得する署名検証手段と、
前記署名検証手段により取得した認証情報に基づき、前記文書データが前記データ取得手段により取得した外部プログラムを実行することが許可されているかどうかを判定し、許可されていると判定されなかった場合に、当該外部プログラムが動作しないよう制御する外部プログラム実行制御手段とを備えたことを特徴とする外部プログラムの動作制御装置。
Data acquisition means for acquiring document data and an external program referred to by the document data from a server computer;
Signature verification means for obtaining authentication information for identifying a creator of the document data from signature data for the document data obtained by the data obtaining means;
Based on the authentication information acquired by the signature verification unit, determine whether the document data is permitted to execute the external program acquired by the data acquisition unit.If the document data is not determined to be authorized, And an external program execution control means for controlling the external program not to operate.
文書データと当該文書データで参照する外部プログラムとをサーバコンピュータから取得するデータ取得手段と、
前記データ取得手段により取得した文書データに対する署名データを検証する署名検証手段と、
前記署名検証手段による検証の結果に基づき、前記文書データが改竄されているかどうかを判定し、改竄されていると判定された場合に、前記データ取得手段により取得した外部プログラムが動作しないよう制御する外部プログラム実行制御手段とを備えたことを特徴とする外部プログラムの動作制御装置。
Data acquisition means for acquiring document data and an external program referred to by the document data from a server computer;
Signature verification means for verifying signature data for the document data acquired by the data acquisition means;
Based on the result of the verification by the signature verifying unit, it is determined whether the document data has been tampered with. An operation control apparatus for an external program, comprising: an external program execution control unit.
文書データと当該文書データで参照する外部プログラムとをサーバコンピュータから取得するデータ取得手段と、
前記データ取得手段により取得した文書データに対する署名データを検証するとともに、当該署名データから当該文書データの作成者を特定するための認証情報を取得する署名検証手段と、
前記署名検証手段による検証の結果に基づき、前記文書データが改竄されているかどうかを判定し、改竄されていないと判定された場合に、前記署名検証手段により取得した認証情報に基づき、前記データ取得手段により取得した外部プログラムを実行することが許可されているかどうかを判定し、許可されていると判定された場合に、当該外部プログラムが動作するよう制御し、一方、前記文書データが改竄されていると判定された場合、又は、前記文書データが前記外部プログラムを実行することが許可されていると判定されなかった場合に、当該外部プログラムが動作しないよう制御する外部プログラム実行制御手段とを備えたことを特徴とする外部プログラムの動作制御装置。
Data acquisition means for acquiring document data and an external program referred to by the document data from a server computer;
Signature verification means for verifying signature data for the document data acquired by the data acquisition means, and acquiring authentication information for identifying a creator of the document data from the signature data;
Determining whether the document data has been tampered with based on the result of the verification by the signature verifying unit; and determining that the document data has not been tampered with. Determining whether the execution of the external program obtained by the means is permitted, and if it is determined that the execution is permitted, controls the external program to operate. External program execution control means for controlling the external program not to operate when it is determined that the external program is executed or when it is not determined that the document data is permitted to execute the external program. An operation control device for an external program.
文書データを記憶する第1の記憶手段と、
前記文書データで参照する外部プログラムを記憶する第2の記憶手段と、
前記文書データに対する署名データから当該文書データの作成者を特定するための認証情報を取得する機能を実現する署名検証プログラムを記憶する第3の記憶手段と、
前記署名検証プログラムが実現する機能により取得される認証情報に基づき、前記文書データが前記外部プログラムを実行することが許可されているかどうかを判定し、許可されていると判定されなかった場合に、当該外部プログラムが動作しないよう制御する機能を実現する外部プログラム実行制御プログラムを記憶する第4の記憶手段とを備え、
クライアントコンピュータからの前記文書データの取得要求に応じて、前記文書データに加え、前記外部プログラム、前記署名検証プログラム、及び、前記外部プログラム実行制御プログラムを当該クライアントコンピュータに提供することを特徴とする外部プログラムの動作制御プログラムの提供装置。
First storage means for storing document data;
Second storage means for storing an external program referred to by the document data;
Third storage means for storing a signature verification program for realizing a function of acquiring authentication information for identifying a creator of the document data from signature data for the document data;
Based on the authentication information obtained by the function realized by the signature verification program, determine whether the document data is allowed to execute the external program, if not determined to be allowed, A fourth storage unit that stores an external program execution control program that realizes a function of controlling the external program not to operate,
Providing an external program, the signature verification program, and the external program execution control program to the client computer in addition to the document data in response to an acquisition request for the document data from the client computer. An apparatus for providing a program operation control program.
文書データを記憶する第5の記憶手段と、
前記文書データで参照する外部プログラムを記憶する第6の記憶手段と、
前記文書データに対する署名データを検証する機能を実現する署名検証プログラムを記憶する第7の記憶手段と、
前記署名検証プログラムが実現する機能による検証の結果に基づき、前記文書データが改竄されているかどうかを判定し、改竄されていると判定された場合に、前記外部プログラムが動作しないよう制御する機能を実現する外部プログラム実行制御プログラムを記憶する第8の記憶手段とを備え、
クライアントコンピュータからの前記文書データの取得要求に応じて、前記文書データに加え、前記外部プログラム、前記署名検証プログラム、及び、前記外部プログラム実行制御プログラムを当該クライアントコンピュータに提供することを特徴とする外部プログラムの動作制御プログラムの提供装置。
Fifth storage means for storing document data,
Sixth storage means for storing an external program referred to by the document data,
Seventh storage means for storing a signature verification program for realizing a function of verifying signature data for the document data;
Based on the result of the verification by the function realized by the signature verification program, it is determined whether or not the document data has been tampered with. If it is determined that the document data has been tampered with, the function of controlling the external program not to operate is controlled. Eighth storage means for storing an external program execution control program to be realized,
Providing an external program, the signature verification program, and the external program execution control program to the client computer in addition to the document data in response to an acquisition request for the document data from the client computer. An apparatus for providing a program operation control program.
文書データを記憶する第9の記憶手段と、
前記文書データで参照する外部プログラムを記憶する第10の記憶手段と、
前記文書データに対する署名データを検証するとともに、当該署名データから当該文書データの作成者を特定するための認証情報を取得する機能を実現する署名検証プログラムを記憶する第11の記憶手段と、
前記署名検証プログラムが実現する機能による検証の結果に基づき、前記文書データが改竄されているかどうかを判定し、改竄されていないと判定された場合に、前記署名検証プログラムが実現する機能により取得される認証情報に基づき、前記文書データが前記外部プログラムを実行することが許可されているかどうかを判定し、許可されていると判定された場合に、当該外部プログラムが動作するよう制御し、一方、前記文書データが改竄されていると判定された場合、又は、前記文書データが前記外部プログラムを実行することが許可されていると判定されなかった場合に、当該外部プログラムが動作しないよう制御する機能を実現する外部プログラム実行制御プログラムを記憶する第12の記憶手段とを備え、
クライアントコンピュータからの前記文書データの取得要求に応じて、前記文書データに加え、前記外部プログラム、前記署名検証プログラム、及び、前記外部プログラム実行制御プログラムを当該クライアントコンピュータに提供することを特徴とする外部プログラムの動作制御プログラムの提供装置。
Ninth storage means for storing document data;
Tenth storage means for storing an external program referred to by the document data;
An eleventh storage unit that stores a signature verification program that verifies signature data for the document data and realizes a function of acquiring authentication information for specifying a creator of the document data from the signature data;
Based on the result of the verification by the function implemented by the signature verification program, it is determined whether the document data has been tampered with.If it is determined that the document data has not been tampered, the document data is acquired by the function realized by the signature verification program. Based on the authentication information, determines whether the document data is permitted to execute the external program, and if it is determined that the document data is permitted, controls the external program to operate. A function of controlling the external program not to operate when it is determined that the document data has been tampered with or when it is not determined that the document data is permitted to execute the external program. Twelfth storage means for storing an external program execution control program for realizing
Providing an external program, the signature verification program, and the external program execution control program to the client computer in addition to the document data in response to a request to acquire the document data from a client computer. An apparatus for providing a program operation control program.
JP2002279395A 2002-09-25 2002-09-25 External program operation control method, operation control program, operation control apparatus, and operation control program providing apparatus Expired - Fee Related JP3888273B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002279395A JP3888273B2 (en) 2002-09-25 2002-09-25 External program operation control method, operation control program, operation control apparatus, and operation control program providing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002279395A JP3888273B2 (en) 2002-09-25 2002-09-25 External program operation control method, operation control program, operation control apparatus, and operation control program providing apparatus

Publications (2)

Publication Number Publication Date
JP2004118433A true JP2004118433A (en) 2004-04-15
JP3888273B2 JP3888273B2 (en) 2007-02-28

Family

ID=32274419

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002279395A Expired - Fee Related JP3888273B2 (en) 2002-09-25 2002-09-25 External program operation control method, operation control program, operation control apparatus, and operation control program providing apparatus

Country Status (1)

Country Link
JP (1) JP3888273B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008059550A (en) * 2006-08-01 2008-03-13 Nippon Telegr & Teleph Corp <Ntt> Information browsing system and method thereof
JP2008547111A (en) * 2005-06-27 2008-12-25 マイクロソフト コーポレーション Active content trust model
JP2010033563A (en) * 2008-06-30 2010-02-12 Intel Corp Method and system for platform-based trust verifying service for multi-party verification
JP2010530097A (en) * 2007-06-07 2010-09-02 アルカテル−ルーセント Web page authenticity verification

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008547111A (en) * 2005-06-27 2008-12-25 マイクロソフト コーポレーション Active content trust model
JP2008059550A (en) * 2006-08-01 2008-03-13 Nippon Telegr & Teleph Corp <Ntt> Information browsing system and method thereof
JP2010530097A (en) * 2007-06-07 2010-09-02 アルカテル−ルーセント Web page authenticity verification
JP2010033563A (en) * 2008-06-30 2010-02-12 Intel Corp Method and system for platform-based trust verifying service for multi-party verification

Also Published As

Publication number Publication date
JP3888273B2 (en) 2007-02-28

Similar Documents

Publication Publication Date Title
US10333967B2 (en) Method and system for dynamic platform security in a device operating system
JP5190800B2 (en) Program execution control system, execution control method, and computer program for execution control
JP4745238B2 (en) Java applet, JAR file generation method, JAR file generation program, JAR file generation apparatus
JP5185820B2 (en) Safe machine count
US9118666B2 (en) Computing device integrity verification
EP1443381B1 (en) System and method for secure software activation with volume licenses
JP4744106B2 (en) Secure device, information processing terminal, communication system, and communication method
EP1776799B1 (en) Enhanced security using service provider authentication
JP4975127B2 (en) Apparatus for providing tamper evidence to executable code stored on removable media
JP2003330365A (en) Method for distributing/receiving contents
CN102855274A (en) Method and device for detecting suspicious progresses
JP2009054165A (en) Safe application distribution and execution in wireless environment
JP2003507785A (en) Computer platform and its operation method
JP2004265286A (en) Management of mobile device according to security policy selected in dependence on environment
JP2010182196A (en) Information processing apparatus and file verification system
JP2007148962A (en) Subprogram, information processor for executing subprogram, and program control method in information processor for executing subprogram
US9665711B1 (en) Managing and classifying states
JP4754299B2 (en) Information processing device
JPH10260939A (en) Client machine authentication method of computer network, client machine, host machine and computer system
JP4711824B2 (en) Business administrator terminal, environmental management station terminal, network operator terminal, business operator terminal, business administrator terminal control method, environmental management station terminal control method, network operator terminal control method, and business operator program
KR100458515B1 (en) System and method that can facilitate secure installation of JAVA application for mobile client through wireless internet
JP3888273B2 (en) External program operation control method, operation control program, operation control apparatus, and operation control program providing apparatus
Maruyama et al. Linux with TCPA integrity measurement
JP4497450B2 (en) Program authentication system
JP2002333927A (en) Data distribution method, program for data distribution method, data processing method and recording medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040419

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20050308

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060808

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061010

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061120

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091208

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101208

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101208

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111208

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111208

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121208

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121208

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131208

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees