Token Signature Verification ErrorResloved

This commit is contained in:
velz 2019-04-27 12:58:49 +05:30
parent 801016222f
commit ad3ca5cadc
6 changed files with 55 additions and 52 deletions

View File

@ -546,7 +546,7 @@ defined('PDPURCHASEBILLWISEID') OR define('PDPURCHASEBILLWISEID','pbw_id');
defined('PDPURCHASEBILLWISECHILD') OR define('PDPURCHASEBILLWISECHILD','t_pd_purchase_billwise_child');
defined('PDPURCHASEBILLWISECHILDID') OR define('PDPURCHASEBILLWISECHILDID','pbwc_id');
defined('PDMIS') OR define('PDMIS','PD_MIS');

View File

@ -2,9 +2,11 @@
if(ENVIRONMENT == 'development' || ENVIRONMENT == 'testing')
{
/* public key for encrypt AWS JWT SINE_EDGE_USER_POOL_ID_TOKEN
*/
$config['jwt_public_key_sineedge_dev'] = '-----BEGIN PUBLIC KEY-----
$config['jwt_public_key_sineedge'] = '-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqTsyy4r3nrjumED4To7w
r1rfjMEzL+hcF8OwGm89aHoEzKLZqr12uQw3eK7tVV97QV8aYOi0zUinHlOVx1PM
Dgik5jW8aCBvGM5S6PAZXn3fj59HYtKL0HIQ1cxaoIUVXjRHD/QkcCEZuG5dIxij
@ -14,9 +16,11 @@ eq0HukzvikhFNglSw5GV0pK0syZxvu/ERMg3ja4r9an8fMayVS2YpybtRl6CCCVP
RwIDAQAB
-----END PUBLIC KEY-----';
/* public key for encrypt AWS JWT LENDER_USER_POOL_ID_TOKEN
*/
$config['jwt_public_key_lender_dev'] = '-----BEGIN PUBLIC KEY-----
$config['jwt_public_key_lender'] = '-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAkvWF8GBAVs77bKzpOtnu
mBGQ9kC11Pqw64avOsTE8T0mEbPWCSedqP8ShZtoFRUnZbfCVYcYPkvl+Gx5nxrY
OvrlKxtVVbrcifuKJJ/qjSSUZucQVX1aeWjYofteevcPjJxa5JEQWCjRSeblbbit
@ -28,7 +32,7 @@ DwIDAQAB
/* public key for encrypt AWS JWT VENDOR_USER_POOL_ID_TOKEN
*/
$config['jwt_public_key_vendor_dev'] = '-----BEGIN PUBLIC KEY-----
$config['jwt_public_key_vendor'] = '-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7da6/Uc4mUyLJlSptAlU
/h2R4MJqFiN1nGUQ8IKf2peOsZGL+M5i1oc7eDvW0xFrH/L12Yf8Qp6bLqaYo9Rw
7T/DucgSh53/eXXmRdDBWUHZH9B6oCYc+rU9nrVPoavtrkKhWQ0A9MP9ii9sYpdZ
@ -38,7 +42,9 @@ TbScH7bQtVAEQTaHpnMpDMT1dPDk1f3IRhyJ0Q2y1h9ZOKBj4kK3EFWw80ccBCq7
rwIDAQAB
-----END PUBLIC KEY-----';
$config['sine_egde_pool_id'] = 'ap-south-1_qQ85yQZJO';
$config['lender_pool_id'] = 'ap-south-1_hFiGyr1Gw';
$config['vendor_pool_id'] = 'ap-south-1_K57yPaWxV';
/*Generated token will expire in 1 minute for sample code
* Increase this value as per requirement for production
@ -46,6 +52,13 @@ rwIDAQAB
$config['token_timeout'] = 1;
$config['authorization_key'] = 'sparqvenba2018';
}else if(ENVIRONMENT == 'prod')
{
}
/* End of file jwt.php */
/* Location: ./application/config/jwt.php */

View File

@ -78,6 +78,10 @@ else if(ENVIRONMENT == 'testing')
{
$active_group = 'test';
}
else if(ENVIRONMENT == 'production')
{
$active_group = 'prod';
}
$query_builder = TRUE;
@ -128,24 +132,3 @@ $db['test'] = array(
'save_queries' => TRUE
);
$db['prod'] = array(
'dsn' => '',
'hostname' => 'apollodec.com',
'username' => 'apollod4_DEV',
'password' => 'apollo1234',
'database' => 'apollod4_ApolloDECDev',
'dbdriver' => 'mysqli',
'dbprefix' => '',
'pconnect' => FALSE,
'db_debug' => (ENVIRONMENT !== 'production'),
'cache_on' => FALSE,
'cachedir' => '',
'char_set' => 'utf8',
'dbcollat' => 'utf8_general_ci',
'swap_pre' => '',
'encrypt' => FALSE,
'compress' => FALSE,
'stricton' => FALSE,
'failover' => array(),
'save_queries' => TRUE
);

View File

@ -732,8 +732,8 @@ class PD_Controller extends REST_Controller {
$msg = "OTP for starting your personal discussions with the verification officer is ".$OTP.".Pls share this only when the officer has reached your place in person.";
$no = (string)$pd_details['mobile_no'];
unset($pd_details['mobile_no']);
//$pd_details['OTP'] = $OTP;
$pd_details['OTP'] = '123456';
$pd_details['OTP'] = $OTP;
//$pd_details['OTP'] = '123456';
// $client = new \GuzzleHttp\Client();
@ -4860,7 +4860,7 @@ class PD_Controller extends REST_Controller {
if(count($rec))
{
$temp_data = json_decode($rec[0]['json'],true);
// print_r($temp_data);die();
foreach($temp_data['companies'] as $company)
{

View File

@ -57,7 +57,7 @@ class JWT
throw new UnexpectedValueException('Invalid segment encoding');
}
//print_r($header);die;
$keyid = $header->kid;
if (null === $payload = JWT::jsonDecode(JWT::urlsafeB64Decode($bodyb64))) {
//if you don't want to disclose more details
@ -65,7 +65,7 @@ class JWT
throw new UnexpectedValueException('Invalid segment encoding');
}
//print_r($cryptob64);die;
//print_r($payload);die;
$signature = JWT::urlsafeB64Decode($cryptob64);
//print_r($sig);die;
if ($verify) {
@ -75,7 +75,7 @@ class JWT
//throw new DomainException('Empty algorithm');
}
if ($signature != JWT::aws_sign("$headb64.$bodyb64", $signature, $header->alg)) {
if ($signature != JWT::aws_sign("$headb64.$bodyb64", $signature, $header->alg,$payload)) {
throw new UnexpectedValueException('Signature verification failed');
}
}
@ -152,34 +152,41 @@ class JWT
* @return string An True or False
* @throws DomainException Unsupported algorithm was specified
*/
public static function aws_sign($head_body, $signature, $alg)
public static function aws_sign($head_body, $signature, $alg, $payload)
{
$headers['From'] = 1;
$headers = getallheaders();
$CI =& get_instance();
$jwtkey = '';
if (empty(static::$supported_algs[$alg])) {
throw new DomainException('Algorithm not supported');
}
if(array_key_exists("From",$headers)){
if($headers['From'] ==2)
//print_r($payload->iss);
$pool_id = explode('/', $payload->iss);
//print_r($pool_id[3]);
if(array_key_exists('3',$pool_id))
{
$jwtkey = $CI->config->item('jwt_public_key_lender_dev');
}else if($headers['From'] !='' && $headers['From'] ==3)
{
$jwtkey = $CI->config->item('jwt_public_key_vendor_dev');
}else if($headers['From']!='' && $headers['From'] == 1)
{
$jwtkey = $CI->config->item('jwt_public_key_sineedge_dev');
}else{
$jwtkey = '';
if($pool_id[3] == $CI->config->item('sine_egde_pool_id'))
{
$jwtkey = $CI->config->item('jwt_public_key_sineedge');
}else if($pool_id[3] == $CI->config->item('lender_pool_id'))
{
$jwtkey = $CI->config->item('jwt_public_key_lender');
}else if($pool_id[3] == $CI->config->item('vendor_pool_id'))
{
$jwtkey = $CI->config->item('jwt_public_key_vendor');
}else{
$jwtkey = '';
}
}
}else
{
$jwtkey = $CI->config->item('jwt_public_key_sineedge_dev');
}
else
{
throw new DomainException('Pool Informatin Not Available');
}
list($function, $algorithm) = static::$supported_algs[$alg];

View File

@ -307,7 +307,7 @@ class PDALERTS
$logger->error("Mailer Error:" ,array($mail->ErrorInfo));
} else {
$logger->error("Mailer Send:" ,array('mail ID' => $lender_email,'Status' => 'SEND'));
$logger->info("Mailer Send:" ,array('mail ID' => $lender_email,'Status' => 'SEND'));
}
}