Find this useful? Enter your email to receive occasional updates for securing PHP code.

Signing you up...

Thank you for signing up!

PHP Decode

<?php namespace Drupal\rest_api_authentication; use Drupal\Component\Utility\Html;..

Decoded Output download

<?php 
 
 
namespace Drupal\rest_api_authentication; 
 
use Drupal\Component\Utility\Html; 
use Drupal\user\Entity\User; 
use Drupal\rest_api_authentication\DBQueries; 
class API_Authentication_OAuth 
{ 
    static function validate_api_request($BB) 
    { 
        $DT = array(); 
        $DT["user"] = null; 
        $kl = ''; 
        if (!(!empty(\Drupal::config("rest_api_authentication.settings")->get("custom_header")) || \Drupal::config("rest_api_authentication.settings")->get("custom_header") != null)) { 
            goto Y2; 
        } 
        $kl = $BB->headers->get(\Drupal::config("rest_api_authentication.settings")->get("custom_header")); 
        Y2: 
        if (!($BB->headers->get("AUTHORIZATION") != null || $BB->headers->get("AUTHORISATION") != null)) { 
            goto lW; 
        } 
        $kl = $BB->headers->get("AUTHORIZATION") != null ? $BB->headers->get("AUTHORIZATION") : $BB->headers->get("AUTHORISATION"); 
        lW: 
        $kl = trim(Html::escape($kl)); 
        if (!(empty($kl) || $kl == '')) { 
            goto Mf; 
        } 
        $DT = array("status" => "error", "http_code" => "401", "error" => "MISSING_AUTHORIZATION_HEADER", "error_description" => "Authorization header not received."); 
        return $DT; 
        Mf: 
        if (preg_match("/\Bearer\b/", $kl)) { 
            goto XL; 
        } 
        $DT = array("status" => "error", "http_code" => "405", "error" => "INVALID_AUTHORIZATION_HEADER_TOKEN_TYPE", "error_description" => "Authorization header must be the type of Bearer Token."); 
        return $DT; 
        XL: 
        $lU = explode(" ", $kl); 
        $kl = $lU[1]; 
        if ($kl != null) { 
            goto Nf; 
        } 
        $DT["status"] = "error"; 
        $DT["http_code"] = "404"; 
        $DT["error"] = "TOKEN_NOT_FOUND"; 
        $DT["message"] = "Incomplete Request. Token Not found."; 
        goto gg; 
        Nf: 
        $user = DBQueries::get_user_id_from_access_token($kl); 
        if (!empty($user)) { 
            goto Hu; 
        } 
        $DT = array("status" => "error", "http_code" => "401", "error" => "INVALID_ACCESS_TOKEN", "error_description" => "Invalid Access Token."); 
        return $DT; 
        Hu: 
        $hx = time(); 
        $gG = \Drupal::config("rest_api_authentication.settings")->get("token_expiry"); 
        $gG = empty($gG) ? 3600 + $user["access_token_request_time"] : $user["access_token_request_time"] + $gG * 60; 
        if (!($hx - $gG >= 0)) { 
            goto mK; 
        } 
        $DT = array("status" => "error", "http_code" => "401", "error" => "TOKEN_EXPIRED", "error_description" => "Invalid request: Token Expired."); 
        return $DT; 
        mK: 
        $user = User::load($user["user_id_val"]); 
        $DT["status"] = "SUCCESS"; 
        $DT["user"] = $user; 
        gg: 
        return $DT; 
    } 
} 
 ?>

Did this file decode correctly?

Original Code

<?php


namespace Drupal\rest_api_authentication;

