(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-01-23
(45)【発行日】2023-01-31
(54)【発明の名称】脅威使用者の接続遮断方法およびプログラムセキュリティ適用方法
(51)【国際特許分類】
G06F 21/55 20130101AFI20230124BHJP
【FI】
G06F21/55
(21)【出願番号】P 2021550107
(86)(22)【出願日】2020-04-28
(86)【国際出願番号】 KR2020095079
(87)【国際公開番号】W WO2021221266
(87)【国際公開日】2021-11-04
【審査請求日】2021-08-25
(31)【優先権主張番号】10-2020-0051621
(32)【優先日】2020-04-28
(33)【優先権主張国・地域又は機関】KR
(31)【優先権主張番号】10-2020-0051623
(32)【優先日】2020-04-28
(33)【優先権主張国・地域又は機関】KR
(73)【特許権者】
【識別番号】521377764
【氏名又は名称】ロック-イン カンパニー シーオー.,エルティーディー.
(74)【代理人】
【識別番号】240000327
【氏名又は名称】弁護士法人クレオ国際法律特許事務所
(72)【発明者】
【氏名】チェ ミョン キュ
【審査官】宮司 卓佳
(56)【参考文献】
【文献】特開2017-033199(JP,A)
【文献】特開2002-132724(JP,A)
【文献】特開2002-149606(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/55
(57)【特許請求の範囲】
【請求項1】
(a)使用者端末機でアプリケーションが実行される段階
、
(b)前記使用者端末機が接続情報を収集してサーバー部に伝送する段階
、
(c)前記サーバー部が前記接続情報に基づいて接続遮断対象の有無を判断する段階
、
(d)前記サーバー部が前記接続遮断対象の結果によって正常実行コードまたは遮断メッセージを
前記使用者
端末機に伝達する段階
、および
(e)前記使用者端末機が前記正常実行コードまたは前記遮断メッセージによって実行される段階
、を含
み、
前記(c)段階は、
(c1)前記サーバー部が前記使用者端末機から伝送される前記接続情報を保存する段階、および
(c2)前記サーバー部が前記接続情報に基づいて前記接続遮断対象の有無を判断する段階、を含み、
前記(c2)段階で、前記使用者が前記接続遮断対象ではない場合、
前記(c)段階は、
(c3)前記サーバー部がハッキングに対する脅威を探知する段階、
(c4)前記(c3)段階で前記サーバー部がハッキングに対する脅威を探知した場合、前記ハッキングに対する脅威探知数をカウンティングする段階、および
(c5)前記カウンティングした脅威探知数と、予め設定された接続遮断値とを比較する段階、をさらに含み、管理者は前記カウンティングした脅威探知数に応じて前記予め設定された接続遮断値を設定し、
(d1)前記(c5)段階で、前記カウンティングした脅威探知数が前記予め設定された接続遮断値以上であると判断されたときに、前記サーバー部が前記使用者端末機に前記遮断メッセージを伝達する段階、および
(d2)前記カウンティングした脅威探知数が前記予め設定された接続遮断値未満であると判断されたときに、前記サーバー部が前記使用者端末機に前記正常実行コードを伝達する段階、を含むことを特徴とする、脅威使用者の接続遮断方法。
【請求項2】
前記(b)段階は、
(b1)前記使用者端末機の情報または前記使用者端末機を所持した使用者の情報を含む接続情報を収集する段階;および
(b2)前記接続情報を前記サーバー部に伝送する段階;を含むことを特徴とする、請求項1に記載の脅威使用者の接続遮断方法。
【請求項3】
前記(c2)段階で、
前記使用者が前記接続遮断対象である場合、前記(d)段階を遂行して前記遮断メッセージを伝達することを特徴とする、請求項
1に記載の脅威使用者の接続遮断方法。
【請求項4】
前記(c5)段階で、
前記サーバー部がハッキングに対する脅威を未探知の場合、前記(d)段階を遂行して前記正常実行コードを伝達することを特徴とする、請求項
1に記載の脅威使用者の接続遮断方法。
【請求項5】
前記(e)段階は、
(e1)前記使用者端末機が前記サーバー部から前記遮断メッセージまたは前記正常実行コードを受信する段階;および
(e2)前記使用者端末機が前記正常実行コードを受信したかどうかを判断する段階;
を含むことを特徴とする、請求項
1に記載の脅威使用者の接続遮断方法。
【請求項6】
前記(e2)段階で、
前記使用者端末機が前記正常実行コードを受信した場合、
前記(e)段階は、
(e3)前記使用者端末機の接続を許容するように実行させる段階;をさらに含むことを特徴とする、請求項
5に記載の脅威使用者の接続遮断方法。
【請求項7】
前記(e2)段階で、
前記使用者端末機が前記正常実行コードを未受信した場合、
前記(e)段階は、
(e4)脅威探知メッセージを露出させる段階;をさらに含むことを特徴とする、請求項
5に記載の脅威使用者の接続遮断方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は脅威使用者の接続遮断方法およびプログラムセキュリティ適用方法に関し、より詳細には、脅威使用者の接近を根本的に遮断し、管理者が遮断設定可能な脅威使用者の接続遮断方法およびプログラムのデコンパイルおよびコンパイル過程なしにクラスを抽出して処理速度を向上させるプログラムセキュリティ適用方法に関する。
【背景技術】
【0002】
最近電子分野の発展につれて多様なハードウェア機器が電子化、デジタル化されており、これに伴い、ソフトウェアプログラムによって動作するハードウェア機器が次第に増えている。
【0003】
そのうち代表的なものがコンピュータであり、コンピュータには運営体制が設置されており、各種アプリケーションが別途のプログラムでコンピュータに設置されて動作する。このようなコンピュータは単にデスクトップのような個人用コンピュータだけでなくスマートフォンのような通信端末機も該当する。
【0004】
しかし、このようにソフトウェアによってプログラミングされたアプリケーションが広く利用されることによって最も大きく問題となるのがまさにプログラムハッキングである。
【0005】
一般的にハッキングはコンピュータネットワークの脆弱なセキュリティネットワークに不法的に接近して、情報システムまたは特定の端末機上の動作に有害な影響を及ぼす諸行為を指すものであって、結果的にシステム上で駆動されているアプリケーションのプログラムコードを任意に操作してアプリケーションが開発者が意図しない形態で動作するようにすることである。
【0006】
このようなプログラムハッキングの一例としては、認証されていない多数の使用者にアプリケーションを配布するためにプログラムコードを無断でコピーしたり、アプリケーションハッカーが望む機能を遂行するようにプログラムコードを操作するものがある。
【0007】
このようなプログラムハッキングは、開発者の著作権を害したり、アプリケーションが実行されるシステム全般に悪影響を及ぼすものであって、決して無視または看過できない重要な問題として浮かび上がっている。
【0008】
これに伴い、セキュリティ専門家らはプログラムのハッキングを防御できるセキュリティソリューションを開発している。セキュリティソリューションの一例として、認証サーバーに接続して使用者認証手続きを遂行したり、プログラムコードの無欠性を検証するなどの多様なセキュリティソリューションが開発されている。
【0009】
そして、プログラム開発者はこのようなセキュリティソリューションをプログラムに追加して、アプリケーションのプログラムコードをハッキングから保護するようにしている。
【0010】
しかし、前記セキュリティソリューションプログラムの技術が発展するにつれて前記のセキュリティを破って接続を試みるハッキング技術も共に知能化されて発展しているため、ハッキングする脅威使用者を効果的に遮断するための技術が必要であるのが実情である。
【0011】
また、前記の従来技術のセキュリティソリューションプログラムはセキュリティソリューションプログラムを提供する企業で脅威使用者(=ハッカー)リストの情報も共に提供するのが一般的であるので、セキュリティソリューションプログラムの提供を受ける管理者が自主的に保存している脅威使用者リストをオーダーメード型に適用し難い問題点があった。
【0012】
さらに、このためのプログラムにセキュリティソリューションを適用する既存の方法は、開発者がプログラム開発段階でプログラムコードのところどころにセキュリティソリューションコードを直接追加するものであった。
【0013】
しかし、このような既存の方法ではプログラムコードとセキュリティソリューションコードの互換性の問題が発生し、プログラムコードにセキュリティソリューションコードを追加する過程で多様なエラーが発生することになった。そして、プログラムをアップデートする場合、アップデートされたプログラムコードとセキュリティソリューションコードをすべて再確認しなければならない煩わしさが存在した。
【先行技術文献】
【特許文献】
【0014】
【文献】登録特許公報第10-1583545号(2016.01.04)
【文献】登録特許公報第10-1420383号(2014.07.10)
【発明の概要】
【発明が解決しようとする課題】
【0015】
前記のような問題を解決するための本発明の目的は、使用者端末機から収集した接続情報に基づいてサーバー部が接続遮断対象の有無を判断して正常実行コードまたは遮断メッセージを使用者端末機に伝送する脅威使用者の接続遮断方法を提供することである。
【0016】
また、前記のような問題を解決するための本発明の目的は、管理者がサーバー部でカウンティングした脅威探知数を考慮して探知回数で設定する脅威使用者の接続遮断方法を提供することである。
【0017】
また、前記のような問題を解決するための本発明の目的は、サーバー部が使用者端末機からアップロードされたファイルからアプリ情報を抽出し、抽出されたアプリ情報から抽出した駆動コードにセキュリティ実行コードを合わせて実行させた後、検査してワンソースコードを実行させるプログラムセキュリティ適用方法を提供することである。
【0018】
本発明が達成しようとする技術的課題は以上で言及した技術的課題に制限されず、言及されていないさらに他の技術的課題は以下の記載から本発明が属する技術分野で通常の知識を有する者に明確に理解され得るであろう。
【課題を解決するための手段】
【0019】
前記のような目的を達成するための本発明の構成は、(a)使用者端末機でアプリケーションが実行される段階;(b)前記使用者端末機が接続情報を収集してサーバー部に伝送する段階;(c)前記サーバー部が前記接続情報に基づいて接続遮断対象の有無を判断する段階;(d)前記サーバー部が前記接続遮断対象の結果によって正常実行コードまたは遮断メッセージを使用者端末機に伝達する段階;および(e)前記使用者端末機が前記正常実行コードまたは前記遮断メッセージによって実行される段階;を含むことを特徴とする脅威使用者の接続遮断方法を提供する。
【0020】
本発明の実施形態において、前記(b)段階は、(b1)前記使用者端末機の情報または前記使用者端末機を所持した使用者の情報を含む接続情報を収集する段階;および(b2)前記接続情報を前記サーバー部に伝送する段階;を含むことを特徴とすることができる。
【0021】
本発明の実施形態において、前記(c)段階は、(c1)前記サーバー部が前記使用者端末機から伝送される前記接続情報を保存する段階;および(c2)前記サーバー部が前記接続情報に基づいて前記接続遮断対象の有無を判断する段階を含むことを特徴とすることができる。
【0022】
本発明の実施形態において、前記(c2)段階で、前記使用者が前記接続遮断対象である場合、前記(d)段階を遂行して前記遮断メッセージを伝達することを特徴とすることができる。
【0023】
本発明の実施形態において、前記(c2)段階で、前記使用者が前記接続遮断対象ではない場合、前記(c)段階は、(c3)前記サーバー部がハッキングに対する脅威を探知する段階;(c4)前記ハッキングに対する脅威探知をカウンティングする段階;および(c5)前記カウンティングした脅威探知数が予め設定された接続遮断値に含まれるかどうかを判断する段階;をさらに含み、管理者は前記カウンティングした脅威探知数に応じて前記予め設定された接続遮断値を設定することを特徴とすることができる。
【0024】
本発明の実施形態において、前記(c5)段階で、前記サーバー部がハッキングに対する脅威を未探知の場合、前記(d)段階を遂行して前記正常実行コードを伝達することを特徴とすることができる。
【0025】
本発明の実施形態において、前記(c5)段階で、前記カウンティングした脅威探知数が前記予め設定された接続遮断値に含まれるものと判断されると、前記(d)段階を遂行して前記遮断メッセージを伝達することを特徴とすることができる。
【0026】
本発明の実施形態において、前記(c5)段階で、前記カウンティングした脅威探知数が前記予め設定された接続遮断値に含まれないものと判断されると、前記(d)段階を遂行して前記遮断メッセージを伝達することを特徴とすることができる。
【0027】
本発明の実施形態において、前記(d)段階は、(d1)前記サーバー部が前記使用者端末機に前記遮断メッセージを伝達する段階;および(d2)前記サーバー部が前記使用者端末機に前記正常実行コードを伝達する段階;を含むことを特徴とすることができる。
【0028】
本発明の実施形態において、前記(e)段階は、(e1)前記使用者端末機が前記サーバー部から前記遮断メッセージまたは前記正常実行コードを受信する段階;および(e2)前記使用者端末機が前記正常実行コードを受信したかどうかを判断する段階;を含むことを特徴とすることができる。
【0029】
本発明の実施形態において、前記(e2)段階で、前記使用者端末機が前記正常実行コードを受信した場合、前記(e)段階は、(e3)前記使用者端末機の接続を許容するように実行させる段階;をさらに含むことを特徴とすることができる。
【0030】
本発明の実施形態において、前記(e2)段階で、前記使用者端末機が前記正常実行コードを未受信した場合、前記(e)段階は、(e4)脅威探知メッセージを露出させる段階;をさらに含むことを特徴とすることができる。
【0031】
一方、前記のような目的を達成するための本発明であるプログラムセキュリティ適用方法の構成は、(A)使用者端末機がファイルをサーバー部にアップロードする段階;(B)前記サーバー部が前記ファイルに基づいてアプリ情報を抽出する段階;(C)前記アプリ情報からコードを分析してワンソースコードと駆動コードとに分離する段階;(D)前記サーバー部が前記ワンソースコードと取り替えたセキュリティ実行コードを前記駆動コードに合わせる段階;(E)使用者クライアントが前記セキュリティ実行コードを実行させる段階;および(F)前記使用者クライアントが前記ワンソースコードを実行させる段階;を含むことを特徴とするプログラムセキュリティ適用方法を提供する。
【0032】
本発明の一実施形態において、前記(C)段階は、(C1)前記サーバー部が前記アプリ情報から前記コードを抽出する段階;(C2)前記サーバー部が前記コードを分析する段階;(C3)前記サーバー部が前記ワンソースコードと前記駆動コードとに分離する段階;を含むことを特徴とすることができる。
【0033】
本発明の一実施形態において、前記(D)段階は、(D1)前記サーバー部が前記ワンソースコードと前記セキュリティ実行コードを取り替える段階;および(D2)前記サーバー部が前記ワンソースコードと前記セキュリティ実行コードを合わせる段階;を含むことを特徴とすることができる。
【0034】
本発明の一実施形態において、前記(D)段階で、前記セキュリティ実行コードと取り替えられた前記ワンソースコードは難読化および暗号化を経てセキュリティ処理されることを特徴とすることができる。
【0035】
本発明の一実施形態において、前記(E)段階と前記(F)段階の間に、前記セキュリティ実行コードが実行された後、前記使用者端末機を検査する段階;および前記ワンソースコードまたはセキュリティ実行コードを復号化させる段階を含むことを特徴とすることができる。
【0036】
本発明の一実施形態において、前記(C)段階で、前記ワンソースコードは使用者が開発したコードであり、前記駆動コードは前記使用者が開発していないコードであることを特徴とすることができる。
【0037】
本発明の一実施形態において、前記(B)段階で、前記アプリ情報はアプリのパッケージ名情報、アプリケーション情報、アクティビティ情報、サービス情報およびリスナー情報のうち少なくともいずれか一つを含むことを特徴とすることができる。
【発明の効果】
【0038】
前記のような構成による本発明の効果は、使用者端末機から収集した接続情報に基づいてサーバー部が接続遮断対象の有無を判断して正常実行コードまたは遮断メッセージを使用者端末機に伝送することによって脅威使用者の接続を根本的に遮断することができる。
【0039】
また、前記のような構成による本発明の効果は、管理者がサーバー部でカウンティングした脅威探知数を考慮して探知回数で設定することによって管理者が脅威使用者に対する遮断を主導的に参加することができる。
【0040】
前記のような構成による本発明の効果は、サーバー部がアプリ情報からワンソースコードと駆動コードとを分離させた後、駆動コードにセキュリティ実行コードを合わせて実行させることによって従来技術より処理速度を向上させることができる。
【0041】
本発明の効果は前記の効果に限定されず、本発明の詳細な説明または特許請求の範囲に記載された発明の構成から推論可能なすべての効果を含むものと理解されるべきである。
【図面の簡単な説明】
【0042】
【
図1】本発明の一実施形態に係る脅威使用者の接続遮断方法を示したフローチャートである。
【
図2】本発明の一実施形態に係る脅威使用者の接続遮断方法の細部段階を示したフローチャートである。
【
図3】本発明の一実施形態に係る脅威使用者の接続遮断方法でオートブロックのための設定ウィンドウを例示的に示した図面である。
【
図4】本発明の一実施形態に係る脅威使用者の接続遮断方法でマニュアルブロックのための設定ウィンドウを例示的に示した図面である。
【
図5】本発明の一実施形態に係るプログラムセキュリティ適用方法を示したフローチャートである。
【
図6】本発明の一実施形態に係るプログラムセキュリティ適用方法で使用者端末機上にアプリが実行されることを示した図面である。
【
図7】本発明の一実施形態に係るプログラムセキュリティ適用方法で使用者端末機がサーバー部にファイルをアップロードすることを例示的に示した図面である。
【
図8】本発明の一実施形態に係るプログラムセキュリティ適用方法でコードおよびアプリを保護するための過程を示した図面である。
【
図9】本発明の一実施形態に係るプログラムセキュリティ適用方法でコードおよびアプリを保護するために適用された結果を示した図面である。
【発明を実施するための形態】
【0043】
本発明は(a)使用者端末機でアプリケーションが実行される段階、(b)使用者端末機が接続情報を収集してサーバー部に伝送する段階、(c)サーバー部が接続情報に基づいて接続遮断対象の有無を判断する段階、(d)サーバー部が接続遮断対象の結果によって正常実行コードまたは遮断メッセージを使用者端末機に伝達する段階および(e)使用者端末機が正常実行コードまたは遮断メッセージによって実行される段階を含むことを特徴とする脅威使用者の接続遮断方法を提供する。
【0044】
発明の実施形態
【0045】
以下では、添付した図面を参照して本発明を説明することにする。しかし、本発明は多様な異なる形態で具現され得、したがって、ここで説明する実施形態に限定されるものではない。そして、図面で本発明を明確に説明するために、説明に係わらない部分は省略し、明細書全体を通じて類似する部分に対しては類似する図面符号を付した。
【0046】
明細書全体において、或る部分が他の部分と「連結(接続、接触、結合)」されているとするとき、これは「直接的に連結」されている場合だけでなく、その中間に他の部材を挟んで「間接的に連結」されている場合も含む、。また、或る部分が何らかの構成要素を「含む」とするとき、これは特に反対の記載がない限り、他の構成要素を除くものではなく他の構成要素をさらに含み得ることを意味する。
【0047】
本明細書で使った用語は単に特定の実施形態を説明するために使われたものであり、本発明を限定しようとする意図ではない。単数の表現は文脈上明白に異なって意味しない限り、複数の表現を含む。本明細書で、「含む」または「有する」等の用語は明細書上に記載された特徴、数字、段階、動作、構成要素、部品またはこれらを組み合わせたものが存在することを指定しようとするものであり、一つまたはそれ以上の他の特定や数字、段階、動作、構成要素、部品またはこれらを組み合わせたものなどの存在または付加の可能性をあらかじめ排除しないものと理解されるべきである。
【0048】
以下、添付された図面を参照して本発明の実施形態を詳細に説明することにする。
【0049】
図1は、本発明の一実施形態に係る脅威使用者の接続遮断方法を示したフローチャートである。
図2は、本発明の一実施形態に係る脅威使用者の接続遮断方法の細部段階を示したフローチャートである。
【0050】
本発明の一実施形態に係る脅威使用者の接続遮断方法は、(a)使用者端末機でアプリケーションが実行される段階(S100)、(b)使用者端末機が接続情報を収集してサーバー部に伝送する段階(S200)、(c)サーバー部が接続情報に基づいて接続遮断対象の有無を判断する段階(S300)、(d)サーバー部が接続遮断対象の結果によって正常実行コードまたは遮断メッセージを使用者端末機に伝達する段階(S400)および(e)使用者端末機が正常実行コードまたは遮断メッセージによって実行される段階(S500)を含む。
【0051】
ここで、接続情報は各デバイスまたはサービスを使う使用者の固有な識別のために付与される固有の値であって、使用者端末機の情報および使用者端末機を所持した使用者の情報のうち少なくともいずれか一つを含むことができる。
【0052】
各デバイスを識別するために使用される識別値を含む接続情報は、デバイス内または使用者のサービスアイディー(ID)等のマック(MAC)、ハードウェアアイディー(Hardware ID)、デバイスアイディー(device ID)、広告アイディー(ID)、チェーン(Chain)、アプリシステムで使う使用者識別コード(例えば、ゲームアイディー)のような情報のうち一つを利用するか多数の組み合わせを利用して導き出す。
【0053】
次に、前記(b)段階は、(b1)使用者端末機の情報または使用者端末機を所持した使用者の情報を含む接続情報を収集する段階および(b2)接続情報をサーバー部に伝送する段階を含む。
【0054】
次に、前記(c)段階は、(c1)サーバー部が使用者端末機から伝送される接続情報を保存する段階および(c2)サーバー部が接続情報に基づいて接続遮断対象の有無を判断する段階を含む。
【0055】
もし、前記(c2)段階で、使用者が接続遮断対象である場合、前記(d)段階を遂行して遮断メッセージを伝達することによって使用者端末機が該当サイトに接続できないようにする。
【0056】
図3は、本発明の一実施形態に係る脅威使用者の接続遮断方法でオートブロックのための設定ウィンドウを例示的に示した図面である。
【0057】
本発明の脅威使用者の接続遮断方法のために提供されるプログラムは、管理者(例えば、NAVER、Daum、Goog1eなどのようなウェブサイト)に予め設置されて前記接続遮断対象が接続を試みる場合、遮断することができる。
【0058】
反面、前記(c2)段階で、使用者が接続遮断対象ではない場合、前記(c)段階は、(c3)サーバー部がハッキングに対する脅威を探知する段階、(c4)ハッキングに対する脅威探知をカウンティングする段階および(c5)カウンティングした脅威探知数が予め設定された接続遮断値に含まれるかどうかを判断する段階をさらに含んで遂行する。
【0059】
この時、管理者はカウンティングした脅威探知数によって予め設定された接続遮断値を設定することができる。具体的には、管理者は内部的に脅威使用者リストをデータベースで構築しておいた状態で、サーバー部から提供される脅威探知数を考慮して予め設定された接続遮断値を設定することができる。
【0060】
例えば、管理者はカウンティングした脅威探知数をサーバー部から伝送を受けた後、これを検討して3回以上接近時に遮断するように設定することができる。予め設定された接続遮断値は探知回数で設定するか探知回数の範囲でも設定が可能である。
【0061】
すなわち、本発明はセキュリティプログラムを提供するにおいて、サーバー部が脅威対象者情報を提供するのではなく、脅威探知数に対する情報を受信した後、管理者の内部で管理する脅威対象者情報を考慮して予め設定された接続遮断値を任意で設定してサーバー部に伝送する。
【0062】
前記脅威使用者の接近を遮断したりブロックするために、管理者はオートブロックを利用することができる。具体的には、管理者はオートブロックウィンドウを通じて任意の脅威探知時に任意の期間の間接近できないようにブロックを設定することができ、これによって、脅威使用者の接続遮断日数が決定される。
【0063】
図4は、本発明の一実施形態に係る脅威使用者の接続遮断方法でマニュアルブロックのための設定ウィンドウを例示的に示した図面である。
【0064】
引き続き、
図4に図示されたマニュアルブロックは、使用者端末機の固有識別値をシステムに入力してブロックしたい期間を管理者が入力できるように支援する。
【0065】
もし、前記(c5)段階で、サーバー部がハッキングに対する脅威を未探知の場合、前記(d)段階を遂行して正常実行コードを伝達する。
【0066】
反面、前記(c5)段階で、カウンティングした脅威探知数が予め設定された接続遮断値に含まれるものと判断されると、前記(d)段階を遂行して遮断メッセージを伝達する。
【0067】
一方、前記(c5)段階で、カウンティングした脅威探知数が予め設定された接続遮断値に含まれないものと判断されると、前記(d)段階を遂行して遮断メッセージを伝達する。
【0068】
次に、前記(d)段階は、(d1)サーバー部が使用者端末機に遮断メッセージを伝達する段階および(d2)サーバー部が使用者端末機に正常実行コードを伝達する段階を含む。
【0069】
次に、前記(e)段階は、(e1)使用者端末機がサーバー部から遮断メッセージまたは正常実行コードを受信する段階および(e2)使用者端末機が正常実行コードを受信したかどうかを判断する段階を含む。
【0070】
もし、前記(e2)段階で、使用者端末機が正常実行コードを受信した場合、前記(e)段階は、(e3)使用者端末機の接続を許容するように実行させる段階をさらに含んで遂行することができる。
【0071】
もし、前記(e2)段階で、使用者端末機が正常実行コードを未受信した場合、前記(e)段階は、(e4)脅威探知メッセージを露出させる段階をさらに含んで遂行することができる。これにより、使用者は管理者への接続が遮断されることになる。
【0072】
図5は、本発明の一実施形態に係るプログラムセキュリティ適用方法を示したフローチャートである。
【0073】
本発明の一実施形態に係るプログラムセキュリティ適用方法は、(A)使用者端末機がファイルをサーバー部にアップロードする段階(S1000)、(B)サーバー部がファイルに基づいてアプリ情報を抽出する段階(S2000)、(C)アプリ情報からコードを分析してワンソースコードおよび駆動コードを分離する段階(S3000)、(D)前記サーバー部がワンソースコードと取り替えたセキュリティ実行コードを駆動コードに合わせる段階(S4000)、(E)使用者クライアントがセキュリティ実行コードを実行させる段階(S5000)および(F)使用者クライアントがワンソースコードを実行させる段階(S6000)を含む。
【0074】
この時、ワンソースコードはクラスであり得、本発明では一つの駆動コードを例示的に説明したが、駆動コード以外にそれぞれ異なる機能を遂行する多数のコードを含むことができる。
【0075】
従来技術では、ワンソースコード、駆動コードおよび多数のコード全体をデコンパイリングした後、セキュリティコードをそれぞれのコードに適用した後に再びコンパイリングするため処理速度が顕著に遅い反面、本発明はワンソースコードおよび駆動コードとに分離させた後、駆動コードにのみセキュリティ実行コードを適用し、別途のデコンパイリングを遂行しないため従来技術より処理速度が顕著にはやい長所がある。
【0076】
また、セキュリティ実行コードはモバイルデバイスを識別できる識別情報を抽出できる機能を含むことによって脅威対象者の接続を遮断してもよい。
【0077】
併せて、使用者クライアントはモバイルアプリシステムであり得る。
【0078】
図6は、本発明の一実施形態に係るプログラムセキュリティ適用方法で使用者端末機上にアプリが実行されることを示した図面である。
図7は、本発明の一実施形態に係るプログラムセキュリティ適用方法で使用者端末機がサーバー部にファイルをアップロードすることを例示的に示した図面である。
【0079】
前記(A)段階は、サーバー部にファイルがアップロードされる段階である。ここで、ファイルは接続情報を含むことができ、接続情報は使用者端末機の情報および使用者端末機を所持した使用者の情報のうち少なくともいずれか一つを含むことができる。
【0080】
図6のように使用者端末機でセキュリティを適用するためのアプリを実行させ、
図7に図示されたサーバー部の画面でファイルをアップロードする。
【0081】
各デバイスを識別するために使われる識別値を含む接続情報は、デバイス内または使用者のサービスアイディー(ID)などのマック(MAC)、ハードウェアアイディー(Hardware ID)、デバイスアイディー(device ID)、広告アイディー(ID)、チェーン(Chain)アプリシステムで使う使用者識別コード(例えば、ゲームアイディー)のような情報のうち一つを利用するか、多数の組み合わせを利用して導き出す。
【0082】
前記(B)段階で、アプリ情報はアプリのパッケージ名情報、アプリケーション情報、アクティビティ情報、サービス情報およびリスナー情報のうち少なくともいずれか一つを含む。
【0083】
アクティビティ情報はプログラムを構成するコンポーネントであり、プログラムが提供される単位サービスが具現されたソースコードである。
【0084】
具体的には、アクティビティは使用者に出力される画面を生成および制御するように構成されたソースコードであり、例示的に使用者入力画面、ゲーム情報出力画面などを生成および制御するように作成されたソースコードである。
【0085】
リスナーはネットワークを利用してクライアントからサーバー部に連結するためのネットワーク管理者であり、このようなリスナーを実行させないとクライアントらが接続することができない。
【0086】
具体的には、リスナーは必要に応じて多数個が同時に構成され実行され得、それぞれのリスナーはサービスリストを動的または手動で登録することができる。
【0087】
基本ポートを使うリスナーはPMONから実行中のディスパッチャーの情報も共に登録している。ただし、基本ポートを使わないリスナー(ローカルリスナー設定を変更した他のリスナー)は動的にサービスの登録を受けることはできない。
【0088】
サービス情報はコンピュータ内で、特にハードウェアに近い低いレベルで他のプログラムを支援するプログラムまたはルーチンに対する情報である。
【0089】
図8は、本発明の一実施形態に係るプログラムセキュリティ適用方法でコードおよびアプリを保護するための過程を示した図面である。
【0090】
前記(C)段階は、(C1)サーバー部がアプリ情報からコードを抽出する段階、(C2)サーバー部がコードを分析する段階および(C3)サーバー部がワンソースコードと駆動コードとに分離する段階を含む。
【0091】
この時、前記(C)段階で、前記ワンソースコードは使用者が開発したコードであり、前記駆動コードは使用者が開発していないコードである。
【0092】
図8に図示された通り、(C1)段階ではコードおよびアプリの保護のためのプロセスが駆動され得、前記過程によってワンソースコード、駆動コードおよびその他の多様なコードを抽出することができる。
【0093】
前記(C1)段階で、コードは前述したワンソースコードおよび駆動コードを含むことができる。追加的に、前記(C1)段階ではアプリ情報であるアプリのパッケージ名情報、アプリケーション情報、アクティビティ情報、サービス情報およびリスナー情報のうちいずれか一つからコードを抽出する。この時、コードは機能別に多様なコードが存在し得る。
【0094】
前記(C2)段階ではサーバー部が前記(C1)段階で抽出したコードに基づいて分析する。
【0095】
前記(C3)段階では、サーバー部が前記(C2)段階でワンソースコードと駆動コードを分離することになる。
【0096】
本発明は、前記(C)段階を通じて従来技術でプログラムをデコンパイルしてプログラムコードを生成した後、セキュリティコードを付けて再びプログラムコードをコンパイルすることによって処理速度が遅延する問題点を解消することができる。
【0097】
すなわち、本発明はプログラムをデコンパイルおよびコンパイルする過程なしにクラスを分離させることによって、従来技術より画期的にはやい処理速度を有する長所がある。
【0098】
次に、前記(D)段階は、(D1)サーバー部がワンソースコードとセキュリティ実行コードを取り替える段階および(D2)サーバー部がワンソースコードとセキュリティ実行コードを合わせる段階を含む。
【0099】
具体的には、セキュリティ実行コードはワンソースコードが位置した個所に取り替えられ、セキュリティ実行コードと取り替えられたワンソースコードは難読化および暗号化を経てセキュリティ処理されて特定の位置に保存され得る。
【0100】
図9は、本発明の一実施形態に係るプログラムセキュリティ適用方法でコードおよびアプリを保護するために適用された結果を示した図面である。
【0101】
前記(E)段階(S5000)ではサーバー部がセキュリティ実行コードを実行させる段階として、ワンソースコードを実行させる前に使用者端末機の安全性を先に検査する。
【0102】
前記(E)段階を経た結果画面が
図9に図示されている。
【0103】
このために、本発明は前記(E)段階と前記(F)段階の間に、セキュリティ実行コードが実行された後、使用者端末機を検査する段階およびワンソースコードまたはセキュリティ実行コードを復号化させる段階を含むことができる。
【0104】
この時、セキュリティソースコードが実行された後、使用者端末機を検査して検査結果が安全であると判断されると、セキュリティソースコードを復号化およびその他の作業を経てワンソースコード化させる。
【0105】
一方、セキュリティソースコードが実行された後、使用者端末機を検査して検査結果が安全でないと判断されると、終了するか前記段階(S2000)に復帰することができる。
【0106】
最後に、前記(F)段階では、使用者端末機が安全であると確認された状態でサーバー部がワンソースコードを実行させる。
【0107】
前述した本発明は、企業の核心技術の流出防止とハッキングおよび違法な変造から安全に知的財産権を保護するアプリプロテクターであり、モバイルデバイス(アンドロイド(登録商標)/iOS)で駆動されるすべてのアプリケーションに適用可能であり、これを通じてモバイルアプリケーションを脅威するすべてのハッキングと金銭的被害を被り得る状況をすべて遮断し、アプリケーションの主要資産を保護する。
【0108】
本発明はアプリケーション脅威探知(app1ication threat detection)技術、アプリケーション保護(app1ication protector)技術、アンチハッキングソリューション(anti hacking so1ution)技術が融合されたものであり、このような技術は単純に加えられたものではなく、有機的な結合を通じて技術の重複と衝突なしに各機能が相互間の脆弱点を補完して効率的な動作を遂行し、SaaS方式を利用して決済からセキュリティの適用まで一度に使用が可能である。
【0109】
また、適用方式において開発者の別途の作業なしにSaaS方式を通じて使用者の便宜性を最大化したし、ファイルをアップロードするだけでソースコードの保護、メモリの変造、リアルタイムデバッギングなどのハッキングが可能なすべての行為を遮断し、ゲームエンジンの保護、仮想マシンの探知、リパッケージングの遮断、偽/変造防止機能などのモバイルアプリケーションに必要なすべてのセキュリティ機能を提供する。
【0110】
前述した本発明の説明は例示のためのものであり、本発明が属する技術分野の通常の知識を有する者は、本発明の技術的思想や必須の特徴を変更することなく他の具体的な形態に容易に変形可能であることが理解できるであろう。したがって、以上で記述した実施形態はすべての面で例示的なものであり、限定的ではないものと理解されるべきである。例えば、単一型で説明されている各構成要素は分散して実施されてもよく、同様に分散されたものとして説明されている構成要素も結合された形態で実施され得る。
【0111】
本発明の範囲は後述する特許請求の範囲によって示され、特許請求の範囲の意味および範囲、そしてその均等概念から導き出されるすべての変更または変形された形態も本発明の範囲に含まれるものと解釈されるべきである。