JP4938869B2 - Sdk使用制限付加装置及び使用制限付ソフトウェア開発システム - Google Patents

Sdk使用制限付加装置及び使用制限付ソフトウェア開発システム Download PDF

Info

Publication number
JP4938869B2
JP4938869B2 JP2010013701A JP2010013701A JP4938869B2 JP 4938869 B2 JP4938869 B2 JP 4938869B2 JP 2010013701 A JP2010013701 A JP 2010013701A JP 2010013701 A JP2010013701 A JP 2010013701A JP 4938869 B2 JP4938869 B2 JP 4938869B2
Authority
JP
Japan
Prior art keywords
sdk
plug
restriction
use restriction
restriction plug
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
JP2010013701A
Other languages
English (en)
Other versions
JP2011154412A (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.)
Kyocera Document Solutions Inc
Original Assignee
Kyocera Mita 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 Kyocera Mita Corp filed Critical Kyocera Mita Corp
Priority to JP2010013701A priority Critical patent/JP4938869B2/ja
Priority to US13/013,507 priority patent/US8479144B2/en
Publication of JP2011154412A publication Critical patent/JP2011154412A/ja
Application granted granted Critical
Publication of JP4938869B2 publication Critical patent/JP4938869B2/ja
Expired - Fee Related 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Storage Device Security (AREA)

Description

