JP5738287B2 - ソフトウェアアプリケーションの取得方法 - Google Patents

ソフトウェアアプリケーションの取得方法 Download PDF

Info

Publication number
JP5738287B2
JP5738287B2 JP2012516793A JP2012516793A JP5738287B2 JP 5738287 B2 JP5738287 B2 JP 5738287B2 JP 2012516793 A JP2012516793 A JP 2012516793A JP 2012516793 A JP2012516793 A JP 2012516793A JP 5738287 B2 JP5738287 B2 JP 5738287B2
Authority
JP
Japan
Prior art keywords
security module
software application
electronic security
function
user
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
JP2012516793A
Other languages
English (en)
Other versions
JP2012531645A (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.)
Thomson Licensing SAS
Original Assignee
Thomson Licensing SAS
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 Thomson Licensing SAS filed Critical Thomson Licensing SAS
Publication of JP2012531645A publication Critical patent/JP2012531645A/ja
Application granted granted Critical
Publication of JP5738287B2 publication Critical patent/JP5738287B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • 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]
    • G06F21/107License processing; Key processing
    • 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/109Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by using specially-adapted hardware at the client
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0877Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
    • 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/101Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities
    • G06F21/1014Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities to tokens
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/86Secure or tamper-resistant housings

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Storage Device Security (AREA)
  • Information Transfer Between Computers (AREA)

Description

