Class Meow
Q: What is it?
A: Meow is a 128-bit non-cryptographic hash that operates at high speeds on x64 and ARM processors that provide AES instructions. It is designed to be
truncatable to 256, 128, 64, and 32-bit hash values and still retain good collision resistance.
Q: What is it GOOD for?
A: Quickly hashing any amount of data for comparison purposes such as block deduplication or change detection. It is extremely fast on all buffer
sizes, from one byte to one gigabyte and up.
Q: What is it BAD for?
A: Anything security-related. It should be assumed that it provides no protection from adversaries whatsoever. It is also not particularly fast on
processors that don't support AES instructions (eg., non-x64/ARM processors).
Q: Why is it called the "Meow hash"?
A: It is named after a character in Meow the Infinite.
-
Field Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic MeowHash
MeowHash_Accelerated
(long Seed, ByteBuffer SourceInit, MeowHash __result) static MeowHash
MeowHash_Accelerated
(long Seed, DoubleBuffer SourceInit, MeowHash __result) static MeowHash
MeowHash_Accelerated
(long Seed, FloatBuffer SourceInit, MeowHash __result) static MeowHash
MeowHash_Accelerated
(long Seed, IntBuffer SourceInit, MeowHash __result) static MeowHash
MeowHash_Accelerated
(long Seed, LongBuffer SourceInit, MeowHash __result) static MeowHash
MeowHash_Accelerated
(long Seed, ShortBuffer SourceInit, MeowHash __result) static MeowHash
MeowHash_Accelerated
(long Seed, PointerBuffer SourceInit, MeowHash __result) static void
MeowHashAbsorb
(MeowHashState State, ByteBuffer SourceInit) static void
MeowHashBegin
(MeowHashState State) static MeowHash
MeowHashEnd
(MeowHashState State, long Seed, MeowHash __result) static boolean
static int
MeowU32From
(MeowHash Hash) static long
MeowU64From
(MeowHash Hash) static void
nMeowHash_Accelerated
(long Seed, long TotalLengthInBytes, long SourceInit, long __result) static void
nMeowHashAbsorb
(long State, long Len, long SourceInit) static void
nMeowHashBegin
(long State) static void
nMeowHashEnd
(long State, long Seed, long __result) static int
nMeowHashesAreEqual
(long A, long B) static int
nMeowU32From
(long Hash) static long
nMeowU64From
(long Hash)
-
Field Details
-
MEOW_HASH_VERSION
public static final int MEOW_HASH_VERSION- See Also:
-
MEOW_HASH_VERSION_NAME
- See Also:
-
-
Method Details
-
nMeowU64From
public static long nMeowU64From(long Hash) -
MeowU64From
-
nMeowU32From
public static int nMeowU32From(long Hash) -
MeowU32From
-
nMeowHashesAreEqual
public static int nMeowHashesAreEqual(long A, long B) -
MeowHashesAreEqual
-
nMeowHash_Accelerated
public static void nMeowHash_Accelerated(long Seed, long TotalLengthInBytes, long SourceInit, long __result) -
MeowHash_Accelerated
-
MeowHash_Accelerated
-
MeowHash_Accelerated
-
MeowHash_Accelerated
-
MeowHash_Accelerated
-
MeowHash_Accelerated
-
MeowHash_Accelerated
-
nMeowHashBegin
public static void nMeowHashBegin(long State) -
MeowHashBegin
-
nMeowHashAbsorb
public static void nMeowHashAbsorb(long State, long Len, long SourceInit) -
MeowHashAbsorb
-
nMeowHashEnd
public static void nMeowHashEnd(long State, long Seed, long __result) -
MeowHashEnd
-