JP4655613B2 - プログラム実行装置及びプログラム実行方法 - Google Patents

プログラム実行装置及びプログラム実行方法 Download PDF

Info

Publication number
JP4655613B2
JP4655613B2 JP2004355228A JP2004355228A JP4655613B2 JP 4655613 B2 JP4655613 B2 JP 4655613B2 JP 2004355228 A JP2004355228 A JP 2004355228A JP 2004355228 A JP2004355228 A JP 2004355228A JP 4655613 B2 JP4655613 B2 JP 4655613B2
Authority
JP
Japan
Prior art keywords
program
license key
file
licensed
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2004355228A
Other languages
English (en)
Other versions
JP2006163896A (ja
Inventor
拓郎 増矢
恒 中津山
勝行 近藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation 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 Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2004355228A priority Critical patent/JP4655613B2/ja
Publication of JP2006163896A publication Critical patent/JP2006163896A/ja
Application granted granted Critical
Publication of JP4655613B2 publication Critical patent/JP4655613B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、ライセンスが設定されたプログラムを管理する技術、特に、複数のプログラムがパッケージ化されている場合の管理技術に関する。
プログラムのライセンス(使用許諾)は、しばしばライセンスキーの発行によって行われる。すなわち、正規に発行されたライセンスキーが入力された場合にのみプログラムは実行可能となり、これにより、ライセンスを受けていないユーザがプログラムを不正使用すること等を防止できる。
複数のプログラムが販売等にあたってパッケージ化された場合には、一般にプログラム毎にライセンスキーが発行される。下記特許文献1には、複数のプログラムに対応した各ライセンスキーを入力することで、パッケージ化されたライセンスキーを生成する技術が開示されている。これは、プログラムの販売者によるライセンスキーの発行を容易にし、またユーザによるライセンスキーの入力作業量を軽減することを目的としてなされた技術である。
また、従来パッケージ化されたプログラムのインストールにおいては、必要なファイルのみがコンピュータ上に配置されていた。このため、パッチ適用等の部分的修正作業は、インストール済みのプログラムに対してのみ行われていた。
特開2002−215253号公報
上記特許文献1の技術では、複数のプログラムに対応する各ライセンスキーを入力として1つのパッケージ化ライセンスキーを生成しており、複数のプログラムに対応するライセンスキーの組み合わせの指定が可能である。そのため、発行者側と販売者側があらかじめプログラムの組み合わせを定義しなくても販売者は販売者の必要とする組み合わせのプログラムのライセンスキーを取得できるが、パッケージ化ライセンスキー自体は複数のライセンスキーをひとつにまとめているだけであり、ライセンスキーの数が減っているわけではない。これは発行者と販売者の間での複数プログラムのライセンスキー発行作業を容易にしているに過ぎない。つまり、パッケージ化されたプログラムのインストール(実行可能化の設定)作業等における様々な手続きのうち、単にライセンスキーの発行作業を簡略化しているのみである。
また、上記部分的修正作業に関しては、パッケージ化された複数プログラムをコンピュータにインストールし、パッチ適用(不具合の修正)等の部分的修正処理を行う。その後、別のプログラムに対してライセンス契約が追加的になされ、コンピュータにインストールされた後にさらに上記パッチとは異なる別のパッチを適用した場合、追加プログラムに対しては以前のパッチが適用されておらず、過去に遡って部分的修正処理を実施するといった不都合を生じることがあった。
本発明の目的は、コンピュータにおいて、パッケージ化された複数のプログラムのインストールを簡易化する新たな態様を実現することにある。
本発明の目的は、ライセンスキーに対し、パッケージ化された複数のプログラムのインストール作業を制御するデータを持たせることにある。
本発明のさらに別の目的は、パッケージ化された複数のプログラムの部分的修正作業を容易に実施する技術を確立することにある。
本発明に係るプログラム実行装置は、複数のプログラムが含まれたソフトウエアパッケージに対して、ライセンスされたプログラムを示す組合せデータを含むライセンスキーを受け付け、当該ライセンスキーが有効であるか否かを判定する検証部と、前記検証部によりライセンスキーが有効であると判定された場合、当該ライセンスキーを保持するライセンスキー保持部と、前記検証部によりライセンスキーが有効であると判定された場合、前記ソフトウエアパッケージに含まれ、ライセンスされたプログラムおよびライセンスされていないプログラムを配置して保持するファイル保持部と、前記ファイル保持部に保持されたプログラムのうちでライセンスされたプログラムを実行可能とする設定を行う設定ファイル配置部と、前記ファイル保持部に保持されたプログラムの実行指示を受けた場合に、当該プログラムがライセンスされているか否かを検証し、ライセンスされていると検証されたときには、前記ライセンスキー保持部に保持されたライセンスキーに基づいて当該プログラムが正当なファイルであるか否かを検証し、正当なファイルであると検証されたときには当該プログラムを起動する起動制御部と、を備え、前記ソフトウエアパッケージに含まれるプログラムに不具合が見つかったときに、部分的にプログラムファイルを交換するためのファイルであるパッチを当てる場合には、前記ファイル保持部に保持されたプログラムに対してライセンスされているか否かにかかわらずにパッチを当てることを特徴とする
本発明に係るプログラム実行方法は、複数のプログラムが含まれたソフトウエアパッケージに対して、ライセンスされたプログラムを示す組合せデータを含むライセンスキーを受け付け、当該ライセンスキーが有効であるか否かを判定するステップと、前記検証部によりライセンスキーが有効であると判定された場合、当該ライセンスキーを保持するステップと、前記検証部によりライセンスキーが有効であると判定された場合、前記ソフトウエアパッケージに含まれ、ライセンスされたプログラムおよびライセンスされていないプログラムを配置して保持するステップと、前記ファイル保持部に保持されたプログラムのうちでライセンスされたプログラムを実行可能とする設定を行うステップと、前記ファイル保持部に保持されたプログラムの実行指示を受けた場合に、当該プログラムがライセンスされているか否かを検証し、ライセンスされていると検証されたときには、前記ライセンスキー保持部に保持されたライセンスキーに基づいて当該プログラムが正当なファイルであるか否かを検証し、正当なファイルであると検証されたときには当該プログラムを起動するステップと、を含み、前記ソフトウエアパッケージに含まれるプログラムに不具合が見つかったときに、部分的にプログラムファイルを交換するためのファイルであるパッチを当てる場合には、前記ファイル保持部に保持されたプログラムに対してライセンスされているか否かにかかわらずにパッチを当てることを特徴とする。
ソフトウエアパッケージは、複数のプログラムがひとまとまりに構成されたソフトウエアである。パッケージ化の態様は様々に可能であり、例えば、複数のプログラムが、一つのファイルにまとめられたり、複数のファイルとして形成され同じ格納媒体や格納ディレクトリに格納されてまとめられたり、複数のファイルとして形成され別々の位置に格納されながらも格納位置を知らせる情報に基づいて関連づけられたりする例を挙げることができる。また、各プログラムは、全体で大きなシステムを形成するなどの機能的関連を有していたり、商品としてまとめて販売されるなどの商品的関連を有していたりするものであってもよいが、特に関連はなく、例えば、単にファイル管理を効率化する目的でパッケージ化されたものであってもよい。ソフトウエアパッケージの中には、個々のプログラムやパッケージ全体に関連した設定ファイルや管理ファイル(プログラム)などが含まれていてもよいことは言うまでもない。ここでは、ソフトウエアパッケージに含まれる複数のプログラムはライセンスに基づいて管理されていることを想定している。
ライセンスキーデータは、このソフトウエアパッケージにおけるライセンスを管理するデータである。ライセンスキーデータには、ライセンスデータと証明データが含まれている。ライセンスデータは、ライセンスされたプログラムをコンピュータに特定させるデータであり、そのプログラムは一つでもよいが典型的には複数である。また、証明データとは、ライセンスデータが適正なものであることをコンピュータに証明させるデータである。証明データは、各プログラム毎に用意されているのではなく、ソフトウエアパッケージを単位として用意されている。証明データは、秘匿情報に基づく一方向的計算、例えば暗号化やハッシュ等の不正利用(改竄、横流しなど)防止技術等を用いて生成される。このため、コンピュータの側では、この証明データを解読や照合等に利用して適正か否かを調べることでライセンスデータ、さらには、ライセンスキーデータ自体の正当性を検証することができる。この意味において証明データはコンピュータで検証されるための被検証データということができる。なお、ライセンスデータと証明データを、ライセンスキーデータにおける少なくとも一部が共通するデータによって表現することも可能である。
このライセンスキーデータは、ソフトウエアパッケージにおいてライセンスされているプログラムの存在を、証明データに基づく正当性の検証を行うことで一括して把握できるように構成されている。したがって、このライセンスキーデータを用いれば、ソフトウエアパッケージがインストール(実行可能化処理)されるコンピュータでインストール処理が簡略化される。特に、このライセンスキーデータは、どのプログラムをインストールすべきか(実行可能にすべきか)を制御する制御データとして利用され得るものであり、ソフトウエアパッケージの利用を従来に比べ大幅に容易化する可能性をもつものである。
イセンスデータは、ユーザに対して可読となる方式で記述されている。つまり、ライセンスデータは、ユーザに秘密にされているのではなく、入手容易な表示プログラム等を使えばユーザが内容を理解できるように記述されている。したがって、ユーザは、ライセンスキーデータがどのプログラムのライセンスを与えるかを容易に認識することができる。このため、例えば、ソフトウエアパッケージのインストール制御にライセンスキーデータを用いるような場合、ユーザが制御内容を事前に的確に把握できるといった利点も生じる。
フトウエアパッケージには、ライセンス対象の少なくとも一つのプログラムの実行に必要となるライセンス対象外の少なくとも一つのプログラムが含まれ、当該ライセンスキーデータは、ライセンスデータに応じて設定されたデータであって、ライセンス対象外のプログラムのインストールの必要性をコンピュータに与えるデータを含む。これにより、ライセンス付与の対象外であるプログラムのインストールの必要性をライセンスキーによって制御することが可能となる。
本発明に係るプログラム実行装置及びプログラム実行方法は、設定手順においては、ライセンスされたプログラムとライセンスされていないプログラムをともにコンピュータ上に配置させ、ライセンスされたプログラムに対してのみ実行に必要な設定を完遂させることで、ライセンスされたプログラムのみを実行可能に設定させる。つまり、ライセンスに関わらずプログラムはコンピュータ上の実行に必要な位置に配置されるが、ライセンスされていないプログラムに関しては設定ファイルを用意しないなどして実行可能にするための設定を完了させない。これは、ソフトウエアパッケージの各プログラムに対するパッチ適用(不具合の修正)等の部分的修正処理を容易にするための態様である。ライセンスのないプログラムもコンピュータ上に配置しておくことで、ライセンスのあるプログラムと同様の部分的修正処理を行うことが可能となる。したがって、あるプログラムに対するライセンスを後から追加的に購入したような場合にも、そのプログラムに対する部分的修正処理は当初からライセンスを有するプログラムと同様になされていることとなるため、過去に遡って部分的修正処理を実施するといった手間を省くことができることになる。なお、コンピュータの記憶装置資源の有効活用等の理由により、設定手順において、ライセンスされたプログラムをコンピュータ上の所定の位置に配置させ、ライセンスされていないプログラムをコンピュータ上の実行に必要な位置に配置させないことで、ライセンスされたプログラムのみを実行可能に設定させる態様をとることも可能である。
以下に、本発明の代表的な実施の形態を説明する。
図1は、本実施の形態に係るソフトウエアパッケージの構成例を説明するブロック図である。ソフトウエアパッケージ10は、プログラムA12、プログラムB14、プログラムC16の三つのプログラムが一つのファイルにまとめられたものである。この三つのプログラムは、有機的に関連したソフトウエアシステムを構成しており、このようにパッケージ化されて販売される。しかし、ユーザは、利用用途に応じて、この中の少なくとも一つのプログラムを購入(ライセンス契約)すれば対応した機能を利用することができる。
図2は、ソフトウエアパッケージに係るライセンスキーのデータを発行する発行装置20について、その構成例の概略を示すブロック図である。発行装置20は、パソコン等のコンピュータに、その動作を規定するプログラムを入力することで構築される。発行装置20には、ソフトウエア情報入力部22、発行部24、ライセンスキー出力部26が含まれている。ソフトウエア情報入力部は、ライセンスキーを発行するために必要となるデータ(情報)を入力するために設けられている。具体的には、GUI(グラフィカルユーザインターフェース)を通じてユーザ入力されたり、販売部署からネットワークを通じてライセンス契約のデータを入力されたりすることで実現される。入力すべき情報としては、対象となるソフトウエアパッケージ名、ライセンス契約したプログラム名、そのプログラムの契約ライセンス数などを挙げることができる。また、不正使用を防止するために、使用するコンピュータの固有識別情報(MACアドレスなど)等を入力することもできる。
発行部24は、ソフトウエア情報入力部22から入力されたデータを反映させて、ライセンスキーを生成する。生成にあたっては、ライセンスキーの不正使用を防止するため、秘密データに基づく一方向計算処理を行う。
ライセンスキー出力部26は、生成されたライセンスキーをネットワーク経由で購入者に送信したり、記憶媒体等に出力したりする装置である。
図3は、出力されたライセンスキーのデータ構造を模式的に説明する図である。この例では、ライセンスキー30は汎用のエディタで読み取り可能なフォーマットで記載されており、Product部32、Key部34、Option1部36、Option2部38の四つの意味的パートから構成されている。
Product部32は、対応するソフトウエアパッケージの商品名が記された部分である。Key部34は、Product部32、Option1部36及びOption2部38のデータを基に鍵付きのハッシュ計算処理により生成されている。Option1部36には、ソフトウエアパッケージにおいてライセンスされたプログラムの組み合わせがデータ化されている。また、Option2部38は、各プログラムに与えられるクライアントライセンス数を表す。クライアントライセンス数とは、プログラムにアクセス可能なクライアント数の上限値である。
図4は、図3におけるOption1部36の具体例を示す図である。Option1部36は、0または1の値をとるビット列40,42,...,48,50から構成されている。各ビットは設定された順番に並べられた一つ一つのプログラムに対応している。そして、ライセンスを有するプログラムに対応するビットは「1」、ライセンスの無いプログラムに対応するビットは「0」として、ライセンスの有無の情報が表現されている。
このライセンスキー30において、Product部32、Option1部36、Option2部38は、どのソフトウエアパッケージのどのようなプログラムの組み合わせに対して何個のライセンスが付与されたかというライセンスデータを表している。ユーザは、エディタにライセンスキー30を読み込むなどして、このライセンスデータを把握することができる。これにより、ライセンスキー30の発行間違いの防止や、他のソフトウエアパッケージのライセンスキーとの混同の回避が容易となる。
Key部34は、ライセンスデータの正当性をソフトウエアパッケージにつき一括して証明する証明データとして機能する。つまり、ライセンスデータが記載されたProduct部32、Option1部36またはOption2部38に対して改竄操作を行った場合には、これらから鍵付きハッシュ処理によって計算される値は、Key部34の値とは異なるものとなるので、改竄が行われたか否かを検証することが可能となる。
続いて、図5のブロック図を用いて、ソフトウエアパッケージがインストールされるプログラム実行装置60の概略構成を説明する。プログラム実行装置60は、パソコン等のコンピュータを利用して構成される装置であり、主たる構成として、プログラム配置部70、ライセンスキー保持部90、ファイル保持部100を備えている。プログラム配置部70は、演算機能や入出力機能を備えたハードウエアを所定のプログラムに従って動作させることで実現される。また、ライセンスキー保持部90、ファイル保持部100は、ハードディスク等の記憶装置を利用して構成される。
プログラム配置部70には、ライセンスキー入力部72、検証部74、ライセンスキー格納部76、プログラムリスト取得部78、プログラム配置部80が設けられている。ライセンスキー入力部72は、ネットワークやキーボード等からライセンスキーを入力するものである。そして、検証部74は、入力されたライセンスキーが正当なものであるか否かを検証する。具体的には、図3に示したProduct部32、Option1部36、Option2部38に対し鍵付きハッシュ処理を行い、その結果得られたデータがKey部34と完全に同一であれば改竄されていない有効なデータであると判定し、1ビットでも異なれば無効なデータであると判定する。
検証によりライセンスキーが有効であると判定された場合、ライセンスキー格納部76は、ライセンスキーをライセンスキー保持部90に格納する。これにより、再度入力することなく、その後必要に応じてライセンスキーが何度でも参照できるようになる。また、プログラムリスト取得部78は、図3に示したライセンスキーのOption1部36に基づいてライセンスされたプログラムのリストを取得する。プログラム配置部80は、プログラムをファイル保持部100に配置し、必要な設定を行うことで、ライセンスされたプログラムを実行可能な状態にする。
このように、プログラム配置部70においては、ライセンスキーを制御指示データとしてプログラム配置が行われる。このため、インストールの実施にあたってユーザにかかる負担を軽減することが可能となる。なお、制御を行う手段としてのプログラム配置部70の各部は、対応する動作を実行するプログラムを用いて行うことができる。プログラムは、ソフトウエアパッケージと一緒にパッケージ化して配布されてもよいし、別途当該プログラム実行装置60に入力され設定されたものであってもよい。
次に、図6を用いて、プログラム配置の詳細と、プログラムの起動について説明する。図6は、図5に示したプログラム実行装置60の該当部分を示すブロック図であり、同一の構成には同一の番号を付している。この図には、プログラム配置部80、ライセンスキー保持部90、ファイル保持部100、プログラム起動部110が示されている。
プログラム配置部80は、図5を用いて説明したように、ライセンスされたプログラムを実行可能に配置するものである。ここには、プログラムファイル配置部82と設定ファイル配置部84が設けられている。プログラムファイル配置部82は、ソフトウエアパッケージに含まれるプログラムを、ライセンスの有無に関わらずファイル保持部100に配置するものである。各プログラムは、具体的には、ファイル保持部100に設けられたプログラムファイル保持部102に配置される。一方、設定ファイル配置部84は、ライセンスされたプログラムについてのみ実行に必要な設定ファイルを設定する。具体的には、設定ファイルは、ファイル保持部100に設けられた設定ファイル保持部104に配置される。これにより、ライセンスされたプログラムは実行可能な状態となる。しかし、ライセンスされていないプログラムは設定ファイルが設定されておらず、プログラムの実行に必要な情報を参照したり、OSに対して必要な情報を付与したりすることができない状態にあり、実行不可能な状態にある。
プログラム起動部110は、プログラムを実行する指示がユーザ入力等によって行われた場合に、そのプログラムを実行するための構成である。このプログラム起動部110には、起動制御部112、検証部114、ライセンスキー取得部116及びプログラム読み出し部118が設けられている。
起動制御部112は、プログラムの実行指示を受けると、設定ファイル保持部104から当該プログラムの設定ファイルを取得する。また、起動制御部112は、検証部114に対して、このプログラムのライセンスがあるかを検証させる。検証部114は、ライセンスキー取得部116に命じて、ライセンスキー保持部90から対応するソフトウエアパッケージのライセンスキーを取得させる。そして、鍵付きハッシュ処理を行って検証を行い正当なファイルであることを検証した上で、ライセンスデータを参照して、実行可能がなされたプログラムが実行可能であるか否かを確認する。この結果、実行可能であると判断された場合には、プログラム読み出し部118がプログラムファイル保持部102からそのプログラムを呼び出す。こうして、プログラム起動部110は、実行命令に基づいたプログラムを起動する。
この構成においては、次に述べるパッチ適用の容易性を考慮して、全てのプログラムをプログラムファイル保持部102に配置している。このため、設定ファイルを不正入手された場合に対応するプログラムを不正使用される虞がある。そこで、プログラムの実行時にライセンスの検証を行うことで、この不正使用を防止している。もちろん、設定ファイルの装着等を困難にすることで、実行時のライセンス検証を省略するようにしてもよい。
続いて、この図6を用いて、プログラムにパッチを当てる場合の態様を説明する。パッチは、プログラムに不具合等が見つかった場合に、部分的にプログラムファイルを交換するためのファイルである。図6に示した構成を用いれば、ソフトウエアパッケージに含まれる全てのプログラムがプログラムファイル保持部102に配置されている。したがって、ライセンスの有無にかかわらず、全てのプログラムに対してパッチを当てることができる。この結果、ユーザが後に新たなプログラムについてのライセンスを取得した場合にも、そのプログラムには既にライセンスを持っていたプログラムと同時期に公開されたパッチが当てられている。したがって、過去に遡ってパッチを当てるなどの煩雑な処理を行う必要がなく、パッチ当て操作を容易化することができる。
以上に示した態様は、様々に変形することが可能である。
例えば、図3に示したライセンスキーにおいて、Key部34を生成する際に、MACアドレス等契約されたマシンを一意に特定する情報を含める例が挙げられる。これにより、他の装置でこのライセンスキーを利用した場合には、Key部34のデータを再現することができなくなる。つまり、ライセンスキーの横流しによる不正使用を防止することが可能となる。
また、ライセンスキーにおいて、ライセンスデータをユーザが読めないように記述する態様をとることもできる。図7は、この場合のライセンスキーのデータ構造を説明する模式図である。この例においては、ライセンスキー130は、Product部132とKey部134のみから構成されている。Product部132は、図3の例と同様に、ソフトウエアパッケージの名称が記載されたものであり、ユーザが読めるように記載されている。しかし、Key部134は、図3の態様とは異なり、Option1部36、Option2部38に相当するライセンスデータを暗号化することにより生成されている。つまり、Key部134には、ライセンスデータと証明データが含まれることとなる。この構成によれば、ライセンスキー長を短くできる他、一般のユーザがライセンスキー130からライセンスデータを読み取ることを防止してセキュリティレベルを上げることができる。
ライセンスキーに対しては、アップグレードの権利情報を含めることができる。例えば図3に示したライセンスキー30に対してさらに別のOptionを設け、各プログラム毎のアップグレード権限を記載することができる。これにより、ライセンスキーにバージョンアップを実行する際の制御指示を行わせることが可能となる。
また、ソフトウエアパッケージにライセンス対象外のプログラムが含まれる場合に、ライセンスキーを用いてそのインストールを制御させることもできる。これは、図2に示した発行装置20において、商品としてのプログラムにライセンスが付与された場合に、このプログラムとライセンス対象外のプログラムとの依存関係を確認し、必要に応じてライセンス対象外のプログラムのインストール必要情報をライセンスキーに埋め込むことで実現することができる。この態様によれば、ユーザやソフトウエアパッケージにプログラムの依存関係を与えていなくても、ライセンスキーさえあれば必要なプログラムのインストールが実施できることとなる。
ソフトウエアパッケージの構成例を示す模式的ブロック図である。 ライセンスキーの発行装置の構成例を示す概略ブロック図である。 ライセンスキーのデータ構成例を示す模式図である。 図3のライセンスキーのOption1の具体的態様を示す図である。 プログラム実行装置の構成例を示すブロック図である。 図5のプログラム実行装置を詳細に説明するブロック図である。 ライセンスキーのデータ別の構成例を示す模式図である。
符号の説明
10 ソフトウエアパッケージ、20 発行装置、22 ソフトウエア情報入力部、24 発行部、26 ライセンスキー出力部、30,130 ライセンスキー、60 プログラム実行装置、70 プログラム配置部、72 ライセンスキー入力部、74 検証部、76 ライセンスキー格納部、78 プログラムリスト取得部、80 プログラム配置部、82 プログラムファイル配置部、84 設定ファイル配置部、90 ライセンスキー保持部、100 ファイル保持部、102 プログラムファイル保持部、104 設定ファイル保持部、110 プログラム起動部、112 起動制御部、114 検証部、116 ライセンスキー取得部、118 プログラム読み出し部。

Claims (2)

  1. 複数のプログラムが含まれたソフトウエアパッケージに対して、ライセンスされたプログラムを示す組合せデータを含むライセンスキーを受け付け、当該ライセンスキーが有効であるか否かを判定する検証部と、
    前記検証部によりライセンスキーが有効であると判定された場合、当該ライセンスキーを保持するライセンスキー保持部と、
    前記検証部によりライセンスキーが有効であると判定された場合、前記ソフトウエアパッケージに含まれ、ライセンスされたプログラムおよびライセンスされていないプログラムを配置して保持するファイル保持部と、
    前記ファイル保持部に保持されたプログラムのうちでライセンスされたプログラムを実行可能とする設定を行う設定ファイル配置部と、
    前記ファイル保持部に保持されたプログラムの実行指示を受けた場合に、当該プログラムがライセンスされているか否かを検証し、ライセンスされていると検証されたときには、前記ライセンスキー保持部に保持されたライセンスキーに基づいて当該プログラムが正当なファイルであるか否かを検証し、正当なファイルであると検証されたときには当該プログラムを起動する起動制御部と、
    を備え、
    前記ソフトウエアパッケージに含まれるプログラムに不具合が見つかったときに、部分的にプログラムファイルを交換するためのファイルであるパッチを当てる場合には、前記ファイル保持部に保持されたプログラムに対してライセンスされているか否かにかかわらずにパッチを当てることを特徴とするプログラム実行装置
  2. 複数のプログラムが含まれたソフトウエアパッケージに対して、ライセンスされたプログラムを示す組合せデータを含むライセンスキーを受け付け、当該ライセンスキーが有効であるか否かを判定するステップと、
    前記検証部によりライセンスキーが有効であると判定された場合、当該ライセンスキーを保持するステップと、
    前記検証部によりライセンスキーが有効であると判定された場合、前記ソフトウエアパッケージに含まれ、ライセンスされたプログラムおよびライセンスされていないプログラムを配置して保持するステップと、
    前記ファイル保持部に保持されたプログラムのうちでライセンスされたプログラムを実行可能とする設定を行うステップと、
    前記ファイル保持部に保持されたプログラムの実行指示を受けた場合に、当該プログラムがライセンスされているか否かを検証し、ライセンスされていると検証されたときには、前記ライセンスキー保持部に保持されたライセンスキーに基づいて当該プログラムが正当なファイルであるか否かを検証し、正当なファイルであると検証されたときには当該プログラムを起動するステップと、
    を含み、
    前記ソフトウエアパッケージに含まれるプログラムに不具合が見つかったときに、部分的にプログラムファイルを交換するためのファイルであるパッチを当てる場合には、前記ファイル保持部に保持されたプログラムに対してライセンスされているか否かにかかわらずにパッチを当てることを特徴とするプログラム実行方法。
JP2004355228A 2004-12-08 2004-12-08 プログラム実行装置及びプログラム実行方法 Expired - Fee Related JP4655613B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004355228A JP4655613B2 (ja) 2004-12-08 2004-12-08 プログラム実行装置及びプログラム実行方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004355228A JP4655613B2 (ja) 2004-12-08 2004-12-08 プログラム実行装置及びプログラム実行方法

Publications (2)

Publication Number Publication Date
JP2006163896A JP2006163896A (ja) 2006-06-22
JP4655613B2 true JP4655613B2 (ja) 2011-03-23

Family

ID=36665839

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004355228A Expired - Fee Related JP4655613B2 (ja) 2004-12-08 2004-12-08 プログラム実行装置及びプログラム実行方法

Country Status (1)

Country Link
JP (1) JP4655613B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101185142B1 (ko) * 2006-01-11 2012-09-24 삼성전자주식회사 최종 사용자 라이센스 계약을 관리하는 장치 및 방법
JP4930028B2 (ja) 2006-12-13 2012-05-09 ソニー株式会社 情報処理装置、情報処理方法、プログラム
JP5121542B2 (ja) * 2008-04-09 2013-01-16 キヤノン株式会社 アプリケーションパッケジング装置、その制御方法、プログラム
JP5335504B2 (ja) 2009-03-19 2013-11-06 キヤノン株式会社 アプリケーションパッケージング装置、その制御方法、プログラム
JP2016157210A (ja) * 2015-02-24 2016-09-01 株式会社 日立産業制御ソリューションズ アクセス制御装置、アクセス制御方法及びアクセス制御プログラム
JP2020119403A (ja) * 2019-01-25 2020-08-06 株式会社リコー 情報処理装置、情報処理システム、情報処理方法、及びプログラム
JP2020119402A (ja) * 2019-01-25 2020-08-06 株式会社リコー 情報処理装置、情報処理システム、情報処理方法、及びプログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002092225A (ja) * 2000-09-19 2002-03-29 Seiko Epson Corp ネットワークを利用した顧客管理システム、顧客管理方法および情報記録媒体
JP2004295270A (ja) * 2003-02-03 2004-10-21 Hitachi Ltd 共用記憶システム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002092225A (ja) * 2000-09-19 2002-03-29 Seiko Epson Corp ネットワークを利用した顧客管理システム、顧客管理方法および情報記録媒体
JP2004295270A (ja) * 2003-02-03 2004-10-21 Hitachi Ltd 共用記憶システム

Also Published As

Publication number Publication date
JP2006163896A (ja) 2006-06-22

Similar Documents

Publication Publication Date Title
US11126754B2 (en) Personalized and cryptographically secure access control in operating systems
US11012241B2 (en) Information handling system entitlement validation
JP5190800B2 (ja) プログラムの実行制御システム、実行制御方法、実行制御用コンピュータプログラム
TWI557589B (zh) 用於產品驗證和啟動的安全軟體產品識別器
CN101894224B (zh) 保护客户端平台上的内容
JP4844102B2 (ja) サブプログラム及びそのサブプログラムを実行する情報処理装置
US20030196096A1 (en) Microcode patch authentication
US20050021968A1 (en) Method for performing a trusted firmware/bios update
CN101872404B (zh) 一种保护Java软件程序的方法
JP2004265422A (ja) ハードウェア変更の許容度を有するコンピュータシステムにソフトウェアパッケージを結び付けるためのコンパクトハードウェア識別
JP5980050B2 (ja) 情報処理装置
JP2006179007A (ja) セキュリティで保護されたライセンス管理
US20090037721A1 (en) Program development method, program development supporting system, and program installation method
JP2008503014A5 (ja)
US20110271350A1 (en) method for protecting software
JP5118700B2 (ja) 仮想マシンのアクティブ化を伴う携帯可能な大容量記憶装置
JP4655613B2 (ja) プログラム実行装置及びプログラム実行方法
Menhorn External secure storage using the PUF
US7568102B2 (en) System and method for authorizing the use of stored information in an operating system
JP4981957B2 (ja) ライセンス外部メモリ
JP2005293109A (ja) ソフトウェア実行管理装置、ソフトウェア実行管理方法、及び制御プログラム
JP2007206928A (ja) ライセンス認証方法及びライセンス認証装置
TWI467485B (zh) Verification of the basic input and output system update method, the computer can read the recording media and computer program products
JP2007148806A (ja) アプリケーション起動制限方法及びアプリケーション起動制限プログラム
JP5797666B2 (ja) 計算リソースの安全な実行

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071120

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100907

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101102

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101213

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

Free format text: PAYMENT UNTIL: 20140107

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4655613

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees