public int hashCode(){
  try {
    byte[] b1=getEncodedInternal();
    int r=b1.length;
    for (int i=0; i < b1.length; i++) {
      r+=(b1[i] & 0xff) * 37;
    }
    return r;
  }
 catch (  InvalidKeyException e) {
    return 0;
  }
}

public int hashCode ( ) { try { byte [ ] b1 = getEncodedInternal ( ) ; int r = b1 . length ; for ( int i = 0 ; i < b1 . length ; i ++ ) { r += ( b1 [ i ] & 0xff ) * 37 ; } return r ; } catch ( InvalidKeyException e ) { return 0 ; } }
calculates a hash code value for the object . objects which are equal will also have the same hashcode .
