public function decrypt($cipher_string, $cipher_key)
    {
        $cipher_key = $this->_genKey($cipher_key);

        $hmacSize = 64;
        $hmacString = mb_substr($cipher_string, 0, $hmacSize, "8bit");
        $cipher_text = mb_substr($cipher_string, $hmacSize, null, "8bit");

        if(!$this->validHmac($hmacString, $this->_genHmac($cipher_text, $cipher_key)))
            return false;

        $ivSize = openssl_cipher_iv_length('AES-256-CBC');
        $iv = mb_substr($cipher_text, 0, $ivSize, '8bit');
        $cipher_text = mb_substr($cipher_text, $ivSize, null, '8bit');

        return openssl_decrypt($cipher_text, 'AES-256-CBC', $cipher_key, OPENSSL_RAW_DATA, $iv);
    }
public function decrypt($cipher_string, $cipher_key)
    {
        $cipher_key = $this->_genKey($cipher_key);

        $hmacSize = 64;
        $hmacString = mb_substr($cipher_string, 0, $hmacSize, "8bit");
        $cipher_text = mb_substr($cipher_string, $hmacSize, null, "8bit");

        if(!$this->validHmac($hmacString, $this->_genHmac($cipher_text, $cipher_key)))
            return false;

        $ivSize = openssl_cipher_iv_length('AES-256-CBC');
        $iv = mb_substr($cipher_text, 0, $ivSize, '8bit');
        $cipher_text = mb_substr($cipher_text, $ivSize, null, '8bit');

        return openssl_decrypt($cipher_text, 'AES-256-CBC', $cipher_key, OPENSSL_RAW_DATA, $iv);
    }
public function decrypt ( $ cipher_string , $ cipher_key ) { $ cipher_key = $ this -> _genKey ( $ cipher_key ) ; $ hmacSize = 64 ; $ hmacString = mb_substr ( $ cipher_string , 0 , $ hmacSize , "8bit" ) ; $ cipher_text = mb_substr ( $ cipher_string , $ hmacSize , null , "8bit" ) ; if ( ! $ this -> validHmac ( $ hmacString , $ this -> _genHmac ( $ cipher_text , $ cipher_key ) ) ) return false ; $ ivSize = openssl_cipher_iv_length ( 'AES-256-CBC' ) ; $ iv = mb_substr ( $ cipher_text , 0 , $ ivSize , '8bit' ) ; $ cipher_text = mb_substr ( $ cipher_text , $ ivSize , null , '8bit' ) ; return openssl_decrypt ( $ cipher_text , 'AES-256-CBC' , $ cipher_key , OPENSSL_RAW_DATA , $ iv ) ; }
Decrypts a string using a secret

@param   string      $cipher_string          Ciphered string
@param   string      $cipher_key             Secret used to encrypt

@return string
Decrypts a string using a secret