You are here

public function sOAuthSignatureMethod_RSA_SHA1::build_signature in jQuery social stream 7

Same name and namespace in other branches
  1. 7.2 jquery_social_stream.js.inc \sOAuthSignatureMethod_RSA_SHA1::build_signature()

Build up the signature NOTE: The output of this function MUST NOT be urlencoded. the encoding is handled in sOAuthRequest when the final request is serialized

Parameters

sOAuthRequest $request:

sOAuthConsumer $consumer:

sOAuthToken $token:

Return value

string

Overrides sOAuthSignatureMethod::build_signature

File

./jquery_social_stream.js.inc, line 505
JS callbacks.

Class

sOAuthSignatureMethod_RSA_SHA1
The RSA-SHA1 signature method uses the RSASSA-PKCS1-v1_5 signature algorithm as defined in [RFC3447] section 8.2 (more simply known as PKCS#1), using SHA-1 as the hash function for EMSA-PKCS1-v1_5. It is assumed that the Consumer has provided its RSA…

Code

public function build_signature($request, $consumer, $token) {
  $base_string = $request
    ->get_signature_base_string();
  $request->base_string = $base_string;

  // Fetch the private key cert based on the request
  $cert = $this
    ->fetch_private_cert($request);

  // Pull the private key ID from the certificate
  $privatekeyid = openssl_get_privatekey($cert);

  // Sign using the key
  $ok = openssl_sign($base_string, $signature, $privatekeyid);

  // Release the key resource
  openssl_free_key($privatekeyid);
  return base64_encode($signature);
}