PHP php-mcryptとは?CentOS 7でダウンロード、インストールできない?PHP 7で非推奨

スポンサーリンク
PHP

PHPのphp-mcryptについて調べてみました。

PHP php-mcrypt とは

PHPのphp-mcryptパッケージに含まれるMcryptは、暗号化に関する関数を提供します。

PHPを使って、パスワードの暗号化・複合化を行う際に便利な関数です。

 

Mcryptの公式サイトは以下の通りです。

PHP: Mcrypt 関数 - Manual

この関数は、CBC, OFB, CFB, ECB 暗号モードの DES, TripleDES, Blowfish (デフォルト), 3-WAY, SAFER-SK64, SAFER-SK128, TWOFISH, TEA, RC2 , GOST のような広範なブロックアルゴリズムをサポートする mcrypt ライブラリへのインターフェイスです。加えて、"フリーではない" とされている RC6 および IDEA もサポートします。 CFB 及び OFB は既定では 8bit です。

php-mcrypt は PHP 7.1.0で非推奨、PHP 7.2.0で廃止

ところで、PHPのphp-mcryptは、PHP7.1で非推奨、7.2からは廃止となりました。

PHP: はじめに - Manual

この機能は PHP 7.1.0 で 非推奨 となり、 PHP 7.2.0 で削除 されました。

この機能の代替として、これらが使えます。

Sodium (PHP 7.2.0から利用可能)
OpenSSL

 

PHPの5.xを使っている人は、仕方ないですが、PHP 7を使っている人は、php-mcryptを止めて、代わりに Sodium か OpenSSL を使いましょう。

php-mcrypt を yum でインストールできない?

php-mcrypt は CentOS 標準の yum リポジトリでは提供されていないパッケージのため、EPEL リポジトリを用いてインストールする必要があります。

php-mcrypt をCentOS7でダウンロード・インストールする方法

php-mcrypt をCentOS7でダウンロード・インストールする方法は次の通りです。

 

EPELのリポジトリを追加します。

 

その後、php-mcryptをダウンロード&インストールします。

 

うまくいかない場合は、直接EPELリポジトリを指定します。

 

php-mcryptをインストールした後は、ApacheなどのWEBサーバーを起動すればphp-mcryptが使えるようになります。

php-mcrypt 確認する方法

php-mcryptを確認するには、phpinfo()を使います。

 

正しくphp-mcryptがインストールされている場合、こんな感じで、Mcryptの項目が確認されます。

 

php-mcrypt 使い方

php-mcryptの使い方は、公式サイトに詳しいです。

 

代表的な暗号化の関数、mcrypt_encryptの使い方は次の通りです。

string mcrypt_encrypt ( string $cipher , string $key , string $data , string $mode [, string $iv ] )

 

 

php-mcryptでなくてopensslが推奨

PHP 7以降は、php-mcryptは、非推奨でPHP 7.2ではなくなります。

php-mcryptではなくて、opensslを使いましょう。

 

 

コメント