public HMACT64(byte[] key){
  super("HMACT64");
  int length=Math.min(key.length,BLOCK_LENGTH);
  for (int i=0; i < length; i++) {
    ipad[i]=(byte)(key[i] ^ IPAD);
    opad[i]=(byte)(key[i] ^ OPAD);
  }
  for (int i=length; i < BLOCK_LENGTH; i++) {
    ipad[i]=IPAD;
    opad[i]=OPAD;
  }
  try {
    md5=MessageDigest.getInstance("MD5");
  }
 catch (  Exception ex) {
    throw new IllegalStateException(ex.getMessage());
  }
  engineReset();
}

public HMACT64 ( byte [ ] key ) { super ( "HMACT64" ) ; int length = Math . min ( key . length , BLOCK_LENGTH ) ; for ( int i = 0 ; i < length ; i ++ ) { ipad [ i ] = ( byte ) ( key [ i ] ^ IPAD ) ; opad [ i ] = ( byte ) ( key [ i ] ^ OPAD ) ; } for ( int i = length ; i < BLOCK_LENGTH ; i ++ ) { ipad [ i ] = IPAD ; opad [ i ] = OPAD ; } try { md5 = MessageDigest . getInstance ( "MD5" ) ; } catch ( Exception ex ) { throw new IllegalStateException ( ex . getMessage ( ) ) ; } engineReset ( ) ; }
creates an hmact64 instance which uses the given secret key material .
