JP2018527664A5 - アプリケーションのコードを保護するためのシステム、方法およびプログラム - Google Patents
アプリケーションのコードを保護するためのシステム、方法およびプログラム Download PDFInfo
- Publication number
- JP2018527664A5 JP2018527664A5 JP2018506544A JP2018506544A JP2018527664A5 JP 2018527664 A5 JP2018527664 A5 JP 2018527664A5 JP 2018506544 A JP2018506544 A JP 2018506544A JP 2018506544 A JP2018506544 A JP 2018506544A JP 2018527664 A5 JP2018527664 A5 JP 2018527664A5
- Authority
- JP
- Japan
- Prior art keywords
- file
- code
- library
- intermediate language
- encrypted
- 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.)
- Granted
Links
- 238000011084 recovery Methods 0.000 claims description 24
- 238000000034 method Methods 0.000 claims description 10
- 230000001276 controlling effect Effects 0.000 claims description 6
- 230000000875 corresponding Effects 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 claims description 2
- 238000011068 load Methods 0.000 description 5
- 230000004075 alteration Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
Description
このような偽造・変造を防ぐために、中間言語形態のファイルを単純に暗号化してクライアントに提供するようになれば、クライアントの電子機器で暗号化されたファイルを実行することができずにアプリケーションの駆動が不可能となる。かといって、暗号化されたファイルを復号するための手段(または情報、一例として復号キー)がクライアントに提供されるようになれば、アプリケーションの偽造・変造の問題がまた浮上してしまう。
アプリケーションの実行コードが含まれたファイルを暗号化しながらも、アプリケーションの駆動時に暗号化されたファイルを安全に復号して実行することができると同時に、暗号化されたファイルを復号するための情報が第三者やクライアントに露出されることを防ぐことができる、システムおよび方法を提供する。
アプリケーションのコードがコンパイルされて生成された中間言語(Intermediate Language:IL)コードを含むファイルおよび前記中間言語コードによって前記アプリケーションを実行するように電子機器に実行環境を提供するためのライブラリファイルを含むパッケージを受信する受信工程と、前記中間言語コードを含む前記ファイルのうちの少なくとも1つのファイルを暗号化する暗号化工程と、前記電子機器での前記アプリケーションの実行のために前記ライブラリファイルを用いることで、少なくとも1つの前記暗号化されたファイルを復号するためのコードを含む復号用ファイルを前記パッケージに追加する追加工程と、を含むことを特徴とする方法を提供する。
一側によると、前記受信工程は、前記中間言語コードを含むファイルのうちの暗号化するためのファイルに関する情報をさらに受信し、前記暗号化工程は、前記中間言語コードを含むファイルのうちの前記さらに受信された情報に対応するファイルを暗号化することを特徴としてよい。
他の側面によると、前記少なくとも1つのファイルは、前記実行環境のためのヘッダ部分および前記アプリケーションのためのコード部分を含み、前記暗号化工程は、前記ヘッダ部分および前記コード部分のうちの少なくとも一方を暗号化することを特徴としてよい。
また他の側面によると、前記暗号化工程は、前記ヘッダ部分を暗号化する場合、前記ヘッダ部分が含む情報をヌル(null)値に変更して暗号化することを特徴としてよい。
また他の側面によると、前記ライブラリファイルは、前記中間言語コードを含むファイルを読み込むためのコードを含む第1ライブラリファイルおよび前記第1ライブラリファイルに対するAPI(Application Programming Interface)コールによって前記中間言語コードを含むファイルのフルバッファ(full buffer)を読み取ってパースするためのコードを含む第2ライブラリファイルを含み、前記復号用ファイルは、前記第2ライブラリファイルが含むコードに基づいて前記第1ライブラリファイルがAPIコールされることによって読み取られる前記少なくとも1つの暗号化されたファイルに対するフルバッファ(full buffer)を復号し、前記少なくとも1つの暗号化されたファイルを復号するためのコードを含むことを特徴としてよい。
また他の側面によると、前記復号用ファイルは、前記第1ライブラリファイルのAPIに関する情報を含む前記第2ライブラリファイルのIAT(Import Address Table)をフッキング(hooking)し、前記第2ライブラリファイルが含むコードによる前記APIコールを確認するためのコードを含むことを特徴としてよい。
また他の側面によると、前記方法は、ネットワークを介した前記電子機器からの要請に応じ、前記復号用ファイルが追加された前記パッケージを前記電子機器に送信する工程をさらに含むことを特徴としてよい。
アプリケーションのコードがコンパイルされて生成された中間言語(Intermediate Language:IL)コード、少なくとも1つの暗号化されたファイルおよび前記中間言語コードによって前記アプリケーションを実行するように電子機器に実行環境を提供するためのライブラリファイルおよび少なくとも1つの前記暗号化されたファイルを復号するための復号用ファイルを含むパッケージを受信する工程と、前記アプリケーションの実行過程において、前記復号用ファイルに含まれたコードの制御にしたがって前記アプリケーションの実行のために前記ライブラリファイルを用いることで、少なくとも1つの前記暗号化されたファイルを復号する復号工程と、を含むことを特徴とする方法を提供する。
サーバのシステムであって、アプリケーションのコードがコンパイルされて生成された中間言語(Intermediate Language:IL)コードを含むファイルおよび前記中間言語コードによって前記アプリケーションを実行するように電子機器に実行環境を提供するためのライブラリファイルを含むパッケージを受信する受信制御手段と、前記中間言語コードを含むファイルのうちの少なくとも1つのファイルを暗号化するように前記サーバを制御する暗号化制御手段と、前記電子機器での前記アプリケーションの実行のために前記ライブラリファイルを用いることで、少なくとも1つの前記暗号化されたファイルを復号するためのコードを含む復号用ファイルを前記パッケージに追加する、ファイル追加制御手段と、を備えることを特徴とするシステムを提供する。
電子機器のシステムであって、アプリケーションのコードがコンパイルされて生成された中間言語(Intermediate Language:IL)コード、少なくとも1つの暗号化されたファイルおよび前記中間言語コードによって前記アプリケーションを実行するように電子機器に実行環境を提供するためのライブラリファイルおよび少なくとも1つの前記暗号化されたファイルを復号するための復号用ファイルを含むパッケージを受信する受信制御手段と、前記アプリケーションの実行過程において、前記復号用ファイルに含まれたコードの制御にしたがって前記アプリケーションの実行のために前記ライブラリファイルを用いることで、少なくとも1つの前記暗号化されたファイルを復号するように前記電子機器を制御する復号制御手段と、を備えることを特徴とするシステムを提供する。
アプリケーションの実行コードが含まれたファイルを暗号化しながらも、アプリケーションの駆動時に暗号化されたファイルを安全に復号して実行することができると同時に、暗号化されたファイルを復号するための情報が第三者やクライアントに露出されることを防ぐことができる。
上述したように、DLLファイル自体が暗号化されると、APK400を受信したクライアント(一例として、電子機器1(110))は、DLLファイルでゲームコードを読み取ることができないため、アプリケーションを実行することができなくなる。したがって、サーバ150は、暗号化されたDLLファイルを復号するためのライブラリファイルであるリカバリーファイル(図4のrecovery.so440)をAPK400に追加してよい。また、アプリケーションの実行時にrecovery.so440がログされるようにlibmain.so350にリカバリーファイル440をロードすることのできるコード(図4のloadrecovery.socode431)を追加し、新たなライブラリファイル(図4のlibmain.so430)を生成してよい。図4に示すように、APK400は、既存のライブラリファイルlibmain.so350の代りに新たなライブラリファイルlibmain.so430を含んでよい。
recovery.so440は、libunity.so360をフッキング(hooking)してlibmono.so370がDLLファイル310、410、330、420をロードするときに、暗号化されたDLLファイル410、420のフルバッファ(full buffer)を制御して暗号化されたDLLファイル410、420を復号してよい。例えば、libunity.so360は、DLLファイル310、410、330、420のフルバッファを読み取り、フルバッファを因子としてlibmono.so370のAPIを呼び出してDLLを単一フレームワークにロードさせてよい。一般的に、DLLファイルは、ウィンドウPE(Portable Executable)ファイルフォーマットを有しており、上述したように内部的にドットネットヘッダを含んでいる。このようなDLファイルは、オープンソースであるドットネットフレームワーク(上述した単一フレームワーク)によって実行されてよく、PE(Portable Executable)ファイルフォーマットのパース(parsing)とドットネットのパース過程を経るようになる。このような過程は、libunity.so360からlibmono.so370のAPIを呼び出することで起こるようになる。このために、libunity.so360はIAT(Import Address Table)を含んでよく、recovery.so440は、libunity.so360のIATをフッキングしてlibunity.so360が暗号化されたDLLファイル410、420のロードのためにlibmono.so370のAPIコールを確認してよい。また、recovery.so440は、フルバッファからドットネットヘッダ部分とコード部分を探し出して暗号化された部分を復号してよい。例えば、DLLファイルのドットネットヘッダは、特定値から始まる。したがって、recovery.so440は、DLLファイルをドットネットフレームワークにロードするときに、ドットネットヘッダが予め設定されている値から始まらない場合には、該当のDLLファイルが暗号化されていると判断し、復号を実行してよい。
したがって、アプリケーションの実行コードが含まれたファイルを暗号化しながらも、アプリケーションの駆動時に暗号化されたファイルを安全に復号して実行することが可能となる。特に、復号のための情報が、DLLとは異なる低水準言語で作成されたライブラリファイルの形態で提供されるため、クライアントや第三者に復号のための情報が露出されることを防ぐことができる。
段階630で、サーバ150は、少なくとも1つの暗号化されたファイルの復号のためのリカバリーファイルを応用プログラムパッケージに追加してよい。ここで、リカバリーファイルは、電子機器でのアプリケーションの実行のためにライブラリファイル間の呼び出しによって少なくとも1つの暗号化されたファイルが伝達される場合に、少なくとも1つの暗号化されたファイルを復号するためのコードを含んでよい。ファイル追加制御部530は、段階630を実行するようにサーバ150を制御してよい。
上述したように、少なくとも1つの暗号化されたファイルは、ライブラリファイルがアプリケーションの実行環境(一例として、ドットネットフレームワーク、単一フレームワーク、またはCLR(Common Language Runtime))に中間言語コードを含むファイルをロードするため、ライブラリファイル間の呼び出しによって少なくとも1つの暗号化されたファイルが伝達される場合のように、アプリケーションの実行時にリカバリーファイルが含むコードに基づいて電子機器が復号を実行できるようにすることにより、中間言語コードのデコンパイルを防ぎながらも復号のための情報が露出されないようにすることができる。
このために、ライブラリファイルは、中間言語コードを含むファイルを呼び込むためのコードを含む第1ライブラリファイルおよび第1ライブラリファイルに対するAPI(Application Programming Interface)コールによって中間言語コードを含むファイルのフルバッファ(full buffer)を読み取ってパースするためのコードを含む第2ライブラリファイルを含んでよい。また、リカバリーファイルは、第2ライブラリファイルが含むコードによって第1ライブラリファイルがAPIコールされることによって読み取られる少なくとも1つの暗号化されたファイルに対するフルバッファ(full buffer)を復号し、少なくとも1つの暗号化されたファイルを復号するためのコードを含んでよい。例えば、第1ライブラリファイルは図3および図4を参照しながら説明したlibmono.so370に対応してよく、第2ライブラリファイルはlibunity.so360に対応してよく、リカバリーファイルはrecovery.so440に対応してよい。
段階640で、サーバ150は、ネットワークを介した電子機器からの要請に応じ、リカバリーファイルが追加された応用プログラムパッケージを電子機器に送信してよい。送信制御部540は、段階640を実行するようにサーバ150を制御してよい。電子機器に送信された応用プログラムパッケージは、電子機器にインストールされてよく、アプリケーションの駆動(実行)時には上述した復号過程が電子機器で行われてよい。
図7は、本発明の一実施形態における、電子機器のプロセッサが含むことのできる構成要素の例を示した図であり、図8は、本発明の一実施形態における、電子機器が実行することのできる方法の例を示したフローチャートである。図7に示すように、電子機器1(110)のプロセッサ212は、受信制御部710および復号制御部720を備えてよい。このようなプロセッサ212の構成要素は、図8の方法が含む段階810および820を実行するように電子機器1(110)を制御してよく、このような制御のためにメモリ211が含むオペレーティングシステムと少なくとも1つのプログラムコードに基づいて動作するように実現されてよい。このとき、少なくとも1つのプログラムコードは、段階820の処理のために電子機器1(110)が段階810で受信する応用プログラムパッケージに含まれたコードを含んでよい。
段階810で、電子機器1(110)は、アプリケーションのためのファイルが含まれた応用プログラムパッケージを受信してよい。受信制御部710は、段階810を実行するように電子機器1(110)を制御してよい。このとき、応用プログラムパッケージには、アプリケーションのコードがコンパイルされて生成された中間言語(Intermediate Language:IL)コードを含み、暗号化された少なくとも1つのファイルおよび中間言語コードによってアプリケーションを実行するように電子機器に実行環境を提供するためのライブラリファイルおよび暗号化された少なくとも1つのファイルを復号するためのリカバリーファイルが含まれてよい。
段階820で、電子機器1(110)は、アプリケーションの実行過程において、リカバリーファイルに含まれたコードの制御にしたがってアプリケーションの実行のためにライブラリファイル間の呼び出しによって少なくとも1つの暗号化されたファイルが伝達される場合に、少なくとも1つの暗号化されたファイルを復号してよい。
上述したように、ライブラリファイルは、中間言語コードを含むファイルを読み込むためのコードを含む第1ライブラリファイルおよび第1ライブラリファイルに対するAPI(Application Programming Interface)呼び出しによって中間言語コードを含むファイルのフルバッファ(full buffer)を読み取ってパースするためのコードを含む第2ライブラリファイルを含んでよい。このとき、電子機器1(110)は、段階820で、第2ライブラリファイルが含むコードに基づいて第1ライブラリファイルがAPIコールされることによって読み取られる少なくとも1つの暗号化されたファイルに対するフルバッファ(full buffer)をリカバリーファイルが含むコードの制御にしたがって復号し、少なくとも1つの暗号化されたファイルを復号してよい。言い換えれば、アプリケーションの実行過程において、第2ライブラリファイルに基づいて第1ライブラリファイルのAPIを呼び出すにことよって中間言語コードを含むファイルが実行環境にロードされてよく、このとき、電子機器1(110)は、リカバリーファイルが含むコードの制御にしたがって実行環境にロードされる少なくとも1つの暗号化されたファイルに対するフルバッファを復号し、暗号化されたファイルを復号してよい。少なくとも1つの暗号化されたファイルは、ヘッダ部分とコード部分のうちの少なくとも1つが暗号化されたファイルであることは上述したとおりであり、電子機器1(110)は、リカバリーファイルが含むコードの制御にしたがって暗号化された部分を復号してよい。
このように、本発明の実施形態によると、アプリケーションの実行コードが含まれたファイルを暗号化しながらも、アプリケーションの駆動時に暗号化されたファイルを安全に復号して実行することができると同時に、暗号化されたファイルを復号するための情報が第三者やクライアントに露出されることを防ぐことができる。
Claims (20)
- アプリケーションのコードがコンパイルされて生成された中間言語コードを含むファイルおよび前記中間言語コードによって前記アプリケーションを実行するように電子機器に実行環境を提供するためのライブラリファイルを含むパッケージを受信する受信工程と、
前記中間言語コードを含む前記ファイルのうちの少なくとも1つのファイルを暗号化する暗号化工程と、
前記電子機器での前記アプリケーションの実行のために前記ライブラリファイルを用いることで、少なくとも1つの前記暗号化されたファイルを復号するためのコードを含む復号用ファイルを前記パッケージに追加する追加工程と、を含むことを特徴とする方法。 - 前記受信工程は、
前記中間言語コードを含むファイルのうちの暗号化するためのファイルに関する情報をさらに受信し、
前記暗号化工程は、
前記中間言語コードを含むファイルのうちの前記さらに受信した情報に対応するファイルを暗号化することを特徴とする、請求項1に記載の方法。 - 前記少なくとも1つのファイルは、前記実行環境のためのヘッダ部分および前記アプリケーションのためのコード部分を含み、
前記暗号化工程は、
前記ヘッダ部分および前記コード部分のうちの少なくとも一方を暗号化することを特徴とする、請求項1に記載の方法。 - 前記暗号化工程は、
前記ヘッダ部分を暗号化する場合、前記ヘッダ部分が含む情報をヌル値に変更して暗号化することを特徴とする、請求項3に記載の方法。 - 前記ライブラリファイルは、前記中間言語コードを含むファイルを呼び込むためのコードを含む第1ライブラリファイルおよび前記第1ライブラリファイルに対するAPI(Application Programming Interface)コールによって前記中間言語コードを含むファイルのフルバッファを読み取ってパースするためのコードを含む第2ライブラリファイルを含み、
前記復号用ファイルは、前記第2ライブラリファイルが含むコードに基づいて前記第1ライブラリファイルがAPIコールされることによって読み取られる少なくとも1つの前記暗号化されたファイルに対するフルバッファを復号し、少なくとも1つの前記暗号化されたファイルを復号するためのコードを含むことを特徴とする、請求項1に記載の方法。 - 前記復号用ファイルは、前記第1ライブラリファイルのAPIに関する情報を含む前記第2ライブラリファイルのIAT(Import Address Table)をフッキングし、前記第2ライブラリファイルが含むコードによる前記APIコールを確認するためのコードを含むことを特徴とする、請求項5に記載の方法。
- ネットワークを介した前記電子機器からの要請に応じ、前記復号用ファイルが追加された前記パッケージを前記電子機器に送信する工程
をさらに含むことを特徴とする、請求項1に記載の方法。 - アプリケーションのコードがコンパイルされて生成された中間言語コード、少なくとも1つの暗号化されたファイルおよび前記中間言語コードによって前記アプリケーションを実行するように電子機器に実行環境を提供するためのライブラリファイルおよび少なくとも1つの前記暗号化されたファイルを復号するための復号用ファイルを含むパッケージを受信する工程と、
前記アプリケーションの実行過程において、前記復号用ファイルに含まれたコードの制御にしたがって前記アプリケーションの実行のために前記ライブラリファイルを用いることで、少なくとも1つの前記暗号化されたファイルを復号する復号工程と、を含むことを特徴とする方法。 - 前記ライブラリファイルは、前記中間言語コードを含むファイルを呼び込むためのコードを含む第1ライブラリファイルおよび前記第1ライブラリファイルに対するAPI(Application Programming Interface)コールによって前記中間言語コードを含むファイルのフルバッファを読み取ってパースするためのコードを含む第2ライブラリファイルを含み、
前記復号工程は、
前記第2ライブラリファイルが含むコードに基づいて前記第1ライブラリファイルがAPIコールされることによって読み取られる少なくとも1つの前記暗号化されたファイルに対するフルバッファを前記復号用ファイルが含むコードの制御にしたがって復号し、少なくとも1つの前記暗号化されたファイルを復号することを特徴とする、請求項8に記載の方法。 - 前記復号工程は、
前記復号用ファイルが含むコードの制御にしたがって前記第1ライブラリファイルのAPIに関する情報を含む前記第2ライブラリファイルのIAT(Import Address Table)をフッキングし、前記第2ライブラリファイルが含むコードによる前記APIコールを確認することを特徴とする、請求項9に記載の方法。 - 前記復号工程は、
少なくとも1つの前記暗号化されたファイルのヘッダ部分が予め設定された値で始まるかによって少なくとも1つの前記暗号化されたファイルの暗号化の可否を確認することを特徴とする、請求項8に記載の方法。 - 請求項1〜11のうちのいずれか一項に記載の方法を実行するためのプログラム。
- サーバのシステムであって、
アプリケーションのコードがコンパイルされて生成された中間言語コードを含むファイルおよび前記中間言語コードによって前記アプリケーションを実行するように電子機器に実行環境を提供するためのライブラリファイルを含むパッケージを受信する受信制御手段と、
前記中間言語コードを含むファイルのうちの少なくとも1つのファイルを暗号化するように前記サーバを制御する暗号化制御手段と、
前記電子機器での前記アプリケーションの実行のために前記ライブラリファイルを用いることで、少なくとも1つの前記暗号化されたファイルを復号するためのコードを含む復号用ファイルを前記パッケージに追加する、ファイル追加制御手段と、を含むことを特徴とするシステム。 - 前記受信制御手段は、
前記中間言語コードを含むファイルのうちの暗号化するためのファイルに関する情報をさらに受信するように前記サーバを制御し、
前記暗号化制御手段は、
前記中間言語コードを含むファイルのうちの前記さらに受信した情報に対応するファイルを暗号化するように前記サーバを制御することを特徴とする、請求項13に記載のシステム。 - 前記少なくとも1つのファイルは、前記実行環境のためのヘッダ部分および前記アプリケーションのためのコード部分を含み、
前記暗号化制御手段は、
前記ヘッダ部分および前記コード部分のうちの少なくとも一方を暗号化するように前記サーバを制御することを特徴とする、請求項13に記載のシステム。 - 前記ライブラリファイルは、前記中間言語コードを含むファイルを呼び込むためのコードを含む第1ライブラリファイルおよび前記第1ライブラリファイルに対するAPI(Application Programming Interface)コールによって前記中間言語コードを含むファイルのフルバッファを読み取ってパースするためのコードを含む第2ライブラリファイルを含み、
前記復号用ファイルは、前記第2ライブラリファイルが含むコードに基づいて前記第1ライブラリファイルがAPIコールされることによって読み取られる少なくとも1つの前記暗号化されたファイルに対するフルバッファを復号し、少なくとも1つの前記暗号化されたファイルを復号するためのコードを含むことを特徴とする、請求項13に記載のシステム。 - ネットワークを介した前記電子機器からの要請に応じ、前記復号用ファイルが追加された前記パッケージを前記電子機器に送信するように前記サーバを制御する送信制御手段
をさらに備えることを特徴とする、請求項13に記載のシステム。 - 電子機器のシステムであって、
アプリケーションのコードがコンパイルされて生成された中間言語コード、少なくとも1つの暗号化されたファイルおよび前記中間言語コードによって前記アプリケーションを実行するように電子機器に実行環境を提供するためのライブラリファイルおよび少なくとも1つの前記暗号化されたファイルを復号するための復号用ファイルを含むパッケージを受信する受信制御手段と、
前記アプリケーションの実行過程において、前記復号用ファイルに含まれたコードの制御にしたがって前記アプリケーションの実行のために前記ライブラリファイルを用いることで、少なくとも1つの前記暗号化されたファイルを復号するように前記電子機器を制御する復号制御手段と、
を備えることを特徴とするシステム。 - 前記ライブラリファイルは、前記中間言語コードを含むファイルを呼び込むためのコードを含む第1ライブラリファイルおよび前記第1ライブラリファイルに対するAPI(Application Programming Interface)コールによって前記中間言語コードを含むファイルのフルバッファを読み取ってパースするためのコードを含む第2ライブラリファイルを含み、
前記復号制御手段は、
前記第2ライブラリファイルが含むコードに基づいて前記第1ライブラリファイルがAPIコールされることによって読み取られる少なくとも1つの前記暗号化されたファイルに対するフルバッファを前記復号用ファイルが含むコードの制御にしたがって復号し、少なくとも1つの前記暗号化されたファイルを復号するように前記電子機器を制御することを特徴とする、請求項18に記載のシステム。 - 前記復号制御手段は、
少なくとも1つの前記暗号化されたファイルのヘッダ部分が予め設定された値で始まるかによって少なくとも1つの前記暗号化されたファイルの暗号化の可否を確認することを特徴とする、請求項18に記載のシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2015-0112740 | 2015-08-10 | ||
KR1020150112740A KR101740133B1 (ko) | 2015-08-10 | 2015-08-10 | 어플리케이션의 코드를 보호하기 위한 시스템 및 방법 |
PCT/KR2016/008587 WO2017026738A1 (ko) | 2015-08-10 | 2016-08-04 | 어플리케이션의 코드를 보호하기 위한 시스템 및 방법 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2018527664A JP2018527664A (ja) | 2018-09-20 |
JP2018527664A5 true JP2018527664A5 (ja) | 2019-09-12 |
JP6815386B2 JP6815386B2 (ja) | 2021-01-20 |
Family
ID=57984491
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018506544A Active JP6815386B2 (ja) | 2015-08-10 | 2016-08-04 | アプリケーションのコードを保護するためのシステム、方法およびプログラム |
Country Status (3)
Country | Link |
---|---|
JP (1) | JP6815386B2 (ja) |
KR (1) | KR101740133B1 (ja) |
WO (1) | WO2017026738A1 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018194196A1 (ko) * | 2017-04-20 | 2018-10-25 | 라인 가부시키가이샤 | Elf 파일의 난독화 적용 여부의 탐지 및 보안성 평가를 위한 방법 및 시스템 |
WO2018199366A1 (ko) * | 2017-04-28 | 2018-11-01 | 라인 가부시키가이샤 | 덱스 파일의 난독화 적용 여부의 탐지 및 보안성 평가를 위한 방법 및 시스템 |
WO2018194198A1 (ko) * | 2017-04-20 | 2018-10-25 | 라인 가부시키가이샤 | Pe 파일의 난독화 적용 여부의 탐지 및 보안성 평가를 위한 방법 및 시스템 |
JP7131946B2 (ja) | 2017-04-20 | 2022-09-06 | Line株式会社 | アプリケーションの保安性を評価する方法およびシステム |
CN111273943A (zh) * | 2018-12-04 | 2020-06-12 | 北京嘀嘀无限科技发展有限公司 | 应用文件的生成方法、装置及电子设备 |
CN110472425A (zh) * | 2019-07-18 | 2019-11-19 | 福建天晴在线互动科技有限公司 | 基于Mono的Unity插件加密方法、存储介质 |
CN110619220B (zh) * | 2019-08-09 | 2022-03-11 | 北京小米移动软件有限公司 | 对神经网络模型加密的方法及装置、存储介质 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5625690A (en) * | 1993-11-15 | 1997-04-29 | Lucent Technologies Inc. | Software pay per use system |
JP4727366B2 (ja) * | 2005-09-28 | 2011-07-20 | 株式会社デジタル | 情報処理装置、情報処理システム、プログラムおよび記録媒体 |
JP2007172526A (ja) * | 2005-12-26 | 2007-07-05 | Nippon Computer Co Ltd | 情報処理システム、情報処理方法 |
JP2007328541A (ja) * | 2006-06-07 | 2007-12-20 | Canon Inc | 電子機器 |
CN102598017B (zh) * | 2009-11-13 | 2016-03-09 | 爱迪德技术有限公司 | 提高Java字节码的防窜改能力的系统和方法 |
KR101092373B1 (ko) * | 2010-01-07 | 2011-12-09 | 한국과학기술연구원 | 소프트웨어 패키지의 생성 및 설치를 위한 시스템 및 방법 |
CN102236757A (zh) * | 2011-06-30 | 2011-11-09 | 北京邮电大学 | 一种适用于Android系统的软件保护方法及系统 |
US8887152B1 (en) * | 2011-11-04 | 2014-11-11 | Trend Micro, Inc. | Android application virtual environment |
US8892876B1 (en) * | 2012-04-20 | 2014-11-18 | Trend Micro Incorporated | Secured application package files for mobile computing devices |
KR101472346B1 (ko) * | 2012-05-24 | 2014-12-16 | 주식회사 엘지유플러스 | 암호화된 웹 어플리케이션 제공 방법, 이를 지원하는 단말, 및 이를 위한 기록매체 |
KR101391982B1 (ko) * | 2012-08-28 | 2014-05-07 | 바른소프트기술 주식회사 | 안드로이드 어플리케이션의 디컴파일 방지를 위한 암호화 방법 |
KR101471589B1 (ko) * | 2013-08-22 | 2014-12-10 | (주)잉카엔트웍스 | 공통중간언어 기반 프로그램을 위한 보안 제공 방법 |
-
2015
- 2015-08-10 KR KR1020150112740A patent/KR101740133B1/ko active IP Right Grant
-
2016
- 2016-08-04 JP JP2018506544A patent/JP6815386B2/ja active Active
- 2016-08-04 WO PCT/KR2016/008587 patent/WO2017026738A1/ko active Application Filing
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2018527664A5 (ja) | アプリケーションのコードを保護するためのシステム、方法およびプログラム | |
JP6888011B2 (ja) | 信頼できる実行環境を有するモバイル装置 | |
US10572633B1 (en) | Method, manufacture, and apparatus for instantiating plugin from within browser | |
US11169791B2 (en) | Processing, modification, distribution of custom software installation packages | |
TWI598814B (zh) | 用於管理及診斷配備有統一可延伸韌體介面(uefi)相容韌體的計算裝置之系統與方法 | |
CN102479304B (zh) | 软件权限控制方法、客户端及系统 | |
EP2831790B1 (en) | Secured execution of a web application | |
US9767317B1 (en) | System to provide cryptographic functions to a markup language application | |
CN105227565B (zh) | 用于安卓系统的防逆向破解共享对象文件的方法和装置 | |
JP6815386B2 (ja) | アプリケーションのコードを保護するためのシステム、方法およびプログラム | |
US8255333B2 (en) | Method of generating license, and method and apparatus for providing contents using the same | |
JP5540109B2 (ja) | アプリケーションクラスをロードするシステムおよび方法 | |
EP3270318B1 (en) | Dynamic security module terminal device and method for operating same | |
CN103530535A (zh) | 一种Android平台应用程序保护的加脱壳方法 | |
US9594915B2 (en) | Information processing apparatus | |
CN108399319B (zh) | 源代码保护方法、应用服务器及计算机可读存储介质 | |
JP2007102785A (ja) | 保安方法及びシステム、その方法を記録したコンピュータで読み取り可能な記録媒体 | |
CN103036852A (zh) | 一种实现网络登录的方法以及装置 | |
JP2014048811A (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP2008040853A (ja) | アプリケーション実行方法およびアプリケーション実行装置 | |
CN114329535A (zh) | 文件加密方法、装置、电子设备和计算机可读介质 | |
KR101875863B1 (ko) | 암호화된 해시값에 기반하여 클라우드 접속 허가를 결정하는 클라우드 시스템, 및 클라우드 접속 방법과 클라우드 단말에 설치된 소켓 데몬 장치 | |
US20170054693A1 (en) | Integrity verification system using remote code execution and method thereof | |
CN115129361B (zh) | 一种Java应用程序的安全加固方法及系统 | |
KR101260759B1 (ko) | 네이티브 라이브러리 접근 제어장치 및 방법 |