2

public.key と private.key の両方があり、両方のファイルに文字列キーが含まれています。PHPで暗号化と復号化を実装しましたが、以下のコードを追加してください。

今、私はphpで実装するのと同じ方法でc#(暗号化と復号化)で同じことをしたいです(方法はopenssl_public_encryptメソッドである必要があります-それ以外の場合、その暗号化メソッドが一致しなかった場合、最終的にこの暗号化値をポストリクエストとして送信したためです私の暗号化値にいくつかのパラメーターが欠落しているというエラーが発生するphpでの方法-つまり、暗号化アルゴリズムが正しくないことを意味します)

私はboncycastle.cryptoを試しましたが、アルゴは違うと思います。

これはphpコードです - >

$sensitiveData = $this->merchantcode.'|'.$order_id.'|'.$amountInc.'|'.$this->returnurl;
$public_key ="uuEks4FXTiLU2obIpTNIpqhjgiUhtjW4Si8cKLoT7RThyOvUadsgYWejLg2i0BVz+
           QC6F7pilEfaVSL/UgGNeNdMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCW8KV72IMdhE/wIDAQAB";

 $public_key_splitted = wordwrap($public_key, 64, "\n", true); 

$publicKey = <<<EOD
-----BEGIN PUBLIC KEY-----
$public_key_splitted
-----END PUBLIC KEY-----
EOD;

$encrypted = '';
if (!openssl_public_encrypt($sensitiveData, $encrypted, $publicKey)) 
die('Failed to encrypt data'); 
$encryptedData = base64_encode($encrypted);

C#で同じ機能を実装する必要がありますいくつかの解決策を教えてください

ありがとうございました

4

0 に答える 0