本発明は、SDK使用制限付加装置及び使用制限付ソフトウェア開発システムに係り、特に、SDK使用制限付加装置及び使用制限付ソフトウェア開発システムに関する。
例えば、画像形成装置のアプリケーションを開発するためのソフトウェア開発キット(SDK)は、その開発元から、配布元を経由して画像形成装置のアプリケーションの開発元に配布される。このような場合、SDK開発元と配布元との間でライセンス契約が行われ、配布元とアプリケーション開発元との間でサブライセンス契約が提携されるのが一般的である。
配布元がこのSDKに使用期限等の制限を付加し、これをアプリケーション開発元に無料で試用させることにより、より多くのアプリケーション開発元との間でサブライセンス契約を締結することが可能となる。
この使用制限をSDKに付加することにより、SDKの内部構造が変わって、SDK使用中に予期しないエラーが発生すると、SDKに対する信用性が低下する。また、SDKに使用制限を付加するために、SDKの内部構造を知らなければならず、使用制限を付加するのに労力と時間を要する。
下記特許文献1には、USBメモリに試用制限情報を格納しておき、これを画像形成装置に挿着させることにより、オプションプログラムをアクティべートして、所定期間試用可能にする構成が開示されている。
しかし、画像形成装置と別体のUSBメモリが必要になる。
特開2007−257555号公報
本発明の目的は、このような問題点に鑑み、USBメモリのようなアクティベートキーを用いることなく、かつ、画像形成装置用ソフトウェア配布元がSDKの内部構造を変化させることなく、このSDKに容易に使用制限を付加することができるSDK使用制限付加装置及び使用制限付ソフトウェア開発システムを提供することにある。
本発明の第1態様は、起動後、使用制限プラグインの応答結果に応じて実行を継続し又は終了するように構成されたプラグイン対応型コアモジュールを備えている原SDKに、使用制限プラグインを付加して使用制限付SDKを生成するSDK使用制限付加装置であって、
入力手段と、
該使用制限プラグインのソースファイルと、
該入力手段を介して入力された使用制限情報に基づいて、該ソースファイルに対し使用制限を設定するソースファイル編集手段と、
該入力手段を介して入力されたビルド指示に応答して、該ソースファイルをコンパイルして該使用制限プラグインの実行可能ファイルを生成するビルド手段と、
該入力手段を介して入力された出力指示に応答して、該原SDKと該使用制限プラグインの実行可能ファイルとを含む該使用制限付SDKを出力する出力手段とを有する。
本発明によるSDK使用制限付加装置の第2態様では、第1態様において、該使用制限情報は、使用開始日からの使用許可期間を含む。
本発明によるSDK使用制限付加装置の第3態様では、第2態様において、該使用制限プラグインは、プロセッサに対し、
(1)使用開始情報が「使用開始前」であることを示していれば、現在日付に該使用許可期間を加算したものを使用期限と決定し、該使用開始情報が「使用開始後」を示すようにし、次いで処理(3)へ進ませ、
(2)該使用開始情報が「使用開始後」であることを示していれば、処理(1)を実行させずに処理(3)へ進ませ、
(3)現在日付が該使用期限を越えていなければ使用許可情報が「使用許可」を示すようにさせ、該使用許可情報を該応答結果として該コアモジュールに返させる、
ものである。
本発明によるSDK使用制限付加装置の第4態様では、第3態様において、該使用制限プラグインは、プロセッサに対し、
処理(3)においてさらに、該現在日付が該使用期限を越えていれば使用終了情報が「使用終了後」を示すようにさせ、
処理(1)の前において、
(4)該使用終了情報が「使用終了前」を示していれば処理(1)へ進ませ、該使用終了情報が「使用終了後」を示していれば該使用制限プラグインの処理を終了させる、
ものである。
本発明によるSDK使用制限付加装置の第5態様では、第4態様において、
該使用開始情報及び該使用終了情報は、不揮発性記憶手段に格納され、該コアモジュールの外部かつ該使用制限プラグインの外部に配置されている。
上記第1態様の構成によれば、使用制限プラグインのソースファイルに対し使用制限を設定し、これをビルドして、原SDKに付加し、この原SDKは、起動後、使用制限プラグインの応答結果に応じて実行を継続し又は終了するように構成されたプラグイン対応型コアモジュールを備えているので、USBメモリのようなアクティベートキーを用いることなく、かつ、画像形成装置用ソフトウェア配布元がSDKの内部構造を変化させることなく、このSDKに容易に使用制限を付加することができるという効果を奏する。
上記第3態様の構成によれば、
該使用制限プラグインは、プロセッサに対し、使用開始情報が「使用開始後」であることを示していれば使用期限決定処理が行われないので、不正に使用期限を延長させることを防止可能になるという効果を奏する。
上記第4態様の構成によれば、使用終了情報が「使用終了後」を示していれば使用開始情報を処理することなく使用制限プラグインの処理が終了するので、不正に使用開始情報が「使用開始前」を示すようにして使用期限を延長させることを防止可能になるという効果を奏する。
上記第5態様の構成によれば、これら使用開始情報及び使用終了情報が、不揮発性記憶手段に格納されるとともに、コアモジュールの外部かつ使用制限プラグインの外部に配置されているので、使用制限プラグインやSDK自体を他のものに置換することにより、使用期限を延長させることを防止可能になるという効果を奏する。
本発明の他の目的、構成及び効果は以下の説明から明らかになる。
SDK開発元でSDK開発支援装置10を用いて開発されるSDK20の概略構成を示す図である。 SDK配布元で使用されるSDK使用制限付加装置30にインストールされた使用制限付加ツール40の概構成を示す図である。 図2の装置を用いて作成された使用制限付SDK20Aの概略構成を示す図である。 図1及び図3中のコアモジュールの処理手順を示す概略フローチャートである。 図3中の使用制限プラグインの処理手順を示す概略フローチャートである。 図2中の使用制限付加ツール40の動作を示すシーケンス図である。 図2中のSDK使用制限付加装置30のハードウェア構成を示す概略ブロック図である。
図1は、SDK開発元でSDK開発支援装置10を用いて開発されるSDK20の概略構成を示す。
SDK開発元においては、SDK開発支援ツールがインストールされたSDK開発支援装置10を用いて、開発者11が対話的に入力装置を操作することにより、SDKが開発される。このSDKがビルドされて、SDK配布元に配布されると共に、SDK開発元とこの配布元との間でライセンス契約が締結される。このライセンス契約には、使用期間制限付のSDKをアプリケーション開発元に無料で配布元がアプリケーション開発元に試用させることを許可する内容が含まれている。以下、ビルドされたSDKを、使用制限付SDKと区別するために、原SDKと称す。
原SDK20は、SDKとしての基本的な機能を備えたコアモジュール21と、この機能を拡張するためのUIプラグイン22、エディットプラグイン23及びビルドプラグイン24を備えている。プラグイン22〜24はいずれも、実行可能形式のダイナミックリンクライブラリ(DLL)ファイルである。また、ファイル21〜24はいずれも、アセンブリマニフェストを含んだアセンブリである。
コアモジュール21内は、プラグイン管理部25を備えている。このプラグイン管理部25は、後述のように、コアモジュール21の起動後に、有効なプラグインを探してその中の有効なクラスを探し、それらをインスタンス化し、所定のタイミングで所定のメソッドを実行させるためのものである。原SDK20はまた、SDKをコンピュータにインストールするためのセットアッププログラム26と、このプログラムセットアッププログラム26で使用されるインストール情報27とを備えている。
図2は、SDK配布元で使用されるSDK使用制限付加装置30にインストールされた使用制限付加ツール40の概構成を示す。
操作者11Aは、SDK開発元から受け取った原SDK20をSDK使用制限付加装置30の記憶装置に格納させた後、使用制限付加ツール40を起動させ、対話的に入力装置を操作することにより、図3に示すような使用制限付SDK20Aを生成する。
この使用制限付SDK20Aは、図1の原SDK20に、使用制限プラグイン28が付加されている。また、使用制限付SDK20Aのインストール情報27Aは、使用制限プラグイン28もインストール対象に含めるように、インストール情報27に情報が付加されている。
図4は、図1及び図3中のコアモジュール21の処理手順を示す概略フローチャートである。以下、括弧内は図中のステップ識別符号である。ステップS0〜S4は、コアモジュール21内のメインルーチンがプラグイン管理部25に対して行わせる処理である。
(S0)所定フォルダ(コアモジュール21が配置されているディレクトリ又はこの配下の所定ディレクトリ)内の、拡張子がdllの全ファイルを検出し、そのファイルのデジタル署名(各DLLに含まれている。)を検証して適正なDLLファイルのみを選択し、さらに、選択した各ファイルについて、所定のプラグインインターフェイスを実装したクラスのみをインスタンス化し、その参照を配列に代入する。このプラグインインターフェイスを実装したクラスを持たないDLLは対象外とする。このプラグインインターフェイスは、Runメソッドと、このRunメソッドを直実行するのかメニュー項目クリックに応答して実行するのかを区別する変数プロパティと、メニュー項目名プロパティとを含んでいる。
(S1)直実行を示している前記変数プロパティが存在すればステップS2へ進み、そうでなければステップS3へ進む。UIプラグイン22及び使用制限プラグイン28は直実行タイプであり、エディットプラグイン23及びビルドプラグイン24はメニュー項目クリックタイプである。
(S2)直実行タイプのそれぞれのRunメソッドを順に実行する。
(S3)メニュー項目クリックタイプのそれぞれのメニュー項目名をプルダウンメニューのメニュー表示リストに追加する。コアモジュール21の本体部は、このメニュー項目(これは上記配列要素のインデックスで識別される。)のクリックに応答して、この配列要素で参照されるインスタンスに属するRunメソッドを実行するイベントハンドラを含んでいる。
(S4)使用許可情報としての使用許可フラグFの値が1であればステップS5へ進み、そうでなければ、コアモジュール21の実行を終了する。使用許可フラグFは、ステップS0の前の初期化処理(不図示)でリセットされている。使用許可フラグFの値は、使用制限プラグイン28により、期限内であればセットされる。したがって、使用制限プラグイン28を削除した場合には、次のステップS5へ進めない。
(S5)コアモジュール21の本体部を実行する。すなわち、ユーザの入力操作によるイベントの発生に応じて、対応する処理を実行する。
ステップS0で各プラグインのデジタル署名が検証されるので、使用制限プラグイン28についても、改竄されたものを使用することができない。
図5は、図3中の使用制限プラグインの処理手順を示す概略フローチャートである。
(S10)使用終了情報としての使用終了フラグFeの値が0であればステップS11へ進み、そうでなければ、このRunメソッドを終了して、コアモジュール21に制御を戻す。使用終了フラグFeの初期値は0である。
(S11)使用開始情報としての使用開始フラグFsの値が0であればステップS12へ進み、そうでなければステップS14へ進む。使用開始フラグFsの初期値は0である。使用開始フラグFsは、SDK20Aの外部、例えばOSのレジストリ又は隠しファイルに格納しておく。
この格納前に、フラグ値を0/1以外の値にし、これを、インストール先装置の固有情報、例えばCPUのIDとパスワードとを合成したキーで暗号化することにより、使用開始情報をコピーして他の装置で使用できないようにしてもよい。さらに、この暗号化したものをデジタル署名して、改竄を防止してもよい。
これにより、新たな使用制限プラグイン28に取り替えたり、新たなSDK20Aに取り替えても、使用開始フラグFsが一度セットされるとステップS12へ進めないので、使用終了日DEを再設定することができず、不正使用が防止される。なお、セットアッププログラム26は、使用開始フラグFsが上記レジストリ等に既に存在すれば、これを上書きしない。
(S12)使用終了日DEを設定する。例えば、現在の日付に使用許可期間6ヶ月を加えたものを使用終了日DEとする。
(S13)使用開始フラグFsをセットする。これにより、この処理とステップS12の処理とは、1回のみ行われる。
(S14)現在の日付Dateが使用終了日DE以前であればステップS15へ進み、そうでなければステップS16へ進む。使用終了日DEの初期値は、過去の日付である。
(S15)使用許可フラグFをセットし、このRunメソッドを終了して、コアモジュール21に制御を戻す。使用許可フラグFのセットは、プラグイン管理モジュールに備えられたコアモジュール側インターフェイスを介して行う。
(S16)使用終了フラグFeをセットし、このRunメソッドを終了して、コアモジュール21に制御を戻す。この使用終了フラグFeも、使用開始フラグFsと同様に、SDK20Aの外部に格納しておき、セットアッププログラム26に関しても上記同様である。
これにより、新たな使用制限プラグイン28に取り替えたり、新たなSDK20Aに取り替えても、使用終了フラグFeが一度セットされるとステップS10で図5の処理を終了しS15へ進めないので、不正使用が防止される。
このような処理により、コアモジュール21及びプラグイン22〜24に変更を加えることなく、しかもUSBキーのようなアクティベーションキーを用いることなく、SDKをアプリケーション開発者が使用開始してから所定期間のみ試用することが可能となる。
また、上記のように試用期限を不正に延長することが防止される。
図7は、SDK使用制限付加装置30のハードウェア構成を示す概略ブロック図である。
SDK使用制限付加装置30では、CPU31がインターフェイス32を介してPROM33、DRAM34、ハードディスクドライブ35、ネットワークインターフェイス36及び会話型入出力装置37に結合されている。図5では、簡単化の為に、複数種のインターフェイスを1つのブロック32で表している。
PROM33は、例えばフラッシュメモリであり、BIOSが格納されている。DRAM34は、主記憶装置として用いられる。ハードディスクドライブ35には、仮想記憶方式のOS(オペレーティングシステム)、各種ドライバ及びアプリケーション並びにデータが格納されている。このアプリケーションには、図2の使用制限付加ツール40が含まれている。ネットワークインターフェイス36は、LAN38に結合されている。会話型入出力装置37は、図2に示すキーボード371、不図示のポインティングデバイス及び表示装置372を備えている。
次に、図2に示す使用制限付加ツール40の構成を説明する。
使用制限付加ツール40は、メインルーチンとしての制御部41と、制御部41により呼び出されて処理を行うUI部42、ユーザ認証部43、インストール情報更新部44及び使用制限プラグイン作成部45と、使用制限プラグイン作成部45により呼び出されて処理を行う使用制限プラグイン編集部46、キー生成部47及びビルド部48と、処理対象49とを備えている。処理対象49は、使用制限プラグイン編集部46及びビルド部48の処理対象としての使用制限プラグインソースファイル28Xと、インストール情報更新部44の処理対象を含む原SDK20とを備えている。
UI部42は、制御部41により指定された入力画面識別IDに基づいて、対応する入力画面を表示装置372に表示させ、入力装置を介してこの画面上の所定領域に入力された文字列を、制御部41の要求に応じて制御部41に引き渡す。ユーザ認証部43は、使用制限付加ツール40が不正に使用されるのを防止することを目的として、操作者11Aが入力するIDとパスワードの組を認証する。インストール情報更新部44は、制御部41からの呼び出しに応答して、原SDK20中のインストール情報27に情報を付加してインストール情報27Aとすることにより、使用制限プラグイン28もインストール対象に含むようにする。使用制限プラグイン作成部45は、制御部41からの呼び出しに応答して、使用制限プラグイン編集部46を介し使用制限プラグインソースファイル28Xを編集し、キー生成部47を介しデジタル署名用キーペアを生成し、ビルド部48を介して使用制限プラグインソースファイル28Xをコンパイルして実行可能形式のデジタル署名付使用制限プラグイン(アセンブリ)使用制限プラグイン28を生成する。
図6は、使用制限付加ツール40の動作を示すシーケンス図である。以下、括弧内は図6中のステップ識別符号である。
(S20)操作者11Aは、キーボード371を操作して制御部41を起動させる。
(S21)制御部41はこれに応答して、UI部42を介し、表示装置372にログイン情報入力画面を表示させる。
(S22)操作者11Aは、キーボード371を介してユーザIDとパスワードを入力し、UI部42はこの入力をログイン情報として保持する。操作者11Aは、キーボード371を介してログイン情報の確定指示を与える。
(S23)制御部41はこれに応答して、UI部42を介し、ログイン情報を取得する。
(S24)制御部41は、取得したログイン情報を引数として、ユーザ認証部43を呼び出すことにより、ユーザ認証を行う。
(S25)この認証が成功した場合には、制御部41はUI部42を介して表示装置372に、使用制限情報入力画面を表示させる。
(S26)操作者11Aは、キーボード371を操作して使用制限情報を入力し、確定指示を入力する。使用制限情報は、SDKの使用許可期間を含む。
(S27)制御部41は前記確定指示入力に応答して、この制限情報を取得する。
(S28)制御部41は、使用制限プラグイン作成部45及び使用制限プラグイン編集部46を介し、使用制限プラグインソースファイル28Xに対し上記使用制限情報を設定する。
(S29)使用制限プラグイン作成部45は、キー生成部47を介し、秘密キーと公開キーのペアを生成する。
(S30)使用制限プラグイン作成部45は、ビルド部48を介し、この使用制限情報が設定された処理対象49をコンパルイし、そのハッシュ値を前記秘密キーで暗号化してデジタル署名を生成し、これと前記公開キーに対応した公開キートークンをアセンブリマニフェストに含め、これを含む使用制限プラグイン(アセンブリ)28を生成する。
なお、コアモジュール21でデジタル署名を検証可能にするため、原SDK開発元により許可された公開キーは、コアモジュール21に含まれている。
(S31)制御部41は、インストール情報更新部44を介し、使用制限プラグイン28もインストール時のコピー対象に含むように、原SDK20中のインストール情報27に情報を付加して、インストール情報27Aとする。この際、インストール情報27に含まれていたデジタル署名を、更新後のインストール情報のハッシュ値を上記同様に暗号化して得たデジタル署名で、置換する。セットアッププログラム26は、その起動時にこれを検証し、適正である場合のみインストールを実行する。
なお、SDK開発元が許可した公開キーに対応する公開キートークン(公開キーのハッシュ値)が予めセットアッププログラム26に含まれている。この点は、コアモジュール21が使用制限プラグイン28を検証する場合についても同様である。
(S32)制御部41は、原SDK20中のインストール情報27以外のものと、インストール情報27Aと、使用制限プラグイン28との組を使用制限付SDK20Aとしてフォルダ内にまとめ、これを図3に示すような使用制限付SDK20Aとして、ハードディスクドライブ35に格納(出力)する。
以上において、本発明の好適な実施例を説明したが、本発明には他にも種々の変形例が含まれ、上記複数の実施例で述べた構成要素の他の組み合わせ、各構成要素の機能を実現する他の構成を用いたもの、当業者であればこれらの構成又は機能から想到するであろう他の構成も、本発明に含まれる。
例えば、使用制限情報は、使用開始日と使用期間との組を含んでいたり、使用開始日と使用終了日との組を含んでいたりしてもよい。
また、使用期限を実質的に無限大、例えば100年とすることにより、有償のサブライセンス契約用SDKを作成してもよい。
10 SDK開発支援装置
11 開発者
11A 操作者
20 原SDK
20A 使用制限付SDK
21 コアモジュール
22 UIプラグイン
23 エディットプラグイン
24 ビルドプラグイン
25 プラグイン管理部
26 セットアッププログラム
27、27A インストール情報
28 使用制限プラグイン
28X 使用制限プラグインソースファイル
30 SDK使用制限付加装置
31 CPU
32 インターフェイス
33 PROM
34 DRAM
35 ハードディスクドライブ
36 ネットワークインターフェイス
37 会話型入出力装置
38 LAN
40 使用制限付加ツール
41 制御部
42 UI部
43 ユーザ認証部
44 インストール情報更新部
45 使用制限プラグイン作成部
46 使用制限プラグイン編集部
48 ビルド部
49 処理対象
F 使用許可変数
Fs 使用開始変数
Fe 使用終了変数
DE 使用終了日

