class LingotekOAuthSignatureMethod_MD5 in Lingotek Translation 7.4
Same name and namespace in other branches
- 7.7 lib/oauth-php/library/signature_method/LingotekOAuthSignatureMethod_MD5.php \LingotekOAuthSignatureMethod_MD5
- 7.5 lib/oauth-php/library/signature_method/LingotekOAuthSignatureMethod_MD5.php \LingotekOAuthSignatureMethod_MD5
- 7.6 lib/oauth-php/library/signature_method/LingotekOAuthSignatureMethod_MD5.php \LingotekOAuthSignatureMethod_MD5
Hierarchy
Expanded class hierarchy of LingotekOAuthSignatureMethod_MD5
File
- lib/
oauth-php/ library/ signature_method/ LingotekOAuthSignatureMethod_MD5.php, line 36
View source
class LingotekOAuthSignatureMethod_MD5 extends LingotekOAuthSignatureMethod {
public function name() {
return 'MD5';
}
/**
* Calculate the signature using MD5
* Binary md5 digest, as distinct from PHP's built-in hexdigest.
* This function is copyright Andy Smith, 2007.
*
* @param LingotekOAuthRequest request
* @param string base_string
* @param string consumer_secret
* @param string token_secret
* @return string
*/
function signature($request, $base_string, $consumer_secret, $token_secret) {
$s .= '&' . $request
->urlencode($consumer_secret) . '&' . $request
->urlencode($token_secret);
$md5 = md5($base_string);
$bin = '';
for ($i = 0; $i < strlen($md5); $i += 2) {
$bin .= chr(hexdec($md5[$i + 1]) + hexdec($md5[$i]) * 16);
}
return $request
->urlencode(base64_encode($bin));
}
/**
* Check if the request signature corresponds to the one calculated for the request.
*
* @param LingotekOAuthRequest request
* @param string base_string data to be signed, usually the base string, can be a request body
* @param string consumer_secret
* @param string token_secret
* @param string signature from the request, still urlencoded
* @return string
*/
public function verify($request, $base_string, $consumer_secret, $token_secret, $signature) {
$a = $request
->urldecode($signature);
$b = $request
->urldecode($this
->signature($request, $base_string, $consumer_secret, $token_secret));
// We have to compare the decoded values
$valA = base64_decode($a);
$valB = base64_decode($b);
// Crude binary comparison
return rawurlencode($valA) == rawurlencode($valB);
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
LingotekOAuthSignatureMethod_MD5:: |
public | function |
* Return the name of this signature
*
* Overrides LingotekOAuthSignatureMethod:: |
|
LingotekOAuthSignatureMethod_MD5:: |
function |
* Calculate the signature using MD5
* Binary md5 digest, as distinct from PHP's built-in hexdigest.
* This function is copyright Andy Smith, 2007.
*
* Overrides LingotekOAuthSignatureMethod:: |
||
LingotekOAuthSignatureMethod_MD5:: |
public | function |
* Check if the request signature corresponds to the one calculated for the request.
*
* Overrides LingotekOAuthSignatureMethod:: |