protected function encrypt($data)
    {
        $salt = random_bytes(16);

        $salted = hash('sha512', $this->key . $salt, true);
        $key    = substr($salted, 0, 32);
        $iv     = substr($salted, 32, 16);

        $encryptedData = openssl_encrypt($data, 'AES-256-CBC', $key, OPENSSL_RAW_DATA, $iv);
        return base64_encode($salt . $encryptedData);
    }
protected function encrypt($data)
    {
        $salt = random_bytes(16);

        $salted = hash('sha512', $this->key . $salt, true);
        $key    = substr($salted, 0, 32);
        $iv     = substr($salted, 32, 16);

        $encryptedData = openssl_encrypt($data, 'AES-256-CBC', $key, OPENSSL_RAW_DATA, $iv);
        return base64_encode($salt . $encryptedData);
    }
protected function encrypt ( $ data ) { $ salt = random_bytes ( 16 ) ; $ salted = hash ( 'sha512' , $ this -> key . $ salt , true ) ; $ key = substr ( $ salted , 0 , 32 ) ; $ iv = substr ( $ salted , 32 , 16 ) ; $ encryptedData = openssl_encrypt ( $ data , 'AES-256-CBC' , $ key , OPENSSL_RAW_DATA , $ iv ) ; return base64_encode ( $ salt . $ encryptedData ) ; }
Encrypt session data

@param  string $data Session data
@return string
Encrypt session data