私はphpseclibをトリプルDES暗号化に使用しています。TripleDES - C#コードに相当するphpseclib
これは私が暗号化するものです。
<?php
use phpseclib\Crypt\TripleDES;
class Foo
{
public function encrypt()
{
$encryptMe = new TripleDES();
$encryptMe->setKey(md5('cEvu4MHkqz7mQgeqmB6mQEXi'));
$encryptMe->setIV('jvz8bUAx');
$encryptMe->paddable = false;
$cipherText = $encryptMe->encrypt("{phrase:'user123',time:'9/11/2017 02:27:19 PM',username:'user1'}");
return rawurlencode(base64_encode($cipherText));
// result : Uru1%2BUpN7oelxj7ngPkkPoK%2FoIw8SoizR8fbDVX4Wicxi8DvY4kcau1fsUVAkNf1oLVr1g4RG0yD2LyL%2FNU7zDWv4cGxVQ%2FL
}
}
それは動作しますが、それはここに私のC#のコードの同じ結果を持っていない:http://rextester.com/KNJGP9315
// C# result : Hq3BJmupqU6KuvJQ3aoPvQfopOoAaD0RGoFCIDj6U9uIR%2BJloaS2X7klHSfwhptEuoEz5iPeRNbJnwZmOfM1Aw%3D%3D
EDIT:次のように
私のC#トリプルDESの設定は次のとおりです。
モード= CBC
パディング=ゼロ
私はいくつかの設定や何かを逃したと思う。どんな助けもできます!
それは誰かがに戻って来て助けにはなりませんこの質問は1年ですべてのC#コードが欠落していて、そこに唯一のヒントがあるのは死んだリンクですか?質問自体には、コードを含む質問の詳細をすべて保管してください。 –