Java tutorial
//package com.java2s; //License from project: Apache License import java.math.BigInteger; public class Main { public static BigInteger hashFnv1A(byte[] data) { final BigInteger INIT64 = new BigInteger("cbf29ce484222325", 16); final BigInteger PRIME64 = new BigInteger("100000001b3", 16); final BigInteger MOD64 = new BigInteger("2").pow(64); BigInteger hash = INIT64; for (byte b : data) { hash = hash.xor(BigInteger.valueOf((int) b & 0xff)); hash = hash.multiply(PRIME64).mod(MOD64); } return hash; } }