Linux中的Capicom解密

时间:2009-05-19 22:58:33

标签: php linux encryption capicom

我有一个用带有RC4的Windows CAPICOM库加密的数据库。以下PHP脚本在Windows服务器上运行正常。

    ...
$oCapiCapi = new COM("CAPICOM.EncryptedData");
$oCapiCapi -> Algorithm = 1;
$oCapiCapi -> Algorithm -> KeyLength = 3;
$oCapiCapi -> SetSecret('OURveRYSecretKey');
    ...
    $oCapiCapi -> Decrypt($orsd[1]);
    $Decrypted = $oCapiCapi -> Content;
    ...

我想在linux服务器上解密同一个数据库。我该怎么办?我可以解密用CAPICOM加密的数据吗?

谢谢。

2 个答案:

答案 0 :(得分:2)

CAPICOM使用标准加密算法,如3DES。如果您自己解析加密缓冲区,则应该能够使用任何语言对它们进行解码。

有关CAPICOM缓冲区的详细信息,请从此处开始: http://www.jensign.com/JavaScience/dotnet/DeriveBytes/index.html

如果您只使用一个加密算法处理来自单个源的数据,那么您应该能够显着简化缓冲区解析代码。

答案 1 :(得分:0)

这看起来是您最好的选择:http://sourceforge.net/projects/rc4crypt/

显然,如果你想让你的应用程序跨平台,你应该完全放弃COM() - 但是我知道如果你现在无法控制它。