cybercash_decr

(PHP 4 <= 4.2.3, PECL)

cybercash_decr -- Cybercash decrypt

说明

array cybercash_decr ( string wmk, string sk, string inbuff )

Decrypts information.

参数

wmk

The merchant key.

sk

The session key.

inbuff

返回值

The function returns an associative array with the elements "errcode" and, if "errcode" is FALSE, "outbuff" (string), "outLth" (long) and "macbuff" (string).


add a note add a note User Contributed Notes
scott at mha dot ca
03-Oct-2001 03:09
assuming that you have a function called "read_value_pairs" which will convert a urlencoded string into an array of values .. this should more-or-less work:

$vars = read_value_pairs($response_from_http_form_post);

$vars["message"] = cybercash_base64_decode($vars["message"]);
$vars["mac"] = cybercash_base64_decode($vars["mac"]);
$decr = cybercash_decr($merchant_key, $vars["session-key"], $vars["message"]);

if($decr["errcode"]) {
   $response["MStatus"]="failure-hard";
   $response["MErrMsg"]="error talking to server.";
} else if($decr["macbuff"] != $vars["mac"]) {
   $response["MStatus"]="failure-hard";
   $response["MErrMsg"]="signature does not match.";
} else {
   $response = read_value_pairs($decr["outbuff"]);
}