JP6931531B2 - プログラムをライセンスする装置 - Google Patents

プログラムをライセンスする装置 Download PDF

Info

Publication number
JP6931531B2
JP6931531B2 JP2016530300A JP2016530300A JP6931531B2 JP 6931531 B2 JP6931531 B2 JP 6931531B2 JP 2016530300 A JP2016530300 A JP 2016530300A JP 2016530300 A JP2016530300 A JP 2016530300A JP 6931531 B2 JP6931531 B2 JP 6931531B2
Authority
JP
Japan
Prior art keywords
program
operating system
license
activation
license authentication
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.)
Active
Application number
JP2016530300A
Other languages
English (en)
Other versions
JP2016525753A5 (ja
JP2016525753A (ja
Inventor
冠儒 林
冠儒 林
Original Assignee
博世尼克資訊股▲ふん▼有限公司
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 博世尼克資訊股▲ふん▼有限公司 filed Critical 博世尼克資訊股▲ふん▼有限公司
Publication of JP2016525753A publication Critical patent/JP2016525753A/ja
Publication of JP2016525753A5 publication Critical patent/JP2016525753A5/ja
Application granted granted Critical
Publication of JP6931531B2 publication Critical patent/JP6931531B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/105Arrangements for software license management or administration, e.g. for managing licenses at corporate level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/107License processing; Key processing
    • G06F21/1076Revocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/107License processing; Key processing
    • G06F21/1077Recurrent authorisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Storage Device Security (AREA)
  • Computer And Data Communications (AREA)
  • Stored Programmes (AREA)

Description

関連出願と優先権主張の相互参照
本出願は、2013年8月2日に出願されたPCT/CN2013/080695号の国際出願に基づく利益を主張し、その内容は参考として本明細書に取り入れるものとする。
本発明は、プログラムをライセンスする方法に関し、特に、クラウドでプログラムをライセンスする方法に関する。
クラウドストレージは、ネットワークのオンラインデータを記憶するモードである。データは、通常、専用サーバーではなく、第三者で管理される複数の仮想サーバーに格納されている。データセンター事業者は、顧客の需要に基づいて、バックエンドでの仮想化リソースを格納することを準備し、ストレージ・プール(storage pool)の方法で提供する。顧客は、自分でファイルやオブジェクトを格納するストレージ・プールを使用することができる。クラウドコンピューティングは、インターネットベースのコンピューティングモードである。共有ソフトウェアとハードウェアの資源とメッセージは、このモードにより、必要に応じて、コンピュータや他の装置に提供することができる。クラウドコンピューティングは、新しいインターネットベースの情報技術(IT)サービスの増加、使用及び配信モデルを説明し、通常、インターネットを介して動態的かつ拡張しやすい機能を提供し、多くの場合、仮想化リソースであることに関する。ユーザーは、サービスソフトウェアとデータにアクセスすることができる。サービス供給者は、サービスを維持するために、インフラストラクチャ及びプラットフォームを正常に作動させる。サービス供給者によって提供されるサービスソフトウェアは、多くの場合、「オンデマンドソフトウェア」と呼ばれている。オンデマンドソフトウェアは、通常、使用時間に基づいて料金を請求する。ユーザーは、ローエンドのソフトウェア及びハードウェアを有するだけでこれらのサービスを利用でき、企業のコストを節約できる。アプリケーションプログラムを集中的に提供されているので、アップデートは、ユーザによって手動で更新し又は新しいソフトウェアをインストールすることなく、瞬時に公開することができる。したがって、クラウドコンピューティングは、企業の要求に対応し、より迅速にアプリケーションプログラムを備え、管理の複雑さ及び維持コストを軽減し、ITリソースの迅速な再分配を可能にする。
クラウドという概念について、その利点は、強力な処理能力を有する様々なハードウェア及びソフトウェアを購入する必要がない。個人ユーザーまたは企業ユーザーは、ハードウェア及びソフトウェアをできるだけ仮想化しながら、ハードウェアのメンテナンス及びソフトウェアの更新は、サービス供給者によって実施される。ユーザーまたは企業ユーザーは、ソフトウェアを購入した後、シリアル番号を取得し、ソフトウェアのインストール中又はソフトウェアを起動した後にシリアル番号を入力し認証されて、ソフトウェアを使用することができる。一般的に言えば、ユーザーは、数分から数日までの時間を費やし、シリアル番号を通知する電子メールを待つ、或いは販売店舗を介してシリアル番号を取得する必要がある。また、シリアル番号発生器は、シリアル番号を生成し、ソフトウェアをクラックするために使用することがある。したがって、著作権侵害の問題も発生しやすくなる。
図1には、従来のプログラムをライセンスする流れを示す概略図である。ステップS101において、ユーザ端末システムは、アプリケーションプログラムを起動する指示を受信する。ステップS102において、ユーザ端末システムは、アプリケーションプログラムをメモリにロードする。メモリは、ハードディスク又はランダムアクセスメモリ(RAM)を含んでもよい。アプリケーションプログラムは、インターネットを介して、サービス端末のサーバからユーザ端末システムのハードディスクにロードし、ハードディスクからユーザ端末システムのRAMにロードして実行する。アプリケーションプログラムは、企業内のファイルサーバからユーザ端末システムのRAMにロードして直接実行することができる。ステップS103において、アプリケーションプログラムは、ライセンスを得るかどうかを判断し、ライセンスを有する場合、ステップS104に移行する。ライセンスを有していない場合、ステップS105に移行する。ステップS104において、アプリケーションプログラムを実行する。ステップS105において、アプリケーションプログラムは、認証コードを入力するようにユーザーに要求し、認証が成功すると、ステップS104に移行する。認証が失敗すると、ステップS106に移行する。ステップS105において、アプリケーションプログラムの実行が終了した後又は認証が失敗した後、ステップS106に移行し、プログラムのプロセスを終了する。
従来のライセンス認証のステップにおいて、アプリケーションプログラムの内容のすべては、メモリにロードされた後、ライセンス認証を実行する。アプリケーションプログラムは、認証の処理を回避するために、簡単にコピーまたは変更するので、ソフトウェアの著作権侵害になりやすい。別の従来技術において、ライセンス認証のための專用のプログラムを使用しライセンス認証を行うが、ユーザ端末システムのデバイスドライバが制御することにより、オペレーティングシステムがライセンス認証を行うことではないため、ライセンス認証の完全性と安全性が低下し、ソフトウェアの著作権の侵害を引き起こす。また、このようなプログラムは、ライセンス認証を行うために、それぞれのアプリケーションプログラムに応じて作必要がある。必要なプロセスフローでアプリケーションプログラムファイルアクセスできれば、それぞれ異なるアプリケーションプログラムに応じて、ライセンス認証のための專用のプログラムを作る必要がない。故に、著作権侵害の問題を防止するために、ソフトウェアがハードディスクまたはRAMにロードされる前に、ユーザ端末システムのデバイスドライバは、オペレーティングシステムにライセンス認証を実行してからソフトウェアをRAMにロードする指令を通知できる方法が望ましい。
従来の企業内に使用されるソフトウェアのライセンスの数について、企業が持っているコンピュータの特定の数に応じて、特定の数のライセンスを購入し、ソフトウェアのインストール後に、ソフトウェアがインストールされたコンピュータだけが使用できる。同じシリアル番号を使用して二つの異なるコンピュータや装置にインストールすることは、ソフトウェアライセンスの規定に符合していない。別のコンピュータに同じシリアル番号のソフトウェアを使用することは、元のコンピュータからアンインストールした後、別のコンピュータにインストールできる。即ち、ソフトウェアの使用権は、ハードウェアデバイスに依存している。このライセンス認証方法の欠点は、企業のライセンスの数が企業内のコンピュータの数よりも少ない場合、コンピュータの数に対応するライセンス数を購入する必要があるので、ソフトウェアのライセンスを取得する方法は融通ではない。したがって、コンピュータまたは装置に依存せず、ソフトウェアのライセンス数だけを管理できる方法が望ましい。
上述の構想を実現するために、プログラムをライセンスする装置を提出する。前記装置は、複数のプログラムから特定プログラムを選択するローカルオペレーティングシステムと、
記憶装置と、
ランダムアクセスメモリと、
前記ローカルオペレーティングシステム又は前記リモートサーバと接続し、前記特定プログラムのライセンス認証を行うために、ライセンス認証情報を前記ローカルオペレーティングシステム又は前記リモートサーバに送信するライセンス認証素子と、
前記記憶装置とは異なる記憶装置を用いて構築されるファイルシステムと、
を含み、
前記ライセンス認証素子が、デバイスドライバを更に含み、
前記ライセンス認証情報を受信した前記ローカルオペレーティングシステム又は前記リモートサーバは、前記特定プグラムのライセンス認証を行い、ライセンス認証に成功したとき、ライセンス認証に成功したことを前記ライセンス認証素子に通知し、
ライセンス認証に成功したことの通知に基づき、前記ライセンス認証素子は、前記特定プログラムを前記リモートサーバから前記記憶装置に記憶する処理と、前記デバイスドライバを介して前記特定プログラムを前記記憶装置から前記ファイルシステムに送信する処理と、前記ローカルオペレーティングシステムが前記特定プログラムを前記ファイルシステムから前記ランダムアクセスメモリにロードする処理とそれぞれ許可する一方、
前記ライセンス認証に成功しないとき、前記ライセンス認証素子は、前記記憶装置に記憶する前記処理と、前記ファイルシステムに送信する前記処理と、前記ランダムアクセスメモリにロードする前記処理とを許可せず、前記ローカルオペレーティングシステムは、損傷したファイルを前記ランダムアクセスメモリにロードし、又は、前記特定プログラムを前記ランダムアクセスメモリにロードできない状態とすることを特徴とする。
本発明は、プログラムをライセンスする方法及びプログラムを取引する装置を提出することにより、企業ユーザーに購入されたライセンスの数は、不必要な購入ライセンスの数を減らすように弾性的に調整できる。企業ユーザーは、ライセンスの必要な数に達するソフトウェアをより経済的に購入してインストールすることができる。一方、本発明は、アプリケーションプログラムベンダーに対し、より厳密なライセンス認証でを提供し、著作権侵害の可能性を減らし、より多くの保障がある。本発明は、一般のユーザーにも適用可能である。
従来のプログラムをライセンスする流れを示す概略図である。 本発明の好ましい第一実施形態に係るライセンスの流れを示す概略図である。 本発明の好ましい第一実施形態に係るプログラムを取引するシステムを示す概略図である。 本発明の好ましい第二実施形態に係るクラウドシステムのライセンスを示す概略図である。 本発明の好ましい第三実施形態に係るプログラムをライセンスする方法を示す概略図である。 本発明の好ましい第四実施形態に係るプログラムをライセンスする方法を示す概略図である。 本発明の別の好ましい実施形態に係るプログラムをライセンスするシステムを示す概略図である。 本発明の別の好ましい実施形態に係るプログラムをライセンスするシステムを示す概略図である。 本発明の別の好ましい実施形態に係るプログラムをライセンスする方法を示す概略図である。 本発明の別の好ましい実施形態に係るプログラムを取引する装置にプログラムをライセンスする方法を示す概略図である。
以下に本発明を実施例に基づいて詳述するが、あくまでも例示であって、本発明の範囲はこれらの実施形態に限定されない。本発明の範囲は、特許請求の範囲に記載されており、さらに特許請求の範囲の記載と均等な意味及び範囲内での全ての変更を含んでいる。
図2は、本発明の好ましい第一実施形態に係るライセンスの流れを示す概略図である。ユーザ端末システムは、アプリケーションプログラムの取引プラットフォームを使用する前に、メインアプリケーションプログラムをインストールする必要がある。メインアプリケーションプログラムは、自由にダウンロードしてインストールするようにユーザに提供される。メインアプリケーションプログラムは、オペレーティングシステムとハードウェアデバイスを通信するデバイスドライバ及びユーザ端末システムのオペレーティングシステムがメモリ空間を読み込む必要がある情報を含む。ステップS201において、ユーザ端末システムは、アプリケーションプログラムを起動する指示を受信する。ステップS202は、ライセンスを判断する。ステップS202において、ユーザ端末システムのオペレーティングシステムは、購入したアプリケーションプログラムのファイルにアクセスする前に、ライセンス認証を行うために、ライセンスデータをリモートサーバに送信する。ライセンス認証に成功する前に、ユーザ端末システムのオペレーティングシステムは購入したアプリケーションプログラムのファイルをロードすることになると、デバイスドライバは、購入したアプリケーションプログラムのファイルのロードを停止する。この時点で、ユーザ端末システムのオペレーティングシステムは、ライセンス認証を実行する。ライセンス認証が成功した場合、デバイスドライバは、購入したアプリケーションプログラムのファイルをロードすることが許可し、ステップS203に移行する。ライセンス認証が失敗した場合、ステップS204に移行する。ステップS203において、デバイスドライバは、ユーザ端末システムのオペレーティングシステムで制御するために、購入したアプリケーションプログラムをオペレーティングシステムに引き渡す。ステップS204において、リモートサーバは、ライセンスシステムにログインするためのアカウントとパスワードを提供するように、ユーザに要求する。ステップS205において、リモートサーバは、前記アカウントの支払状況をチェックし、前記アカウントの支払状況が支払われた場合、ステップS203に移行し、その後、ステップS206、ステップS207に順番に移行する。アカウントの支払い状況が支払われない場合、ステップS207に移行する。ステップS206において、オペレーティングシステムは、ユーザ端末システムのランダムアクセスメモリ(RAM)に購入したアプリケーションプログラムのファイルをロードして実行する。ステップS207において、メインアプリケーションプログラムを終了する。
図3は、本発明の好ましい第一実施形態に係るプログラムを取引するシステム30を示す概略図である。プログラムを取引するシステム30は、プログラムを取引する装置32及びリモートサーバ305を含む。プログラムを取引する装置32は、第一アクセス素子、第二アクセス素子及びライセンス認証素子307を含む。例えば、第一アクセス素子は、記憶装置306であり、第二アクセス素子は、ランダムアクセスメモリ304である。第一アクセス素子は、リモートサーバ305のライブラリにアクセスし、前記ライブラリは、複数のプログラム、すなわち、所望で購入したアプリケーションプログラムを含む。第二アクセス素子は、複数のプログラムから特定プログラムを選択するように、ローカルオペレーティングシステム302にアクセスすることに供する。ライセンス認証素子307は、前記ライセンス認証を行うために、ローカルオペレーティングシステム302又はリモートサーバ305と接続し、前記ライセンス認証に成功した後、前記特定プログラムを実行することが許可される。
図3において、プログラムを取引する装置32は、メインアプリケーションプログラム301、ローカルオペレーティングシステム(ローカルOS)302、デバイスドライバ309、ファイルシステム303をさらに含む。所望で購入したアプリケーションプログラムが実行されるように選択された場合、ローカルオペレーティングシステム302は、購入したアプリケーションプログラムに必要なメモリサイズなどの情報を確認するために、前記購入したアプリケーションプログラムのヘッダーを読み取る。その後、ローカルオペレーティングシステム302は、前記購入したアプリケーションプログラムに新しいプロセスを割り当て、新しいプロセスを起動する。このとき、ライセンス認証素子307は、認証情報2を送信するために起動され、リモートサーバ305に対しライセンス認証を行う。ライセンス認証素子307は、ライセンス認証を通過したことが通知された後に、記憶装置306、ファイルシステム303又はデバイスドライバ309を制御するように制御メッセージ1、制御メッセージ2又は制御メッセージ3をそれぞれ送信することで、前記購入したアプリケーションプログラムをリモートサーバ305から記憶装置306に記憶すること、前記購入したアプリケーションプログラムをデバイスドライバ309を介して記憶装置30からファイルシステム303に記憶すること及びローカルオペレーティングシステム302で前記購入したアプリケーションプログラムをファイルシステム303からランダムアクセスメモリ304にロードして実行することを許可する。別の好ましい実施形態において、ライセンス認証素子307は、ライセンス認証を行うために、ローカルオペレーティングシステム302に向かって認証情報1を送信することができる。ライセンス認証に成功した後、同様に、ライセンス認証素子307は、前記購入したアプリケーションプログラムをリモートサーバ305のライブラリからランダムアクセスメモリ304にロードして実行するように、制御メッセージ1及び2を送信する。図3において、記憶装置306とランダムアクセスメモリ304との間の破線は、前記購入したアプリケーションプログラムのファイルがそれらの間に間接的に記憶されていることを示し、すなわち、前記購入したアプリケーションプログラムファイルのデータは、記憶装置306、デバイスドライバ309、ファイルシステム303及びローカルオペレーティングシステム302を介してランダムアクセスメモリ304にロードして実行する。
図3において、記憶装置306は、リモートサーバ305のハードディスク、ローカルハードディスク、専用のRAMブロック又はそれらの任意の組み合わせであってもよい。購入したアプリケーションプログラムを記憶するための位置は、設計に応じて異なっていてもよく、ファイルシステム303は、購入したアプリケーションプログラムのファイルにアクセスするための位置に割り当てる。ローカルオペレーティングシステム302特定の位置での特定ファイルのデータを記憶させるために、ファイルシステム303は、ローカルオペレーティングシステム302から指令を受信するために使用される記憶装置306にシミュレートされ、特定の位置での特定ファイルのデータを記憶する。ライセンス認証素子307は、デバイスドライバ309及びメインアプリケーションプログラム301の一部を含んでもよく、又は、メインアプリケーションプログラム301は、デバイスドライバ309及びライセンス認証素子307を含んでもよい。ライセンス認証素子307の任務は、ライセンス認証を行うために、ローカルオペレーティングシステム302又はリモートサーバ305と接続する。ライセンス認証に成功した後、ライセンス認証素子307は、購入したアプリケーションプログラムのファイルは、記憶装置306に記憶することを許可し、又は記憶装置306からファイルシステム303に記憶することを許可し、又はローカルオペレーティングシステム302がファイルシステム303からランダムアクセスメモリ304に記憶することを許可する。これは、ライセンス認証素子307は、記憶装置306、ファイルシステム303及びリモートサーバ305のハードディスクを制御できるかどうかに依存している。本発明によれば、ライセンス認証に成功する前に、ライセンス認証素子307は、購入したアプリケーションプログラムのファイルを記憶装置306からファイルシステム303に送信することを禁止し、或いは、ローカルオペレーティングシステム302が購入したアプリケーションプログラムのファイルをファイルシステム303から記憶装置306に送信することを禁止する。
前記購入したアプリケーションプログラムのファイルがランダムアクセスメモリ304にロードされると、ローカルオペレーティングシステム302は、前記購入したアプリケーションプログラムのファイルのヘッダーに記録された前記アプリケーションプログラムのエントリーポイントに基づいて、前記アプリケーションプログラムのエントリーポイントを呼び出し、ローカルオペレーティングシステム302は、実行権限を新しいプロセスに引き渡す。
図4は、本発明の好ましい第二実施形態に係るクラウドシステム40のライセンスを示す概略図である。クラウドシステム40は、企業の外部におけるパブリッククラウド42及び企業の内部におけるプライベートクラウド44を含む。プライベートクラウド44は、ソフトウェアホスト441、ローカルエリアネットワーク442及び複数のコンピュータホスト443、444、445、446、447を含む。パブリッククラウド42は、クラウドホスト421を含む。企業は、アプリケーションプログラムのソフトウェアのライセンスの特定の数を購入した後、クラウドホスト421のアプリケーションプログラムのソフトウェアは、企業のソフトウェアホスト441に分配することができる。ソフトウェアホスト441は、特定の数のアプリケーションプログラムのソフトウェアを複数のコンピュータホスト443、444、445、446、447に更に分配する。図4において、クラウドホスト421は、インターネット422を介して企業のソフトウェアホスト441に接続されていることを示す。一つの好ましい実施形態において、クラウドホスト421は、インターネットを介して複数のソフトウェアホストに接続され、前記複数のソフトウェアホストのうちのソフトウェアホスト441のそれぞれは、異なる企業によって所有されている。
図4において、クラウドホスト421と企業内のソフトウェアホスト441との間のライセンス認証及び購入したアプリケーションプログラムのファイルの使用は、クラウドホスト421によって管理することができる。クラウドホスト421は、ライセンス数に対する署名として使用される第一秘密鍵を有している。企業内のソフトウェアホスト441は、ライセンス数を認証するとして使用される第二秘密鍵を有している。企業は、特定数のライセンスを購入すると、クラウドホスト421は、前記第一秘密鍵を使用してライセンス数のデータを暗号化してから、クラウドホスト421は、暗号化されたライセンス数のデータを署名認証する。ライセンス数のデータが改ざんされた場合、暗号化されたライセンス数のデータは、署名認証されたデータと一致しないことになる。署名認証されたデータは、インターネット422を介して企業内のソフトウェアホスト441に送信される。ソフトウェアホスト441は、ライセンス数を認証するために、第二秘密鍵を使用して署名認証されたデータを復号化する。ライセンス数が改ざんされた場合、署名認証されたデータは、認証の時に互いに一致しなくなり、クラウドホスト421は、すべてのライセンス操作を直接拒否する。署名が認証された場合、購入のアプリケーションプログラムのファイルは、インターネット422を介して企業内のソフトウェアホスト441にダウンロードすることができる。或いは、企業内の情報技術管理者は、別のコンピュータに署名認証されたデータを記憶し、インターネット422を介して前記購入したアプリケーションプログラムをダウンロードする。これにより、ソフトウェアホスト441のオフラインダウンロードは、ハッキングまたは感染される危険を回避することができる。
図4において、企業内のソフトウェアホスト441は、クラウドホスト421によって認証されたライセンス数を管理することができる。一つの好ましい実施形態において、企業内のローカルエリアネットワーク442には、五つのコンピュータホスト443、444、445、446と447があるが、三つのコンピュータホストだけが前記購入したアプリケーションプログラムを同時に使用しているため、三つのライセンス数を購入する必要がある。例えば、コンピュータホスト443と444は、メインアプリケーションプログラムをインストールした後、同一の購入したアプリケーションプログラムを同時に使用する。ソフトウェアホスト441は、どのくらいの数量のコンピュータホストが購入したアプリケーションプログラムを使用しているかを記録し、ソフトウェアホスト441におけるライセンス数から2を減算する。コンピュータホスト445が前記購入したアプリケーションプログラムを同時に使用しているとき、ライセンス数から1をさらに減算する。コンピュータホスト446が前記購入したアプリケーションプログラムを同時に使用しているとき、ライセンス数は負値となっており、ソフトウェアホスト441におけるライセンス数を越えていることを示し、ソフトウェアホスト441は、コンピュータホスト446に前記購入したアプリケーションプログラムを実行させないようにする。コンピュータホスト443が前記購入したアプリケーションプログラムを使用していないときは、図3に示すように、記憶装置306に記憶されている前記購入したアプリケーションプログラムは、ローカルオペレーティングシステム302によってランダムアクセスメモリ304にロードされず、ソフトウェアホスト441におけるライセンス数が1を増加する。そのため、コンピュータホスト446又は447は、同一の購入したアプリケーションプログラムを使用できる。
一つの好ましい実施形態において、図3におけるプログラムを取引する装置32は、ソフトウェアホスト441である、リモートサーバ305は、クラウドホスト421である。別の好ましい実施形態において、プログラムを取引する装置32は、複数のコンピュータホスト443、444、445、446と447のいすれかであり、リモートサーバ305は、ソフトウェアホスト441である。ソフトウェアホスト441内のライセンス認証素子307は、ライセンス認証に成功しないとき、ローカルオペレーティングシステム302が購入したアプリケーションプログラムをランダムアクセスメモリ304にロードし実行することを許可しない。同様に、複数のコンピュータホスト443、444、445、446と447のいすれかは、ライセンス認証に成功しないとき、その内部のライセンス認証素子307は、購入したアプリケーションプログラムを記憶装置306に記憶する、又はランダムアクセスメモリ304にロードすることを許可しない。
複数のコンピュータホスト443、444、445、446と447は、異なるローカルエリアネットワークにあるとき、ネットワークの低い伝送速度と長い待ち時間のため、購入したアプリケーションプログラムのファイルが先に記憶装置306に記憶される。その後、購入したアプリケーションプログラムは、ファイルファイルシステム303及びローカルオペレーティングシステム302を介して記憶装置306からランダムアクセスメモリ304(即ちRAM)にロードされ実行される。
企業内のコンピュータホストを使用するユーザーは、企業内のアカウントにログインする必要があり、アカウントは、異なるアイデンティティに応じて異なる権限を持っている。コンピュータホスト443〜447のいずれかは、ライセンス認証に成功した後、ソフトウェアホスト441は、アカウントに関連付けられた権限を有するトークンを発行する。ライセンスに成功したコンピュータホストのローカルオペレーティングシステム302又はライセンス認証素子307は、前記トークンに基づいて、購入したアプリケーションプログラムがどのように扱われるかを決定する。例えば、購入したアプリケーションプログラムがランダムアクセスメモリ304にロードされる、又は、購入したアプリケーションプログラムのロードが中止される。同様に、クラウドホスト421は、ライセンス認証サーバにすることができる。企業ユーザーは、特定の権限を持つアカウントを使用してソフトウェアホスト441にログインすると、パブリッククラウド42でのクラウドホスト421は、特定の権限に応じて、ソフトウェアホスト441にライセンスを与えることで、購入したアプリケーションプログラムのファイルをソフトウェアホスト441にダウンロードする。ソフトウェアホスト441でのローカルオペレーティングシステム302又はライセンス認証素子307は、トークンに応じて、購入したアプリケーションプログラムがどのように扱われるかを決定する。例えば、購入したアプリケーションプログラムがソフトウェアホスト441のランダムアクセスメモリ304にロードされる、又は、購入したアプリケーションプログラムのロードが中断される。
購入アプリケーションプログラムのファイルは、ライセンスに成功した後、記憶装置306に記憶される。購入したアプリケーションプログラムのファイルがコピーされて使用することを防ぐために、これらのファイルは、保護のために暗号化された特定の秘密鍵を持っている。特定の秘密鍵は、前記トークンにあり、トークンを有する購入したアプリケーションプログラムのファイルのみが許可されてダウンロードされることが許可する。購入したアプリケーションプログラムのファイルがコンピュータホスト443で実行されるときに、起動したトークンは、ソフトウェアホスト441によって記録され、すなわち、ライセンス数のカウントは、ソフトウェアホスト441によって記録されている。前記記録が削除された場合、購入したアプリケーションプログラムのファイルをロードすることができない。ライセンス数は、クラウドホスト421がオフラインで改ざんされた場合は、ライセンス認証素子307は、購入したアプリケーションプログラムのファイルがソフトウェアホスト441のリモートサーバ305からコンピュータホスト443のランダムアクセスメモリ304にロードされれることを禁止する。
ライセンス認証は、どのように多くの購入したアプリケーションプログラムが使用されているかに応じて、完全なライセンスと部分的なライセンスに分けることができる。購入したアプリケーションプログラムは、異なる機能を有する複数のアプリケーションプログラムを含む場合、前記複数のアプリケーションプログラムは、機能に応じて異なるファイルに分けることができる。アプリケーションプログラムの部分的な機能を購入した場合だけは、部分的なライセンスが適用される。
図5、本発明の好ましい第三実施形態に係るプログラムをライセンスする方法を示す概略図である。前記プログラムは、記憶装置又はリモートサーバに記憶され、複数の実行ファイルを含む。前記複数の実行ファイルは、第一実行ファイル及び第二実行ファイルを含む。前記第一実行ファイルは、第一ヘッダーを含み、第二実行ファイルは、第二ヘッダーを含む。前記方法は、以下のステップを含む。ステップS501は、オペレーティングシステムが前記プログラムを起動する指示を受信して前記プログラムを起動するようにする。ステップS502は、前記第一ヘッダーを読み取るために、前記オペレーティングシステムが前記第一ヘッダーを記憶装置に記憶するようにし、ライセンス認証素子が前記オペレーティングシステムが前記第一実行ファイルをランダムアクセスメモリにロードして実行することを中止させるようにする。ステップS503は、ライセンス認証を行うために、前記ライセンス認証素子が前記オペレーティングシステム又は前記リモートサーバと接続するようにする。ステップS504は、前記第一実行ファイルは前記ライセンス認証に成功した後、前記ライセンス認証素子は前記第一実行ファイルを前記ランダムアクセスメモリにロードして実行することを許可する。ステップS505は、前記第二実行ファイルは使用されるとき、前記オペレーティングシステムは前記第二ヘッダーを読み取り、他のライセンス認証を行うために、前記ライセンス認証素子が前記オペレーティングシステム又は前記リモートサーバと接続する。
図5において、前記ライセンス認証に成功しないとき、前記オペレーティングシステムは、購入したアプリケーションプログラムを終了するために、損傷したファイルをロードし、又は、前記購入したアプリケーションプログラムを終了するために、前記オペレーティングシステムが前記プログラムをロードすることができなくなる。前記ライセンス認証は、有効期限に基づいて、永久のライセンス認証、リースのライセンス認証及びトライアルのライセンス認証に分ける。前記ライセンス認証は、それらのいずれか一つを含む。前記ライセンス認証は、前記永久のライセンス認証であるとき、前記プログラムが無制限に使用されていることを許可する。前記ライセンス認証は、前記リースのライセンス認証であるとき、特定の時間間隔で前記プログラムが使用されていることを許可する。前記ライセンス認証は、前記トライアルのライセンス認証であるとき、試用期間が終了すると前記プログラムの使用が中止される。
前記ライセンス認証は、ネットワークライセンスまたは電話ライセンスをさらに含む。前記ネットワークライセンスは、第一認証コードを用いてライセンス認証を行う。前記第一認証コードは、プライバシー関連の情報を含み、前記プライバシー関連の情報は、個人番号、誕生日、またはこれらの任意の組み合わせを含む。前記電話ライセンスは、電話番号を用いてライセンス認証を行い、前記電話ライセンスが認証されるとき、前記電話番号により第二認証コードを取得し、前記第二認証コードは前記電話ライセンスのライセンス認証に成功するために用いる。認証のために、個人のプライバシーを用いることにより、シリアルナンバーやライセンスコードを共有することを防ぐことができ、購入したアプリケーションプログラムが支払われなかった場合、著作権侵害を防止することができる。
前記ライセンス認証に成功した後、前記オペレーティングシステムは、トークンを取る。前記トークンは、匿名トークン及び非匿名トークンを含む。前記匿名トークンは、共有のコンピュータに使用され、前記非匿名トークンは、プライベートのコンピュータに使用される。匿名トークンの目的は、匿名で購入したアプリケーションプログラムのファイルにアクセスすることを許可するが、コンピュータがシャットダウンされた場合、購入したアプリケーションプログラムのファイルが削除されるので、公共のコンピュータに適用される。非匿名トークンの目的は、購入したアプリケーションプログラムのファイルにアクセスすることを許可するが、コンピュータがシャットダウンされた場合、購入したアプリケーションプログラムのファイルが削除されないので、プライベートのコンピュータに適用される。
図6は、本発明の好ましい第四実施形態に係るプログラムをライセンスする方法を示す概略図である。プログラムをライセンスする方法は、以下のステップを含む。ステップS601は、オペレーティングシステムがプログラムを起動する指示を受信して前記プログラムを起動するようにする。ステップS602は、前記オペレーティングシステムが前記プログラムをロードする前に、ライセンス認証を行うために、ライセンス認証素子が前記オペレーティングシステム又はリモートサーバと接続するようにする。ステップS603は、前記ライセンス認証に成功した後、前記オペレーティングシステムがトークンを取るようにする。
前記トークンは、暗号化された秘密鍵を含む。暗号化された秘密鍵を持っている場合、購入したアプリケーションプログラムのファイルがロードされるように復号化される。前記ライセンス認証は、永久のライセンス認証、リースのライセンス認証及びトライアルのライセンス認証から選択された一つを含む。前記ライセンス認証は、前記リースのライセンス認証又は前記トライアルのライセンス認証であるとき、前記ライセンス認証素子は、前記ライセンス認証を行うために、前記リモートサーバと接続する。前記ライセンス認証は、前記永久のライセンス認証であり、且つ前記リモートサーバが接続できないとき、前記ライセンス認証素子は、前記ライセンス認証を行うために、前記オペレーティングシステムと接続する。このような状況では、一時的なライセンス認証を行うことができるが、所定の期間(例えば一週間)の後、ライセンス認証のためにリモートサーバーに強制的に接続し、購入したアプリケーションプログラムが海賊版とされないことを保証できる。
図6において、前記方法は、前記匿名トークンが前記ライセンス認証に成功し、前記プログラムを閉じるとき、前記プログラムのデータは、所定値に復元されるステップと、前記非匿名トークンが前記ライセンス認証に成功し、前記プログラムを閉じるとき、前記プログラムのデータは、元の状態を維持するステップと、をさらに含む。
図7(a)は、本発明の別の好ましい実施形態に係るプログラムをライセンスするシステム50を示す概略図である。システム50は、プログラムをライセンスする装置52及びリモートサーバ506を含む。プログラムをライセンスする装置52は、ファイルシステム501、記憶装置507、オペレーティングシステム502及びライセンス認証素子503を含む。リモートサーバ506におけるソフトウェアデータベースは、プログラム505を含み、プログラム505は、ヘッダー5050を含む。オペレーティングシステム502は、プログラム起動指示504を受信し、プログラム505を起動し、オペレーティングシステム502がヘッダー5050を読み取るようにヘッダー5050をランダムアクセスメモリ508に記憶する。ライセンス認証素子503は、オペレーティングシステム502がプログラム505をランダムアクセスメモリ508にロードして実行することを中止させ、ライセンス認証を行うために、オペレーティングシステム502又はリモートサーバ506と接続する。前記ライセンス認証に成功した後、ライセンス認証素子503はプログラム505をランダムアクセスメモリ508にロードして実行することを許可する。
別の好ましい実施形態において、プログラム505は、記憶装置507に記憶されていないが、ライセンス認証素子503は、プログラム505が記憶装置507に記憶されることを中止させ、ライセンス認証を行うために、オペレーティングシステム502と接続する。前記ライセンス認証に成功した後、ライセンス認証素子503は、プログラム505を記憶装置507に記憶することを許可し、オペレーティングシステム502でプログラム505をファイルシステム501からランダムアクセスメモリ508にロードして実行する。
図7(b)は、本発明の別の好ましい実施形態に係るプログラムをライセンスするシステム60を示す概略図である。システム60は、プログラムをライセンスする装置62及びリモートサーバ606を含む。プログラムをライセンスする装置62は、モバイルデバイス601及びホスト611を含む。ホスト611は、オペレーティングシステム602、デバイスドライバ608及びランダムアクセスメモリ612を含む。モバイルデバイス601は、ファームウェア(Firmware)607及びプログラム609を含む。プログラム609は、ヘッダー6090を含む。好ましい実施形態において、オペレーティングシステム602は、プログラム609を起動するプログラム起動指示604を受信してプログラム609を起動し、ヘッダー6090を読み取る。
図7(b)において、オペレーティングシステム602とモバイルデバイス601との間のデバイスドライバ608は、オペレーティングシステム602とモバイルデバイス601を制御する。ファームウェア607は、ライセンス認証素子603を含む。ファームウェア607は、プログラム609を送信及び制御するために、デバイスドライバ608と協働する。モバイルデバイス601とホスト611と結合されると、ライセンス認証の前、プログラム609の必要なメモリサイズなどの情報を確認するために、デバイスドライバ608とオペレーティングシステム602によりプログラム609のヘッダー6090を読み取る。その後、オペレーティングシステム602は、プログラム609に新しいプロセスを割り当て、新しいプロセスを起動する。このとき、ライセンス認証素子603は、オペレーティングシステム602がデバイスドライバ608を介してファームウェア607と接続してライセンス認証を行うするように作動される。ライセンス検証に成功する前に、ファームウェア607は、オペレーティングシステム602がプログラム609をモバイルデバイス601からホスト611に送信することを中止させる。
ライセンス検証に成功した後、ファームウェア607は、オペレーティングシステム602がプログラム609をモバイルデバイス601からホスト611に送信することを許可し、デバイスドライバ608は、オペレーティングシステム602でプログラム609をランダムアクセスメモリ612にロードして実行することを許可する。別の好ましい実施形態において、ライセンス認証素子603は、リモートサーバ606又はライセオペレーティングシステム602と接続してライセンス認証を行うことができる。
図7(b)において、モバイルデバイス601は、携帯型のハードディスクであってもよく、オペレーティングシステム602は、組み込みオペレーティングシステム、Windows(登録商標)のオペレーティングシステム、Linux(登録商標)のオペレーティングシステム及びSolaris(登録商標)のオペレーティングシステムからなる群から選択された一つを含む。
図8は、本発明の別の好ましい実施形態に係るプログラムをライセンスする方法を示す概略図である。前記プログラムをライセンスする方法は、以下のステップを含む。ステップS801は、特定プログラムを選択する。ステップS802は、ローカルオペレーティングシステム又はリモートサーバでライセンス認証を行う。ステップS803は、前記ライセンス認証に成功した後、前記ローカルオペレーティングシステムが特定プログラムを特定メモリにロードする。
図8において、特定メモリは、メモリパスのためにユーザによって選択された。前記方法は、前記特定プログラムをクラウドホストからソフトウェアホストに記憶するステップと、前記特定プログラムを前記ソフトウェアホストからローカルエリアネットワーク(LAN)ホストに送信するステップと、をさらに含む。前記方法は、前記特定プログラムの実行を中止させ、前記ライセンス認証に成功した後、ライセンス認証素子は、前記オペレーティングシステムが前記特定プログラムをロードし続けることを許可するステップと、をさらに含む。
図9は、本発明の別の好ましい実施形態に係るプログラムを取引する装置62にプログラム609をライセンスする方法を示す概略図である。プログラムを取引する装置62は、ホスト611とモバイルデバイス601とを含む。前記方法は、以下のステップを含む。ステップS901は、モバイルデバイス601をホスト611と結合する。ステップS902は、モバイルデバイス601におけるファームウェア607によってプログラム609をモバイルデバイス601からホスト611に送信することを中止させ、ホスト611におけるデバイスドライバ608は、ホスト611におけるオペレーティングシステム602でプログラム609をホスト611におけるランダムアクセスメモリ612にロードして実行することを中止させる。ステップS903は、オペレーティングシステム602がデバイスドライバ608によってファームウェア607と接続しライセンス認証を行うように、モバイルデバイス601におけるライセンス認証素子603を起動する。ステップS904は、前記ライセンス認証に成功した後、ファームウェア607はプログラム609をモバイルデバイス601からホスト611に送信することを許可し、デバイスドライバ608はオペレーティングシステム609でプログラム609をランダムアクセスメモリ612にロードして実行することを許可する。
実施例
1、第一ヘッダーを含む第一実行ファイルと、第二ヘッダーを含む第二実行ファイルと、を含む、複数の実行ファイルを含むプログラムが記憶装置又はリモートサーバに記憶される、プログラムをライセンスする方法であって、オペレーティングシステムが前記プログラムを起動する指示を受信して前記プログラムを起動するようにするステップと、前記第一ヘッダーを読み取るために、前記オペレーティングシステムが前記第一ヘッダーを記憶装置に記憶するようにし、ライセンス認証素子が前記オペレーティングシステムが前記第一実行ファイルをランダムアクセスメモリにロードして実行することを中止させるようにするステップと、ライセンス認証を行うために、前記ライセンス認証素子が前記オペレーティングシステム又は前記リモートサーバと接続するようにするステップと、前記第一実行ファイルは前記ライセンス認証に成功した後、前記ライセンス認証素子は前記第一実行ファイルを前記ランダムアクセスメモリにロードして実行することを許可するステップと、前記第二実行ファイルは使用されるとき、前記オペレーティングシステムは前記第二ヘッダーを読み取り、他のライセンス認証を行うために、前記ライセンス認証素子が前記オペレーティングシステム又は前記リモートサーバと接続するステップと、含む。
2、実施例1に記載のプログラムをライセンスする方法においては、前記ライセンス認証に成功しないとき、前記オペレーティングシステムは、前記プログラムを終了するために損傷したファイルをロードし、又は、前記プログラムを終了するために前記オペレーティングシステムが前記プログラムをロードすることができなくなり、プログラムエラーが発生するようにするステップと、前記第二実行ファイルは前記他のライセンス認証に成功した後、前記ライセンス認証素子は前記第二実行ファイルを前記ランダムアクセスメモリにロードして実行することを許可するステップと、をさらに含む。
3、ログラムをライセンスする方法は、オペレーティングシステムがプログラムを起動する指示を受信して前記プログラムを起動するようにするステップと、前記オペレーティングシステムが前記プログラムをロードする前に、ライセンス認証を行うために、ライセンス認証素子が前記オペレーティングシステム又は前記リモートサーバと接続するようにするステップと、前記ライセンス認証に成功した後、前記オペレーティングシステム又は記憶装置がトークンを取るようにするステップと、を含む。
4、実施例3に記載のプログラムをライセンスする方法においては、前記ライセンス認証素子が、前記オペレーティングシステムが前記特定プログラムをロードすることを中止させ、前記ライセンス認証に成功した後、前記ライセンス認証素子は、前記オペレーティングシステムが前記プログラムをロードし続けることを許可し、前記トークンは、匿名トークン及び非匿名トークンを含み、前記匿名トークンは、共有のコンピュータに使用され、前記非匿名トークンは、プライベートのコンピュータに使用され、前記ライセンス認証は、永久のライセンス認証、リースのライセンス認証及びトライアルのライセンス認証から選択された一つを含み、前記ライセンス認証は、前記リースのライセンス認証又は前記トライアルのライセンス認証であるとき、前記ライセンス認証素子は、前記ライセンス認証を行うために、前記リモートサーバと接続し、前記ライセンス認証は、前記永久のライセンス認証であり、且つ前記リモートサーバが接続できないとき、前記ライセンス認証素子は、前記ライセンス認証を行うために、前記オペレーティングシステムと接続し、前記方法は、前記匿名トークンが前記ライセンス認証に成功し、前記プログラムを閉じるとき、前記プログラムのデータは、所定値に復元されるステップと、前記非匿名トークンが前記ライセンス認証に成功し、前記プログラムを閉じるとき、前記プログラムのデータは、元の状態を維持するステップと、をさらに含む。
5、ヘッダーを含むプログラムをライセンスする装置であって、記憶装置と、前記記憶装置に配置されるファイルシステムと、前記プログラムを起動する指示を受信して前記プログラムを起動し、前記ヘッダーを読み取るために、前記ヘッダーを記憶装置に記憶するオペレーティングシステムと、前記オペレーティングシステムが前記プログラムをランダムアクセスメモリにロードして実行することを中止させ、ライセンス認証を行うために、前記オペレーティングシステム又は前記リモートサーバと接続するライセンス認証素子と、を含み、前記ライセンス認証に成功した後、前記ライセンス認証素子は前記プログラムを前記ランダムアクセスメモリにロードして実行することを許可する。
6、実施例5に記載のプログラムをライセンスする装置においては、前記装置は、デバイスドライバを含み、前記ライセンス認証素子は、前記ライセンス認証に成功したことが通知された後、前記記憶装置、前記ファイルシステムまた前記デバイスドライバを制御するように第一制御メッセージ、第二制御メッセージ又は第三制御メッセージをそれぞれ送信することで、前記プログラムを前記リモートサーバから前記記憶装置に記憶することを許可し、前記プログラムを前記デバイスドライバを介して前記記憶装置から前記ファイルシステムに記憶し、前記オペレーティングシステムで前記プログラムを前記ファイルシステムから前記ランダムアクセスメモリにロードして実行し、前記ライセンス認証に成功しないとき、前記オペレーティングシステムは、前記プログラムを終了するために、損傷したファイルをロードし、又は、前記プログラムを終了するために、前記オペレーティングシステムが前記プログラムをロードすることができなくなり、プログラムエラーを発生させ、前記ライセンス認証は、永久のライセンス認証、リースのライセンス認証及びトライアルのライセンス認証から選択された一つを含み、前記ライセンス認証は、前記永久のライセンス認証であるとき、前記プログラムが無制限に使用されていることを許可し、前記ライセンス認証は、前記リースのライセンス認証であるとき、特定の時間間隔で前記プログラムが使用されていることを許可し、前記ライセンス認証は、前記トライアルのライセンス認証であるとき、試用期間が終了すると前記プログラムの使用が中止され、前記ライセンス認証は、ネットワークライセンスまたは電話ライセンスをさらに含み、前記ネットワークライセンスは、第一認証コードを用いてライセンス認証を行い、前記第一認証コードは、プライバシー関連の情報を含み、前記プライバシー関連の情報は、個人番号、誕生日、またはこれらの任意の組み合わせを含み、前記電話ライセンスは、電話番号を用いてライセンス認証を行い、前記電話ライセンスが認証されるとき、前記電話番号により第二認証コードを取得し、前記第二認証コードは前記電話ライセンスのライセンス認証に成功するために用いる。
7、プログラムをライセンスする方法は、特定プログラムを選択するステップと、ローカルオペレーティングシステム又はリモートサーバでライセンス認証を行うステップと、前記ライセンス認証に成功した後、前記ローカルオペレーティングシステムが特定プログラムを特定メモリにロードするステップと、を含む。
8、実施例7に記載のプログラムをライセンスする方法においては、前記方法は、前記特定プログラムをクラウドホストからソフトウェアホストに記憶するステップと、前記特定プログラムを前記ソフトウェアホストからローカルエリアネットワーク(LAN)ホストに送信するステップと、をさらに含み、前記方法は、前記特定プログラムの実行を中止させ、前記ライセンス認証に成功した後、ライセンス認証素子は、前記オペレーティングシステムが前記特定プログラムをロードし続けることを許可するステップと、をさらに含み、前記ライセンス認証は、個人の機密情報を認証し、前記個人の機密情報は、個人番号、誕生日、またはこれらの任意の組み合わせを含み、前記特定メモリは、メモリパスのためにユーザによって選択された。
9、プログラムを取引する装置は、複数のプログラムを含むリモートライブラリにアクセスする第一アクセス素子と、前記複数のプログラムから特定プログラムを選択するように、ローカルオペレーティングシステムにアクセスすることに供する第二アクセス素子と、ライセンス認証を行うために、ローカルオペレーティングシステム又はリモートサーバと接続し、前記ライセンス認証に成功した後、前記ライセンス認証素子は前記特定プログラムを実行することを許可するライセンス認証素子と、を含む。
10、実施例9に記載のプログラムを取引する装置においては、前記第一アクセス素子は、プロキシサーバハードディスクドライブ又はクラウドハードディスクドライブであり、前記第二アクセス素子は、ダイナミックランダムアクセスメモリ(RAM)であり、前記ライセンス認証素子が前記ローカルオペレーティングシステムが前記特定プログラムを前記RAMにロードして実行することを中止させ、前記ライセンス認証に成功した後、前記ライセンス認証素子は、前記ローカルオペレーティングシステムが前記プログラムを前記RAMにロードし続けることを許可し、前記プログラムを取引する装置はソフトウェアホストであると、前記リモートサーバはクラウドホストであり、前記ライセンス認証は前記クラウドホストに行い、前記特定プログラムは前記ソフトウェアホストにアクセスし、前記プログラムを取引する装置はソフトウェアホストであり、前記リモートサーバが接続できなく、前記リモートサーバは前記クラウドホストであると、前記ライセンス認証は前記ソフトウェアホストに行い、前記特定プログラムはコンピュータホストにアクセスし、前記プログラムを取引する装置はコンピュータホストであり、前記リモートサーバは前記ソフトウェアホストであると、前記ライセンス認証は前記ソフトウェアホストに行い、前記特定プログラムは前記コンピュータホストにアクセスし、前記ライセンス認証は、永久のライセンス認証、リースのライセンス認証及びトライアルのライセンス認証から選択された一つを含み、前記ライセンス認証は、前記永久のライセンス認証であるとき、前記特定プログラムが無制限に使用されていることを許可し、前記ライセンス認証は、前記リースのライセンス認証であるとき、特定の時間間隔で前記特定プログラムが使用されていることを許可し、前記ライセンス認証は、前記トライアルのライセンス認証であるとき、試用期間が終了すると前記プログラムの使用が中止され、前記ライセンス認証は、前記リースのライセンス認証又は前記トライアルのライセンス認証であるとき、前記ライセンス認証素子は前記ライセンス認証を行うために、前記リモートサーバと接続し、前記ライセンス認証は、前記永久のライセンス認証であり、前記リモートサーバが接続できないとき、前記ライセンス認証素子は前記ライセンス認証を行うために、前記ローカルオペレーティングシステムと接続し、前記ライセンス認証に成功しないとき、前記ローカルオペレーティングシステムは、損傷したファイルをロードし、前記ライセンス認証に成功した後、前記ライセンス認証素子は、前記ローカルオペレーティングシステムが前記特定プログラムを前記第一アクセス素子又は前記第二アクセス素子にロードすることを許可し、前記ライセンス認証は、ネットワークライセンスまたは電話ライセンスをさらに含み、前記ネットワークライセンスは、第一認証コードを用いて前記ライセンス認証を行い、前記第一認証コードは、プライバシー関連の情報を含み、前記プライバシー関連の情報は、個人番号、誕生日、またはこれらの任意の組み合わせを含み、前記電話ライセンスは、電話番号を用いて前記ライセンス認証を行い、前記電話ライセンスが認証されるとき、前記電話番号により第二認証コードを取得し、前記第二認証コードは前記電話ライセンスのライセンス認証に成功するために用いる。
11、プログラムをライセンスする装置であって、オペレーティングシステム、ランダムアクセスメモリ及びデバイスドライバを含むホストと、前記ホストに結合されるモバイルデバイスと、を含み、前記モバイルデバイスは、ライセンス認証を行うためのライセンス認証素子を含むファームウェアを含み、前記モバイルデバイスと前記ホストと結合されると、前記ファームウェアは、前記プログラムを前記モバイルデバイスから前記ホストに送信することを中止させ、前記デバイスドライバは、前記オペレーティングシステムで前記プログラムを前記ランダムアクセスメモリにロードして実行することを中止させ、前記ライセンス認証素子は、前記オペレーティングシステムが前記デバイスドライバによって前記ファームウェアと接続し前記ライセンス認証を行うように起動され、前記ライセンス認証に成功した後、前記ファームウェアは、前記プログラムを前記モバイルデバイスから前記ホストに送信することを許可し、前記デバイスドライバは、前記オペレーティングシステムで前記プログラムを前記ランダムアクセスメモリにロードして実行することを許可する。
12、ホストとモバイルデバイスとを含むプログラムを取引する装置にプログラムをライセンスする方法であって、
前記モバイルデバイスを前記ホストと結合するステップと、前記モバイルデバイスにおけるファームウェアによって前記プログラムを前記モバイルデバイスから前記ホストに送信することを中止させ、前記ホストにおけるデバイスドライバは、前記ホストにおけるオペレーティングシステムで前記プログラムを前記ホストにおけるランダムアクセスメモリにロードして実行することを中止させるステップと、前記オペレーティングシステムが前記デバイスドライバによって前記ファームウェアと接続し前記ライセンス認証を行うように、前記モバイルデバイスにおけるライセンス認証素子を起動するステップと、前記ライセンス認証に成功した後、前記ファームウェアは前記プログラムを前記モバイルデバイスから前記ホストに送信することを許可し、前記デバイスドライバは前記オペレーティングシステムで前記プログラムを前記ランダムアクセスメモリにロードして実行することを許可するステップと、を含む。
以上の説明によると、当業者であれば本発明の技術思想を逸脱しない範囲で、多様な変更及び修正が可能であることが分かる。従って、本発明の技術的な範囲は、明細書の詳細な説明に記載された内容に限らず、特許請求の範囲によって定めなければならない。
1、2、3 制御メッセージ
30 プログラムを取引するシステム
32 プログラムを取引する装置
40 クラウドシステム
42 パブリッククラウド
44 プライベートクラウド
50、60 プログラムをライセンスするシステム
52、62 プログラムをライセンスする装置
301 メインアプリケーションプログラム
302 ローカルオペレーティングシステム(ローカルOS)
303 ファイルシステム
304、508、612 ランダムアクセスメモリ(RAM)
305、506、606 リモートサーバ
306、507 記憶装置
307、503、603 ライセンス認証素子
309、608 デバイスドライバ
421 クラウドホスト
422 インターネット
441 ソフトウェアホスト
442 ローカルエリアネットワーク
443、444、445、446、447 コンピュータホスト
502、602 オペレーティングシステム(OS)
504、604 プログラム起動指示
505、609 プログラム
601 モバイルデバイス
607 ファームウェア
611 ホスト
5050、6090 ヘッダー

Claims (1)

  1. 複数のプログラムを含むリモートライブラリを備えるリモートサーバと通信回線を介して接続されるプログラムをライセンスする装置であって、
    前記複数のプログラムから特定プログラムを選択するローカルオペレーティングシステムと、
    記憶装置と、
    ランダムアクセスメモリと、
    前記ローカルオペレーティングシステム又は前記リモートサーバと接続し、前記特定プログラムのライセンス認証を行うために、ライセンス認証情報を前記ローカルオペレーティングシステム又は前記リモートサーバに送信するライセンス認証素子と、
    前記記憶装置とは異なる記憶装置を用いて構築されるファイルシステムと、
    を含み、
    前記ライセンス認証素子が、デバイスドライバを更に含み、
    前記ライセンス認証情報を受信した前記ローカルオペレーティングシステム又は前記リモートサーバは、前記特定プグラムのライセンス認証を行い、ライセンス認証に成功したとき、ライセンス認証に成功したことを前記ライセンス認証素子に通知し、
    ライセンス認証に成功したことの通知に基づき、前記ライセンス認証素子は、前記特定プログラムを前記リモートサーバから前記記憶装置に記憶する処理と、前記デバイスドライバを介して前記特定プログラムを前記記憶装置から前記ファイルシステムに送信する処理と、前記ローカルオペレーティングシステムが前記特定プログラムを前記ファイルシステムから前記ランダムアクセスメモリにロードする処理とそれぞれ許可する一方、
    前記ライセンス認証に成功しないとき、前記ライセンス認証素子は、前記記憶装置に記憶する前記処理と、前記ファイルシステムに送信する前記処理と、前記ランダムアクセスメモリにロードする前記処理とを許可せず、前記ローカルオペレーティングシステムは、損傷したファイルを前記ランダムアクセスメモリにロードし、又は、前記特定プログラムを前記ランダムアクセスメモリにロードできない状態とすることを特徴とするプログラムをライセンスする装置。
JP2016530300A 2013-08-02 2013-08-02 プログラムをライセンスする装置 Active JP6931531B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2013/080695 WO2015013974A1 (zh) 2013-08-02 2013-08-02 许可程序的装置、程序交易装置及其许可程序的方法

Publications (3)

Publication Number Publication Date
JP2016525753A JP2016525753A (ja) 2016-08-25
JP2016525753A5 JP2016525753A5 (ja) 2021-04-30
JP6931531B2 true JP6931531B2 (ja) 2021-09-08

Family

ID=52430899

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016530300A Active JP6931531B2 (ja) 2013-08-02 2013-08-02 プログラムをライセンスする装置

Country Status (7)

Country Link
US (1) US10223509B2 (ja)
EP (1) EP3029589B1 (ja)
JP (1) JP6931531B2 (ja)
CN (1) CN105324774B (ja)
ES (1) ES2964339T3 (ja)
SG (1) SG11201600817SA (ja)
WO (1) WO2015013974A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180260539A1 (en) * 2017-03-08 2018-09-13 Microsoft Technology Licensing, Llc Device specific identity linked to user account
US10635787B2 (en) * 2017-04-19 2020-04-28 International Business Machines Corporation Analysis of output files
CN108933646B (zh) * 2018-06-14 2021-09-28 艾普阳科技(深圳)有限公司 一种授权许可服务的控制方法、客户端及备用服务器端

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5222134A (en) * 1990-11-07 1993-06-22 Tau Systems Corporation Secure system for activating personal computer software at remote locations
JPH07230380A (ja) * 1994-02-15 1995-08-29 Internatl Business Mach Corp <Ibm> 適用業務プログラムの利用管理方法およびシステム
US5838910A (en) * 1996-03-14 1998-11-17 Domenikos; Steven D. Systems and methods for executing application programs from a memory device linked to a server at an internet site
US6134659A (en) * 1998-01-07 2000-10-17 Sprong; Katherine A. Controlled usage software
AU7593601A (en) * 2000-07-14 2002-01-30 Atabok Inc Controlling and managing digital assets
US7515718B2 (en) * 2000-12-07 2009-04-07 Igt Secured virtual network in a gaming environment
US7742992B2 (en) * 2002-02-05 2010-06-22 Pace Anti-Piracy Delivery of a secure software license for a software product and a toolset for creating the software product
US7543140B2 (en) * 2003-02-26 2009-06-02 Microsoft Corporation Revocation of a certificate and exclusion of other principals in a digital rights management (DRM) system based on a revocation list from a delegated revocation authority
JP4597568B2 (ja) * 2003-07-15 2010-12-15 パナソニック株式会社 セキュアデバイス、情報処理端末、及び情報処理システム
WO2005125072A2 (en) * 2004-06-22 2005-12-29 Nds Limited Digital rights management system
US20060047604A1 (en) * 2004-08-31 2006-03-02 Kraft-Oz Oded S Methods and apparatus providing portable application and data
US7698744B2 (en) * 2004-12-03 2010-04-13 Whitecell Software Inc. Secure system for allowing the execution of authorized computer program code
US7702590B2 (en) * 2005-09-19 2010-04-20 At&T Intellectual Property I, Lp Trial access for media files from a media list
US8417640B2 (en) * 2005-10-31 2013-04-09 Research In Motion Limited Secure license key method and system
EP1798653B1 (de) * 2005-12-16 2011-08-03 Aladdin Europe GmbH Verfahren, Computerprogrammprodukt und Vorrichtung zum Schützen eines einen Funktionsblock aufweisenden Programms
US20070143130A1 (en) * 2005-12-20 2007-06-21 Xstream Instructions, Ltd. Network of instruction stations
US7900243B2 (en) * 2006-10-19 2011-03-01 Oracle America, Inc. Method and system for managing execution of an application module
CN101067839A (zh) * 2007-04-27 2007-11-07 哈尔滨工业大学 互联网作业软件系统防盗版方法
JP2010108237A (ja) * 2008-10-30 2010-05-13 Nec Corp 情報処理システム
JP5263070B2 (ja) * 2009-08-13 2013-08-14 株式会社リコー プログラム導入支援装置、プログラム導入支援システム、プログラム導入支援方法、及びプログラム導入支援プログラム
US8752187B2 (en) * 2010-09-27 2014-06-10 Samsung Electronics Co., Ltd. Portable license server
CN102034059B (zh) * 2010-12-02 2013-09-04 东莞宇龙通信科技有限公司 应用程序管理方法、装置以及终端
US20120166619A1 (en) * 2010-12-23 2012-06-28 Microsoft Corporation Licensing and metering of virtualized applications
US20120216269A1 (en) * 2011-02-18 2012-08-23 Mitel Networks Corporation Software licensing in a virtualization environment
CN102685727B (zh) * 2011-03-11 2015-07-01 中国移动通信有限公司 一种应用程序发送、运行方法、系统、服务器和终端
US8886910B2 (en) * 2011-09-12 2014-11-11 Microsoft Corporation Storage device drivers and cluster participation
CN102567685B (zh) 2011-12-31 2015-01-07 常熟理工学院 基于非对称公钥密码体系的软件版权保护方法
US9032050B2 (en) * 2012-10-31 2015-05-12 Vmware, Inc. Systems and methods for accelerating remote data retrieval via peer nodes
WO2014116201A1 (en) * 2013-01-22 2014-07-31 Empire Technology Development Llc Fail-safe licensing for software applications

Also Published As

Publication number Publication date
EP3029589A4 (en) 2017-03-15
EP3029589A1 (en) 2016-06-08
EP3029589B1 (en) 2023-08-30
WO2015013974A1 (zh) 2015-02-05
ES2964339T3 (es) 2024-04-05
CN105324774A (zh) 2016-02-10
CN105324774B (zh) 2018-05-04
US10223509B2 (en) 2019-03-05
JP2016525753A (ja) 2016-08-25
SG11201600817SA (en) 2016-03-30
US20160171190A1 (en) 2016-06-16

Similar Documents

Publication Publication Date Title
US10291619B2 (en) System, method, and device for delivering communications and storing and delivering data
US9910969B2 (en) System, method, and device for delivering communications and storing and delivering data
TWI492085B (zh) 用於根據使用者識別符增強產品功能的方法、設備及電腦儲存媒體
US20210216612A1 (en) Blockchain digital rights management streaming library
JP4974534B2 (ja) デジタルアプリケーションのライセンスを取得するためのコンピューティングデバイスおよび方法
US9026804B2 (en) Methods and apparatus for protected distribution of applications and media content
EP2628125B1 (en) Method and apparatus for downloading drm module
TWI494786B (zh) 應用程式配送系統、應用程式配送方法、終端機及終端機程式產品
US20130144755A1 (en) Application licensing authentication
CN103718201B (zh) 由多租户服务提供方执行动态平台重新配置
US11093587B2 (en) Software wrapper and installer using timestamp validation and system identification validation
JP2010244542A (ja) ユーザ装置において保護されたコンテンツにアクセスするためにユーザにライセンスを提供するための方法、システム、ライセンスサーバ、およびソフトウェアモジュール
MX2012000077A (es) Metodo para controlar y monitorear de forma remota los datos producidos sobre un software de escritorio.
CN108846263B (zh) 软件授权处理及运行方法和装置、电子设备
US9886685B2 (en) Distributed digital rights-managed file transfer and access control
JP6931531B2 (ja) プログラムをライセンスする装置
TWI617938B (zh) 授權程式的裝置、程式交易裝置及其授權程式的方法
TW201133268A (en) Content binding at first access
US9336362B2 (en) Remote installation of digital content
JP2002116834A (ja) ソフトウェアの使用許諾方法と使用許諾システム及びコンピュータ読み取り可能な記録媒体
KR20110111988A (ko) 휴대용 단말기에 설치된 애플리케이션 실행 제어 방법 및 시스템

Legal Events

Date Code Title Description
A524 Written submission of copy of amendment under article 19 pct

Free format text: JAPANESE INTERMEDIATE CODE: A525

Effective date: 20160329

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160728

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170720

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170801

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20171030

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180201

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20180202

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20180202

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180724

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20181018

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20181220

A524 Written submission of copy of amendment under article 19 pct

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20190124

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20190702

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191017

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20191017

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20191028

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20191029

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20191227

C211 Notice of termination of reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C211

Effective date: 20200107

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20200630

C13 Notice of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: C13

Effective date: 20200915

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20201006

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20201210

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20210112

A524 Written submission of copy of amendment under article 19 pct

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20210315

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20210406

C23 Notice of termination of proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C23

Effective date: 20210622

C03 Trial/appeal decision taken

Free format text: JAPANESE INTERMEDIATE CODE: C03

Effective date: 20210727

C30A Notification sent

Free format text: JAPANESE INTERMEDIATE CODE: C3012

Effective date: 20210727

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210816

R150 Certificate of patent or registration of utility model

Ref document number: 6931531

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150