[go: up one dir, main page]

JP2008152764A - ソフトウェアプログラムの無許可のインストールを防ぐシステム及び方法 - Google Patents

ソフトウェアプログラムの無許可のインストールを防ぐシステム及び方法 Download PDF

Info

Publication number
JP2008152764A
JP2008152764A JP2007296680A JP2007296680A JP2008152764A JP 2008152764 A JP2008152764 A JP 2008152764A JP 2007296680 A JP2007296680 A JP 2007296680A JP 2007296680 A JP2007296680 A JP 2007296680A JP 2008152764 A JP2008152764 A JP 2008152764A
Authority
JP
Japan
Prior art keywords
key
software
activation
hardware
hardware device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2007296680A
Other languages
English (en)
Inventor
Keen Hun Leong
キーン・ハン・レオン
Siew Yee Lai
シュー・イー・ライ
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.)
Avago Technologies International Sales Pte Ltd
Original Assignee
Avago Technologies ECBU IP Singapore Pte Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Avago Technologies ECBU IP Singapore Pte Ltd filed Critical Avago Technologies ECBU IP Singapore Pte Ltd
Publication of JP2008152764A publication Critical patent/JP2008152764A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Business, Economics & Management (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • General Physics & Mathematics (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Storage Device Security (AREA)

Abstract

【課題】ソフトウェアプログラムの無許可のインストールを防ぐシステム及び方法に対する要求がある。
【解決手段】ソフトウェアプログラムの無許可のインストールを防ぐシステム及び方法は、ハードウェアキー及びソフトウェアキーに基づく起動キーを用いる。該ハードウェアキーは、特定のハードウェア装置と関連付けられており、一方、該ソフトウェアキーは、インストールされるソフトウェアプログラムと関連付けられている。該ソフトウェアプログラムのハードウェア装置へのインストールは、該起動キーから抽出された該ソフトウェアキーが、該ソフトウェアプログラムのソフトウェアキーと一致した場合にのみ、開始することが許可される。
【選択図】図1

Description

ソフトウェアプログラムの無許可の使用は、ソフト開発会社の大きな懸案事項である。現在使用されているソフトウェアプログラムの40%以上が無許可であると推定する人もいる。しかし、正当なユーザに対して大きな負担を伴うことなく、ソフトウェアプログラムの無許可の使用を防ぐ有効な手段は、なかなか見つかっていない。
現在、ソフトウェアプログラムは、通常、インストールプロセスを可能にするためにインストール中に与えられなければならない起動キーと共に符号化される。該起動キーは、通常、該ソフトウェアプログラムを含むコンピュータプロダクトの添付文書に印刷されている。そのため、該ソフトウェアプログラムは、対応する起動キーが与えられない限り、インストールすることができず、このことは、無許可のユーザに対するソフトウェアプログラムの広範な流布を阻止することができる。
しかし、該ソフトウェアプログラム及び該起動キーの両方のコピーが流布した場合には、該ソフトウェアプログラムは、該ソフトウェアプログラムの正当なユーザによって実行することができる同じインストールプロセスを用いて、任意の無許可のコンピュータシステムにインストールすることができる。従って、起動キーの使用は、無許可のユーザに対するソフトウェアプログラムの広範な流布を防ぐことができない。
さらに、該起動キーは、該ソフトウェアプログラムの元の購入者が、該ソフトウェアプログラムを返金のために戻した後、該戻したソフトウェアプログラムを使用し続けることを防いでいない。該元の購入者は、単純に、該ソフトウェアプログラムを自分のコンピュータシステムからアンインストールしないことにより、該戻したソフトウェアプログラムを使用し続けるかもしれない。あるいは、該元の購入者は、単に、該ソフトウェアプログラム及び該起動キーのコピーを用いて、該ソフトウェアプログラムを再インストールすることにより、該戻したソフトウェアプログラムを使用し続ける可能性もある。
従って、上述した懸案事項に対処するソフトウェアプログラムの無許可のインストールを防ぐシステム及び方法に対する要求がある。
ソフトウェアプログラムの無許可のインストールを防ぐシステム及び方法は、ハードウェアキー及びソフトウェアキーに基づいている起動キーを利用する。該ハードウェアキーは、特定のハードウェア装置と関連付けられており、一方、該ソフトウェアキーは、インストールされる該ソフトウェアプログラムに関連付けられている。該ソフトウェアプログラムのハードウェア装置へのインストールは、該起動キーから抽出した該ソフトウェアキーが、該ソフトウェアプログラムの該ソフトウェアキーに一致した場合にのみ開始できるようになっている。
本発明の実施形態によるソフトウェアプログラムの無許可のインストールを防ぐシステムは、起動サーバ及びハードウェア装置を備える。該起動サーバは、ハードウェアキー及びソフトウェアキーに基づいて、起動キーを生成するように構成される。該ハードウェアキーは、特定のハードウェア装置と関連付けられる。該ソフトウェアキーは、該ソフトウェアプログラムと関連付けられる。該ハードウェア装置は、該ソフトウェアプログラムのインストールプロセス中に、該起動キーを処理して、該起動キーから少なくとも該ソフトウェアキーを抽出するように構成される。該ハードウェア装置はさらに、該起動キーから抽出した該ソフトウェアキーと、該ソフトウェアプログラムの対応するソフトウェアキーとを比較するように構成される。該ハードウェア装置はさらに、該ソフトウェアプログラムのインストールプロセスを、該ソフトウェアキーが該対応するソフトウェアキーに一致した場合にのみ、開始できるように構成される。
本発明の実施形態によるソフトウェアプログラムの無許可のインストールを防ぐ方法は、ハードウェア装置において、ハードウェアキー及びソフトウェアキーに基づいて起動キーを用いて、該ソフトウェアプログラムのインストールプロセスを開始することであって、該ハードウェアキーが特定のハードウェア装置と関連付けられており、該ソフトウェアキーが該ソフトウェアプログラムと関連付けられていることと、該ハードウェア装置において、該起動キーを処理して、該起動キーから少なくとも該ソフトウェアキーを抽出することと、該ハードウェア装置において、該起動キーから抽出したソフトウェアキーと、該ソフトウェアプログラムの対応するソフトウェアキーとを比較することと、および該ソフトウェアキーが該対応するソフトウェアキーに一致した場合にのみ、該ソフトウェアプログラムの該ハードウェア装置へのインストールプロセスを開始できるようにすることとを備える。
本発明の他の態様および効果は、本発明の原理の例証として示した添付図面と共に理解すれば、以下の詳細な説明から明らかになる。
図1を参照して、本発明の実施形態によるソフトウェアプログラムの無許可のインストールを防ぐシステム100について説明する。システム100は、特定のハードウェア装置に対して固有の有効起動キーを要することにより、ソフトウェアプログラムの無許可のインストールを防ぐ。それによって、システム100は、有効起動キーを用いて、ソフトウェアプログラムを指定されたハードウェア装置にインストールすることを許可する。その結果、システム100は、ソフトウェアプログラムが無許可のハードウェア装置にインストールされること、および該ソフトウェアプログラムが、既に返金のために戻された後に、前にインストールされたハードウェア装置に再びインストールされることを防ぐ。
図1に示すように、システム100は、ネットワーク108に接続されている、起動サーバ102、オンラインストア104、および多数のカスタマハードウェア装置106を含む。ネットワーク108は、起動サーバ102、オンラインストア104及びカスタマハードウェア装置106の間でデータを送信できるようになっている任意のネットワークとすることができる。例えば、ネットワーク108は、広域ネットワーク(large area network;LAN)またはインターネットとすることができる。
システム100の起動サーバ102は、無許可のインストールが防止されている1つ以上のソフトウェアプログラムの権利者に関連するサーバである。図2に示すように、起動サーバ102は、バス216に接続されているネットワークインタフェース210、記憶装置212、およびプロセッサ214を含む。ネットワークインタフェース210は、起動サーバ102が、ネットワーク108を介して、オンラインストア104及びカスタマハードウェア装置106と通信できるように構成されている。例えば、ネットワークインタフェース210は、ネットワークカードまたはアダプタとすることができる。記憶装置212は、通常、パーソナルコンピュータ内に見られるハードドライブとすることができる。他の実施形態においては、記憶装置212は、フラッシュメモリまたはROM等の任意の種類のコンピュータメモリであってもよい。記憶装置212は、起動サーバ102に必要なデータ及びコンピュータプログラムを格納するのに使用される。具体的には、記憶装置212は、ソフトウェアキー、ハードウェアキー及び購入キーに基づいて暗号化された起動キーを生成することができる暗号化アルゴリズムを含む。
該ソフトウェアキーは、特定の種類のソフトウェアプログラムに固有に割当てられているコードのストリングである。すなわち、同じソフトウェアプログラムは、同じソフトウェアキーを有する。従って、異なる種類のソフトウェアプログラムは、異なるソフトウェアキーを有する。該ハードウェアキーは、各カスタマハードウェア装置に固有の識別コードである。例えば、該ハードウェアキーは、カスタマハードウェア装置のプロセッサ内にハードコードされた固有コードのストリングとすることができる。別の例として、該ハードウェアキーは、カスタマハードウェア装置のMACアドレスとすることができる。該購入キーは、特定のソフトウェアプログラムの購入の時間に固有のコードのストリングである。例えば、該購入キーは、購入取引の時間と日付とすることができる。別の例として、該購入キーは、購入時における通し番号のうちの特定の番号とすることができる。
起動サーバ102のプロセッサ214は、データを処理して様々な機能を実行するディジタル信号プロセッサである。具体的には、プロセッサ214は、記憶装置212に格納された暗号化アルゴリズムを実行して、各購入されたソフトウェアプログラムのための起動キーを生成するように構成またはプログラミングされている。本実施形態において、プロセッサ214は、該ソフトウェアキー、該ハードウェアキー及び該購入キーを、秘密暗号化/暗号解読キーを用いて暗号化して、各購入されたソフトウェアプログラムのための起動キーを生成するように構成されている。その結果、プロセッサ214は、該起動キーを直接、またはオンラインストア104を介して、該ソフトウェアプログラムを購入するのに使用されるハードウェア装置106へ送信することができる。
システム100のオンラインストア104は、1つ以上のソフトウェアプログラムを販売するウェブサイトである。オンラインストア104は、起動サーバ102を含むネットワーク108に接続されたどのサーバにも設けることができる。オンラインストア104は、ソフトウェアプログラムの各購入者に該ハードウェアキーを要求し、および該購入者から該ハードウェアキーを受信するように構成またはプログラミングされている。また、オンラインストア104は、ソフトウェアプログラムが例えば、該購入取引の正確な時刻に購入される場合に、該購入キーを生成するように構成またはプログラミングされる。オンラインストア104はさらに、購入されたソフトウェアプログラムのためのソフトウェアキーを抽出するように構成されている。ソフトウェアプログラムが購入されると、オンラインストア104は、該ソフトウェアキー、ハードウェアキー及び購入キーを起動サーバ102へ送信し、その結果、該起動サーバは、該送信されたソフトウェアキー、ハードウェアキー及び購入キーに基づいて起動キーを生成することができる。
システム100のカスタマハードウェア装置106は、オンラインストア104および/または起動サーバ102と通信して、データを送受信することができる装置である。それによって、カスタマハードウェア装置106は、オンラインストア104からソフトウェアプログラムを購入し、および起動サーバ102によって生成される起動キーを、該起動サーバから直接、または該オンラインストアを介して該起動サーバから間接的に受信するのに用いることができる。本実施形態において、カスタマハードウェア装置106は、購入したソフトウェアプログラムがインストールされるべき装置であると仮定する。しかし、他の実施形態においては、該ソフトウェアプログラムは、ネットワーク108に接続することができる、または接続することができない、ハードウェア装置106と同様の他のハードウェア装置にインストールするために購入してもよい。
次に、図3を参照すると、本発明の実施形態によるカスタマハードウェア装置106の1つが図示されている。図3に示すように、カスタマハードウェア装置106は、バス316に接続されている、ネットワークインタフェース310、記憶装置312、およびプロセッサ314を含む。ネットワークインタフェース310は、カスタマハードウェア装置106が、ネットワーク108を介してオンラインストア104および/または起動サーバ102と通信できるように構成されている。例えば、ネットワークインタフェース310は、内部ROM(図示せず)に格納された固有の媒体アクセス制御(Media Access Control;MAC)アドレスを備えたネットワークカードまたはアダプタとすることができる。記憶装置312は、パーソナルコンピュータ内に一般的に見られるハードドライブとすることができる。他の実施形態においては、記憶装置312は、フラッシュメモリまたはROM等の任意の種類のコンピュータメモリであってもよい。記憶装置312は、ハードウェア装置106に必要なデータ及びコンピュータプログラムを格納するのに使用される。具体的には、記憶装置312は、起動キーを生成するために起動サーバ102によって用いられる同じ秘密鍵である秘密暗号化/暗号解読キーを用いて、該起動サーバからの暗号化された起動キーを解読することのできる暗号解読アルゴリズムを含む。
カスタマハードウェア装置106のプロセッサ314は、データを処理して様々な機能を実行するディジタル信号プロセッサである。具体的には、プロセッサ314は、起動サーバ102からの起動キーに対して、記憶装置312に格納されている暗号解読アルゴリズムを実行して、該起動キーから該ソフトウェアキー、ハードウェアキー及び購入キーを抽出するように構成またはプログラミングされる。該暗号解読アルゴリズムは、購入したソフトウェアプログラムのインストール中に実行される。また、プロセッサ314は、抽出したハードウェアキーを、このカスタマハードウェア装置106のハードウェアキーと比較し、および該抽出したソフトウェアキーを、インストールするソフトウェアプログラムのソフトウェアキーと比較するように構成される。該ソフトウェアプログラムのインストールは、これら2つの抽出したキーがそれぞれのキーと一致した場合にのみ開始できるようになっている。
図3に示すように、カスタマハードウェア装置106は、入力/出力(I/O)インタフェース322に接続されている入力装置318及びディスプレイ装置320も含むことができる。入力装置318は、キーボード、または別の種類の入力装置とすることができる。ディスプレイ装置320は、液晶ディスプレイ(LCD)等のコンピュータモニタとすることができる。I/Oインタフェース322は、プロセッサ314と、入力装置318及びディスプレイ装置320の両方との間の信号の伝送を可能にするようにバス316に接続される。
本発明の実施形態による購入したソフトウェアプログラムの無許可のインストールを防ぐシステム100の動作を、図4のプロセスフロー図を参照して説明する。ブロック402において、目的とするハードウェア装置のためのソフトウェアプログラムが、オンラインストア104において、カスタマハードウェア装置106のうちの1つを用いて購入される。次に、ブロック404において、該目的とするハードウェア装置のハードウェアキー、購入したソフトウェアプログラムのソフトウェアキー及び購入取引の購入キーが、オンラインストア104から起動サーバ102へ送信される。次いで、ブロック406において、起動サーバ102は、秘密鍵を用いて、該ハードウェアキー、ソフトウェアキー及び購入キーを暗号化して、該購入したソフトウェアプログラムのための暗号化された起動キーを生成する。次に、ブロック408において、該暗号化された起動キーが、該ソフトウェアプログラムの購入に使用されるカスタマハードウェア装置106へ直接またはオンラインストア104を介して送信される。
次に、ブロック410において、購入されたソフトウェアプログラムのインストールプロセスが、特定のハードウェア装置において、該暗号化された起動キーを用いて開始される。次いで、ブロック412において、該特定のハードウェア装置のプロセッサは、起動サーバ102による暗号化に使用されたのと同じ秘密暗号化/暗号解読キーを用いて該起動キーを解読して、該起動キーからハードウェアキー、ソフトウェアキー及び購入キーを抽出する。
次に、ブロック414において、該特定のハードウェア装置のプロセッサによって、該抽出されたハードウェアキーが、該特定のハードウェア装置のハードウェアキーに一致するか否かの判断がなされる。次いで、該キーが一致しない場合、該動作はブロック416へ進み、購入したソフトウェアプログラムのインストールプロセスが終了する。その結果、該購入したソフトウェアプログラムは、該特定のハードウェア装置にはインストールされない。しかし、その後、該キーが一致した場合には、該動作はブロック418へ進む。
ブロック418において、該特定のハードウェア装置のプロセッサによって、該抽出されたソフトウェアキーが、該インストールされるソフトウェアプログラムのソフトウェアキーに一致するか否かの判断がなされる。次いで、該キーが一致しない場合、該動作はブロック416へ進み、そこで該購入したソフトウェアプログラムのインストールプロセスは終了する。しかし、その後、該キーが一致した場合には、該動作はブロック420へ進み、該購入したソフトウェアプログラムの該特定のハードウェア装置へのインストールプロセスは、該購入したソフトウェアプログラムを正しくインストールできるように開始できるようになっている。
代替的な実施形態において、システム100は、該ソフトウェアキー及び購入キーのみを含む暗号化された起動キーを用いる。この代替的な実施形態において、該ハードウェアキーは、該起動キーに暗号化されない。そうではなく、該ハードウェアキーは、該起動キーを暗号化および解読するための秘密暗号化/暗号解読キーとして用いられる。それによって、本実施形態においては、該起動サーバ102は、該ハードウェアキーを暗号化キーとして用いて該ソフトウェアキー及び購入キーを暗号化し、該購入したソフトウェアプログラムのための暗号化された起動キーを生成するように構成される。それに応じて、ハードウェア装置106は、該ハードウェアキーを暗号解読キーとして用いて該暗号化された起動キーを解読して、該ソフトウェアキー及び購入キーを抽出するように構成される。その後、該抽出されたソフトウェアキーは、該ソフトウェアプログラムの現在のハードウェア装置へのインストールが許可されたものであるか否かを判断するために、該インストールされる該ソフトウェアプログラムのソフトウェアキーと比較される。
本発明の代替的な実施形態による購入したソフトウェアプログラムの無許可のインストールを防ぐシステム100の動作を、図5のプロセスフロー図を参照して説明する。ブロック502において、目的とするハードウェア装置のためのソフトウェアプログラムが、オンラインストア104において、カスタマハードウェア装置106のうちの1つを用いて購入される。次に、ブロック504において、該目的とするハードウェア装置のハードウェアキー、該購入したソフトウェアプログラムのソフトウェアキー及び該購入取引のための購入キーが、オンラインストア104から起動サーバ102へ送信される。次いで、ブロック506において、起動サーバ102は、該ハードウェアキーを暗号化キーとして用いて該ソフトウェアキー及び購入キーを暗号化して、該購入したソフトウェアプログラムのための暗号化された起動キーを生成する。次に、ブロック508において、該暗号化された起動キーは、該ソフトウェアプログラムの購入のために使用されるカスタマハードウェア装置106へ直接またはオンラインストア104を介して送信される。
次いで、ブロック510において、該購入したソフトウェアプログラムのインストールプロセスが、特定のハードウェア装置において、該暗号化された起動キーを用いて開始される。次いでブロック512において、該特定のハードウェア装置のプロセッサは、該ハードウェアキーを暗号解読キーとして用いて該暗号化された起動キーを解読し、該起動キーから該ソフトウェアキー及び購入キーを抽出する。
次に、ブロック514において、該特定のハードウェア装置のプロセッサによって、該抽出したソフトウェアキーが該購入したソフトウェアプログラムのソフトウェアキーに一致するか否かの判断がなされる。次いで、該キーが一致しない場合、該動作はブロック516へ進み、該購入したソフトウェアプログラムのインストールプロセスは終了する。しかし、その後、該キーが一致した場合には、該動作はブロック518へ進み、該購入したソフトウェアプログラムの該特定のハードウェア装置へのインストールプロセスは、該購入したソフトウェアプログラムを正しくインストールできるように開始できるようになっている。
別の実施形態においては、システム100は、戻されたソフトウェアプログラムのハードウェア装置への無許可のインストールを防ぐように構成することができる。本実施形態において、起動サーバ102は、該起動サーバが該ソフトウェアプログラムが以前にインストールされたハードウェア装置106から有効アンインストールキーを受信した後にのみ、戻されたソフトウェアプログラムのための返金許可をオンラインストア104へ与える。それに応じて、本実施形態においては、各ハードウェア装置106は、購入されたソフトウェアプログラムが返金のためにアンインストールされる場合に、購入したソフトウェアプログラムの元の起動キーを暗号化して、アンインストールキーを生成するように構成される。本実施形態において、該元の起動キーは、該ソフトウェアプログラムが元々は、ハードウェア装置106にインストールされた場合、該ハードウェア装置のプロセッサのレジスタ(または、該ハードウェア装置の記憶装置)に格納される。したがって、該ソフトウェアプログラムが返金以外の何らかの目的でアンインストールされる場合には、該ハードウェア装置は、該アンインストールキーを生成しない。アンインストールキーが生成される場合には、該プロセッサのレジスタ内の対応する起動キーが、該レジスタ内で無効であるとして警告が出され、または知らされる。その結果として、該戻されたソフトウェアプログラムは、当該起動キーが無効であるとして警告されているため、元の起動キーを用いて、該ハードウェア装置に再びインストールすることはできない。
本発明の実施形態による戻されたソフトウェアプログラムの無許可のインストールを防ぐシステム100の動作を、図6及び図7のプロセスフロー図を参照して説明する。図6のフロー図は、本発明の実施形態によるアンインストールキーを生成し、返金のために該アンインストールキーを確認するプロセスを示す。図7のフロー図は、本発明の実施形態による戻されたソフトウェアプログラムの無許可のインストールを防ぐために、ソフトウェアプログラムのインストール中に起動キーを確認するプロセスを示す。
本発明の実施形態によるアンインストールキーを生成し、返金のために該アンインストールキーを確認するプロセスは、ブロック602で始まり、ユーザは、返金のために、ハードウェア装置からソフトウェアプログラムの恒久的なアンインストールプロセスを開始する。次に、ブロック604において、該ハードウェア装置のプロセッサは、アンインストールするソフトウェアプログラムのための起動キーを検索して暗号化し、アンインストールキーを生成する。次いで、ブロック606において、該ハードウェア装置のプロセッサは、該ハードウェア装置のレジスタまたは記憶装置内の該起動キーが無効であるとして警告を出す。次いで、ブロック608において、該アンインストールキーは、ネットワーク108を介して起動サーバ102へ送信される。
次に、ブロック610において、起動サーバ102は、該アンインストールキーを解読して該起動キーを抽出する。次いで、ブロック612において、該起動サーバのプロセッサによって、該抽出された起動キーが、購入されたソフトウェアプログラムのための有効な起動キーのうちの1つと一致するか否かの判断がなされる。次いで、該キーが一致しない場合、該プロセスはブロック614へ進み、アンインストールしたソフトウェアプログラムのための返金は無効と見なされる。次いで、該キーが一致した場合には、該プロセスはブロック616に進み、アンインストールされたソフトウェアプログラムのための返金が有効と見なされる。返金が許可されたか、すなわち、有効または無効と見なされたか否かにより、オンラインストア104は、該アンインストールされたソフトウェアプログラムに対する払い戻しを行い、該ユーザに返金を知らせるかまたは単に該ユーザに、該アンインストールされたソフトウェアプログラムに対して返金が許可されないことを通知する。
本発明の実施形態による戻されたソフトウェアプログラムの無許可のインストールを防ぐために、ソフトウェアプログラムのインストール中に起動キーを確認するプロセスは、ブロック702で始まり、ユーザは、ハードウェア装置において、起動キーを用いて該ソフトウェアプログラムのインストールプロセスを開始する。次に、ブロック704において、該ハードウェア装置のプロセッサによって、該起動キーが、該ハードウェア装置のレジスタまたは記憶装置内の起動キーのリストに載っているか否かの判断がなされる。次いで、載っていない場合、該プロセスはブロック708へ進み、該インストールプロセスは続行を許可される。しかし、該起動キーが該リストに載っている場合には、該プロセスはブロック706に進む。
ブロック706においては、該ハードウェア装置のプロセッサによって、該起動キーのリスト内の該起動キーが無効であるとして警告が出されているか否かの判断がなされる。次いで、警告が出されている場合、該プロセスはブロック710へ進み、そこで該インストールプロセスは終了する。しかし、その後、該起動キーが無効であるとして警告が出されていない場合には、該プロセスはブロック708へ進み、該ハードウェア装置内の該ソフトウェアプログラムのインストールプロセスは開始することが許可され、このことは、図4及び図5を参照して既に説明した動作のうちの1つを実行することを含んでもよい。
本発明の実施形態によるソフトウェアプログラムの無許可のインストールを防ぐ方法を、図8のプロセスフロー図を参照して説明する。ブロック802において、該ソフトウェアプログラムのインストールプロセスが、ハードウェア装置において、ハードウェアキー及びソフトウェアキーに基づく起動キーを用いて開始される。該ハードウェアキーは、特定のハードウェア装置に関連付けられている。該ソフトウェアキーは、該ソフトウェアプログラムと関連付けられている。次に、ブロック804において、該起動キーは、少なくとも該起動キーから該ソフトウェアキーを抽出するために、該ハードウェア装置において処理される。次いで、ブロック806において、該抽出されたソフトウェアキーは、該ハードウェア装置において、該ソフトウェアプログラムの対応するソフトウェアキーと比較される。次いで、ブロック808において、該ハードウェア装置内での該ソフトウェアプログラムのインストールプロセスは、該抽出されたソフトウェアキーが対応するソフトウェアキーと一致した場合にのみ、開始することが許可される。
本発明の特定の実施形態を記載し、説明してきたが、本発明は、そのように記載され、説明された部材の特定の構成または配置に限定すべきではない。本発明の範囲は、本明細書に添付された請求項およびそれらの等価物によって定義されるべきである。
本発明の実施形態によるソフトウェアプログラムの無許可のインストールを防ぐシステムの構成図である。 本発明の実施形態による図1のシステムに含まれる起動サーバのブロック図である。 本発明の実施形態による図1のシステムに含まれるハードウェア装置のブロック図である。 本発明の実施形態による購入されたソフトウェアプログラムの無許可のインストールを防ぐための図1のシステムの動作のプロセスフロー図である。 本発明の代替的な実施形態による購入されたソフトウェアプログラムの無許可のインストールを防ぐための図1のシステムの動作のプロセスフロー図である。 本発明の実施形態による返金の場合に、アンインストールキーを生成し、該アンインストールキーを確認するプロセスのフロー図である。 本発明の実施形態による戻されたソフトウェアプログラムの無許可のインストールを防ぐための、ソフトウェアプログラムのインストール中に起動キーを認証するプロセスのフロー図である。 本発明の実施形態によるソフトウェアプログラムの無許可のインストールを防ぐ方法のプロセスフロー図である。

Claims (20)

  1. ソフトウェアプログラムの無許可のインストールを防ぐ方法であって、
    ハードウェア装置において、ハードウェアキー及びソフトウェアキーに基づく起動キーを用いて前記ソフトウェアプログラムのインストールプロセスを開始するステップであって、前記ハードウェアキーが特定のハードウェア装置と関連付けられており、前記ソフトウェアキーが前記ソフトウェアプログラムと関連付けられている、開始するステップと、
    前記ハードウェア装置において、前記起動キーを処理して前記起動キーから少なくとも前記ソフトウェアキーを抽出するステップと、
    前記ハードウェア装置において、前記起動キーから抽出した前記ソフトウェアキーと、前記ソフトウェアプログラムの対応するソフトウェアキーとを比較するステップと、
    前記ソフトウェアキーが前記対応するソフトウェアキーに一致した場合にのみ、前記ソフトウェアプログラムの前記ハードウェア装置への前記インストールプロセスを開始できるようにするステップと
    を含む方法。
  2. 前記処理は、前記ハードウェア装置において、前記起動キーを解読して前記起動キーから前記ハードウェアキー及びソフトウェアキーを抽出するステップを含む、請求項1に記載の方法。
  3. 前記起動キーを解読して前記ハードウェアキー及びソフトウェアキーを抽出するステップは、前記ハードウェア装置において、秘密鍵を用いて、前記起動キーを解読して、前記起動キーから前記ハードウェアキー及びソフトウェアキーを抽出するステップを含む、請求項2に記載の方法。
  4. 前記起動キーから抽出した前記ハードウェアキーを、前記ハードウェア装置の対応するハードウェアキーと比較するステップをさらに備え、前記開始できるようにするステップは、前記ソフトウェアの前記ハードウェア装置内への前記インストールプロセスを、前記ソフトウェアキーが前記対応するソフトウェアキーに一致し、前記ハードウェアキーが前記対応するハードウェアキーに一致した場合にのみ、開始できるようにするステップを含む、請求項2に記載の方法。
  5. 前記ハードウェアキー及び前記ソフトウェアキーを暗号化して前記起動キーを生成するステップをさらに備える、請求項2に記載の方法。
  6. 前記抽出するステップは、前記ハードウェア装置において、前記ハードウェアキーを暗号解読キーとして用いて前記起動キーを解読して、前記起動キーから少なくとも前記ソフトウェアキーを抽出するステップを含む、請求項1に記載の方法。
  7. 前記ハードウェアキーを暗号化キーとして用いて前記ソフトウェアキーを暗号化して、前記起動キーを生成するステップをさらに含む、請求項6に記載の方法。
  8. 前記解読するステップは、前記起動キーを解読して、少なくとも前記ソフトウェアキー及び購入キーを抽出するステップを含み、前記購入キーは、前記ソフトウェアプログラムの購入取引と関連付けられている、請求項1に記載の方法。
  9. 前記ソフトウェアプログラムの前記ハードウェア装置からのアンインストールプロセスを開始するステップと、
    前記起動キーを用いてアンインストールキーを生成するステップであって、前記アンインストールキーが、前記ソフトウェアプログラムの返金のために用いられる、生成するステップと、
    前記ハードウェア装置において、前記起動キーが無効であるとして警告を出すステップと、
    をさらに含む、請求項1に記載の方法。
  10. 前記ソフトウェアプログラムの前記ハードウェア装置への別のインストールプロセスを前記起動キーを用いて開始するステップと、
    前記起動キーが、無効であるとして警告が出されているか否かを判断するステップと、
    前記起動キーが、無効であるとして警告が出されていない場合にのみ、前記ソフトウェアプログラムの前記ハードウェア装置への別のインストールプロセスを開始できるようにするステップと、
    をさらに含む、請求項9に記載の方法。
  11. ソフトウェアプログラムの無許可のインストールを防ぐシステムであって、
    ハードウェアキー及びソフトウェアキーに基づいて起動キーを生成するように構成された起動サーバであって、前記ハードウェアキーが特定のハードウェア装置と関連付けられており、前記ソフトウェアキーが前記ソフトウェアプログラムと関連付けられている、起動サーバと、および
    前記ソフトウェアプログラムのインストールプロセス中に前記起動キーを処理して、前記起動キーから少なくとも前記ソフトウェアキーを抽出するように構成されたハードウェア装置であって、さらに、前記起動キーから抽出した前記ソフトウェアキーと、前記ソフトウェアプログラムの対応するソフトウェアキーとを比較するように構成され、さらに、前記ソフトウェアキーが前記対応するソフトウェアキーに一致した場合にのみ、前記ソフトウェアプログラムの前記インストールプロセスを開始できるように構成されたハードウェア装置と、
    を備えるシステム。
  12. 前記ハードウェア装置は、前記起動キーを解読し、前記起動キーから前記ハードウェアキー及びソフトウェアキーを抽出するように構成されている、請求項11に記載のシステム。
  13. 前記ハードウェア装置は、秘密鍵を用いて前記起動キーを解読して、前記起動キーから前記ハードウェアキー及びソフトウェアキーを抽出するように構成されている、請求項12に記載のシステム。
  14. 前記起動サーバは、前記秘密鍵を用いて、前記ハードウェアキー及びソフトウェアキーを暗号化して、前記起動キーを生成するように構成されている、請求項13に記載のシステム。
  15. 前記ハードウェア装置は、前記起動キーから抽出した前記ハードウェアキーを前記ハードウェア装置の対応するハードウェアキーと比較するように構成されており、前記ハードウェア装置はさらに、前記ソフトウェアの前記ハードウェア装置への前記インストールプロセスを、前記ソフトウェアキーが前記対応するソフトウェアキーに一致し、前記ハードウェアキーが前記対応するハードウェアキーに一致した場合にのみ、開始できるように構成されている、請求項12に記載のシステム。
  16. 前記ハードウェア装置は、前記ハードウェア装置において、前記ハードウェアキーを暗号解読キーとして用いて前記起動キーを解読し、前記起動キーから少なくとも前記ソフトウェアキーを抽出するように構成されている、請求項11に記載のシステム。
  17. 前記起動サーバは、前記ハードウェアキーを暗号化キーとして用いて前記ソフトウェアキーを暗号化し、前記起動キーを生成するように構成されている、請求項16に記載のシステム。
  18. 前記起動サーバは、少なくとも前記ソフトウェアキー及び購入キーを暗号化して前記起動キーを生成するように構成されており、前記購入キーが前記ソフトウェアプログラムの購入取引と関連付けられている、請求項11に記載のシステム。
  19. 前記ハードウェア装置は、前記ソフトウェアプログラムの前記ハードウェア装置からのアンインストールプロセス中に前記起動キーを用いてアンインストールキーを生成するように構成されており、前記アンインストールキーは、前記ソフトウェアプログラムの返金のために用いられ、前記ハードウェア装置はさらに、前記ハードウェア装置内の前記起動キーを無効であるとして警告を出すように構成されている、請求項11に記載のシステム。
  20. 前記ハードウェア装置は、前記起動キーを用いた前記ソフトウェアプログラムの前記ハードウェア装置内への別のインストールプロセス中に、前記起動キーが無効であるとして警告が出されているか否かを判断するように構成されており、前記ハードウェア装置は、前記起動キーが無効であるとして警告が出されていない場合にのみ、前記ソフトウェアプログラムの前記ハードウェア装置への別のインストールプロセスを開始できるように構成されている、請求項19に記載のシステム。
JP2007296680A 2006-11-15 2007-11-15 ソフトウェアプログラムの無許可のインストールを防ぐシステム及び方法 Withdrawn JP2008152764A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/599,736 US20080114685A1 (en) 2006-11-15 2006-11-15 System and method for preventing unauthorized installation of a software program

Publications (1)

Publication Number Publication Date
JP2008152764A true JP2008152764A (ja) 2008-07-03

Family

ID=39370362

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007296680A Withdrawn JP2008152764A (ja) 2006-11-15 2007-11-15 ソフトウェアプログラムの無許可のインストールを防ぐシステム及び方法

Country Status (3)

Country Link
US (1) US20080114685A1 (ja)
JP (1) JP2008152764A (ja)
DE (1) DE102007054052A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160004308A (ko) * 2013-04-23 2016-01-12 퀄컴 인코포레이티드 보안 파라미터들에 기초한 작업 보안 키의 생성

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7792522B1 (en) * 2006-01-13 2010-09-07 Positive Access Corporation Software key control for mobile devices
US20090018962A1 (en) * 2007-07-12 2009-01-15 Arcsoft, Inc. Method for activating application module
JP2009053901A (ja) * 2007-08-27 2009-03-12 Seiko Epson Corp プリンタ
EP2400420A1 (en) * 2010-06-28 2011-12-28 Thomson Licensing Method, system and secure processor for executing a software application
US20120022931A1 (en) * 2010-07-21 2012-01-26 Syed Farman A On-Line Bulk Acquisition of Digital Products
US10200201B2 (en) * 2014-04-07 2019-02-05 Samsung Electronics Co., Ltd Method for application installation, electronic device, and certificate system
US9965639B2 (en) * 2015-07-17 2018-05-08 International Business Machines Corporation Source authentication of a software product
US11062299B2 (en) 2017-10-24 2021-07-13 BBPOS Limited System and method for indicating entry of personal identification number
US11809528B2 (en) * 2018-05-09 2023-11-07 Stripe, Inc. Terminal hardware configuration system

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3647907B2 (ja) * 1994-09-09 2005-05-18 富士通株式会社 暗号化ソフトウェアの解凍システム
US6799277B2 (en) * 1998-06-04 2004-09-28 Z4 Technologies, Inc. System and method for monitoring software
US6725205B1 (en) * 1999-12-02 2004-04-20 Ulysses Esd, Inc. System and method for secure software installation
US7051211B1 (en) * 2000-08-21 2006-05-23 International Business Machines Corporation Secure software distribution and installation
US7124445B2 (en) * 2002-06-21 2006-10-17 Pace Anti-Piracy, Inc. Protecting software from unauthorized use by converting source code modules to byte codes

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160004308A (ko) * 2013-04-23 2016-01-12 퀄컴 인코포레이티드 보안 파라미터들에 기초한 작업 보안 키의 생성
JP2016520265A (ja) * 2013-04-23 2016-07-11 クアルコム,インコーポレイテッド セキュリティパラメータに基づくワーキングセキュリティキーの生成
KR102239711B1 (ko) 2013-04-23 2021-04-12 퀄컴 인코포레이티드 보안 파라미터들에 기초한 작업 보안 키의 생성

Also Published As

Publication number Publication date
DE102007054052A1 (de) 2008-07-17
US20080114685A1 (en) 2008-05-15

Similar Documents

Publication Publication Date Title
JP2008152764A (ja) ソフトウェアプログラムの無許可のインストールを防ぐシステム及び方法
AU2011332180B2 (en) Secure software licensing and provisioning using hardware based security engine
CN101174295B (zh) 一种可离线的drm认证的方法及系统
US10491395B2 (en) Handy terminal and payment method to be used in same
CN110008659B (zh) 软件许可的离线管理方法、装置、计算机设备及存储介质
WO2021128244A1 (zh) 一种注册授权方法及系统
KR100792287B1 (ko) 자체 생성한 암호화키를 이용한 보안방법 및 이를 적용한보안장치
TWI598764B (zh) 透過線上伺服器與在安全作業系統中執行程式碼的內容保護
CN115795438B (zh) 应用程序授权的方法、系统及可读存储介质
EP1837789A2 (en) Method and apparatus for temporarily accessing content using temporary license
EP1471405A1 (en) Method and device for protecting information against unauthorised use
CN110674525A (zh) 一种电子设备及其文件处理方法
CN101447009A (zh) 软件安装方法、装置及系统
US20150262084A1 (en) Methods for defending static and dynamic reverse engineering of software license control and devices thereof
JP2011150524A (ja) ソフトウェア実行システム
US20140230068A1 (en) System and method for packaging and authenticating a software product
KR101711024B1 (ko) 부정조작방지 장치 접근 방법 및 그 방법을 채용한 단말 장치
KR102104470B1 (ko) Usb메모리를 이용한 소프트웨어 라이센스 관리방법 및 장치
EP3731127B1 (en) Control system and method thereof for secure manufacturing
JP2009032165A (ja) ソフトウェアのライセンス管理システム、プログラム及び装置
CN100410831C (zh) 随机捆绑软件安装方法
CN116842529B (zh) 一种计算机程序产品、软件运行方法及其相关装置
JP2008505385A (ja) セキュリティユニットおよびそのようなセキュリティユニットを備える保護システムならびにデータを保護するための方法
JP2000112751A (ja) ソフトウエア流通システムに用いる装置
JP3289656B2 (ja) プログラムの実行制御方式

Legal Events

Date Code Title Description
A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20090303