List of usage examples for org.bouncycastle.crypto.digests SHA3Digest SHA3Digest
public SHA3Digest(SHA3Digest source)
From source file:com.distrimind.util.crypto.BCMac.java
License:Open Source License
public void init(org.bouncycastle.crypto.SymmetricSecretKey _key) throws NoSuchAlgorithmException { Digest d;/*ww w. ja va 2 s . c o m*/ if (type.getCodeProviderForSignature() == CodeProvider.BC) { switch (type.getMessageDigestType()) { case BC_FIPS_SHA3_256: d = new SHA3Digest(256); break; case BC_FIPS_SHA3_384: d = new SHA3Digest(384); break; case BC_FIPS_SHA3_512: d = new SHA3Digest(512); break; case BC_BLAKE2B_160: case BC_BLAKE2B_256: case BC_BLAKE2B_384: case BC_BLAKE2B_512: d = new Blake2bDigest(type.getMessageDigestType().getDigestLengthInBits()); break; default: throw new NoSuchAlgorithmException(type.toString()); } } else { throw new NoSuchAlgorithmException(type.toString()); } mac = new HMac(d); mac.init(new KeyParameter((secretKey = _key).getKeyBytes())); reset(); }
From source file:me.grapebaba.hyperledger.fabric.Crypto.java
License:Apache License
public Crypto(SecurityLevel securityLevel, HashAlgorithm hashAlgorithm) { curveName = SecurityLevel.CURVE_P_256_Size == securityLevel ? "secp256r1" : "secp384r1"; if (hashAlgorithm == HashAlgorithm.SHA2 && securityLevel == SecurityLevel.CURVE_P_384_Size) { throw new RuntimeException("SHA2 not support size 384"); } else if (hashAlgorithm == HashAlgorithm.SHA2 && securityLevel == SecurityLevel.CURVE_P_256_Size) { digest = new SHA256Digest(); } else if (hashAlgorithm == HashAlgorithm.SHA3 && securityLevel == SecurityLevel.CURVE_P_384_Size) { digest = new SHA3Digest(384); } else {/*from w w w . j av a 2 s. c o m*/ digest = new SHA3Digest(); } }
From source file:org.cryptacular.spec.DigestSpec.java
License:Open Source License
/** * Creates a new digest instance./* w ww . ja v a 2 s .com*/ * * @return Digest instance. */ @Override public Digest newInstance() { final Digest digest; if ("GOST3411".equalsIgnoreCase(algorithm)) { digest = new GOST3411Digest(); } else if ("MD2".equalsIgnoreCase(algorithm)) { digest = new MD2Digest(); } else if ("MD4".equalsIgnoreCase(algorithm)) { digest = new MD4Digest(); } else if ("MD5".equalsIgnoreCase(algorithm)) { digest = new MD5Digest(); } else if ("RIPEMD128".equalsIgnoreCase(algorithm) || "RIPEMD-128".equalsIgnoreCase(algorithm)) { digest = new RIPEMD128Digest(); } else if ("RIPEMD160".equalsIgnoreCase(algorithm) || "RIPEMD-160".equalsIgnoreCase(algorithm)) { digest = new RIPEMD160Digest(); } else if ("RIPEMD256".equalsIgnoreCase(algorithm) || "RIPEMD-256".equalsIgnoreCase(algorithm)) { digest = new RIPEMD256Digest(); } else if ("RIPEMD320".equalsIgnoreCase(algorithm) || "RIPEMD-320".equalsIgnoreCase(algorithm)) { digest = new RIPEMD320Digest(); } else if ("SHA1".equalsIgnoreCase(algorithm) || "SHA-1".equalsIgnoreCase(algorithm)) { digest = new SHA1Digest(); } else if ("SHA224".equalsIgnoreCase(algorithm) || "SHA-224".equalsIgnoreCase(algorithm)) { digest = new SHA224Digest(); } else if ("SHA256".equalsIgnoreCase(algorithm) || "SHA-256".equalsIgnoreCase(algorithm)) { digest = new SHA256Digest(); } else if ("SHA384".equalsIgnoreCase(algorithm) || "SHA-384".equalsIgnoreCase(algorithm)) { digest = new SHA384Digest(); } else if ("SHA512".equalsIgnoreCase(algorithm) || "SHA-512".equalsIgnoreCase(algorithm)) { digest = new SHA512Digest(); } else if ("SHA3".equalsIgnoreCase(algorithm) || "SHA-3".equalsIgnoreCase(algorithm)) { digest = new SHA3Digest(size); } else if ("Tiger".equalsIgnoreCase(algorithm)) { digest = new TigerDigest(); } else if ("Whirlpool".equalsIgnoreCase(algorithm)) { digest = new WhirlpoolDigest(); } else { throw new IllegalStateException("Unsupported digest algorithm " + algorithm); } return digest; }
From source file:org.cryptacular.util.HashUtil.java
License:Open Source License
/** * Produces the SHA-3 hash of the given data. * * @param bitLength One of the supported SHA-3 output bit lengths: 224, 256, * 384, or 512./*w w w. jav a 2 s . co m*/ * @param data Data to hash. See {@link #hash(Digest, Object...)} for * supported inputs. * * @return Byte array of size <code>bitLength</code> containing hash output. * * @see #hash(Digest, Object...) */ public static byte[] sha3(final int bitLength, final Object... data) { return hash(new SHA3Digest(bitLength), data); }
From source file:org.thingsboard.server.common.msg.EncryptionUtil.java
License:Apache License
public static String getSha3Hash(String data) { String trimmedData = trimNewLines(data); byte[] dataBytes = trimmedData.getBytes(); SHA3Digest md = new SHA3Digest(256); md.reset();//from w ww .ja va 2 s . co m md.update(dataBytes, 0, dataBytes.length); byte[] hashedBytes = new byte[256 / 8]; md.doFinal(hashedBytes, 0); String sha3Hash = ByteUtils.toHexString(hashedBytes); return sha3Hash; }
From source file:org.xipki.commons.security.HashAlgoType.java
License:Open Source License
public Digest createDigest() { switch (this) { case SHA1:// w w w . j av a 2 s .com return new SHA1Digest(); case SHA224: return new SHA224Digest(); case SHA256: return new SHA256Digest(); case SHA384: return new SHA384Digest(); case SHA512: return new SHA512Digest(); case SHA3_224: return new SHA3Digest(224); case SHA3_256: return new SHA3Digest(256); case SHA3_384: return new SHA3Digest(384); case SHA3_512: return new SHA3Digest(512); default: throw new RuntimeException("should not reach here, unknown HashAlgoType " + name()); } }
From source file:org.xipki.pki.ocsp.client.impl.SHA3_224DigestCalculator.java
License:Open Source License
@Override protected Digest getDigester() { return new SHA3Digest(224); }
From source file:org.xipki.pki.ocsp.client.impl.SHA3_256DigestCalculator.java
License:Open Source License
@Override protected Digest getDigester() { return new SHA3Digest(256); }
From source file:org.xipki.pki.ocsp.client.impl.SHA3_384DigestCalculator.java
License:Open Source License
@Override protected Digest getDigester() { return new SHA3Digest(384); }
From source file:org.xipki.pki.ocsp.client.impl.SHA3_512DigestCalculator.java
License:Open Source License
@Override protected Digest getDigester() { return new SHA3Digest(512); }