public byte[] digest(){
  byte[] result=engineDigest();
  state=INITIAL;
  return result;
}

public byte [ ] digest ( ) { byte [ ] result = engineDigest ( ) ; state = INITIAL ; return result ; }
completes the hash computation by performing final operations such as padding . the digest is reset after this call is made .
