現在の位置: ホーム> 最新記事一覧> ZIP圧縮パッケージの暗号化とPHP Ziparchiveを使用した復号化の実装に関するチュートリアル

ZIP圧縮パッケージの暗号化とPHP Ziparchiveを使用した復号化の実装に関するチュートリアル

gitbox 2025-07-17

導入

Ziparchiveは、ZIP形式の圧縮パッケージを処理するためにPHPが提供する拡張ライブラリです。圧縮パッケージの作成、読み取り、更新の基本的な操作をサポートするだけでなく、パスワードを設定してデータのプライバシーとセキュリティを確保することにより、圧縮パッケージの暗号化と復号化処理を可能にします。

暗号化された圧縮パッケージを作成します

暗号化されたzipファイルを作成するには、主に次の手順に分割されます。

zipファイルを開き、パスワードを設定します

まず、Ziparchiveクラスをインスタンス化し、 Open()メソッドを介して作成モードでZIPファイルを開き、次にSetPassWord()を呼び出して圧縮パッケージパスワードを設定します。

$ zip = new Ziparchive();
$ zip-> open( 'necrypted.zip'、ziparchive :: create);
$ zip-> setPassword( 'password');

上記のコードは、 bedrypted.zipという圧縮パッケージを作成し、アクセスパスワードをパスワードに設定します。

圧縮パッケージにファイルを追加します

zipファイルが正常に開かれ、パスワードが設定された後、 addfile()メソッドを使用して、ターゲットファイルを圧縮パッケージに追加できます。

$ file = 'emple.txt';
$ zip-> addfile($ file);

ここでは、ローカルExample.txtファイルを暗号化されたzipパッケージに追加します。

圧縮パッケージを閉じます

ファイルを追加したら、 close()メソッドを使用して圧縮パッケージを閉じて、書き込み操作を完了してください。

$ zip-> close();

この時点で、暗号化されたファイルを含む圧縮パッケージが生成されました。

圧縮パッケージを復号化します

暗号化されたzipパッケージの内容を抽出する必要がある場合は、Ziparchiveを使用して読み取り、復号化することもできます。

復号化パスワードを開いて設定します

Ziparchive ::読み取りモードを使用して圧縮パッケージを開き、 SetPassWord()メソッドを使用して正しい復号化パスワードを設定します。

$ zip = new Ziparchive();
$ zip-> open( 'necrypted.zip'、ziparchive :: read);
$ zip-> setPassword( 'password');

設定したパスワードが、圧縮パッケージを作成したときに一致していることを確認してください。そうしないと、復号化が失敗します。

ファイルの内容を抽出します

復号化が成功したら、抽出()メソッドを使用して、指定されたディレクトリにファイルを抽出します。

$ destination = '抽出/';
$ zip-> extractto($ destination);

ファイルは、抽出/ディレクトリに完全に抽出されます。

圧縮パッケージを閉じます

ファイル抽出が完了した後、圧縮パッケージを閉じるにはclose()メソッドも必要です。

$ zip-> close();

これにより、暗号化された圧縮パケットの復号化と抽出が完了します。

要約します

PHPのZiparchive Extensionの助けを借りて、ZIP圧縮パッケージの暗号化と復号化操作を簡単に実装できます。実際のプロジェクトでは、この機能は機密ファイルのストレージと送信に使用でき、暗号化処理はデータが違法にアクセスされるのを効果的に防ぐことができます。 SetPassWord()メソッドを介してパスワードを設定し、抽出()メソッドを介してファイルを抽出すると、圧縮から減圧までの完全な暗号化処理プロセスを実現できます。これは、開発中の圧縮パッケージのセキュリティを処理するための実用的なツールです。