use Drupal\Component\Utility\Html;
use Drupal\user\Entity\User;
use Drupal\rest_api_authentication\DBQueries;
class API_Authentication_OAuth
{
    static function validate_api_request($BB)
    {
        $DT = array();
        $DT["\165\163\x65\162"] = null;
        $kl = '';
        if (!(!empty(\Drupal::config("\162\145\x73\164\x5f\x61\160\x69\x5f\x61\x75\164\x68\x65\156\164\151\x63\x61\164\x69\157\156\x2e\x73\145\x74\x74\x69\x6e\147\163")->get("\x63\165\x73\164\157\155\137\150\x65\141\144\x65\162")) || \Drupal::config("\x72\145\163\164\x5f\141\x70\x69\x5f\x61\x75\x74\x68\145\156\164\x69\143\x61\164\151\157\x6e\56\x73\145\x74\x74\x69\x6e\147\x73")->get("\143\x75\x73\x74\157\x6d\137\150\145\141\144\x65\x72") != null)) {
            goto Y2;
        }
        $kl = $BB->headers->get(\Drupal::config("\162\x65\x73\x74\x5f\x61\x70\151\137\x61\x75\164\x68\x65\156\x74\x69\x63\x61\x74\151\x6f\x6e\56\163\145\164\x74\x69\156\x67\x73")->get("\143\x75\x73\164\157\x6d\137\x68\145\x61\x64\x65\162"));
        Y2:
        if (!($BB->headers->get("\x41\x55\124\110\117\x52\x49\x5a\x41\124\x49\117\x4e") != null || $BB->headers->get("\x41\125\x54\x48\117\122\x49\123\x41\x54\x49\x4f\116") != null)) {
            goto lW;
        }
        $kl = $BB->headers->get("\x41\125\x54\110\117\x52\x49\132\x41\x54\111\117\116") != null ? $BB->headers->get("\x41\x55\124\110\x4f\122\x49\x5a\101\x54\111\x4f\x4e") : $BB->headers->get("\x41\x55\124\x48\117\122\x49\x53\101\124\x49\117\x4e");
        lW:
        $kl = trim(Html::escape($kl));
        if (!(empty($kl) || $kl == '')) {
            goto Mf;
        }
        $DT = array("\x73\x74\141\164\165\163" => "\145\x72\x72\x6f\162", "\150\164\164\x70\137\143\157\144\x65" => "\x34\60\61", "\145\x72\162\x6f\x72" => "\x4d\111\123\123\x49\116\107\x5f\x41\x55\124\110\117\x52\x49\x5a\101\x54\111\117\116\137\x48\x45\x41\x44\105\122", "\145\162\x72\157\162\137\144\x65\163\x63\x72\151\160\164\x69\157\156" => "\x41\165\164\150\157\162\151\172\x61\x74\151\157\x6e\40\x68\145\141\144\145\x72\40\156\x6f\164\40\x72\x65\143\x65\151\166\145\x64\x2e");
        return $DT;
        Mf:
        if (preg_match("\57\x5c\102\145\x61\x72\x65\162\x5c\x62\57", $kl)) {
            goto XL;
        }
        $DT = array("\x73\x74\141\x74\165\163" => "\145\x72\162\157\162", "\150\164\x74\160\x5f\x63\x6f\144\x65" => "\64\60\x35", "\145\x72\162\x6f\162" => "\111\116\x56\x41\114\111\x44\137\101\125\124\110\117\x52\x49\132\x41\124\x49\x4f\x4e\x5f\x48\105\101\104\x45\122\x5f\x54\117\113\105\x4e\x5f\x54\x59\120\105", "\x65\162\x72\x6f\162\137\144\x65\x73\143\162\x69\160\x74\x69\157\156" => "\101\x75\x74\x68\157\162\x69\172\141\164\x69\x6f\156\x20\x68\145\x61\x64\145\x72\x20\155\x75\x73\x74\x20\142\x65\40\164\x68\145\40\164\x79\160\x65\40\157\146\40\x42\145\141\x72\145\x72\x20\x54\x6f\153\145\156\56");
        return $DT;
        XL:
        $lU = explode("\x20", $kl);
        $kl = $lU[1];
        if ($kl != null) {
            goto Nf;
        }
        $DT["\163\164\141\164\x75\x73"] = "\145\162\x72\157\x72";
        $DT["\x68\164\164\x70\137\143\x6f\144\145"] = "\x34\x30\x34";
        $DT["\x65\162\162\x6f\x72"] = "\x54\117\x4b\105\116\x5f\x4e\117\x54\137\106\117\x55\x4e\104";
        $DT["\x6d\x65\x73\163\x61\x67\x65"] = "\111\156\x63\157\155\x70\154\x65\164\145\40\122\x65\x71\165\x65\163\164\x2e\x20\124\157\153\145\156\x20\x4e\157\164\40\146\157\x75\156\144\x2e";
        goto gg;
        Nf:
        $user = DBQueries::get_user_id_from_access_token($kl);
        if (!empty($user)) {
            goto Hu;
        }
        $DT = array("\163\164\141\164\165\x73" => "\x65\162\162\x6f\x72", "\150\164\164\160\137\x63\x6f\x64\145" => "\x34\x30\61", "\145\x72\162\x6f\162" => "\x49\x4e\126\101\114\111\x44\137\x41\103\x43\x45\x53\x53\x5f\x54\x4f\113\105\x4e", "\145\162\162\157\162\137\144\145\x73\143\162\151\x70\164\151\157\156" => "\111\156\166\x61\x6c\x69\x64\40\101\143\143\x65\163\x73\x20\x54\157\x6b\x65\x6e\56");
        return $DT;
        Hu:
        $hx = time();
        $gG = \Drupal::config("\x72\145\163\164\137\141\x70\x69\137\x61\165\164\x68\x65\156\x74\x69\143\x61\x74\x69\157\156\56\163\145\164\x74\x69\156\x67\163")->get("\x74\157\x6b\x65\156\x5f\x65\x78\160\x69\x72\x79");
        $gG = empty($gG) ? 3600 + $user["\141\x63\143\145\163\x73\x5f\164\x6f\x6b\145\156\137\x72\x65\x71\x75\145\163\164\137\164\x69\155\x65"] : $user["\x61\143\143\x65\163\163\137\x74\x6f\153\145\156\x5f\162\145\x71\x75\145\x73\x74\137\164\x69\x6d\x65"] + $gG * 60;
        if (!($hx - $gG >= 0)) {
            goto mK;
        }
        $DT = array("\163\164\141\164\x75\163" => "\145\162\162\x6f\x72", "\150\164\x74\x70\137\143\x6f\144\x65" => "\64\x30\61", "\x65\x72\x72\x6f\162" => "\124\x4f\113\105\116\137\105\130\120\x49\x52\x45\x44", "\x65\162\162\x6f\x72\137\144\x65\163\x63\162\x69\160\x74\x69\x6f\x6e" => "\111\156\x76\x61\154\x69\144\40\162\x65\x71\x75\145\163\x74\x3a\x20\124\157\x6b\145\x6e\40\105\170\160\151\162\145\x64\56");
        return $DT;
        mK:
        $user = User::load($user["\x75\163\145\x72\137\151\x64\x5f\166\x61\154"]);
        $DT["\163\164\141\x74\165\163"] = "\x53\125\x43\x43\x45\123\123";
        $DT["\165\x73\145\162"] = $user;
        gg:
        return $DT;
    }
}

Function Calls

None

Variables

None

Stats

MD5 dcdcb54baee4a41d82a2175ee6bb3a76
Eval Count 0
Decode Time 90 ms