A library of many cryptographic Java message digest implementations with optional JCA adapter