OpenPNE のデータ移行でメールアドレスが化けたときの対処法

 オープンソースSNS エンジンである OpenPNE。これは、メールアドレスをデータベースに暗号化して保存します。この暗号化なのですが、どうやら PEAR の Crypt::Blowfish を用いている模様。このライブラリは、mcrypt を使用して暗号化処理を行うようなのですが、PHPmcrypt が組み込まれていなくてもエラーを吐いたりしません(少なくとも OpenPNE では)。何事もなかったようにスルーしていしまいます(たぶん暗号処理をしないでそのまま返す!?)。ということで、ここが意外とハマりポイントになりそうなので、メモを残しておきます。
 私の場合、Vine Linux 3.2 で動いているマシンから CentOS 4.3 で動いているマシンにデータを移行しようとしました。どちらも標準添付の PHP を用いたのですが、Vine Linux のほうは mcrypt が組み込まれているのに対し CentOS のほうは組み込まれていません。そこで CentOS に組み込むことにしました。まずは、libmcrypt を RPM でインストールします。以下のサイトで配布しています。

http://dag.wieers.com/packages/libmcrypt/

 CentOSRedhat Enterprise Linux とバイナリ互換なので、私の場合は Red Hat EL 4 のものを持ってきました。次に PHP 用の拡張モジュールを RPM でインストールします。以下のサイトで配布しています。

http://phprpms.sourceforge.net/mcrypt

 これで OK です。