•  Home
  •  Dashboard
  •  Company
    • About Us
    • Blog
    • Careers
    • Contact Us
    • Data Centers
    • Looking Glass
    • Network
    • Reseller
  •  Hosting Services
    • Backup
    • Content Delivery Network
    • Colocation Hosting
    • Dedicated Hosting
    • DDoS Mitigation
    • IP Transit
    • Private Cloud
    • Wavelength
  •  Solutions
    • Ecommerce
    • Finance
    • Gaming
    • Hosting
    • Management
    • Security
    • System Integrator
  •  Support
    • Community
    • Knowledge Base
    • Open A Ticket
  •  USA & Canada: 800-933-1517
  •  International: 626-549-2801
  •  Email: sales@psychz.net
  • Services
    • Dedicated Servers
    • Colocation
    • Private Cloud
    • DDos Protection
    • IP Transit
    • CDN
    • Backup
  • Solutions
    • Ecommerce
    • Security
    • Gaming
    • Hosting
    • Management
    • Finance
    • System Integrator
  • Dashboard

Secure Token Integration For PHP

  • Home
  • Client
  • Knowledgebase
  • CDN
  • CDN Security
  • Secure Token Integration For PHP

Table Of Content

Related Articles

  • Secure Token Integration For PHP (Secondary)
  • Secure Token Integration For Python (Secondary)
  • Secure Token Integration For Python
  • CDN URL Token Authentication
  • Add Security Token
  • Security token intro
  • Add DDoS Exemption
  • Views: (2566)
  • Votes: (2)
Was this article helpful?
VOTE

Secure Token Integration For PHP

Publisher: Psychz Networks,  April 21,2021

The following article will help you to integrate secure token generated using a secret key in your PHP code. First, you need to login to the dashboard and enable Secure Token option for the desired location (domain). Once you enable Secure Token option, you can create a 'Secret Key' which will be then passed on to our backend. With this, you can generate your own tokens with md5 using the PHP script below. The newly generated URL then will hold all the necessary information which will match the Secure key saved at our backend and will allow access to the user.

Sample security token looks like

domain.com/?md5=Rbp0ZArvj3m3aOQNjo75Xg&
expires=1619082510

Once the security token is generated, you can use it in PHP code to create the URL token.

<?php
//$base_url = 'https://yourdomain.com'; // This is your CDN's base URL of the site, without the slash in the end
//$securityKey = 'token_security_key'; // Your security key used to create token using dashboard
//$locationpath = '/index.html'; // provide the path starting with the '/'

function securityToken( $base_url, $locationpath, $securityKey, $expires ='', $ip_addr=''){

// Set the time of expiry to one hour from the time of the creation
$expires = time() + 3600; // This parameter is optional and is up to your discretion define its expiration to the secure URL.

// If using IP validation
$ip_addr = "192.XXX.XX.XX";// Replace the IP address with the one used in the hash. This parameter is optional and is up to your discretion if you want to provide IP restrictions or not.

// Generate the token
if(!empty($expires))
{

// Generate the token with expiry
$hashableBase = $securityKey.$ip_addr.$locationpath.
$expires;
//here $ip_addr is optional
$token = md5($hashableBase, true);
$token = base64_encode($token);
$token = strtr($token, '+/', '-_');
$token = str_replace('=', '', $token);

// Generate the URL
$url = "https://$base_url{$locationpath}?md5={$token}&expires={$expires}";
}
else{

// Generate the token without expiry
$hashableBase = $securityKey.$ip_addr.$locationpath;
//here $ip_addr is optional
$token = md5($hashableBase, true);
$token = base64_encode($token);
$token = strtr($token, '+/', '-_');
$token = str_replace('=', '', $token);

// Generate the URL
$url = "https://$base_url{$locationpath}?md5={$token}";
}
return $url;
}

// Example usage:
// Returns: 'https://test.youdomain.com/index.
html?md5=AuiVJT4fw7frGmPDPuCzAg&expires=
31536000'
echo(securityToken('https://test.yo
udomain.com', '/index.html','super-secret-code','31536000','1.2.3.4'));
// Returns: 'https://test.youdomain.com/
index.html?md5=AuiVJT4fw7frGmPDPuCzAg'
echo(securityToken('https://test.yo
udomain.com', '/index.html',
'super-secret-code','',''));

?>

 

Hosting Services
  • Dedicated Hosting
  • Colocation Hosting
  • Backup
  • IP Transit
  • DDoS Mitigation
Support
  • Portal Login
  • Knowledgebase
  • Community
Company
  • About Us
  • Contact Us
  • Network
  • Data Centers
  • Looking Glass
  • Affiliates
  • Reseller
  • Blog
Policies
  • Privacy Policy
  • Acceptable Usage Policy
  • Terms and Conditions
  • Service Level Agreement
Company
  • Psychz Networks,
    A Profuse Solutions Company
    611 Wilshire Blvd #300
    Los Angeles,California 90017
    USA
  • US/Canada: 800-933-1517
  • International: 626-549-2801
Subscribe to Our Mailing List
* indicates required
Copyright © 2023 Psychz Networks, A Profuse Solutions Inc Company