2009-05-19 9 views
1

J'ai une base de données qui est cryptée avec Windows bibliothèque CAPICOM avec RC4. Le script PHP suivant fonctionne très bien sur le serveur Windows.Capicom Decryption sous Linux

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

Je voudrais déchiffrer la même base de données sur le serveur Linux. Comment devrais-je faire ça? Puis-je décrypter les données a chiffrées avec CAPICOM?

Merci.

Répondre

2

Si vous analysez vous-même les tampons cryptés, vous devriez pouvoir les décoder dans n'importe quelle langue.

Pour plus de détails sur les tampons CAPICOM, commencez ici: http://www.jensign.com/JavaScience/dotnet/DeriveBytes/index.html

Si vous traitez avec des données à partir d'une source unique en utilisant un seul algorithme de chiffrement, vous devriez être en mesure de simplifier votre code d'analyse syntaxique tampon de manière significative.

0

Cela ressemble à votre meilleur pari: http://sourceforge.net/projects/rc4crypt/

De toute évidence, si vous voulez faire de votre croix-plate-forme applicative, vous devez abandonner COM() tout à fait - mais je comprends si c'est hors de votre contrôle à ce stade. CAPICOM utilise des algorithmes de cryptage standard tels que 3DES.