ホームページ  >  記事  >  バックエンド開発  >  なぜphpのソースコードを暗号化する必要があるのでしょうか?

なぜphpのソースコードを暗号化する必要があるのでしょうか?

(*-*)浩
(*-*)浩オリジナル
2019-06-04 10:34:025119ブラウズ

PHP コードはオープン ソースの WEB コードであり、コンパイルを必要とせず、インタプリタ型言語です。 (つまり、対応する拡張子を持つインタプリタを WebServer に追加すると、コードの分析と処理を完了できます)。

PHP 言語の解釈された特性に従って、個々のプロジェクトのニーズと組み合わせると、php.exe (PHP インタープリター) を使用して PHP コードを解釈して適用できるため、PHP は WEB 環境だけでなく適切になります。 WEB環境だけでなく、GTKなどローカルで処理します。
なぜphpのソースコードを暗号化する必要があるのでしょうか?

Delphi チャネル (PIP) メソッドを使用して phpexe インタープリターを呼び出し、PHP コードを解釈して WEB でのプロセスを完了するプロジェクトを手元に持っています。
PHP はオープンソース方式を採用しているため、さまざまなユーザーが PHP 言語で記述されたソース プログラムを簡単に閲覧し、ソース プログラムを解析し、データ接続を容易に取得することができます。処理手順やサーバー名などの重要な情報さえも、ソフトウェア開発者の著作権保護には役立ちません。したがって、PHP ソース コードを暗号化して認証する、つまり (エンコードとライセンス認証) が必要です。
現在市場に出回っているソフトウェアは主に 2 種類あり、どちらも市場で人気があります。 PHP の暗号化と認証用: (1) Zend Company の ZendGuard。 —-最新バージョン 5.0.1 (2008/06/17)
(2) ionCube 社の ionCube PHP エンコード。 ---最新バージョン 6.5 (2008/06/17)
よく使われるこの 2 つのエンコード ソフトウェアは、それぞれ異なる機能と利点を持っています。

Zend Guard Zend Guard は、PHP タグまたはソース コード (.php、inc など) を含むファイルのみを暗号化し、PHP タグのない他のテキスト ファイルを保存できます。ファイル暗号化不可、サポート期間、登録コード。
PHP4.2.X~5.2.Xバージョンの暗号化に対応しました。
使用される ZendOptimizer (PHP エンジン) は、ソース コードの速度最適化を 20 ~ 50% 以上向上させることができ、ZendGuard と組み合わせると、パフォーマンス速度の最適化を 50% 以上向上させることができ、ZendOptimizer は以下にインストールできます。現在の主流システムの多く。 (ZendGuard 暗号化を使用する場合、より最適化処理を行うために ZendOptimizer のバージョンを選択できます。) さらに、ZendGuard は ZendOptimizer で構成された環境でのみ使用でき、独立して実行することはできません。 (php.ini ファイルで設定する必要があります)

* また、PHP4 での ZendGuard のエラーにも注意が必要で、暗号化時に PHP4 の絶対パスと相対パスの間に大きな違いが生じます。

PHP4.4.1環境で、以下の2つのファイルがある場合:

Test.php

参考:

<?php
require_once(”inc/test1.php”);
?>
inc/Test1.php

Quote:

<?php
echo realpath(dirname(__FILE__));
?>
暗号化しない場合、表示される結果は次のとおりです: C:/LocalWeb/zendtest/inc

ただし、暗号化すると、次のように表示されます: C:/LocalWeb/zendtest-encode/zendtest

ZendGuard 暗号化後に inc ディレクトリが削除されていることが分かり、インクルードされる前のファイルのアドレスが表示されます。 (つまり、__FILE__ は一時的な定数として表示されます)。

#この問題はテスト済みですが、PHP5.2.6 環境では見つかりませんでした。

ionCube PHP エンコードionCube によって開発された ionCube PHP エンコードは、PHP または非 PHP ファイルの暗号化に使用されます。 ionCube は、Zend の ZendGuard よりも機能的に優れていることがテストされており、有効期限や登録コードなどの暗号化方式だけでなく、IP アドレスや MAC アドレスなどの複雑な暗号化方式にも対応しています。さらに、ionCube は、PHP タグやソース コードを含む PHP ファイルを暗号化できるだけでなく、テキスト モードで保存された xml、js、css などの非 PHP ファイルも暗号化できます。 (ただし、読み取りおよび書き込み操作には、ionCube が提供する読み取り API を使用する必要があります。)
暗号化可能な PHP のバージョンは、PHP4.0.6 ~ 5.2.X (ZendGuard の 2 レベル上) です。
ionCube と Zend も同様に、 PHP のパフォーマンス最適化を向上させるために、ほとんどのオペレーティング システムに PHP 最適化機能を提供できる、対応する PHP エンジンも提供されていますが、残念ながら、Windows バージョンの PHP エンジンはこれまでのところ提供されていません。
以前 ZendGuard で触れた PHP4 環境でのパスの問題ですが、ionCube では発生せず、比較的安定していることがわかります。
ionCube の場合、PHP タグまたはソース コードを含むファイルは圧縮と暗号化を使用して処理され、php 以外のテキスト ファイルは暗号化を使用して処理されます。読み込み時は「ioncube_read_file/ioncube_write_file」を使用してファイルの読み書きを行う必要があります。したがって、ionCube 暗号化を使用する前に、対応する PHP コードを変更する必要があります。

以上がなぜphpのソースコードを暗号化する必要があるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。