本発明は、ソフトウェア配信装置からのプロテクトされたソフトウェアの取得、及びユーザコンピュータ装置でのそれらソフトウェアのプロテクトに関する。
現在、ソフトウェアアプリケーションの違法な複製及び使用を防止する重要な必要が存在している。今日まで、ソフトウェアアプリケーションの違法な複製及び/又は使用を防止するために3つのプロテクト技術が知られている。
第一の技術は、特定のソフトウェアを必要とせず、パスワードを有さない個人がソフトウェアを使用するのを防止するため、パスワード又は秘密鍵をソフトウェアに提供することからなる。パスワードは、例えばソフトウェアに予め記録された一連の番号である。次いで、ソフトウェアは、ユーザにより入力されたパスワードが予め記録されたパスワードに対応する場合にのみ機能することが許可される。ソフトウェア及びパスワードは、ユーザに個別に送信されることが好ましい。この技術の問題は、故意又は過失により、パスワードがクライアントにより漏洩する場合があることである。従って、係る技術のプロテクトのレベルは、非常に高くない。
第二の技術は、「ハードウェアソルダリング」と一般に呼ばれており、ソフトウェアを受信することが意図されるコンピュータの1以上の物理パラメータを抽出すること、抽出された物理パラメータを有するコンピュータでのみ機能することが許可されるように、物理パラメータでソフトウェアをカスタマイズすることからなる。この物理パラメータは、例えばMACアドレスである。従って、アプリケーションは、このMACアドレスを有するコンピュータでのみ機能することが許可される。この技術の問題点は、クライアントは1つのコンピュータでのみソフトウェアを使用することができ、コンピュータを変えることができない。
最後に、第三の技術は、電子的なセキュリティモジュールをソフトウェアと関連付けすることからなる。この電子的なセキュリティモジュールには、購入時にソフトウェアが提供される。電子的なセキュリティモジュールは、例えばソフトウェアアプリケーションの使用権といった秘密情報のアイテムをもつ不揮発性メモリ(ROM)を備える集積回路を指定する。係る電子的なセキュリティモジュールは、例えば、スタートアップ及び/又はソフトウェアの異なる実行段階でハードウェアロック又は「ドングル“dongle”」の形態で発見され、ソフトウェアは、電子的なセキュリティモジュールにおける使用権の存在を検証し、前記ソフトウェアに関連する使用権が電子的なセキュリティモジュールに存在する場合にのみその実行を継続する。この技術によれば、ソフトウェアアプリケーションは、このソフトウェアに対する使用権を有する電子的なセキュリティモジュールがこのコンピュータに接続される場合にのみ、このコンピュータで機能することが許可される。係る電子的なセキュリティモジュールは、コピー又は複製することが困難であり、ソフトウェアの違法な使用はありそうにない。この技術の問題点は、電子的なセキュリティモジュールが特定のソフトウェアアプリケーションに付属されている点であり、n個のソフトウェアアプリケーションを保護するためには、n個のセキュリティモジュールが提供されることが必要である。
本発明は、上述された問題点の一部又は全部を解消することを目的とする。特に、本発明の1つの目的は、複数のソフトウェアアプリケーションが1つの電子的なセキュリティモジュールでプロテクト(保護)されるのを可能にし、前記電子的なセキュリティモジュールは、それぞれの新たなソフトウェアの取得で、及びソフトウェアアプリケーションのそれぞれの使用で使用される。
本発明によれば、ソフトウェアアプリケーションを取得するのを望むユーザに属する電子的なセキュリティモジュールが使用される。このモジュールは、ユーザに特化した情報であって、特定のソフトウェアアプリケーションにリンクされない情報を含む。本発明によれば、ユーザの電子的なセキュリティモジュールは、ユーザ情報のアイテムを配信装置に伝達し、前記ユーザ情報は、ユーザに伝達する前にソフトウェアアプリケーションをプロテクトするために配信装置により使用される。従って、ユーザは、電子的なセキュリティモジュールにより伝達されたユーザ情報のアイテムに基づいてプロテクトされるソフトウェアアプリケーションを受信する。ユーザの電子的なセキュリティモジュールにより、このユーザのみが、受信されたソフトウェアアプリケーションのプロテクトを解除することができる立場にある。
より詳細には、本発明は、ソフトウェアアプリケーションの配信装置に記憶されるソフトウェアアプリケーションの取得の方法に関し、前記アプリケーションは、少なくとも1つの命令を有し、ユーザコンピュータ装置と呼ばれる、ユーザのコンピュータ装置に供給されることが意図される。
本方法は、以下のステップを含むことを特徴とする。前記ユーザコンピュータ装置に接続される電子的なセキュリティモジュールにおいて、供給されるソフトウェアアプリケーションを識別する識別情報のアイテムに関連する前記ユーザに固有のユーザ情報のアイテムを生成するステップ。前記ユーザ情報は、前記電子的なセキュリティモジュールに記憶される秘密情報から生成される。電子的なセキュリティモジュールを介して、前記ユーザ情報及び前記識別情報をソフトウェアアプリケーション配信装置に送信するステップ。ソフトウェアアプリケーション配信装置で、前記ソフトウェアアプリケーションを保護するように、前記ユーザ情報を使用するプロテクト機能により、前記識別情報により識別されるソフトウェアアプリケーションからの少なくとも1つの命令を処理するステップ。ソフトウェアアプリケーション配信装置を介して、プロテクトされるアプリケーション及びおそらく前記識別情報を前記ユーザコンピュータに伝達するステップ。
本発明の特定の態様によれば、ユーザ情報は、取得されるアプリケーションの前記秘密情報及び識別情報から生成される。ユーザ情報は、セキュリティモジュールに含まれる秘密情報を使用して、前記識別情報に導出機能を適用することで生成される。結果として、電子的なセキュリティモジュールにより生成されたユーザ情報は、それぞれの新たなソフトウェアアプリケーションの取得により変化する。
本発明の特定の態様によれば、本方法は、複数のソフトウェアアプリケーションの取得について同じ電子的なセキュリティモジュールで繰り返される。従って、1つの電子的なセキュリティモジュールは、異なるソフトウェアアプリケーションを取得するために使用される。
また、本発明は、上述された方法に従って取得されたプロテクトされたソフトウェアアプリケーションから、前記電子的なセキュリティモジュールが接続されるユーザコンピュータ装置で、プロテクトを解除するための処理の方法に関する。このユーザコンピュータ装置は、取得の間に使用されるユーザコンピュータ装置である場合があり、ユーザコンピュータ装置でない場合がある。このユーザコンピュータ装置が取得の間に使用される装置とは異なる場合、プロテクトされたアプリケーションは、プロテクトの解除の前に、この新たなユーザコンピュータ装置に送信される。
本処理方法は、以下のステップを含む。前記電子的なセキュリティモジュールにおいて、プロテクトされたソフトウェアアプリケーションに関連するユーザ情報を再生成するステップ。プロテクト解除機能と呼ばれる機能により、プロテクトされたソフトウェアアプリケーションを処理して、ソフトウェアアプリケーション配信装置のプロテクト機能によりプロテクトされたアプリケーションのプロテクトを解除するステップ。
特定の実施の形態によれば、プロテクト解除機能は、電子的なセキュリティモジュールに存在する。このように、前記プロテクト解除機能によりプロテクトされたソフトウェアアプリケーションの処理は、電子的なセキュリティモジュールで実行され、次いで、プロテクトが解除されたアプリケーションは、ユーザコンピュータ装置に伝達される。
変形例として、プロテクト解除機能は、ユーザコンピュータ装置に存在する。前記プロテクト解除機能によるプロテクトされたソフトウェアアプリケーションの処理は、前記ユーザの電子的なモジュールにより生成されたユーザ情報を使用してユーザコンピュータ装置で実行される。
本発明は良好に理解され、他の目的、詳細、特性及び利点は、添付図面を参照して以下に記載される詳細な説明を通して明らかとなるであろう。
本発明の特定の実施の形態に係る方法を実現することができる簡略化された図である。 本発明の特定の実施の形態に係るソフトウェアアプリケーションを送信するステップを示す図である。 本発明の特定の実施の形態に係る図2に従って送信されたアプリケーションを実行するステップを示す図である。
本発明は、プロテクトされたソフトウェアアプリケーションの取得方法及びこのプロテクトされたソフトウェアアプリケーションのプロテクトの解除方法に関する。
より詳細には、本発明は、ソフトウェアアプリケーション配信装置に記憶されるソフトウェアアプリケーションの取得方法に関し、前記アプリケーションは、少なくとも1つの命令を含み、ユーザコンピュータ装置と呼ばれるユーザのコンピュータ装置に供給されることが意図される。本方法は、以下のステップを含む。前記ユーザコンピュータ装置に接続される電子的なセキュリティモジュールで、供給されるソフトウェアアプリケーションを識別する識別情報のアイテムに関連される前記ユーザに固有のユーザ情報のアイテムを生成するステップ。前記ユーザ情報は、前記電子的なセキュリティモジュールで記憶される秘密情報から生成される。電子的なセキュリティモジュールを介して、前記ユーザ情報及び前記識別情報をソフトウェアアプリケーション装置に送信するステップ。ソフトウェアアプリケーション配信装置で、前記ソフトウェアアプリケーションをプロテクトするように、前記ユーザ情報を使用したプロテクト機能により、前記識別情報により識別されるソフトウェアアプリケーションから少なくとも1つの命令を処理するステップ。ソフトウェアアプリケーション配信装置を介して、プロテクトされたアプリケーション及びおそらく前記識別情報を前記ユーザコンピュータ装置に伝達するステップ。
このように、ソフトウェア配信装置により送信されるソフトウェアアプリケーションは、ユーザの電子的なセキュリティモジュールにより提供されるユーザ情報のアイテムを介してプロテクトされる。この同じ電子的なセキュリティモジュールは、ユーザがソフトウェアアプリケーションをダウンロードするのを望むために使用される。それぞれのアプリケーションの新たな取得で、電子的なセキュリティモジュールは、ユーザ情報のアイテムを伝達し、ソフトウェアアプリケーション配信装置は、このユーザ情報を使用して、アプリケーションをプロテクトする。従って、異なるソフトウェアアプリケーションを取得するために1つの電子的なセキュリティモジュールが使用される。
ソフトウェアアプリケーションのプロテクトを解除することを目的とする処理方法は、電子的なセキュリティモジュールに設けられたユーザコンピュータ装置で実現される。
図1は、本発明の特定の実施の形態に係る、プロテクトされたソフトウェアアプリケーションの取得方法及びプロテクトの解除方法を示す。このシステムは、ユーザコンピュータ装置10を備えており、このユーザコンピュータ装置10は、通信ネットワーク40を介して、ソフトウェアアプリケーション配信装置20と通信する。ソフトウェアアプリケーション配信装置20は、サーバ、データベース、コンピュータ等である。
アプリケーション配信装置20は、複数のソフトウェアアプリケーションを記憶する。それぞれのソフトウェアアプリケーションについて、装置20は、アプリケーションのコンピュータプログラムpgm及び識別情報IDのアイテムを記憶する。また、装置は、ユーザコンピュータ装置10に供給されるアプリケーションをプロテクトする役割を果たすプロテクションと呼ばれる機能pを記憶する。
ユーザコンピュータ装置10は、ある装置と情報又はデータを交換するデバイスタイプであって、ドングル又はスマートカードタイプの電子的なセキュリティモジュールが接続することができるデバイスタイプを指定する。このユーザコンピュータ装置は、例えばユーザに属しているゲームコンソール又は移動体電話である。
電子的なセキュリティモジュール30は、ユーザコンピュータ装置10に接続される。電子的なセキュリティモジュール30は、本発明に範囲において、少なくとも1つの秘密情報のアイテム及び前記秘密情報を使用した少なくとも1つの導出機能を有する集積回路を指定する。電子的なセキュリティモジュール30は、例えばUSBポートといったユーザコンピュータ装置10の入力/出力ポートに接続されるか、又は例えばスマートカードリーダといった特定のインタフェース装置を介してユーザコンピュータ装置10に接続される。電子的なセキュリティモジュールは、異なる形態とすることができ、特にドングル又はスマートカードの形態とすることができる。
変形例として、電子的なセキュリティモジュール30は、ユーザコンピュータ装置10の内部にあり、例えばTPM(Trusted Platform Module)モジュールの形態を有する。
図1に示されるシステムの例では、電子的なセキュリティモジュール30は、秘密情報S、ユーザ情報のアイテムを生成する導出機能d、及び、プロテクト機能pによりプロテクトされるソフトウェアアプリケーションのプロテクトを解除する別のプロテクト解除機能dpを含む。これらの異なる機能は、以下に更に詳細に記載される。
伝送ネットワーク40は、電話網のようなネットワークであり、ユーザコンピュータ装置10とソフトウェアアプリケーション配信装置30との間でデータを伝送することができる。
本発明の特定の実施の形態によれば、ユーザコンピュータ装置10を介してソフトウェアアプリケーション配信装置20からのアプリケーションの取得は、図2に示されるように実行される。
第一ステップE1によれば、ユーザコンピュータ装置10は、取得されるソフトウェアアプリケーションを識別する識別情報IDは、電子的なセキュリティモジュール30に伝達され、この識別情報IDは、装置20によりユーザコンピュータ装置10に予め供給されており、識別情報のリストにおいてユーザにより選択される。
ステップE2によれば、電子的なセキュリティモジュール30は、その秘密鍵S2を使用して、識別情報IDに関連するユーザ情報S’のアイテムを生成する。ユーザ情報S’は、識別情報IDに導出機能dを適用することで生成され、導出機能dは、秘密情報Sを使用する。次いで、S’=d(S,ID)が得られる。導出機能dは、例えば暗号鍵としての秘密情報Sとデータとしての識別情報IDを使用する、アルゴリズムDES(Data Encryption Standard)である。別の限定するものではない例によれば、導出機能は、識別情報と秘密情報Sとの間で排他的論理和演算を行う論理関数である。
変形例として、電子的なセキュリティモジュール30は、秘密情報Sからユーザ情報S’を生成し、次いで、ユーザ情報を識別情報IDと関連付けし、情報S’と識別情報IDとの間のリンクは、モジュール30のメモリに記憶される。
ステップE3によれば、電子的なセキュリティモジュール30は、ユーザ情報S’及び識別情報IDをソフトウェアアプリケーション配信装置20にユーザコンピュータ装置10を介して送信する。有利なことに、この送信は、暗号化領域で知られているセキュリティが認証されたチャネルで実行される。セキュリティが認証されたチャネルにより、このように送信される情報に関する知識を第三者が有したり、変更したりすることができないように、2つの認証されたエンティティ間でデータを安全に送信することができる。
ステップE4によれば、ソフトウェアアプリケーション配信装置20は、ユーザ情報S’を使用したプロテクト機能pにより、識別情報IDにより識別されたプログラムpgmの少なくとも1つの命令をプロテクトする。プロテクト機能pは、例えば暗号化鍵として、ユーザ情報S’を使用したAES(Advanced Encryption Standard)タイプの暗号化アルゴリズムである。プロテクト機能pは、ソフトウェアアプリケーションの1以上の命令に適用されるか、アプリケーションの命令の全体にわたり適用される。これにより、pgm’=p(S’,pgm)が与えられ、この場合、pgm’は、ソフトウェアアプリケーションpgmのプロテクトされたバージョンを示す。
ステップE5によれば、ソフトウェアアプリケーション配信装置20は、プロテクトされたソフトウェアアプリケーションpgm’及び関連する識別情報IDをユーザコンピュータ装置10に伝達する。変形例として、ソフトウェアアプリケーション配信装置20は、プロテクトされたアプリケーションpgm’、ステップE3でユーザコンピュータ装置に保存された識別情報IDのみを伝達する。
クライアントが新たなアプリケーションを取得するのを望むたびに、このプロセスは、同じ電子的なセキュリティモジュール30を使用して繰り返される。それぞれの新たなアプリケーション取得で、電子的なセキュリティモジュール30は、新しいことが好ましいユーザ情報S’のアイテムを伝達する。
ユーザコンピュータ10により受信される全てのプロテクトされたアプリケーションは、取得のために使用された電子的なセキュリティモジュール30を使用して、それらのプロテクトを解除させる。
装置20により供給されたプロテクトされたアプリケーションは、取得において使用されたユーザコンピュータ装置10でそのプロテクトが解除されるか、伝送後に、別のユーザコンピュータ装置10’でプロテクトが解除される。これは、取得において役目を果たした電子的なセキュリティモジュール30を、ユーザがアプリケーションのプロテクトを解除するのを望むユーザコンピュータ装置に接続することで十分である。プロテクトを解除する動作は、アプリケーションの実行前又はアプリケーションの実行の間に実行される。
プロテクトの解除の動作は、図3に示される。電子的なセキュリティモジュール30は、ユーザコンピュータ装置10又は10’に接続される。
ステップE6によれば、ユーザコンピュータ装置10又は10’は、プロテクトされたプログラムpgm’及びアプリケーションの識別情報IDとを電子的なセキュリティモジュール30に送信する。
ステップE7によれば、電子的なセキュリティモジュールは、秘密情報S及び識別情報IDとから、S’=d(S,ID)を実行することで、識別情報IDに関連するユーザ情報S’を再生成し、次いで、ユーザ情報S’を使用したプロテクト解除機能dpによりプロテクトされたプログラムpgm’からプロテクトを解除する。このように、プロテクトが解除されたプログラムpgm=dp(S’,pgm’)が得られ、プロテクトが解除されたプログラムは、電子的なセキュリティモジュール30を介して、ユーザコンピュータ装置10又は10’に送信される(ステップE8)。
変形例において、プロテクト解除動作は、ユーザコンピュータ装置で実行される。この変形例では、プロテクト解除機能dpは、ユーザコンピュータ装置10又は10’に存在し、プロテクトされたプログラムpgm’は、電子的なセキュリティモジュール30に送信されない。電子的なセキュリティモジュール30は、識別情報IDからユーザ情報S’を生成し、次いで、ユーザ情報をユーザコンピュータ装置に送信する。このユーザコンピュータ装置は、モジュール30により供給されたユーザ情報S’を使用して、アプリケーションpgm’からプロテクトを解除する。
この方法によれば、ユーザからのユーザ情報S’のアイテムによりソフトウェアアプリケーション配信装置において、アプリケーションがプロテクトされ、ひとたびユーザの送信されると、プロテクトされたソフトウェアアプリケーションは、ソフトウェアアプリケーションの取得の間に使用された電子的なセキュリティモジュールが接続される任意のユーザコンピュータ装置でそのプロテクトを解除することができる。従って、ソフトウェアアプリケーションは、第一のコンピュータ装置から取得又はダウンロードされ、次いで、別の装置でプロテクトを解除することができる。さらに、この方法は、複数のソフトウェアアプリケーションを取得するために、1つの電子的なセキュリティモジュールのみを必要とする。
本発明は特定の実施の形態に関連して記載されたが、これらは限定されるものではなく、本発明の範囲に含まれる場合に、記載された手段の全ての技術的に等価な概念と同様に知れらの組み合わせを含むことは明らかである。

