RobRichards\XMLSecLibs\XMLSecurityKey::decryptMcrypt PHP Method

decryptMcrypt() private method

Decrypts the given data (string) using the mcrypt-extension
private decryptMcrypt ( string $data ) : string
$data string
return string
    private function decryptMcrypt($data)
    {
        $td = mcrypt_module_open($this->cryptParams['cipher'], '', $this->cryptParams['mode'], '');
        $iv_length = mcrypt_enc_get_iv_size($td);
        $this->iv = substr($data, 0, $iv_length);
        $data = substr($data, $iv_length);
        mcrypt_generic_init($td, $this->key, $this->iv);
        $decrypted_data = mdecrypt_generic($td, $data);
        mcrypt_generic_deinit($td);
        mcrypt_module_close($td);
        if ($this->cryptParams['mode'] == MCRYPT_MODE_CBC) {
            $dataLen = strlen($decrypted_data);
            $paddingLength = substr($decrypted_data, $dataLen - 1, 1);
            $decrypted_data = substr($decrypted_data, 0, $dataLen - ord($paddingLength));
        }
        return $decrypted_data;
    }