
[LIAPP FEATURES] Unity Engine Protection
この投稿では、LIAPPの機能であるUnityエンジン保護について説明します。 その仕組みと効果について解説します。
LIAPPは、モバイルアプリのさまざまな要素を保護するための強力で便利な機能を提供します。
この投稿では、LIAPPのUnityエンジン保護について詳しく説明し、どのように動作し、どのような影響を与えるのかを解説します。
Unityエンジン保護は、「コード保護」機能で設定できます。
この機能の目的は、Unityエンジンで開発されたモバイルアプリの重要なエンジンファイルを保護することです。

Unityは独自の利点があり、多くのアプリ開発者がゲーム開発にUnityエンジンを選択する理由となっています。
しかし、Unityエンジンを使った開発プロセスは簡単な反面、さまざまな脆弱性も存在します。
脆弱性について説明する前に、まずUnityの2つの主要なビルドモードを見てみましょう。
1. MONOモード
- C#で開発し、さまざまなプラットフォームをサポート
- C#コードをIL(Intermediate Language)コードに変換
- ビルド時にAssembly-CSharp.dll(.NETフレームワークベース)を作成
(重要なロジックはAssembly-CSharp.dllおよび特定のファイルに含まれる)
IL2CPPモード
- C#で開発し、さまざまなプラットフォームをサポート
- C#コードをIL(Intermediate Language)コードに変換
- ILコードをC++形式に変換
- ビルド時にlibil2cpp.so(バイナリベース)を作成
(重要なロジックはlibil2cpp.soおよび特定のファイルに含まれる)
Unityはこの2つのビルドモードを提供しており、IL2CPPモードはMONOモードが64bitに対応していなかった問題を解決するために開発されました。
現在、UnityはIL2CPPモードの使用を推奨しています。
しかし、MONOモードとIL2CPPモードのファイルはデコンパイルツールを使うことで簡単に解析でき、ゲームの重要なロジックが漏洩する可能性があります。


このようにして露出したロジックを分析することで、ゲーム内の機能を特定し、
スキルや経験値、ゲーム内通貨を不正に入手する手口に利用される可能性があります。
このような不正行為による被害が深刻化しており、被害件数も増加しています。
こうした脅威からアプリを守るために、LIAPPはUnityの重要ファイル暗号化機能を提供しています。

アプリや開発者は、LIAPPのUnityエンジン保護を利用することで、重大な問題を未然に防ぐことができます。
この機能により、アプリの配信後も**重要なロジック(スキル、経験値、アイテム、決済処理、ゲーム内通貨)**の漏洩を防ぐことが可能です。
さらに、この機能は**コンパイル済みのアプリファイル(APKやAAB)**に適用されるため、開発言語やフレームワークに関係なく導入できます。
LIAPP、最高のセキュリティサービスを提供します。