code: private static long hash(byte[] input) {
      long hash = FNV1_INIT;
      for (byte b : input) {
        hash ^= b & 0xff;
        hash *= FNV1_PRIME;
      }
      return hash;
    }
docs: hash method of a String independant of the JVM
  FNV-1a hash method @see <a href="https://en.wikipedia.org/wiki/Fowler%E2%80%93Noll%E2%80%93Vo_hash_function#FNV-1a_hash"></a>