public static byte[] hmacSha256(byte[] hMacKeyParam, byte[] encryptedDataParam) {
        try {
            // hmac
            Mac hmac = Mac.getInstance(HMAC_ALGO);
            hmac.init(new SecretKeySpec(hMacKeyParam, HMAC_ALGO));

            return hmac.doFinal(encryptedDataParam);
        }
        //Changed for Java 1.6 compatibility...
        catch (NoSuchAlgorithmException except) {
            throw new FluidClientException("Unable to create HMAC from key. " + except.getMessage(), except,
                    FluidClientException.ErrorCode.AES_256);
        }
        catch (InvalidKeyException except) {
            throw new FluidClientException("Unable to create HMAC from key. " + except.getMessage(), except,
                    FluidClientException.ErrorCode.AES_256);
        }
    }
public static byte[] hmacSha256(byte[] hMacKeyParam, byte[] encryptedDataParam) {
        try {
            
            Mac hmac = Mac.getInstance(HMAC_ALGO);
            hmac.init(new SecretKeySpec(hMacKeyParam, HMAC_ALGO));

            return hmac.doFinal(encryptedDataParam);
        }
        
        catch (NoSuchAlgorithmException except) {
            throw new FluidClientException("Unable to create HMAC from key. " + except.getMessage(), except,
                    FluidClientException.ErrorCode.AES_256);
        }
        catch (InvalidKeyException except) {
            throw new FluidClientException("Unable to create HMAC from key. " + except.getMessage(), except,
                    FluidClientException.ErrorCode.AES_256);
        }
    }
public static byte [ ] hmacSha256 ( byte [ ] hMacKeyParam , byte [ ] encryptedDataParam ) { try { // hmac Mac hmac = Mac . getInstance ( HMAC_ALGO ) ; hmac . init ( new SecretKeySpec ( hMacKeyParam , HMAC_ALGO ) ) ; return hmac . doFinal ( encryptedDataParam ) ; } //Changed for Java 1.6 compatibility... catch ( NoSuchAlgorithmException except ) { throw new FluidClientException ( "Unable to create HMAC from key. " + except . getMessage ( ) , except , FluidClientException . ErrorCode . AES_256 ) ; } catch ( InvalidKeyException except ) { throw new FluidClientException ( "Unable to create HMAC from key. " + except . getMessage ( ) , except , FluidClientException . ErrorCode . AES_256 ) ; } }
Generates an HMAC from {@code encryptedDataParam}.

@param hMacKeyParam The symmetric key to use.
@param encryptedDataParam The encrypted data.
@return The HMAC result.
Generates an HMAC from { @code encryptedDataParam } .