src/AESGCM.php
private static function decryptWithCryptoExtension($K, $key_length, $IV, $C, $A, $T, $tag_length = 128)
    {
        $cipher = \Crypto\Cipher::aes(\Crypto\Cipher::MODE_GCM, $key_length);
        $cipher->setTag($T);
        $cipher->setAAD($A);
        $cipher->setTagLength($tag_length / 8);

        return $cipher->decrypt($C, $K, $IV);
    }
private static function decryptWithCryptoExtension($K, $key_length, $IV, $C, $A, $T, $tag_length = 128)
    {
        $cipher = \Crypto\Cipher::aes(\Crypto\Cipher::MODE_GCM, $key_length);
        $cipher->setTag($T);
        $cipher->setAAD($A);
        $cipher->setTagLength($tag_length / 8);

        return $cipher->decrypt($C, $K, $IV);
    }
private static function decryptWithCryptoExtension ( $ K , $ key_length , $ IV , $ C , $ A , $ T , $ tag_length = 128 ) { $ cipher = \ Crypto \ Cipher :: aes ( \ Crypto \ Cipher :: MODE_GCM , $ key_length ) ; $ cipher -> setTag ( $ T ) ; $ cipher -> setAAD ( $ A ) ; $ cipher -> setTagLength ( $ tag_length / 8 ) ; return $ cipher -> decrypt ( $ C , $ K , $ IV ) ; }
@param string      $K          Key encryption key
@param string      $key_length Key length
@param string      $IV         Initialization vector
@param string|null $C          Data to encrypt (null for authentication)
@param string|null $A          Additional Authentication Data
@param string      $T          Tag
@param int         $tag_length Tag length

@return string
@param string $K Key encryption key @param string $key_length Key length @param string $IV Initialization vector @param string|null $C Data to encrypt ( null for authentication ) @param string|null $A Additional Authentication Data @param string $T Tag @param int $tag_length Tag length