41 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			PHP
		
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			PHP
		
	
	
	
<?php
 | 
						|
require_once("./lib.php");
 | 
						|
@require_once("./config.inc.php");
 | 
						|
 | 
						|
// Check if the config succesfully loaded, or if the mandatory config fields are missing.
 | 
						|
if ( empty($config) || empty($config['key']) || empty($config['input']) ) {
 | 
						|
    echo "Please copy the config.sample.inc.php to config.inc.php and change the configuration to match your needs.";
 | 
						|
    exit(1);
 | 
						|
}
 | 
						|
 | 
						|
ini_set('memory_limit','1G');
 | 
						|
 | 
						|
function limitStringSize($str, $amount = 20) {
 | 
						|
    if (strlen($str) > $amount)
 | 
						|
        $str = substr($str, 0, $amount) . '...';
 | 
						|
    return $str;
 | 
						|
}
 | 
						|
 | 
						|
$kpc = new kpcrypt($config['key']);
 | 
						|
 | 
						|
echo "Key: " . $kpc->getKey() . " \n";
 | 
						|
 | 
						|
// Echo out the results
 | 
						|
$encryptedData = $kpc->encryptData($config['input'], 'AES-256-CBC', TRUE);
 | 
						|
 | 
						|
echo "Encrypted: " . limitStringSize($encryptedData);
 | 
						|
echo "\n";
 | 
						|
echo "Decrypted: " . limitStringSize($kpc->decryptData($encryptedData));
 | 
						|
echo "\n";
 | 
						|
echo "Peak Memory: " . memory_get_peak_usage() / 1024 / 1024 . "Mb"; // Check the memory in kb
 | 
						|
echo "\n\n";
 | 
						|
 | 
						|
// Calculate the string size increse
 | 
						|
$inputSize  = strlen($config['input']); // Bytes
 | 
						|
$outputSize = strlen($encryptedData); // Bytes
 | 
						|
 | 
						|
// Echo out sizing information
 | 
						|
echo "Sizeof input: "           . strlen($config['input']) . "\n"; // Bytes
 | 
						|
echo "Sizeof output:"           . strlen($encryptedData) . "\n"; // Bytes
 | 
						|
 | 
						|
echo "\n"; |