Claims (9)

  1. ソフトウェアアプリケーションの配信装置に記憶されているソフトウェアアプリケーションを取得する方法であって、
    前記アプリケーションは、少なくとも1つの命令を含み、ユーザコンピュータ装置と呼ばれるユーザのコンピュータ装置に供給されることが意図されており、
    当該方法は、
    前記ユーザコンピュータ装置に接続される電子的なセキュリティモジュールにおいて、供給されるソフトウェアアプリケーションを識別する識別情報のアイテムと関連するユーザ情報のアイテムを生成するステップであって、前記ユーザ情報は、前記電子的なセキュリティモジュールに記憶される秘密情報から生成されるステップと、
    前記電子的なセキュリティモジュールを介して、前記ユーザ情報及び前記識別情報を前記ソフトウェアアプリケーションの配信装置に送信するステップと、
    前記ソフトウェアアプリケーションの配信装置において、前記ユーザ情報を使用したプロテクト機能により、前記ソフトウェアアプリケーションをプロテクトするように、前記識別情報により識別されたソフトウェアアプリケーション中の少なくとも1つの命令を処理するステップと、
    前記ソフトウェアアプリケーションの配信装置を介して、プロテクトされたアプリケーションを前記ユーザコンピュータ装置に伝達するステップと、
    を含むことを特徴とする方法。
  2. 前記ユーザ情報は、少なくとも前記秘密情報と前記識別情報とから、前記電子的なセキュリティモジュールで生成される、
    請求項1記載の方法。
  3. 前記ユーザ情報は、前記秘密情報を使用した導出機能を前記識別情報に適用することで生成される、
    請求項2記載の方法。
  4. 当該方法は、複数のソフトウェアアプリケーションの取得について同じ電子的なセキュリティモジュールで繰り返される、
    請求項1記載の方法。
  5. 請求項1乃至4の何れか記載の方法に従って取得された、プロテクトされたソフトウェアアプリケーションから、前記電子的なセキュリティモジュールが接続されるユーザコンピュータ装置で、プロテクトを解除する処理方法であって、
    前記電子的なセキュリティモジュールで、前記プロテクトされたソフトウェアアプリケーションに関連するユーザ情報を再生成するステップと、
    プロテクト解除機能と呼ばれる機能であって、前記プロテクト機能によりプロテクトされたアプリケーションからプロテクトを解除する機能により前記プロテクトされたソフトウェアアプリケーションを処理するステップと、
    を含むことを特徴とする方法。
  6. 前記プロテクト解除機能は、前記電子的なセキュリティモジュールに存在し、
    前記プロテクト解除機能によるプロテクトされたアプリケーションの処理は、前記電子的なセキュリティモジュールで実行され、
    プロテクトが解除されたアプリケーションは、前記ユーザコンピュータ装置に伝達される、
    請求項5記載の方法。
  7. 前記プロテクト解除機能は、前記ユーザコンピュータ装置に存在し、
    前記プロテクト解除機能によるプロテクトされたアプリケーションの処理は、前記電子的なセキュリティモジュールにより生成されたユーザ情報を使用して前記ユーザコンピュータ装置で実行される、
    請求項5記載の方法。
  8. ユーザコンピュータ装置に接続されるように構成された電子的なセキュリティモジュールであって、
    当該電子的なセキュリティモジュールは、少なくとも1つの秘密情報と少なくとも1つの導出機能とを有しており、
    ソフトウェアアプリケーションの配信装置に記憶され、ユーザコンピュータ装置に供給されるソフトウェアアプリケーションの取得について、当該電子的なセキュリティモジュールは、供給されるソフトウェアアプリケーションを識別する識別情報のアイテムと関連するユーザ情報のアイテムを生成し、前記ユーザ情報は、前記少なくとも1つの秘密情報を使用した前記導出機能を前記識別情報に適用することにより生成される、
    ことを特徴とする電子的なセキュリティモジュール。
  9. プロテクト解除機能と呼ばれる機能であって、前記ユーザ情報を使用して、前記ソフトウェアアプリケーションの配信装置におけるプロテクト機能によりプロテクトされたアプリケーションから、プロテクトを解除する機能を更に有する、
    請求項8記載の電子的なセキュリティモジュール。
