Advertisement
Guest User

CertCode

a guest
Jan 17th, 2015
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.67 KB | None | 0 0
  1. <?php
  2. $MY_KEY_FILE = "/home2/myusername/paypal/test-prvkey.pem";
  3. $MY_CERT_FILE = "/home2/myusername/paypal/test-pubcert.pem";
  4. $PAYPAL_CERT_FILE = "/home2/myusername/paypal/sandbox_cert.pem";
  5. $OPENSSL = "/usr/bin/openssl";
  6.  
  7. $form = array('cmd' => '_cart',
  8.         'add' => '1',
  9.         'business' => 'paypal-facilitator@domain.com',
  10.         'cert_id' => 'CERTIFICATEIDHERE',
  11.         'lc' => 'US',
  12.         'custom' => 'Test Photo',
  13.         'invoice' => '',
  14.         'currency_code' => 'USD',
  15.         'no_shipping' => '0',
  16.         'item_name' => 'Item Name',
  17.         'item_number' => 'Item Number',
  18.         'amount' => '25'
  19.     );
  20. global $encrypted;
  21. $encrypted = paypal_encrypt($form);
  22. function paypal_encrypt($hash)
  23. {
  24.     global $MY_KEY_FILE;
  25.     global $MY_CERT_FILE;
  26.     global $PAYPAL_CERT_FILE;
  27.     global $OPENSSL;
  28.     if (!file_exists($MY_KEY_FILE)) {
  29.         echo "ERROR: MY_KEY_FILE $MY_KEY_FILE not found\n";
  30.     }
  31.     if (!file_exists($MY_CERT_FILE)) {
  32.         echo "ERROR: MY_CERT_FILE $MY_CERT_FILE not found\n";
  33.     }
  34.     if (!file_exists($PAYPAL_CERT_FILE)) {
  35.         echo "ERROR: PAYPAL_CERT_FILE $PAYPAL_CERT_FILE not found\n";
  36.     }
  37.     $hash['bn']= 'StellarWebSolutions.PHP_EWP2';
  38.     $data = "";
  39.     foreach ($hash as $key => $value) {
  40.         if ($value != "") {
  41.             //echo "Adding to blob: $key=$value\n";
  42.             $data .= "$key=$value\n";
  43.         }
  44.     }
  45.     $openssl_cmd = "($OPENSSL smime -sign -signer $MY_CERT_FILE -inkey $MY_KEY_FILE " .
  46.                         "-outform der -nodetach -binary <<_EOF_\n$data\n_EOF_\n) | " .
  47.                         "$OPENSSL smime -encrypt -des3 -binary -outform pem $PAYPAL_CERT_FILE";
  48.     exec($openssl_cmd, $output, $error);
  49.     if (!$error) {
  50.         return implode("\n",$output);
  51.     } else {
  52.         return "ERROR: encryption failed";
  53.     }
  54. };
  55. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement