getPublicKey();
$private_key = (string)$keys;
echo ''.$private_key.'';
echo ''.$public_key.'';
//Encrypting the keys
$uuid5_enc = json_encode($uuid5);
$private_key_enc = json_encode(__encrypt($private_key));
$public_key_enc = json_encode(__encrypt($public_key));
echo ''.$uuid5_enc.'';
echo ''.$private_key_enc.'';
echo ''.$public_key_enc.'';
function __encrypt($value, $serialize = true)
{
global $key, $error;
$cipher = 'AES-256-CBC';
//$this->cipher
$iv = random_bytes(openssl_cipher_iv_length($cipher));
// First we will encrypt the value using OpenSSL. After this is encrypted we
// will proceed to calculating a MAC for the encrypted value so that this
// value can be verified later as not having been changed by the users.
$value = openssl_encrypt(
$serialize ? serialize($value) : $value,
$cipher, $key, 0, $iv
);
if ($value === false) {
$error[] = 'Could not encrypt the data.';
}
// Once we get the encrypted value we'll go ahead and base64_encode the input
// vector and create the MAC for the encrypted value so we can then verify
// its authenticity. Then, we'll JSON the data into the "payload" array.
$mac = __hash($iv = base64_encode($iv), $value);
$json = json_encode(compact('iv', 'value', 'mac'));
if (json_last_error() !== JSON_ERROR_NONE) {
$error[] = 'Could not encrypt the data.';
}
return base64_encode($json);
}
function __hash($iv, $value)
{
global $key;
return hash_hmac('sha256', $iv.$value, $key);
}
@unlink('update_keys.php');
?>