JP2012516793A 2009-07-03 2010-07-01 ソフトウェアアプリケーションの取得方法 Expired - Fee Related JP5738287B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR0954574 2009-07-03
FR0954574 2009-07-03
PCT/EP2010/059353 WO2011000906A1 (en) 2009-07-03 2010-07-01 Method for acquisition of software applications

Publications (2)

Publication Number Publication Date
JP2012531645A JP2012531645A (ja) 2012-12-10
JP5738287B2 true JP5738287B2 (ja) 2015-06-24

Family

ID=41719056

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012516793A Expired - Fee Related JP5738287B2 (ja) 2009-07-03 2010-07-01 ソフトウェアアプリケーションの取得方法

Country Status (7)

Country Link
US (1) US9171135B2 (ja)
EP (1) EP2449496A1 (ja)
JP (1) JP5738287B2 (ja)
KR (1) KR20120109456A (ja)
CN (1) CN102473211B (ja)
TW (1) TWI497335B (ja)
WO (1) WO2011000906A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10255443B2 (en) * 2016-02-11 2019-04-09 Line Corporation Method, apparatus, system and non-transitory computer readable medium for code protection
KR102482343B1 (ko) * 2021-02-05 2022-12-27 한남대학교 산학협력단 블록체인을 이용한 소프트웨어 공급망 보증 시스템

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5182770A (en) 1991-04-19 1993-01-26 Geza Medveczky System and apparatus for protecting computer software
DE9109977U1 (de) 1991-08-12 1992-12-24 Intelligent Solution Services Gmbh, 8051 Marzling Speicherkarte mit Kopierschutzeinrichtung
JP3073590B2 (ja) * 1992-03-16 2000-08-07 富士通株式会社 電子化データ保護システム、使用許諾者側装置および使用者側装置
JP3486043B2 (ja) * 1996-03-11 2004-01-13 株式会社東芝 ソフトウエア流通システムの動作方法及びソフトウエアシステム
US5991399A (en) * 1997-12-18 1999-11-23 Intel Corporation Method for securely distributing a conditional use private key to a trusted entity on a remote system
DE19963471B4 (de) 1999-12-29 2008-10-09 Robert Bosch Gmbh Vorrichtung und Verfahren zur Verhinderung von Raubkopien von Computerprogrammen
JP4310879B2 (ja) * 2000-02-23 2009-08-12 ソニー株式会社 コンテンツ再生システム及びコンテンツ再生方法、並びに、コンテンツの再生要求装置及び一時再生装置
US6857067B2 (en) * 2000-09-01 2005-02-15 Martin S. Edelman System and method for preventing unauthorized access to electronic data
ES2179775B1 (es) 2001-05-04 2003-10-16 Univ Malaga Sistema para la proteccion contra el uso ilegitimo y gestion de licencias de software basado en dispositivos procesadores autonomos y criptografia.
JP2002374244A (ja) 2001-06-13 2002-12-26 Kenwood Corp 情報配信方法
US20030105970A1 (en) 2001-11-30 2003-06-05 Phillip Yuan Pei Jen Systems and methods for enforcing single computer use of software
US20030123667A1 (en) * 2001-12-28 2003-07-03 Cable Television Laboratories, Inc. Method for encryption key generation
JP2004040209A (ja) 2002-06-28 2004-02-05 Toppan Printing Co Ltd サーバ、icカード、コンテンツの配信方法、コンテンツの取得処理方法およびプログラム
JP4744106B2 (ja) 2003-08-06 2011-08-10 パナソニック株式会社 セキュアデバイス、情報処理端末、通信システム及び通信方法
US20050216548A1 (en) 2004-03-04 2005-09-29 Brian Wormington Method and system for digital content distribution
US20060259981A1 (en) 2005-05-13 2006-11-16 Yaron Ben-Shoshan System and method of controlling and monitoring computer program usage
US8091137B2 (en) * 2006-10-31 2012-01-03 Hewlett-Packard Development Company, L.P. Transferring a data object between devices
JP2008282238A (ja) * 2007-05-11 2008-11-20 Hitachi Systems & Services Ltd 名刺情報取得システム及び名刺情報取得方法
TW200849059A (en) 2007-06-15 2008-12-16 Systex Corp System and method for managing and protecting specific formula conveniently
US8214890B2 (en) * 2008-08-27 2012-07-03 Microsoft Corporation Login authentication using a trusted device

