function _openid_hmac

Same name and namespace in other branches
  1. 7.x drupal-7.x/modules/openid/openid.inc \_openid_hmac()
1 call to _openid_hmac()
_openid_signature in drupal-6.x/modules/openid/openid.inc
Sign certain keys in a message

Archivo

drupal-6.x/modules/openid/openid.inc, line 246
OpenID utility functions.

Código

function _openid_hmac($key, $text) {
  if (strlen($key) > OPENID_SHA1_BLOCKSIZE) {
    $key = _openid_sha1($key, true);
  }

  $key = str_pad($key, OPENID_SHA1_BLOCKSIZE, chr(0x00));
  $ipad = str_repeat(chr(0x36), OPENID_SHA1_BLOCKSIZE);
  $opad = str_repeat(chr(0x5c), OPENID_SHA1_BLOCKSIZE);
  $hash1 = _openid_sha1(($key ^ $ipad) . $text, true);
  $hmac = _openid_sha1(($key ^ $opad) . $hash1, true);

  return $hmac;
}