Claims (6)

  1. 起動後、使用制限プラグインの応答結果に応じて実行を継続し又は終了するように構成されたプラグイン対応型コアモジュールを備えている原SDKに、使用制限プラグインを付加して使用制限付SDKを生成するSDK使用制限付加装置であって、
    入力手段と、
    該使用制限プラグインのソースファイルと、
    該入力手段を介して入力された使用制限情報に基づいて、該ソースファイルに対し使用制限を設定するソースファイル編集手段と、
    該入力手段を介して入力されたビルド指示に応答して、該ソースファイルをコンパイルして該使用制限プラグインの実行可能ファイルを生成するビルド手段と、
    該入力手段を介して入力された出力指示に応答して、該原SDKと該使用制限プラグインの実行可能ファイルとを含む該使用制限付SDKを出力する出力手段と、
    を有することを特徴とするSDK使用制限付加装置。
  2. 該使用制限情報は、使用開始日からの使用許可期間を含むことを特徴とする請求項1に記載のSDK使用制限付加装置。
  3. 該使用制限プラグインは、プロセッサに対し、
    (1)使用開始情報が「使用開始前」であることを示していれば、現在日付に該使用許可期間を加算したものを使用期限と決定し、該使用開始情報が「使用開始後」を示すようにし、次いで処理(3)へ進ませ、
    (2)該使用開始情報が「使用開始後」であることを示していれば、処理(1)を実行させずに処理(3)へ進ませ、
    (3)現在日付が該使用期限を越えていなければ使用許可情報が「使用許可」を示すようにさせ、該使用許可情報を該応答結果として該コアモジュールに返させる、
    ものであることを特徴とする請求項2に記載のSDK使用制限付加装置。
  4. 該使用制限プラグインは、プロセッサに対し、
    処理(3)においてさらに、該現在日付が該使用期限を越えていれば使用終了情報が「使用終了後」を示すようにさせ、
    処理(1)の前において、
    (4)該使用終了情報が「使用終了前」を示していれば処理(1)へ進ませ、該使用終了情報が「使用終了後」を示していれば該使用制限プラグインの処理を終了させる、
    ものであることを特徴とする請求項3に記載のSDK使用制限付加装置。
  5. 該使用開始情報及び該使用終了情報は、不揮発性記憶手段に格納され、該コアモジュールの外部かつ該使用制限プラグインの外部に配置されていることを特徴とする請求項4に記載のSDK使用制限付加装置。
  6. 原SDKの開発を支援する原SDK開発支援装置と、
    請求項5に記載のSDK使用制限付加装置と、
    を有し、該原SDKは、起動後、使用制限プラグインの応答結果に応じて実行を継続又は終了する、実行可能形式のプラグイン対応型コアモジュールを備えたSDKであることを特徴とする使用制限付SDK開発システム。
