Python コードの暗号化・難読化ツール| AxProtector Python

Share:

AxProtector Pythonは、シンプルな操作で、Pythonアプリケーション(.py)をリバースエンジニアリングから保護するツールです。保護したいファイルを選択後、AxProtector Pythonでの暗号化には、以下の4つのオプションがあります。

  1. <基本設定>Pythonアプリケーション全体を暗号化し、アプリケーションライセンスチェック機能を自動的に追加
  2. <カスタムライセンシング>Pythonアプリケーションを機能ごと(クラス、メソッド毎に)にモジュラー型暗号化し、エンドユーザーが機能ごとにアクティベートできるオプション
  3. <IP Protection>アプリケーションライセンスの紐づけをせず、Pythonアプリケーションの保護(リバースエンジニアリングに対する対抗策として)を適応できるオプション(ユーザーライセンス不要)
  4. <CodeMoving>更なる保護レベルを希望する場合は、ドングル(CmDongle)にあるメモリー上で暗号化されたPythonコードを実行するオプション

今まで、スクリプト言語で書かれたソースコードをエンドユーザーに提供することは、IP資産を含めたすべての情報の提供を意味し、さらにアプリケーションライセンスを付加し、Pythonアプリケーションの使用制限を加えることは困難でした。しかし、AxProtector Python を導入し上記のセキュリティ機構を適用することにより、それらが可能になります。つまり、他のプログラミング言語で開発されたアプリケーションと同様のライセンスビジネスを実現します。

基本設定

AxProtector Pythonは、Pythonアプリケーションの保護とライセンシングを統合できます。これは、アプリケーションのすべてのメソッドを、開発者が定義したアプリケーションライセンスで暗号化することを意味します。その後、メソッドは実行時に自動的に復号されます。

エンドユーザーが必要なアプリケーションライセンスを持っていれば、メソッドはその場で復号され正常に実行されますが、持っていない場合は例外を発生し、アプリケーションを実行できなくなります。アプリケーションライセンスを持っていない場合は例外処理でその状況をキャッチし、エンドユーザーに適切なメッセージを伝えることができます。

メソッドを動的に暗号化しても、アプリケーションのパフォーマンスへの影響はほとんどありません。それでも懸念される場合は、対象メソッドを個別に暗号化の対象から外すこともできます。

カスタムライセンシング

Pythonアプリケーションが提供するさまざまな機能に対して、個々のメソッドに異なるアプリケーションライセンスを割り当てることができます。

これにより、エンドユーザーは、選択した機能に対してのみアプリケーションライセンスの購入が可能です。これに加えて、他の機能にアクセスした際に、エンドユーザー対応の2つの選択肢を与えることができます。一つ目として、基本機能と同様、アプリケーションライセンスがない場合に例外をキャッチすることができます。そしてもう一つの選択肢では、CodeMeter APIを使い、該当の機能のアプリケーションライセンスが利用可能かチェック(check_license)し、そうでない場合には、その機能を最初から隠蔽します。

IP Protection

IP Protection モードは、アプリケーションライセンスを必要としない状況(Pythonコードの隠蔽のみが必要な状況)を前提に作成できます。基本機能と異なり、Pythonアプリケーションはライセンスに縛られません。復号に必要な鍵は、アプリケーション自体に安全に隠されています。このアプリケーションは強力に保護されていますが、いつでも実行可能です。

Code Moving

セキュリティ向上のため、PythonコードをCmDongleのセキュア領域で実行することができます。その際、アプリケーションで特に機密性の高い部分をCソースファイルへ転換、そして暗号化の際にコンパイルし、保護されたPythonアプリケーションの中に、バイナリ(暗号化されたblob)として安全に保存します。

実行時には、これらの部分はCodeMeter API(execute_moved_code)を介してアクセスされます。これにより、暗号化されたコードは、CmDongleのスマートカードチップに移動し、そこで復号され、与えられたパラメーターで実行されます。出力は、CodeMeter API呼出しへの応答としてメインシステムに伝えられます。

要件

AxProtector Pythonは、Pythonスクリプトを暗号化します。

以下のオペレーティングシステム(OS)に対応しています。
Windows x86、Windows x86_64、Linux x86、Linux x86_64、macOS x86_64

以下のCodeMeterコンテナタイプがサポートされています。
ユニバーサルファームコードをもつCmDongle、CmActLicense、CmCloudContainer

Python 3.x のすべてのバージョンがサポートされています。

関連情報

貴社の課題をCodeMeterで解決しませんか?
お気軽にお問合せください。製品説明および最適な使い方をご提案します。

お問合せ

To top