Also Published As

Publication number Publication date
WO2011000906A1 (en) 2011-01-06
JP2012531645A (ja) 2012-12-10
KR20120109456A (ko) 2012-10-08
TWI497335B (zh) 2015-08-21
US20120192284A1 (en) 2012-07-26
CN102473211B (zh) 2015-05-13
CN102473211A (zh) 2012-05-23
US9171135B2 (en) 2015-10-27
TW201108026A (en) 2011-03-01
EP2449496A1 (en) 2012-05-09

Similar Documents

Publication Publication Date Title
EP3474209A1 (en) Storing blockchain private keys in a sim card
CA2831457C (en) Enabling a software application to be executed on a hardware device
JP4668619B2 (ja) 装置鍵
EP3198498B1 (en) A challenge-response method and associated computing device
CN104794388B (zh) 应用程序存取保护方法及应用程序存取保护装置
JP2007013433A (ja) 暗号化データを送受信する方法及び情報処理システム
WO2006096428A2 (en) Data processing systems and methods
JPH10247905A (ja) アクセス資格認証装置および方法
KR20070104628A (ko) 개인의 제어된 소유권 공유
TW200937248A (en) Secure software download
JP2007511810A (ja) 乱数関数を利用した実行証明
JP2008514097A (ja) ランダムファンクションを利用した秘密の共有
CN104868998B (zh) 一种向电子设备供应加密数据的系统、设备和方法
KR101642267B1 (ko) 앱 위변조 방지시스템 및 그 방법
JP6796861B2 (ja) アプリケーションソフトウェアの提供及び認証方法並びにそのためのシステム
JP5738287B2 (ja) ソフトウェアアプリケーションの取得方法
CN102937907B (zh) 利用sd卡片进行授权软体安装更新使用的方法
CN107278357B (zh) 密码系统和方法
JP2005215945A (ja) 情報処理装置、ソフトウェアの実行を許可する記憶装置、および、ソフトウェア実行方法
KR101415786B1 (ko) 온라인 실행 코드 기술과 암호화 기반 불법 복제 방지 시스템 및 그 방법
CN105790931B (zh) 一种密钥分发方法、网络设备、终端设备及系统
KR101575992B1 (ko) 펌웨어 이벤트로그의 안전한 저장이 가능한 기계장치 및 이의 이벤트로그 저장방법
CN114091088B (zh) 用于提高通信安全的方法和装置
KR20240069631A (ko) 콜드월렛 장치 및 그 제어 방법
Kerrison Fingerprint Theft Using Smart Padlocks: Droplock Exploits and Defenses

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130610

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140401

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20140701

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20140708

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141001

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150421

R150 Certificate of patent or registration of utility model

Ref document number: 5738287

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees