(57)【特許請求の範囲】
【請求項１】
クライアント装置とクラウド装置とを含むセキュリティサービス提供システムにおける、クラウドベースのアプリケーションセキュリティサービスの提供方法であって、
前記クライアント装置において、アプリケーションソースをコンパイルしてバイナリを生成するバイナリ生成ステップと、
前記クライアント装置において、前記バイナリ生成ステップで生成されたバイナリを含む実行パッケージを構成する実行パッケージ構成ステップと、
前記クライアント装置において、前記実行パッケージ構成ステップで構成された実行パッケージを前記クラウド装置にアップロードするアップロードステップと、
前記クラウド装置において、前記アップロードステップでアップロードされた実行パッケージを分解して、バイナリを抽出する実行パッケージ分解ステップと、
前記クラウド装置において、複数のセキュリティライブラリのいずれかのセキュリティライブラリを、前記実行パッケージ分解ステップで抽出されたバイナリに適用してセキュリティ適用バイナリを生成するセキュリティライブラリ適用ステップと、
前記クラウド装置において、前記セキュリティライブラリ適用ステップで生成されたセキュリティ適用バイナリを含むセキュリティ適用実行パッケージを再構成する実行パッケージ再構成ステップと、
前記クライアント装置において、前記実行パッケージ再構成ステップで再構成されたセキュリティ適用実行パッケージをダウンロードするダウンロードステップと、
を含むことを特徴とする、クラウドベースのアプリケーションセキュリティサービスの提供方法。
【請求項２】
前記セキュリティライブラリには、整合性検証のためのハッシュ検証機能が含まれており、
前記クラウド装置において、前記セキュリティライブラリにおけるハッシュ検証機能のために、前記実行パッケージ分解ステップで抽出されたバイナリに対してハッシュコードを生成するハッシュコード生成ステップをさらに含むことを特徴とする、
請求項１に記載のクラウドベースのアプリケーションセキュリティサービスの提供方法。
【請求項３】
前記セキュリティライブラリには、前記ハッシュ検証機能のほかに、アンチデバッグ機能、アンチダンプ機能、または、アンチデバッグ機能及びアンチダンプ機能が含まれていることを特徴とする、請求項２に記載のクラウドベースのアプリケーションセキュリティサービスの提供方法。
【請求項４】
前記クライアント装置において、前記バイナリ生成ステップの前に、前記アプリケーションソースの特定関数に対してセキュリティタグを設定する、セキュリティタグ設定ステップをさらに含むことを特徴とする、請求項２または３に記載のクラウドベースのアプリケーションセキュリティサービスの提供方法。
【請求項５】
前記クライアント装置において、前記セキュリティタグ設定ステップで設定されたセキュリティタグが検出されると、自動的にセキュリティタグに関連したデバッガ用ライブラリをリンクさせるデバッガ用ライブラリリンクステップをさらに含むことを特徴とする、請求項４に記載のクラウドベースのアプリケーションセキュリティサービスの提供方法。
【請求項６】
前記実行パッケージ分解ステップは、前記アップロードステップでアップロードされた実行パッケージをパーシングし、デバッガ用ライブラリを抽出し、
前記セキュリティライブラリ適用ステップは、前記実行パッケージ分解ステップで抽出されたデバッガ用ライブラリを複数のセキュリティライブラリのいずれかのセキュリティライブラリに入れ替えて、セキュリティ適用バイナリを生成することを特徴とする、請求項５に記載のクラウドベースのアプリケーションセキュリティサービスの提供方法。
【請求項７】
前記ハッシュコード生成ステップは、前記実行パッケージ分解ステップで抽出されたバイナリにおいて、セキュリティタグの設定された特定関数に対してハッシュコードを生成することを特徴とする、請求項６に記載のクラウドベースのアプリケーションセキュリティサービスの提供方法。
【請求項８】
前記クラウド装置において、前記ハッシュコード生成ステップの後、前記セキュリティライブラリ適用ステップで生成されたセキュリティ適用バイナリに対し、複数のセキュリティライブラリのいずれかのセキュリティライブラリに対応して提供された暗号化キーを用いて暗号化する暗号化ステップをさらに含むことを特徴とする、請求項７に記載のクラウドベースのアプリケーションセキュリティサービスの提供方法。
【請求項９】
クライアント装置とクラウド装置とを含むクラウドベースのアプリケーションセキュリティサービスの提供システムであって、
前記クライアント装置は、
アプリケーションソースをコンパイルしてバイナリを生成するコンパイラ部と、
前記コンパイラ部で生成されたバイナリを含む実行パッケージを構成する実行パッケージ構成部と、
前記実行パッケージ構成部で構成された実行パッケージを前記クラウド装置にアップロードするアップロード部と、
前記クラウド装置からセキュリティの適用されたセキュリティ適用実行パッケージをダウンロードするダウンロード部と、
を含み、
前記クラウド装置は、
前記アップロード部でアップロードされた実行パッケージを分解してバイナリを抽出する実行パッケージ分解部と、
複数のセキュリティライブラリのいずれかのセキュリティライブラリを提供するセキュリティライブラリ提供部と、
前記セキュリティライブラリ提供部で提供されたセキュリティライブラリを、前記実行パッケージ分解部で抽出されたバイナリに適用し、セキュリティ適用バイナリを生成するセキュリティライブラリ適用部と、
前記セキュリティライブラリ適用部で生成されたセキュリティ適用バイナリを含む実行パッケージを再構成する実行パッケージ再構成部と、
を含む
ことを特徴とする、クラウドベースのアプリケーションセキュリティサービス提供システム。
【請求項１０】
前記セキュリティライブラリには、整合性検証のためのハッシュ検証機能が含まれて、
前記クラウド装置は、前記セキュリティライブラリにおけるハッシュ検証機能のために、前記実行パッケージ分解部で抽出されたバイナリに対してハッシュコードを生成するハッシュコード生成部をさらに含むことを特徴とする、
請求項９に記載のクラウドベースのアプリケーションセキュリティサービス提供システム。
【請求項１１】
前記セキュリティライブラリには、前記ハッシュ検証機能のほかに、アンチデバッグ機能、アンチダンプ機能、または、アンチデバッグ機能及びアンチダンプ機能が含まれていることを特徴とする、
請求項１０に記載のクラウドベースのアプリケーションセキュリティサービス提供システム。
【請求項１２】
前記クライアント装置は、前記アプリケーションソースの特定関数に対してセキュリティタグを設定するセキュリティタグ編集部をさらに含むことを特徴とする、
請求項１０または１１に記載のクラウドベースのアプリケーションセキュリティサービス提供システム。
【請求項１３】
前記クライアント装置は、前記セキュリティタグ編集部で設定されたセキュリティタグが検出されると、自動的にセキュリティタグに関連したデバッガ用ライブラリをリンクさせるセキュリティタグ検査部をさらに含むことを特徴とする、
請求項１２に記載のクラウドベースのアプリケーションセキュリティサービス提供システム。
【請求項１４】
前記実行パッケージ分解部は、前記アップロード部でアップロードされた実行パッケージをパーシングして、デバッガ用ライブラリを抽出し、
前記セキュリティライブラリ適用部は、前記実行パッケージ分解部で抽出されたデバッガ用ライブラリを、前記セキュリティライブラリ提供部で提供されたセキュリティライブラリに入れ替えて、セキュリティ適用バイナリを生成する
ことを特徴とする、請求項１３に記載のクラウドベースのアプリケーションセキュリティサービス提供システム。
【請求項１５】
前記ハッシュコード生成部は、前記実行パッケージ分解部で抽出されたバイナリにおいて、セキュリティタグの設定された特定関数に対してハッシュコードを生成することを特徴とする、
請求項１４に記載のクラウドベースのアプリケーションセキュリティサービス提供システム。
【請求項１６】
前記クラウド装置は、前記セキュリティライブラリ適用部で生成されたセキュリティ適用バイナリに対して、前記セキュリティライブラリ提供部で提供されたセキュリティライブラリに対応して提供された暗号化キーを用いて暗号化する暗号化部をさらに含むことを特徴とする、
請求項１５に記載のクラウドベースのアプリケーションセキュリティサービス提供システム。
【請求項１７】
前記クライアント装置から提供されたセキュリティ適用実行パッケージをダウンロードしてアプリケーションを実行するユーザ端末装置をさらに含むことを特徴とする、
請求項９乃至１１のいずれかに記載のクラウドベースのアプリケーションセキュリティサービス提供システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クラウドベースのアプリケーションセキュリティサービスの提供方法及びシステムに関するものである
【背景技術】
【０００２】
以下に記述する内容は、単に本実施例に係る背景情報のみを提供するだけで、従来技術を構成するものではないことは明らかである。
【０００３】
最近になって、他人のコンピュータに侵入して情報を流出したり、リバースエンジニアリング（ｒｅｖｅｒｓｅ  ｅｎｇｉｎｅｅｒｉｎｇ）技術を利用して、コンピュータプログラムが本来意図された機能とは異なる機能を実行するようにコンピュータプログラムのバイナリコードを変更したり、デバッガなどのツールを使用して、コンピュータプログラムが実行される途中でバイナリコードを変更し、これを悪用する事例が頻繁に起きている。たとえば、プログラムを変更する者が、オンラインゲームのユーザＰＣで動作するクライアントプログラムをリバースエンジニアリングし、クライアントプログラムが自動的に実行されるように変更すれば、正常でない方法でゲームアイテムを獲得することも可能になる。
【０００４】
したがって、アプリケーションのソースコードに対応するバイナリコードなどを保護する必要がある。現在は、セキュリティソリューションＳＤＫ（Ｓｏｆｔｗａｒｅ  Ｄｅｖｅｌｏｐｍｅｎｔ  Ｋｉｔ）をソースコードに適用することにより、アプリケーションのバイナリコードを保護するのが一般的である。しかし、アプリケーションのバイナリコードを保護するためにＳＤＫを使用する場合は、まず、そのＳＤＫの使用方法を熟知しなければならず、また、そのＳＤＫのライブラリを既存のソースコードに追加しなければならない。さらに、既存のソースコードの変更も必要な場合が発生するため、かなりの時間と開発者の努力が必要である。何よりも、ハッカーによってバイナリコードが攻撃された場合、迅速に対応することができないという問題がある。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述の問題点を解決するために、本発明は、クラウドに基づいて、セキュリティ適用の利便性と、ハッカーの攻撃に対する迅速な対応を可能にする、クラウドベースのアプリケーションセキュリティサービスの提供方法及びシステムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上述の目的を達成するために、本発明の一実施例による、クライアント装置とクラウド装置とを含むセキュリティサービス提供システムにおけるクラウドベースのアプリケーションセキュリティサービスの提供方法は、クライアント装置において、アプリケーションソースをコンパイルしてバイナリを生成するバイナリ生成ステップと、クライアント装置において、バイナリ生成ステップで生成されたバイナリを含む実行パッケージを構成する実行パッケージ構成ステップと、クライアント装置において、実行パッケージ構成ステップで構成された実行パッケージをクラウド装置にアップロードするアップロードステップと、クラウド装置においてアップロードステップでアップロードされた実行パッケージを分解してバイナリを抽出する実行パッケージ分解ステップと、クラウド装置において、複数のセキュリティライブラリのいずれかのセキュリティライブラリを実行パッケージ分解ステップで抽出されたバイナリに適用してセキュリティ適用バイナリを生成するセキュリティライブラリ適用ステップと、クラウド装置において、セキュリティライブラリ適用ステップで生成されたセキュリティ適用バイナリを含むセキュリティ適用実行パッケージを再構成する実行パッケージ再構成ステップと、クライアント装置において、実行パッケージ再構成ステップで再構成されたセキュリティ適用実行パッケージをダウンロードする、ダウンロードステップとを提供する。
【０００７】
セキュリティライブラリには、整合性検証のためのハッシュ検証機能が含まれており、クラウド装置は、セキュリティライブラリにおけるハッシュ検証機能のために、実行パッケージ分解ステップで抽出されたバイナリに対してハッシュコードを生成するハッシュコード生成ステップをさらに含む。
【０００８】
セキュリティライブラリには、ハッシュ検証機能のほかに、アンチデバッグ機能、アンチダンプ機能、または、アンチデバッグ機能及びアンチダンプ機能が含まれている。
【０００９】
クライアント装置は、バイナリ生成ステップの前に、アプリケーションソースの特定関数に対してセキュリティタグを設定するセキュリティタグ設定ステップをさらに含む。
【００１０】
クライアント装置は、セキュリティタグ設定ステップで設定されたセキュリティタグが検出されると、自動的にセキュリティタグに関連したデバッガ用ライブラリをリンクさせるデバッガ用ライブラリリンクステップをさらに含む。
【００１１】
実行パッケージ分解ステップは、アップロードステップでアップロードされた実行パッケージをパーシングし、デバッガ用ライブラリを抽出し、セキュリティライブラリ適用ステップは、実行パッケージ分解ステップで抽出されたデバッガ用ライブラリを複数のセキュリティライブラリのいずれかのセキュリティライブラリに入れ替えて、セキュリティ適用バイナリを生成する。
【００１２】
ハッシュコード生成ステップは、実行パッケージ分解ステップで抽出されたバイナリにおいて、セキュリティタグの設定された特定関数に対してハッシュコードを生成する。
【００１３】
クラウド装置は、ハッシュコード生成ステップの後、セキュリティライブラリ適用ステップで生成されたセキュリティ適用バイナリに対し、複数のセキュリティライブラリのいずれかのセキュリティライブラリに対応して提供された暗号化キーを用いて暗号化する暗号化ステップをさらに含む。
【００１４】
本発明のまた他の実施例によるクライアント装置とクラウド装置とを含むセキュリティサービス提供システムにおけるクラウドベースのアプリケーションセキュリティサービスの提供方法は、クライアント装置において、アプリケーションソースをコンパイルしてバイナリを生成するバイナリ生成ステップと、クラウド装置において、前記クライアント装置に複数のセキュリティライブラリのいずれかのセキュリティライブラリを提供するセキュリティライブラリ提供ステップと、クライアント装置において、セキュリティライブラリ提供ステップで提供されたセキュリティライブラリをバイナリ生成ステップで生成されたバイナリに適用してセキュリティ適用バイナリを生成するセキュリティライブラリ適用ステップと、を提供することにより、上述の目的を達成することができる。
【００１５】
本発明の一実施例によるクライアント装置とクラウド装置とを含むクラウドベースのアプリケーションセキュリティサービスの提供システムにおいて、クライアント装置は、アプリケーションソースをコンパイルしてバイナリを生成するコンパイラ部と、コンパイラ部で生成されたバイナリを含む実行パッケージを構成する実行パッケージ構成部と、実行パッケージ構成部で構成された実行パッケージをクラウド装置にアップロードするアップロード部と、クラウド装置からセキュリティの適用されたセキュリティ適用実行パッケージをダウンロードするダウンロード部と、を提供して、クラウド装置は、アップロード部でアップロードされた実行パッケージを分解してバイナリを抽出する実行パッケージ分解部と、複数のセキュリティライブラリのいずれかのセキュリティライブラリを提供するセキュリティライブラリ提供部と、セキュリティライブラリ提供部で提供されたセキュリティライブラリを、実行パッケージ分解部で抽出されたバイナリに適用し、セキュリティ適用バイナリを生成するセキュリティライブラリ適用部と、セキュリティライブラリ適用部で生成されたセキュリティ適用バイナリを含む実行パッケージを再構成する実行パッケージ再構成部と、を提供することにより、上述の目的を達成することができる。
【００１６】
本発明のまた他の実施例による、クライアント装置とクラウド装置とを含む、クラウドベースのアプリケーションセキュリティサービス提供システムにおいて、クラウド装置は、複数のセキュリティライブラリのいずれかのセキュリティライブラリをクライアント装置に提供するセキュリティライブラリ提供部を提供して、クライアント装置は、アプリケーションソースをコンパイルしてバイナリを生成するコンパイラ部と、クラウド装置から提供されたセキュリティライブラリをコンパイラ部に生成されたバイナリに適用して、セキュリティ適用バイナリを生成するセキュリティライブラリ適用部と、を提供することにより、上述の目的を達成することができる。
【発明の効果】
【００１７】
以上説明したように、本実施例によると、クラウドに基づいて、セキュリティ適用の利便性と、ハッカーの攻撃に対する迅速な対応が可能である。
【００１８】
また、プログラムの実行に敏感でありながらバイナリ変更セキュリティが必要なコンピュータプログラムの実行において、メモリハッシュを利用した整合性検証のために、保護の必要な重要な関数にセキュリティタグを適用して、セキュリティタグの適用された関数が呼び出された場合、セキュリティタグの適用された関数に対してのみ、メモリハッシュを利用してバイナリの変更有無を検査することにより、ハッシュ計算に対する負担でコンピュータプログラムの実行性能及びシステムの性能が低下することを防止することができる。
【００１９】
一方、セキュリティタグは、短い時間間隔で反復的に呼び出される関数よりは、アカウントの認証、パスワードの入力、決済関連、セキュリティ関連（ハッシュチェック、アンチデバッグなど）、暗号化・復号化、証明書の検証、商品の購入・販売、初期化、サーバ通信、設定ファイル（セーブファイル）の読み書き、演算結果判定及びプログラムの実行において保護の必要な、重要な関数に適している。上記のような関数は、一定の周期で繰り返して呼び出されるものではないという特徴があって、繰り返して呼び出されるとしても、関数に対する整合性の検証以後、再び同じ関数が呼び出された場合、一定の時間間隔内では、検証が省かれるようにすることができる
【図面の簡単な説明】
【００２０】
【図１】本発明の一実施例によるクラウドベースのアプリケーションセキュリティサービスシステムの概略的なブロック図である。
【図２】図１に示されたクライアント装置の具体的なブロック図である。
【図３】図１に示されたクラウド装置の具体的なブロック図である。
【図４】本発明の一実施例によるアプリケーションセキュリティサービス提供方法の流れ図である。
【図５】図１に示されたユーザ端末装置の具体的なブロック図である。
【図６】図５に示されたメインメモリにロードされたアプリケーションプログラム関連構成を示した図である。
【図７】本発明の一実施例によるアプリケーションが動的ライブラリに含まれたモジュールを呼び出す過程を示した図である。
【詳細な説明発明】
【００２１】
以下、添付の図面を参照し、本実施例を詳細に説明する。
【００２２】
本実施例によるクラウドベースのアプリケーションセキュリティサービスの提供方法は、Ｃ／Ｃ＋＋のようなネイティブコード（ｎａｔｉｖｅ  ｃｏｄｅ）を生成することができるプログラム言語であれば、ＰＣ、サーバ、スマートフォンなどのハードウェアや、Ｗｉｎｄｏｗｓ（登録商標）、ＵＮＩＸ（登録商標）、Ｌｉｎｕｘ（登録商標）、ＯＳ  Ｘなどのアプリケーションソフトウェアが実行されるオペレーティングシステムに関係なく、同一に適用できる
図１は、本発明の一実施例によるクラウドベースのアプリケーションセキュリティサービスシステムの概略的なブロック図である。
【００２３】
図１に示すように、アプリケーションセキュリティサービスシステムは、クライアント装置１００、クラウド装置１５０、及び、ユーザ端末装置１９０を含む。
【００２４】
クライアント装置１００は、クライアントメモリ部１１０、コンパイラ部１２０、実行パッケージ構成部１２５、アップロード部１３０、及び、ダウンロード部１４０を含む。
【００２５】
クライアントメモリ部１１０には、アプリケーションプログラムの開発が完了したアプリケーションソースコード１１２が記憶されている。コンパイラ部１２０は、クライアントメモリ部１１０に記憶されたアプリケーションソースコード１１２をコンパイルしてバイナリコード１１４を生成し、生成されたバイナリコード１１４は、クライアントメモリ部１１０に記憶される。実行パッケージ構成部１２５は、クライアントメモリ部１１０に記憶されたバイナリコード１１４とその他のリソースなどを合わせて実行パッケージ１１６を構成し、構成された実行パッケージ１１６は、クライアントメモリ部１１０に記憶される。
【００２６】
アップロード部１３０は、クライアントメモリ部１１０に記憶された実行パッケージ１１６をクラウド装置１５０にアップロードし、ダウンロード部１４０は、クラウド装置１５０からセキュリティ適用実行パッケージ１１８をダウンロードして、ダウンロードされたセキュリティ適用実行パッケージ１１８は、クライアントメモリ部１１０に記憶される。
【００２７】
クラウド装置１５０は、クラウドメモリ部１６０、実行パッケージ分解部１７０、セキュリティライブラリ適用部１７２、ハッシュコード生成部１７４、暗号化部１７６、実行パッケージ再構成部１７８、及び、セキュリティライブラリ提供部１８０を含む。
【００２８】
クラウドメモリ部１６０には、アップロード部１３０でアップロードされた実行パッケージ１１６が記憶される。実行パッケージ分解部１７０は、実行パッケージを分解し、バイナリコード１１４を抽出して、バイナリコード１１４は、クラウドメモリ部１６０に記憶される。セキュリティライブラリ適用部１７２は、セキュリティライブラリ提供部１８０から提供されたセキュリティライブラリをバイナリコード１１４に適用する。
【００２９】
ハッシュコード生成部１７４は、セキュリティの適用されたバイナリコードに、ハッシュ関数を利用してハッシュコードを生成する。ここでハッシュコード生成部１７４は、ハッシュコードをファイル単位でまたはメモリ単位で生成することができる。暗号化部１７６は、セキュリティ適用バイナリコードとハッシュコード生成部１７４で生成されたハッシュコードに、暗号化アルゴリズムを利用して暗号化を実行する。実行パッケージ再構成部１７８は、セキュリティの適用されたバイナリコードとその他のリソースなどを合わせて、セキュリティ適用実行パッケージ１１８に再構成する。
【００３０】
セキュリティライブラリ提供部１８０は、セキュリティライブラリ適用部１７２にセキュリティライブラリを提供するためのもので、多数のセキュリティライブラリが記憶されている。多数のセキュリティライブラリは、生成するたびにコード難読化が使用されるため、相異なる形態を有するセキュリティライブラリで構成される。一般に、セキュリティライブラリは、ハッシュ検証機能が含まれており、また、デバッガ（ｄｅｂｕｇｇｅｒ）のようなツールを利用して、プログラムを静的または動的に分析するか、悪質なコードを組み込んで攻撃することができないようにするアンチデバッグ（ａｎｔｉ−ｄｅｂｕｇｇｉｎｇ）機能と、実行中のプロセスのメモリ状態をダンプできないようにするアンチダンプ（ａｎｔｉ−ｄｕｍｐ）機能が含まれている。
【００３１】
ユーザ端末装置１９０は、クライアントメモリ部１１０に記憶されているセキュリティ適用実行パッケージ１１８をダウンロードし、アプリケーションを駆動する。
【００３２】
図２は、図１に示されたクライアント装置の具体的なブロック図である。
【００３３】
図２に示すように、クライアント装置１００は、クライアントメモリ部２１０、セキュリティタグ編集部２２０、セキュリティタグ検査部２３０、セキュリティ適用コンパイラ部２４０、ＡＰＫ（Ａｎｄｒｏｉｄ  ＰａｃＫａｇｅ）構成部２５０、ＡＰＫアップロード部２６０、及び、ＡＰＫダウンロード部２７０を含む。
【００３４】
クライアントメモリ部２１０には、アプリケーションプログラムの開発が完了したアプリケーションソースコード２１２が記憶されている。
【００３５】
セキュリティタグ編集部２２０は、アプリケーションソースコード２１２において、セキュリティが必要な特定関数に対してセキュリティタグを編集するために提供される。セキュリティタグは、整合性検証を開始する地点を表示するスタートタグと、終了地点を表示するエンドタグとで構成される。セキュリティタグ編集部２２０で編集されたセキュリティタグ適用ソースコード２１３は、クライアントメモリ部２１０に記憶される。
【００３６】
一方、セキュリティタグ編集部２２０は、セキュリティタグと関連し、デバッグ用ライブラリを追加することができる。デバッグ用ライブラリは、クラウド装置１５０のセキュリティライブラリ適用部１７２でリリース用セキュリティライブラリに切り替えられる。一般に、ＳＤＫを適用時、アンチデバッグ機能により、開発時にもデバッグが困難な場合がよく発生する。しかし、本実施例では、デバッグ用ライブラリを追加することにより、開発時、デバッグに伴う不都合をなくすことができる。
【００３７】
セキュリティタグ検査部２３０は、セキュリティタグ適用ソースコード２１３においてセキュリティタグをチェックして、セキュリティタグが検出されると、セキュリティタグに自動的にデバッガ用ライブラリをリンクさせる。
【００３８】
セキュリティ適用コンパイラ部２４０は、セキュリティタグ検査部２３０で検査されたセキュリティタグが適用された関数を少なくとも一つ以上含むソースコードをコンパイルして、セキュリティタグ適用バイナリコード２１４を生成し、生成されたセキュリティタグ適用バイナリコード２１４は、クライアントメモリ部２１０に記憶される。
【００３９】
ＡＰＫ構成部２５０は、クライアントメモリ部２１０に記憶されたセキュリティタグ適用バイナリコードとその他のリソースなどを合わせて、セキュリティタグ適用実行パッケージ２１６を構成し、構成されたセキュリティタグ適用実行パッケージ２１６は、クライアントメモリ部２１０に記憶される。
【００４０】
ＡＰＫアップロード部２６０は、クライアントメモリ部２１０に記憶されたセキュリティタグ適用実行パッケージ２１６をクラウド装置１５０にアップロードして、ＡＰＫダウンロード部２７０は、クラウド装置１５０からセキュリティ適用実行パッケージ２１８をダウンロードし、ダウンロードされたセキュリティ適用実行パッケージ２１８は、クライアントメモリ部２１０に記憶される。
【００４１】
図３は、図１に示されたクラウド装置の具体的なブロック図である。
【００４２】
図３に示すように、クラウド装置１５０は、クラウドメモリ部３１０、ＡＰＫパーシング部３２０、セキュリティライブラリ適用部３３０、ハッシュコード生成部３４０、暗号化部３５０、ＡＰＫ再構成部３６０、及び、セキュリティライブラリ提供部３７０を含む。
【００４３】
クラウドメモリ部３１０には、ＡＰＫアップロード部２６０でアップロードされたセキュリティタグ適用実行パッケージ２１６が記憶される。ＡＰＫパーシング部３２０は、ＡＰＫファイルのセキュリティタグ適用実行パッケージ２１６をパーシングして、デバッガ用ライブラリを抽出する。
【００４４】
セキュリティライブラリ適用部３３０は、パーシングされたデバッガ用ライブラリを、セキュリティライブラリ提供部３７０から提供されたリリースセキュリティライブラリに切り替える。また、セキュリティライブラリ適用部３３０には、リリースセキュリティライブラリの他に、暗号化キーを提供してもよい。
【００４５】
ハッシュコード生成部３４０は、リリースセキュリティ適用バイナリコードのうち、セキュリティタグの適用された特定関数をハッシュ関数（ＭＤ５、ＳＨＡ、Ｃｈｅｃｋｓｕｍなど）の入力とし、ハッシュコードを生成することができる。また、ハッシュコード生成部３４０は、具現によって、プログラムの実行に必要な必須ファイル、アプリケーションファイルなどをハッシュ関数（ＭＤ５、ＳＨＡ、Ｃｈｅｃｋｓｕｍなど）の入力にし、ファイル別にハッシュコードを生成して、生成されたファイル別のハッシュコードを含むハッシュレジストリを生成することができる。ユニティベースのアプリケーションにおいて、プログラムの実行に必要な必須ファイルは、例えばｌｉｂｍｏｎｏ．ｓｏ、ｌｉｂｕｎｉｔｙ．ｓｏ  ＭｏｎｏＳｅｃｕｒｉｔｙ．ｄｌｌ及びＵｎｉｔｙＥｎｇｉｎｅ．ｄｌｌなどである。
【００４６】
暗号化部３５０は、リリースセキュリティ適用バイナリコードのうち、セキュリティタグの適用された特定関数に対して、ＤＥＳ、ＡＥＳ、ＲＳＡなどの暗号化アルゴリズムで、セキュリティライブラリ提供部３７０で提供された暗号化キーを用いて暗号化を実行する。この場合、暗号化部３５０は、実装例によって、動的ライブラリに対しても暗号化することができる。また、暗号化部３５０は、ハッシュコード生成部３４０で生成されたハッシュコードに対しても暗号化を実行することができる。
【００４７】
ＡＰＫ再構成部３６０は、暗号化されたリリースセキュリティ適用バイナリコードとその他のリソースなどを合わせて、実行パッケージに再構成する。
【００４８】
セキュリティライブラリ提供部３７０には、多数のセキュリティライブラリ及び暗号化キー３７２が記憶されている。多数のセキュリティライブラリ及び暗号化キーは、生成するたびにコード難読化が使用されるため、相異なる値を有するセキュリティライブラリで構成される。セキュリティライブラリ提供部３７０は、セキュリティライブラリ適用部３３０に、多数のセキュリティライブラリ及び暗号化キーの中からランダムに選択されたセキュリティ動的ライブラリ及び暗号化キーを提供する。そして、セキュリティライブラリ提供部３７０は、すでに使用したセキュリティライブラリ及び暗号化キーは削除し、再使用できないようにする。
【００４９】
図３において、１つのクラウド装置１５０に、クラウドメモリ部３１０、ＡＰＫパーシング部３２０、セキュリティライブラリ適用部３３０、ハッシュコード生成部３４０、暗号化部３５０、ＡＰＫ再構成部３６０、及び、セキュリティライブラリ提供部３７０が全て含まれて示されているが、これは物理的に統合された一つを意味するものではなく、セキュリティライブラリ提供部３７０は、他の装置から提供することもできる。
【００５０】
図４は、本発明の一実施例によるアプリケーションセキュリティサービス提供方法の流れ図である。
【００５１】
アプリケーション開発者がアプリケーションプログラムの開発を完了すると、クライアントメモリ部２１０には、アプリケーションプログラムの開発が完了されたアプリケーションソースコード２１２が記憶される（Ｓ４０２）。
【００５２】
アプリケーション開発者は、セキュリティタグ編集部２２０を利用し、アプリケーションソースコード２１２においてセキュリティが必要な特定関数に対してセキュリティタグを設定する（Ｓ４０４）。例えば、複数の関数を含むコンピュータプログラムのソースコードにおいて、アカウントの認証、パスワードの入力、決済関連、セキュリティ関連（ハッシュチェック、アンチデバッグなど）、暗号化・復号化、証明書の検証、商品の購入及び販売、初期化、サーバ通信、設定ファイル（セーブファイル）の読み書き、演算結果判定及びプログラム実行において保護が必要な重要な関数中、少なくとも一つ以上の関数にセキュリティタグを設定することができる。上記のような関数は、通常、周期的に繰り返して呼び出されるものではないという特性を持っていながらも、コンピュータプログラムを変更しようとする者たちには主要な関心の対象である。したがって、上記のような関数に対してのみ整合性を検証しても、有効性が非常に高く、整合性検証によるプログラムの実行性能の低下も最小化することができる。
【００５３】
セキュリティタグ検査部２３０は、セキュリティタグ適用ソースコード２１３でセキュリティタグをチェックして、セキュリティタグが検出されると、セキュリティタグに自動的にデバッガ用ライブラリをリンクさせる（Ｓ４０６）。
【００５４】
セキュリティ適用コンパイラ部２４０は、クライアントメモリ部２１０に記憶されたセキュリティタグが適用された関数を少なくとも一つ以上含むソースコードをコンパイルして、セキュリティタグ適用バイナリコード２１４を生成し（Ｓ４０８）、生成されたセキュリティタグ適用バイナリコード２１４は、クライアントメモリ部２１０に記憶される。
【００５５】
ＡＰＫ構成部２５０は、クライアントメモリ部２１０に記憶されたセキュリティタグ適用バイナリコード２１４とその他のリソースなどを合わせて、セキュリティタグ適用実行パッケージ２１６を構成し（Ｓ４１０）、構成されたセキュリティタグ適用実行パッケージ２１６は、クライアントメモリ部２１０に記憶される。
【００５６】
ＡＰＫアップロード部２６０は、クライアントメモリ部２１０に記憶されたセキュリティタグ適用実行パッケージ２１６をクラウド装置１５０にアップロードする（Ｓ４１２）。
【００５７】
クラウドメモリ部３１０には、ＡＰＫアップロード部２６０でアップロードされたセキュリティタグ適用実行パッケージ２１６が記憶され、ＡＰＫパーシング部３２０は、ＡＰＫファイルのセキュリティタグ適用実行パッケージ２１６をパーシングして、デバッガ用ライブラリを抽出する（Ｓ４１４）。
【００５８】
セキュリティライブラリ適用部３３０は、パーシングされたデバッガ用ライブラリを、セキュリティライブラリ提供部３７０から提供されたリリースセキュリティライブラリに切り替える（Ｓ４１６）。
【００５９】
ハッシュコード生成部３４０は、リリースセキュリティ適用バイナリコードのうち、セキュリティタグの適用された特定関数をハッシュ関数（ＭＤ５、ＳＨＡ、Ｃｈｅｃｋｓｕｍなど）の入力とし、ハッシュコードを生成することができる（Ｓ４１８）。
【００６０】
また、ハッシュコード生成部３４０は、具現によって、プログラムの実行に必要な必須ファイル、アプリケーションファイルなどをハッシュ関数（ＭＤ５、ＳＨＡ、Ｃｈｅｃｋｓｕｍなど）の入力とし、ファイル別にハッシュコードを生成して、生成されたファイル別のハッシュコードを含むハッシュレジストリを生成することができる。ユニティベースのアプリケーションにおいて、プログラムの実行に必要な必須ファイルは、例えばｌｉｂｍｏｎｏ．ｓｏ、ｌｉｂｕｎｉｔｙ．ｓｏ  ＭｏｎｏＳｅｃｕｒｉｔｙ．ｄｌｌ及びＵｎｉｔｙＥｎｇｉｎｅ．ｄｌｌなどである。
【００６１】
暗号化部３５０は、リリースセキュリティ適用バイナリコードのうち、セキュリティタグの適用された特定関数を、ＤＥＳ、ＡＥＳ、ＲＳＡなどのような暗号化アルゴリズムで、セキュリティライブラリ提供部３７０で提供された暗号化キーを用いて暗号化し（Ｓ４２０）、また、具現によって、暗号化部３５０は、動的ライブラリに対しても暗号化することができる。
【００６２】
ＡＰＫ再構成部３６０は、暗号化されたリリースセキュリティ適用バイナリコードとその他のリソースなどを合わせて、セキュリティ適用実行パッケージ（２１８）に再構成する（Ｓ４２２）。
【００６３】
ＡＰＫダウンロード部２７０は、クラウド装置１５０からセキュリティ適用実行パッケージ２１８をダウンロードして（Ｓ４２４）、ダウンロードされたセキュリティ適用実行パッケージ２１８は、クライアントメモリ部２１０に記憶される。
【００６４】
図５は、図１に示されたユーザ端末装置の具体的なブロック図である。
【００６５】
クライアントメモリ部２１０に記憶されたセキュリティ適用実行パッケージ２１８は、ネットワーク部５６０やストレージメディアなどの流通手段を介してユーザ端末装置１９０の補助メモリ部５４０に記憶される。実行パッケージは、例えばゲームプログラムを実行すると、メインメモリ部５２０にロードされ、ＣＰＵ５１０が実行する。ゲームプログラムの実行結果がディスプレイ部５３０に表示される。ゲームプログラムは、入力部５５０やネットワーク部５６０を介して新しい値の入力も可能である。
【００６６】
本発明の実施例によるユーザ端末装置１９０は、パーソナルコンピュータ（ＰＣ：Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）、ノートパソコン、タブレット、携帯情報端末（ＰＤＡ：Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）、ゲームコンソール、ポータブルマルチメディアプレーヤー（ＰＭＰ：Ｐｏｒｔａｂｌｅ  Ｍｕｌｔｉｍｅｄｉａ  Ｐｌａｙｅｒ）、プレイステーションポータブル（ＰＳＰ：ＰｌａｙＳｔａｔｉｏｎ  Ｐｏｒｔａｂｌｅ）、無線通信端末（Ｗｉｒｅｌｅｓｓ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｔｅｒｍｉｎａｌ）、スマートフォン（Ｓｍａｒｔ  Ｐｈｏｎｅ）、ＴＶ、メディアプレーヤーなどのユーザ端末である。本発明の実施例によるユーザ端末装置１９０は、アプリケーションサーバやサービスサーバなどのサーバの端末である。本発明の実施例によるユーザ端末装置１９０は、それぞれ、（ｉ）各種機器または有無線通信網との通信を行うための通信モデムなどの通信装置、（ｉｉ）プログラムを実行するためのデータを記憶するためのメモリ、（ｉｉｉ）プログラムを実行して、演算および制御するためのマイクロプロセッサなどを備える多様な装置を意味する。少なくとも一実施例によると、メモリは、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、フラッシュメモリ、光ディスク、磁気ディスク、ソリッドステートディスク（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｉｓｋ：ＳＳＤ）などのコンピュータ読み取り可能な記録／記憶媒体である。少なくとも一実施例によると、マイクロプロセッサは、明細書に記載の動作と機能を１つ以上選択的に行うようにプログラムされる。
【００６７】
図６は、図５に示されたメインメモリにロードされたアプリケーションプログラム関連構成を示した図である。
【００６８】
図６には、メインメモリ部５２０にロードされて実行されているゲームプログラム６１０、セキュリティ適用バイナリ６２０、及び、セキュリティライブラリ６３０が示されている。セキュリティライブラリ６３０には、ハッシュ検証機能６３２、アンチデバッグ機能６３４、アンチダンプ機能６３８などのセキュリティ機能が例示されている。ゲームプログラムを実行すると、補助メモリ部５４０でゲームプログラムのバイナリがメインメモリ部５２０にロードされる。ゲームプログラムが実行されている間に、セキュリティ適用バイナリ６２０でセキュリティタグの設定された特定関数が呼び出されると、セキュリティライブラリ６３０の検証機能６３２、アンチデバッグ機能６３４、アンチダンプ機能６３８などが実行される。
【００６９】
図７は、本発明の一実施例によるアプリケーションが動的ライブラリに含まれたモジュールを呼び出す過程を示した図である。
【００７０】
クライアントメモリ部２１０に記憶されたセキュリティ適用実行パッケージ２１８は、ネットワーク部５６０やストレージメディアなどの配布手段を介して、ユーザ端末装置１９０の補助メモリ部５４０に保存される（Ｓ７０２）。
【００７１】
ゲームプログラムが駆動されると、ＣＰＵ５１０は、セキュリティ適用実行パッケージ２１８のゲームプログラム６１０をメインメモリ部５２０にロードする（Ｓ７０４）。ゲームプログラム６１０の実行により、セキュリティライブラリ６３０がロードされて動作する（Ｓ７０６）。
【００７２】
セキュリティライブラリ６３０が動作してテンパリング（ｔｅｍｐｅｒｉｎｇ）を検出すると（７０８）、ゲームプログラムは終了して、テンパリングが検出されないと、ゲームプログラムを動作させる（Ｓ７１０）。
【００７３】
以上の説明は、本実施例の技術思想を例示的に説明したものに過ぎなく、本実施例の属する技術分野で通常の知識を有する者であれば、本実施例の本質的な特性から逸脱しない範囲で様々な修正及び変形が可能である。したがって、本実施例は、本実施例の技術思想を限定するためのものではなく説明するためのものであって、これらの実施例により、本実施例の技術思想の範囲が限定されるものではない。本実施例の保護範囲は、以下の請求の範囲によって解釈されるべきであり、その同等の範囲内にあるすべての技術思想は、本実施例の権利範囲に含まれるものと解釈されるべきである。
本願出願時の特許請求の範囲に記載された発明を以下に付記する。
［Ｃ１］
クライアント装置とクラウド装置とを含むセキュリティサービス提供システムにおける、クラウドベースのアプリケーションセキュリティサービスの提供方法であって、
前記クライアント装置において、アプリケーションソースをコンパイルしてバイナリを生成するバイナリ生成ステップと、
前記クライアント装置において、前記バイナリ生成ステップで生成されたバイナリを含む実行パッケージを構成する実行パッケージ構成ステップと、
前記クライアント装置において、前記実行パッケージ構成ステップで構成された実行パッケージを前記クラウド装置にアップロードするアップロードステップと、
前記クラウド装置において、前記アップロードステップでアップロードされた実行パッケージを分解して、バイナリを抽出する実行パッケージ分解ステップと、
前記クラウド装置において、複数のセキュリティライブラリのいずれかのセキュリティライブラリを、前記実行パッケージ分解ステップで抽出されたバイナリに適用してセキュリティ適用バイナリを生成するセキュリティライブラリ適用ステップと、
前記クラウド装置において、前記セキュリティライブラリ適用ステップで生成されたセキュリティ適用バイナリを含むセキュリティ適用実行パッケージを再構成する実行パッケージ再構成ステップと、
前記クライアント装置において、前記実行パッケージ再構成ステップで再構成されたセキュリティ適用実行パッケージをダウンロードするダウンロードステップと、
を含むことを特徴とする、クラウドベースのアプリケーションセキュリティサービスの提供方法。
［Ｃ２］
前記セキュリティライブラリには、整合性検証のためのハッシュ検証機能が含まれており、
前記クラウド装置において、前記セキュリティライブラリにおけるハッシュ検証機能のために、前記実行パッケージ分解ステップで抽出されたバイナリに対してハッシュコードを生成するハッシュコード生成ステップをさらに含むことを特徴とする、
［Ｃ１］に記載のクラウドベースのアプリケーションセキュリティサービスの提供方法。
［Ｃ３］
前記セキュリティライブラリには、前記ハッシュ検証機能のほかに、アンチデバッグ機能、アンチダンプ機能、またはアンチデバッグ機能及びダンプ機能が含まれていることを特徴とする、［Ｃ２］に記載のクラウドベースのアプリケーションセキュリティサービスの提供方法。
［Ｃ４］
前記クライアント装置において、前記バイナリ生成ステップの前に、前記アプリケーションソースの特定関数に対してセキュリティタグを設定する、セキュリティタグ設定ステップをさらに含むことを特徴とする、［Ｃ２］または［Ｃ３］に記載のクラウドベースのアプリケーションセキュリティサービスの提供方法。
［Ｃ５］
前記クライアント装置において、前記セキュリティタグ設定ステップで設定されたセキュリティタグが検出されると、自動的にセキュリティタグに関連したデバッガ用ライブラリをリンクさせるデバッガ用ライブラリリンクステップをさらに含むことを特徴とする、［Ｃ４］に記載のクラウドベースのアプリケーションセキュリティサービスの提供方法。
［Ｃ６］
前記実行パッケージ分解ステップは、前記アップロードステップでアップロードされた実行パッケージをパーシングし、デバッガ用ライブラリを抽出し、
前記セキュリティライブラリ適用ステップは、前記実行パッケージ分解ステップで抽出されたデバッガ用ライブラリを複数のセキュリティライブラリのいずれかのセキュリティライブラリに入れ替えて、セキュリティ適用バイナリを生成することを特徴とする、［Ｃ５］に記載のクラウドベースのアプリケーションセキュリティサービスの提供方法。
［Ｃ７］
前記ハッシュコード生成ステップは、前記実行パッケージ分解ステップで抽出されたバイナリにおいて、セキュリティタグの設定された特定関数に対してハッシュコードを生成することを特徴とする、［Ｃ６］に記載のクラウドベースのアプリケーションセキュリティサービスの提供方法。
［Ｃ８］
前記クラウド装置において、前記ハッシュコード生成ステップの後、前記セキュリティライブラリ適用ステップで生成されたセキュリティ適用バイナリに対し、複数のセキュリティライブラリのいずれかのセキュリティライブラリに対応して提供された暗号化キーを用いて暗号化する暗号化ステップをさらに含むことを特徴とする、［Ｃ７］に記載のクラウドベースのアプリケーションセキュリティサービスの提供方法。
［Ｃ９］
クライアント装置とクラウド装置とを含むセキュリティサービス提供システムにおけるクラウドベースのアプリケーションセキュリティサービスの提供方法であって、
前記クライアント装置において、アプリケーションソースをコンパイルしてバイナリを生成するバイナリ生成ステップと、
前記クラウド装置において、前記クライアント装置に複数のセキュリティライブラリのいずれかのセキュリティライブラリを提供するセキュリティライブラリ提供ステップと、
前記クライアント装置において、前記セキュリティライブラリ提供ステップで提供されたセキュリティライブラリを、前記バイナリ生成ステップで生成されたバイナリに適用し、セキュリティ適用バイナリを生成するセキュリティライブラリ適用ステップと、
を含むことを特徴とする、クラウドベースのアプリケーションセキュリティサービスの提供方法。
［Ｃ１０］
クライアント装置とクラウド装置とを含むクラウドベースのアプリケーションセキュリティサービスの提供システムであって、
前記クライアント装置は、
アプリケーションソースをコンパイルしてバイナリを生成するコンパイラ部と、
前記コンパイラ部で生成されたバイナリを含む実行パッケージを構成する実行パッケージ構成部と、
前記実行パッケージ構成部で構成された実行パッケージを前記クラウド装置にアップロードするアップロード部と、
前記クラウド装置からセキュリティの適用されたセキュリティ適用実行パッケージをダウンロードするダウンロード部と、
を含み、
前記クラウド装置は、
前記アップロード部でアップロードされた実行パッケージを分解してバイナリを抽出する実行パッケージ分解部と、
複数のセキュリティライブラリのいずれかのセキュリティライブラリを提供するセキュリティライブラリ提供部と、
前記セキュリティライブラリ提供部で提供されたセキュリティライブラリを、前記実行パッケージ分解部で抽出されたバイナリに適用し、セキュリティ適用バイナリを生成するセキュリティライブラリ適用部と、
前記セキュリティライブラリ適用部で生成されたセキュリティ適用バイナリを含む実行パッケージを再構成する実行パッケージ再構成部と、
を含む
ことを特徴とする、クラウドベースのアプリケーションセキュリティサービス提供システム。
［Ｃ１１］
前記セキュリティライブラリには、整合性検証のためのハッシュ検証機能が含まれて、
前記クラウド装置は、前記セキュリティライブラリにおけるハッシュ検証機能のために、前記実行パッケージ分解部で抽出されたバイナリに対してハッシュコードを生成するハッシュコード生成部をさらに含むことを特徴とする、
［Ｃ１０］に記載のクラウドベースのアプリケーションセキュリティサービス提供システム。
［Ｃ１２］
前記セキュリティライブラリには、前記ハッシュ検証機能のほかに、アンチデバッグ機能、アンチダンプ機能、またはアンチデバッグ機能及びダンプ機能が含まれていることを特徴とする、
［Ｃ１１］に記載のクラウドベースのアプリケーションセキュリティサービス提供システム。
［Ｃ１３］
前記クライアント装置は、前記アプリケーションソースの特定関数に対してセキュリティタグを設定するセキュリティタグ編集部をさらに含むことを特徴とする、
［Ｃ１１］または［Ｃ１２］に記載のクラウドベースのアプリケーションセキュリティサービス提供システム。
［Ｃ１４］
前記クライアント装置は、前記セキュリティタグ編集部で設定されたセキュリティタグが検出されると、自動的にセキュリティタグに関連したデバッガ用ライブラリをリンクさせるセキュリティタグ検査部をさらに含むことを特徴とする、
［Ｃ１３］に記載のクラウドベースのアプリケーションセキュリティサービス提供システム。
［Ｃ１５］
前記実行パッケージ分解部は、前記アップロード部でアップロードされた実行パッケージをパーシングして、デバッガ用ライブラリを抽出し、
前記セキュリティライブラリ適用部は、前記実行パッケージ分解部で抽出されたデバッガ用ライブラリを、前記セキュリティライブラリ提供部で提供されたセキュリティライブラリに入れ替えて、セキュリティ適用バイナリを生成する
ことを特徴とする、［Ｃ１４］に記載のクラウドベースのアプリケーションセキュリティサービス提供システム。
［Ｃ１６］
前記ハッシュコード生成部は、前記実行パッケージ分解部で抽出されたバイナリにおいて、セキュリティタグの設定された特定関数に対してハッシュコードを生成することを特徴とする、
［Ｃ１５］に記載のクラウドベースのアプリケーションセキュリティサービス提供システム。
［Ｃ１７］
前記クラウド装置は、前記セキュリティライブラリ適用部で生成されたセキュリティ適用バイナリに対して、前記セキュリティライブラリ提供部で提供されたセキュリティライブラリに対応して提供された暗号化キーを用いて暗号化する暗号化部をさらに含むことを特徴とする、
［Ｃ１６］に記載のクラウドベースのアプリケーションセキュリティサービス提供システム。
［Ｃ１８］
前記クライアント装置から提供されたセキュリティ適用実行パッケージをダウンロードしてアプリケーションを実行するユーザ端末装置をさらに含むことを特徴とする、
［Ｃ１０］乃至［Ｃ１２］のいずれかに記載のクラウドベースのアプリケーションセキュリティサービス提供システム。
［Ｃ１９］
クライアント装置とクラウド装置とを含む、クラウドベースのアプリケーションセキュリティサービス提供システムであって、
前記クラウド装置は、複数のセキュリティライブラリのいずれかのセキュリティライブラリを前記クライアント装置に提供するセキュリティライブラリ提供部を含み、
前記クライアント装置は、
アプリケーションソースをコンパイルしてバイナリを生成するコンパイラ部と、
前記クラウド装置から提供されたセキュリティライブラリを、前記コンパイラ部に生成されたバイナリに適用して、セキュリティ適用バイナリを生成するセキュリティライブラリ適用部と、
を含む
ことを特徴とする、クラウドベースのアプリケーションセキュリティサービス提供システム。
【図１】
0006392446.tif 000002
【図２】
0006392446.tif 000003
【図３】
0006392446.tif 000004
【図４】
0006392446.tif 000005
【図５】
0006392446.tif 000006
【図６】
0006392446.tif 000007
【図７】
0006392446.tif 000008