/** * return JWT Signature Base String * * @return string Signature Base String */ public function getSignatureBaseString($payload_is_array = false) { $token = Akita_OpenIDConnect_Util_Base64::urlEncode(Akita_OpenIDConnect_Util_Json::encode($this->_header)) . "."; if ($payload_is_array) { $token .= Akita_OpenIDConnect_Util_Base64::urlEncode(Akita_OpenIDConnect_Util_Json::encode($this->_payload)); } else { $token .= Akita_OpenIDConnect_Util_Base64::urlEncode($this->_payload); } return $token; }
public function setCodeHash($authorizationCodeString) { // bit : 256/384/512 if (isset($this->_header['alg']) && $this->_header['alg'] != 'none') { $bit = substr($this->_header['alg'], 2, 3); } else { // TODO: Error case. throw exception??? $bit = '256'; } $len = (int) $bit / 16; $this->_payload['c_hash'] = Akita_OpenIDConnect_Util_Base64::urlEncode(substr(hash('sha' . $bit, $authorizationCodeString, true), 0, $len)); }
public function testUrlEncode() { $str = "1"; $enc_str = "MQ"; $enc = Akita_OpenIDConnect_Util_Base64::urlEncode($str); $this->assertEquals($enc_str, $enc); $str = "1234"; $enc_str = "MTIzNA"; $enc = akita_openidconnect_util_base64::urlEncode($str); $this->assertequals($enc_str, $enc); $str = "ABCDEFG"; $enc_str = "QUJDREVGRw"; $enc = akita_openidconnect_util_base64::urlEncode($str); $this->assertequals($enc_str, $enc); }