1. ホーム
  2. python

[解決済み] Pythonのコードをユーザーに読まれないようにするにはどうしたらいいですか?

2022-03-14 18:30:26

質問

私はPythonでソフトウェアを開発しており、雇用主の顧客に配布する予定です。私の雇用主は、時間制限のあるライセンスファイルを使ってソフトウェアの使用を制限したいと考えています。

を配布すると .py ファイル、あるいは .pyc ファイルでは、ライセンスファイルをチェックするコードを簡単に(デコンパイルして)削除することができます。

もう一つの側面は、私の雇用主が、コードが盗まれたり、少なくとも "斬新なアイデア" が盗まれることを恐れて、コードを顧客に読まれたくないということです。

この問題に対処する良い方法はないでしょうか?

どのように解決するのですか?

Pythonは、バイトコードコンパイルされたインタプリタ型言語であるため、ロックダウンするのが非常に困難な言語です。 たとえ、以下のようなexe-packagerを使ったとしてもです。 py2exe しかし、実行ファイルのレイアウトはよく知られており、Pythonのバイトコードもよく理解されています。

通常、このようなケースでは、トレードオフをしなければなりません。 コードを保護することが本当に重要なのか? そこに本当の秘密があるのか(銀行送金の対称型暗号の鍵など)、それとも単なる偏執狂なのか? 最高の製品をいち早く開発できる言語を選び、自分の斬新なアイデアがどれほどの価値を持つか、現実的に考えてみてください。

ライセンスチェックを安全に実施する必要があると判断した場合、ライセンスチェックのコードをリバースエンジニアリングしにくいように(不可能ではありません!)、小さなC拡張モジュールとして記述し、コードの大部分はPythonのままにしてください。