List of usage examples for org.bouncycastle.crypto.digests SHA256Digest SHA256Digest
public SHA256Digest()
From source file:net.sportics.dni.rt.client.microedition.net.SrtsApi.java
License:Open Source License
final String encodePassword(final String sid, final String password) { try {//from ww w. j av a2 s . c om final Digest digester = new SHA256Digest(); final byte[] asArray = Strings.toUTF8ByteArray(password); digester.update(asArray, 0, asArray.length); final int length = digester.getDigestSize(); final byte[] digest = new byte[length]; digester.doFinal(digest, 0); final byte[] hex = Hex.encode(digest); final String hexString = new String(hex, USASCII_ENC); final String auth = sid + ":" + hexString; LOG.debug("pwd as auth: " + auth); final byte[] asBytes = auth.getBytes(USASCII_ENC); final byte[] base64 = Base64.encode(asBytes); final String base64String = new String(base64, USASCII_ENC); LOG.debug("auth as base64: " + base64String); return base64String; } catch (final UnsupportedEncodingException e) { throw new RuntimeException("Unsupported encoding US-ASCII"); } }
From source file:no.digipost.api.client.filters.response.ResponseContentSHA256Filter.java
License:Apache License
private void validerBytesMotHashHeader(final String serverHash, final byte[] entityBytes) { SHA256Digest digest = new SHA256Digest(); digest.update(entityBytes, 0, entityBytes.length); byte[] result = new byte[digest.getDigestSize()]; digest.doFinal(result, 0);// w w w .j ava 2 s .c o m String ourHash = new String(Base64.encode(result)); if (!serverHash.equals(ourHash)) { throw new DigipostClientException(SERVER_SIGNATURE_ERROR, "X-Content-SHA256-header matchet ikke innholdet - server-signatur er feil."); } }
From source file:org.albertschmitt.crypto.common.HMAC.java
License:Open Source License
public static String sha256(byte[] msg, byte[] keyBytes) throws UnsupportedEncodingException { SHA256Digest digest = new SHA256Digest(); return hmacDigest(msg, keyBytes, digest); }
From source file:org.albertschmitt.crypto.common.HMAC.java
License:Open Source License
public static String sha256(String msg, byte[] keyBytes) throws UnsupportedEncodingException { SHA256Digest digest = new SHA256Digest(); return hmacDigest(msg.getBytes("UTF-8"), keyBytes, digest); }
From source file:org.apache.cxf.rs.security.jose.jwe.PbesHmacAesWrapKeyEncryptionAlgorithm.java
License:Apache License
static byte[] createDerivedKey(String keyAlgoJwt, int keySize, byte[] password, byte[] saltInput, int pbesCount) { byte[] saltValue = createSaltValue(keyAlgoJwt, saltInput); Digest digest = null;//ww w .ja v a 2s . c o m int macSigSize = PBES_HMAC_MAP.get(keyAlgoJwt); if (macSigSize == 256) { digest = new SHA256Digest(); } else if (macSigSize == 384) { digest = new SHA384Digest(); } else { digest = new SHA512Digest(); } PKCS5S2ParametersGenerator gen = new PKCS5S2ParametersGenerator(digest); gen.init(password, saltValue, pbesCount); return ((KeyParameter) gen.generateDerivedParameters(keySize * 8)).getKey(); }
From source file:org.apache.nifi.processors.standard.util.crypto.PBKDF2CipherProvider.java
License:Apache License
private Digest resolvePRF(final String prf) { if (StringUtils.isEmpty(prf)) { throw new IllegalArgumentException("Cannot resolve empty PRF"); }/*w w w. ja va 2s. c om*/ String formattedPRF = prf.toLowerCase().replaceAll("[\\W]+", ""); logger.debug("Resolved PRF {} to {}", prf, formattedPRF); switch (formattedPRF) { case "md5": return new MD5Digest(); case "sha1": return new SHA1Digest(); case "sha384": return new SHA384Digest(); case "sha256": return new SHA256Digest(); case "sha512": return new SHA512Digest(); default: logger.warn("Could not resolve PRF {}. Using default PRF {} instead", prf, DEFAULT_PRF); return new SHA512Digest(); } }
From source file:org.apache.openmeetings.util.crypt.SHA256Implementation.java
License:Apache License
private static String hash(String str, byte[] salt, int iter) { PKCS5S2ParametersGenerator gen = new PKCS5S2ParametersGenerator(new SHA256Digest()); gen.init(str.getBytes(StandardCharsets.UTF_8), salt, iter); byte[] dk = ((KeyParameter) gen.generateDerivedParameters(KEY_LENGTH)).getKey(); return Base64.encodeBase64String(dk); }
From source file:org.bunkr.cli.commands.HashCommand.java
License:Open Source License
private GeneralDigest getDigest(String algorithm) throws CLIException { if (algorithm.equals("md5")) return new MD5Digest(); if (algorithm.equals("sha1")) return new SHA1Digest(); if (algorithm.equals("sha224")) return new SHA224Digest(); if (algorithm.equals("sha256")) return new SHA256Digest(); throw new CLIException("unsupported algorithm: " + algorithm); }
From source file:org.bunkr.core.descriptor.PBKDF2Descriptor.java
License:Open Source License
@Override public Inventory readInventoryFromBytes(byte[] source, UserSecurityProvider usp) throws BaseBunkrException { try {/* w w w .ja va 2 s. c o m*/ if (this.encryptionAlgorithm == Encryption.NONE) throw new IllegalArgumentException("PBKDF2Descriptor requires an active encryption mode"); PKCS5S2ParametersGenerator g = new PKCS5S2ParametersGenerator(new SHA256Digest()); g.init(usp.getHashedPassword(), this.pbkdf2Salt, this.pbkdf2Iterations); ParametersWithIV kp = (ParametersWithIV) g.generateDerivedParameters( this.encryptionAlgorithm.keyByteLength * 8, this.encryptionAlgorithm.ivByteLength * 8); byte[] decryptedInv = SimpleAES.decrypt(this.encryptionAlgorithm, source, ((KeyParameter) kp.getParameters()).getKey(), kp.getIV()); return InventoryJSON.decode(new String(decryptedInv)); } catch (IllegalPasswordException | CryptoException e) { throw new BaseBunkrException(e); } }
From source file:org.bunkr.core.descriptor.PBKDF2Descriptor.java
License:Open Source License
@Override public byte[] writeInventoryToBytes(Inventory source, UserSecurityProvider usp) throws BaseBunkrException { try {/*from w ww . j a v a 2s .co m*/ byte[] inventoryJsonBytes = InventoryJSON.encode(source).getBytes(); if (this.encryptionAlgorithm == Encryption.NONE) throw new IllegalArgumentException("PBKDF2Descriptor requires an active encryption mode"); // first refresh the salt RandomMaker.fill(this.pbkdf2Salt); PKCS5S2ParametersGenerator g = new PKCS5S2ParametersGenerator(new SHA256Digest()); g.init(usp.getHashedPassword(), this.pbkdf2Salt, this.pbkdf2Iterations); ParametersWithIV kp = (ParametersWithIV) g.generateDerivedParameters( this.encryptionAlgorithm.keyByteLength * 8, this.encryptionAlgorithm.ivByteLength * 8); // encrypt the inventory byte[] encryptedInv = SimpleAES.encrypt(this.encryptionAlgorithm, inventoryJsonBytes, ((KeyParameter) kp.getParameters()).getKey(), kp.getIV()); Arrays.fill(inventoryJsonBytes, (byte) 0); return encryptedInv; } catch (IllegalPasswordException | CryptoException e) { throw new BaseBunkrException(e); } }