Class Meow
- java.lang.Object
-
- org.lwjgl.util.meow.Meow
-
public class Meow extends java.lang.Object
Native bindings to Meow hash, an extremely fast non-cryptographic hash.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
Fields Modifier and Type Field Description static int
MEOW_HASH_VERSION
static java.lang.String
MEOW_HASH_VERSION_NAME
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static MeowHash
MeowHash_Accelerated(long Seed, java.nio.ByteBuffer SourceInit, MeowHash __result)
static MeowHash
MeowHash_Accelerated(long Seed, java.nio.DoubleBuffer SourceInit, MeowHash __result)
static MeowHash
MeowHash_Accelerated(long Seed, java.nio.FloatBuffer SourceInit, MeowHash __result)
static MeowHash
MeowHash_Accelerated(long Seed, java.nio.IntBuffer SourceInit, MeowHash __result)
static MeowHash
MeowHash_Accelerated(long Seed, java.nio.LongBuffer SourceInit, MeowHash __result)
static MeowHash
MeowHash_Accelerated(long Seed, java.nio.ShortBuffer SourceInit, MeowHash __result)
static MeowHash
MeowHash_Accelerated(long Seed, org.lwjgl.PointerBuffer SourceInit, MeowHash __result)
static void
MeowHashAbsorb(MeowHashState State, java.nio.ByteBuffer SourceInit)
static void
MeowHashBegin(MeowHashState State)
static MeowHash
MeowHashEnd(MeowHashState State, long Seed, MeowHash __result)
static boolean
MeowHashesAreEqual(MeowHash A, MeowHash B)
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 Detail
-
MEOW_HASH_VERSION
public static final int MEOW_HASH_VERSION
- See Also:
- Constant Field Values
-
MEOW_HASH_VERSION_NAME
public static final java.lang.String MEOW_HASH_VERSION_NAME
- See Also:
- Constant Field Values
-
-
Method Detail
-
nMeowU64From
public static long nMeowU64From(long Hash)
-
MeowU64From
public static long MeowU64From(MeowHash Hash)
-
nMeowU32From
public static int nMeowU32From(long Hash)
-
MeowU32From
public static int MeowU32From(MeowHash Hash)
-
nMeowHashesAreEqual
public static int nMeowHashesAreEqual(long A, long B)
-
nMeowHash_Accelerated
public static void nMeowHash_Accelerated(long Seed, long TotalLengthInBytes, long SourceInit, long __result)
-
MeowHash_Accelerated
public static MeowHash MeowHash_Accelerated(long Seed, java.nio.ByteBuffer SourceInit, MeowHash __result)
-
MeowHash_Accelerated
public static MeowHash MeowHash_Accelerated(long Seed, java.nio.ShortBuffer SourceInit, MeowHash __result)
-
MeowHash_Accelerated
public static MeowHash MeowHash_Accelerated(long Seed, java.nio.IntBuffer SourceInit, MeowHash __result)
-
MeowHash_Accelerated
public static MeowHash MeowHash_Accelerated(long Seed, java.nio.LongBuffer SourceInit, MeowHash __result)
-
MeowHash_Accelerated
public static MeowHash MeowHash_Accelerated(long Seed, java.nio.FloatBuffer SourceInit, MeowHash __result)
-
MeowHash_Accelerated
public static MeowHash MeowHash_Accelerated(long Seed, java.nio.DoubleBuffer SourceInit, MeowHash __result)
-
MeowHash_Accelerated
public static MeowHash MeowHash_Accelerated(long Seed, org.lwjgl.PointerBuffer SourceInit, MeowHash __result)
-
nMeowHashBegin
public static void nMeowHashBegin(long State)
-
MeowHashBegin
public static void MeowHashBegin(MeowHashState State)
-
nMeowHashAbsorb
public static void nMeowHashAbsorb(long State, long Len, long SourceInit)
-
MeowHashAbsorb
public static void MeowHashAbsorb(MeowHashState State, java.nio.ByteBuffer SourceInit)
-
nMeowHashEnd
public static void nMeowHashEnd(long State, long Seed, long __result)
-
MeowHashEnd
public static MeowHash MeowHashEnd(MeowHashState State, long Seed, MeowHash __result)
-
-