オープンソースソフトウェアPHP ScrewでPHPスクリプトを暗号化する

PHP Screwとは、PHPのソースコードを暗号化するオープンソースのソフトウェアです。

開発元からすれば、PHPのようなスクリプト言語での開発の欠点としては、ソースがそのまま見えてしまう事です。心無い従業員が盗み取ったり、サーバの設定をミスしてソースが丸見えになってしまう可能性もあります。HP ScrewはPHPの機能拡張として利用しています。利用は今まで通り使う事が出来ます。

HP Screwを利用すれば人間には読めなくしてみれば、不安も減るだろうということだろう。PHPを利用した商用パッケージを開発している場合も、低コストで財産を守ることができます。
ここはPHP Screwについてドキュメント:

http://www.pm9.com/newpm9/itbiz/php/phpscrew/phpscrew.txt

インストール方法:

(1) php_screw-1.5.tgz を展開して下さい。

(2) ディレクトリ php_screw-1.5 にて下記のコマンドを実行して下さい。
      phpize
      ./configure

(3) 暗号化・復号化モジュールのカスタマイズを行って下さい。

      vi my_screw.h
         -- 暗号化SEEDキー(pm9screw_mycryptkey)をお好みの値に変更して下さい。
            暗号化SEEDキーは長いほうが暗号化強度は高まります。
            しかし、キーの長さは復号処理の時間とは関係有りません。
            なるべくキーを長くとって下さい。

      ※ ソースを読んでご理解いただけるなら、
         独自の暗号化ロジックに修正することが可能です。

(4) コンパイルして下さい。
      make

(5) modules/php_screw.so を extension用のディレクトリにコピーして下さい。
      例) cp modules/php_screw.so  /usr/lib/php/modules/php_screw.so

(6) ソース暗号化ツール(screw)を作成します。次のコマンドを実行して下さい。
      cd tools
      make

(7) screw を適当なディレクトリにリネームしてコピーして下さい。

(8) php.iniに次の行を追加して下さい。
      extension=php_screw.so

(9) apacheを再起動して下さい。

利用方法:

(1) PHPスクリプトの暗号化
   次のコマンドを実行して下さい。

      screw  暗号化対象のスクリプトファイルのパス

   コマンドを実行すると、同一の名前で暗号化されたスクリプトファイルが
    作成されます。
   また同一のディレクトリにスクリプトファイル名.screwという名前で
    バックアップが作成されます。
    パッケージングを行うときには、.screwファイルを忘れずに消して下さい。

(2)PHPスクリプトの実行
    暗号化されていないスクリプトファイルを実行するときと同じように
    暗号化されたスクリプトファイルを規定のディレクトリに置いて実行して下さい。

公式サイト:
http://sourceforge.net/projects/php-screw/

Office Site:
http://www.pm9.com/newpm9/itbiz/php/phpscrew/

Leave a Reply

Your email address will not be published. Required fields are marked *