Funambol モバイル同期サーバーで使用されるパスワード暗号化アルゴリズムを PHP で実装しようとしていますが、Java 以外のバックグラウンドを持っているため苦労しています。コード自体は単純に見えます:
encryptionKey = "Omnia Gallia in tres partes divida est";
byte[] newValue = new byte[24];
System.arraycopy(encryptionKey, 0, newValue, 0, 24);
encryptionKey = newValue;
KeySpec keySpec = new DESedeKeySpec(encryptionKey);
SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DESEde");
Cipher cipher = Cipher.getInstance("DESEde");
SecretKey key = keyFactory.generateSecret(keySpec);
cipher.init(Cipher.ENCRYPT_MODE, key);
cipherBytes = cipher.doFinal(plainBytes);
私は必ずしも完全な解決策を探しているわけではなく、PHP 側で使用できるものへのポインタを探しています。mcrypt はこれをどの程度処理できますか? 他に何が必要ですか?これはPHPでも実行できますか?
好奇心旺盛な方へ: 私は Funambol サーバーへのインターフェースを構築しています。PHP を使用して、インターフェース自体からユーザーを追加できるようにしたいと考えています。