59 lines
1.5 KiB
PHP
59 lines
1.5 KiB
PHP
<?php
|
|
/**
|
|
* Zip AI - Utils.
|
|
*
|
|
* This file contains all the utility functions of Zip AI.
|
|
* Utilities manipulate data and perform actions that are not directly related to the library.
|
|
*
|
|
* @package zip-ai
|
|
*/
|
|
|
|
namespace ZipAI\Classes;
|
|
|
|
// Exit if accessed directly.
|
|
if ( ! defined( 'ABSPATH' ) ) {
|
|
exit;
|
|
}
|
|
|
|
/**
|
|
* The Utils Class.
|
|
*/
|
|
class Utils {
|
|
/**
|
|
* Encrypt data using base64.
|
|
*
|
|
* @param string $input The input string which needs to be encrypted.
|
|
* @since 1.0.0
|
|
* @return string The encrypted string.
|
|
*/
|
|
public static function encrypt( $input ) {
|
|
// If the input is empty or not a string, then abandon ship.
|
|
if ( empty( $input ) || ! is_string( $input ) ) {
|
|
return '';
|
|
}
|
|
|
|
// Encrypt the input and return it.
|
|
$base_64 = base64_encode( $input ); // phpcs:ignore WordPress.PHP.DiscouragedPHPFunctions.obfuscation_base64_encode
|
|
$encode = rtrim( $base_64, '=' );
|
|
return $encode;
|
|
}
|
|
|
|
/**
|
|
* Decrypt data using base64.
|
|
*
|
|
* @param string $input The input string which needs to be decrypted.
|
|
* @since 1.0.0
|
|
* @return string The decrypted string.
|
|
*/
|
|
public static function decrypt( $input ) {
|
|
// If the input is empty or not a string, then abandon ship.
|
|
if ( empty( $input ) || ! is_string( $input ) ) {
|
|
return '';
|
|
}
|
|
|
|
// Decrypt the input and return it.
|
|
$base_64 = $input . str_repeat( '=', strlen( $input ) % 4 );
|
|
$decode = base64_decode( $base_64 ); // phpcs:ignore WordPress.PHP.DiscouragedPHPFunctions.obfuscation_base64_decode
|
|
return $decode;
|
|
}
|
|
}
|