JP2010013701A 2010-01-26 2010-01-26 Sdk使用制限付加装置及び使用制限付ソフトウェア開発システム Expired - Fee Related JP4938869B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2010013701A JP4938869B2 (ja) 2010-01-26 2010-01-26 Sdk使用制限付加装置及び使用制限付ソフトウェア開発システム
US13/013,507 US8479144B2 (en) 2010-01-26 2011-01-25 SDK use-restriction imposing device, use-restriction-imposed SDK developing system, and SDK use-restriction imposing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010013701A JP4938869B2 (ja) 2010-01-26 2010-01-26 Sdk使用制限付加装置及び使用制限付ソフトウェア開発システム

Publications (2)

Publication Number Publication Date
JP2011154412A JP2011154412A (ja) 2011-08-11
JP4938869B2 true JP4938869B2 (ja) 2012-05-23

Family

ID=44309874

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010013701A Expired - Fee Related JP4938869B2 (ja) 2010-01-26 2010-01-26 Sdk使用制限付加装置及び使用制限付ソフトウェア開発システム

Country Status (2)

Country Link
US (1) US8479144B2 (ja)
JP (1) JP4938869B2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9405896B2 (en) * 2011-04-12 2016-08-02 Salesforce.Com, Inc. Inter-application management of user credential data
CN103713896B (zh) * 2013-12-17 2017-01-04 北京京东尚科信息技术有限公司 用于访问服务器的软件开发工具包生成方法及装置
JP2015143950A (ja) * 2014-01-31 2015-08-06 株式会社リコー 表示装置、表示装置の制御方法、及び制御プログラム
CN104932928A (zh) * 2014-03-17 2015-09-23 无锡天脉聚源传媒科技有限公司 一种基于java的插件化开发方法及系统
US10270753B2 (en) 2015-08-14 2019-04-23 Salesforce.Com, Inc. Background authentication refresh
CN106295310A (zh) * 2016-07-28 2017-01-04 乐视控股(北京)有限公司 第三方程序sdk验证处理方法及装置
CN107463855A (zh) * 2017-07-10 2017-12-12 杭州绿湾网络科技有限公司 基于sdk的防篡改方法和系统
CN109190357B (zh) * 2018-08-30 2021-08-06 袁精侠 一种仅利用缓存资源进行人机验证的手势验证码实现方法
US11209990B2 (en) * 2019-03-15 2021-12-28 Super Micro Computer, Inc. Apparatus and method of allocating data segments in storage regions of group of storage units

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1118923A1 (de) * 2000-01-18 2001-07-25 Siemens Aktiengesellschaft Verfahren zur Nutzung von SW-Produkten, die über ein Netz angeboten werden
JP2002182910A (ja) * 2000-12-11 2002-06-28 Sharp Corp アプリケーション開発方法及びアプリケーション開発環境システム
JP2002259606A (ja) * 2001-02-28 2002-09-13 Internatl Business Mach Corp <Ibm> プログラム使用許諾期間の更新方法、プログラムの使用許諾方法、情報処理システムおよびプログラム
AU2002359001A1 (en) * 2001-12-28 2003-07-24 Access Co., Ltd. Usage period management system for applications
AU2003262857A1 (en) * 2002-08-24 2004-03-11 Ingrian Networks, Inc. Selective feature activation
JP4175118B2 (ja) * 2003-01-14 2008-11-05 ヤマハ株式会社 コンテンツ処理装置及びプログラム
JP2005301927A (ja) * 2004-04-16 2005-10-27 Plus Joho System Kk アプリケーションソフトの利用管理システム
JP2006126991A (ja) * 2004-10-27 2006-05-18 Matsushita Electric Ind Co Ltd 試用期間制限装置、方法、プログラム及び媒体
JP4678217B2 (ja) * 2005-03-23 2011-04-27 三菱電機株式会社 数値制御装置の管理方法及びその装置
US20070067241A1 (en) * 2005-09-19 2007-03-22 Bellsouth Intellectual Property Corporation Trial access terms for media files
JP4616784B2 (ja) 2006-03-24 2011-01-19 京セラミタ株式会社 画像形成装置
US7884961B2 (en) 2006-03-24 2011-02-08 Kyocera Mita Corporation Image forming apparatus with optional routine activated by memory key
JP4931554B2 (ja) * 2006-11-06 2012-05-16 富士通エフ・アイ・ピー株式会社 ライセンス管理システム、ライセンス管理方法並びにライセンス管理プログラム

