function _openid_dh_xorsecret in Drupal 7
Same name and namespace in other branches
- 6 modules/openid/openid.inc \_openid_dh_xorsecret()
3 calls to _openid_dh_xorsecret()
- OpenIDTestCase::testOpenidDhXorsecret in modules/
openid/ openid.test - Test _openid_dh_xorsecret().
- openid_association in modules/
openid/ openid.module - Attempt to create a shared secret with the OpenID Provider.
- _openid_test_endpoint_associate in modules/
openid/ tests/ openid_test.module - OpenID endpoint; handle "associate" requests (see OpenID Authentication 2.0, section 8).
File
- modules/
openid/ openid.inc, line 519 - OpenID utility functions.
Code
function _openid_dh_xorsecret($shared, $secret) {
$dh_shared_str = _openid_dh_long_to_binary($shared);
$sha1_dh_shared = sha1($dh_shared_str, TRUE);
$xsecret = "";
for ($i = 0; $i < strlen($secret); $i++) {
$xsecret .= chr(ord($secret[$i]) ^ ord($sha1_dh_shared[$i]));
}
return $xsecret;
}