Saphir Hash is a Java library for calculating cryptographic message digests. The library is derived from the sphlib 3.0 code that can be found on the projects website.
My repackaged, mavenized and JCA-enabled version 3.0.1 and later can be found here:
Compared to the standard SUN message digest algorithm this library contains many experimental hash algorithms.
Algorithm overview
The following is a list of implemented message digest algorithms:
- BLAKE224,256,384,512
- BMW224,256,384,512
- CubeHash224,256,384,512
- ECHO224,256,384,512
- Fugue224,256,384,512
- Groestl224,256,384,512
- Hamsi224,256,384,512
- HAVAL128_3,128_4,128_5,160_3,160_4,160_5,192_3,192_4,192_5,224_3,224_4,224_5,256_3,256_4,256_5 JH224,256,384,512
- Keccak224,256,384,512
- Luffa224,256,384,512
- MD2
- MD4
- MD5
- PANAMA
- RadioGatun32,64
- RIPEMD128,160
- SHA0,1,224,256,384,512
- Shabal192,224,256,384,512
- SHAvite224,256,384,512
- SIMD224,256,384,512
- Skein224,256,384,512
- Tiger2
- Tiger
- Whirlpool0,1
- Whirlpool
Documentation
There are multiple documents explaining the software:
- Github project saphir-hash
- Java API docs
Usage: Maven dependencies
You can use the code using the Maven repository.
The core classes without JCA support is in this dependency (version may change):
<dependency>
<groupId>de.tynne</groupId>
<artifactId>saphir-hash-core</artifactId>
<version>3.0.1</version>
</dependency>
The JCA provider is contained in this dependency (version may change):
<dependency>
<groupId>de.tynne</groupId>
<artifactId>saphir-hash-jca</artifactId>
<version>3.0.1</version>
</dependency>