Also Published As

Publication number Publication date
US20110185189A1 (en) 2011-07-28
US8479144B2 (en) 2013-07-02
JP2011154412A (ja) 2011-08-11

Similar Documents

Publication Publication Date Title
JP4938869B2 (ja) Sdk使用制限付加装置及び使用制限付ソフトウェア開発システム
US9727327B1 (en) Software distribution framework
JP5821034B2 (ja) 情報処理装置、仮想マシン生成方法及びアプリ配信システム
US8887152B1 (en) Android application virtual environment
JP5403771B2 (ja) ファームウェアに安全なアップデートを提供するシステム及び方法
JP5828081B2 (ja) 情報処理装置、情報処理方法、及びプログラム配信システム
JP5061908B2 (ja) プログラム実行制御方法および装置ならびに実行制御プログラム
JP5740573B2 (ja) 情報処理装置および情報処理方法
US20130167136A1 (en) Component-based installation
KR20160147862A (ko) 확장자가 애플리케이션의 기능을 다른 애플리케이션으로 확장하게 하는 고정적 확장 포인트
US20140033315A1 (en) Method and system for enforcing a license dependency rule for a software application
JP2007519071A (ja) ソフトウェアアプリケーションをプログレッシブインストールするためのシステムおよび方法およびapi
US20120151442A1 (en) Networked program dependency compatibility analysis
Elrom et al. Neo blockchain and smart contracts
US8401973B1 (en) Method and system for managing a license for an add-on software component
JP2005129047A (ja) カスタマイズ可能で構成可能な再使用可能アプリケーションを構築し、展開し、保守し、管理するフレームワーク
Elrom et al. Eos. io wallets and smart contracts
TW200820076A (en) Portable mass storage with virtual machine activation
TWI467485B (zh) Verification of the basic input and output system update method, the computer can read the recording media and computer program products
JP4787594B2 (ja) 装置、セキュリティ管理方法、セキュリティ管理プログラム及び記録媒体
CN116305011A (zh) 应用程序的保护方法和安装方法
JP2014219736A (ja) 管理システム、管理システムの制御方法、及びプログラム
KR101265887B1 (ko) 보호 컴퓨팅 환경을 제공하는 방법 및 장치 내에 보호 환경을 설정하는 방법
JP2018136920A (ja) 画像形成装置及びその制御方法
WO2022270626A1 (ja) ソフトウェア利用システムおよびソフトウェア利用方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111222

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

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

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

Free format text: PAYMENT UNTIL: 20150302

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4938869

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

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

Free format text: PAYMENT UNTIL: 20150302

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees