本文整理汇总了Java中org.spongycastle.crypto.PBEParametersGenerator类的典型用法代码示例。如果您正苦于以下问题:Java PBEParametersGenerator类的具体用法?Java PBEParametersGenerator怎么用?Java PBEParametersGenerator使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
PBEParametersGenerator类属于org.spongycastle.crypto包,在下文中一共展示了PBEParametersGenerator类的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: createKey
import org.spongycastle.crypto.PBEParametersGenerator; //导入依赖的package包/类
private KeyParameter createKey(String password, byte[] salt,
int iterations, int keySizeInBits) {
//System.out.println(keySizeInBits);
//System.out.println(iterations);
//System.out.println(salt);
//System.out.println(password);
PKCS5S2ParametersGenerator generator = new PKCS5S2ParametersGenerator(
new SHA256Digest());
generator.init(
PBEParametersGenerator.PKCS5PasswordToUTF8Bytes(password.toCharArray()),
salt,
iterations);
KeyParameter key = (KeyParameter) generator
.generateDerivedMacParameters(keySizeInBits);
return key;
}
开发者ID:AurionFinancial,项目名称:AndroidWallet,代码行数:18,代码来源:Blobvault.java
示例2: getAESPasswordKey
import org.spongycastle.crypto.PBEParametersGenerator; //导入依赖的package包/类
/**
* Get password and generate key and iv.
*
* @param password
* The password to use in key generation
* @param salt
* The salt to use in key generation
* @return The CipherParameters containing the created key
*/
private static CipherParameters getAESPasswordKey(final char[] password, final byte[] salt)
{
final PBEParametersGenerator generator = new OpenSSLPBEParametersGenerator();
generator.init(PBEParametersGenerator.PKCS5PasswordToBytes(password), salt, NUMBER_OF_ITERATIONS);
final ParametersWithIV key = (ParametersWithIV) generator.generateDerivedParameters(KEY_LENGTH, IV_LENGTH);
return key;
}
开发者ID:coinblesk,项目名称:coinblesk-client-gui,代码行数:19,代码来源:EncryptionUtils.java
示例3: getAESPasswordKey
import org.spongycastle.crypto.PBEParametersGenerator; //导入依赖的package包/类
/**
* Get password and generate key and iv.
*
* @param password The password to use in key generation
* @param salt The salt to use in key generation
* @return The CipherParameters containing the created key
*/
private static CipherParameters getAESPasswordKey(final char[] password, final byte[] salt) {
final PBEParametersGenerator generator = new OpenSSLPBEParametersGenerator();
generator.init(PBEParametersGenerator.PKCS5PasswordToBytes(password), salt, NUMBER_OF_ITERATIONS);
final ParametersWithIV key = (ParametersWithIV) generator.generateDerivedParameters(KEY_LENGTH, IV_LENGTH);
return key;
}
开发者ID:roman-smirnov,项目名称:CryptoBox,代码行数:16,代码来源:AES.java
示例4: getAESPasswordKey
import org.spongycastle.crypto.PBEParametersGenerator; //导入依赖的package包/类
/**
* Get password and generate key and iv.
*
* @param password
* The password to use in key generation
* @param salt
* The salt to use in key generation
* @return The CipherParameters containing the created key
*/
private static CipherParameters getAESPasswordKey(final char[] password, final byte[] salt)
{
final PBEParametersGenerator generator = new OpenSSLPBEParametersGenerator();
generator.init(PBEParametersGenerator.PKCS5PasswordToBytes(password), salt, NUMBER_OF_ITERATIONS);
final ParametersWithIV key = (ParametersWithIV) generator.generateDerivedParameters(KEY_LENGTH, IV_LENGTH);
return key;
}
开发者ID:soapboxsys,项目名称:ombuds-android,代码行数:19,代码来源:Crypto.java
示例5: decrypt
import org.spongycastle.crypto.PBEParametersGenerator; //导入依赖的package包/类
public static String decrypt(String ciphertext, String password, final int PBKDF2Iterations) throws Exception {
byte[] cipherdata = Base64.decode(ciphertext, Base64.NO_WRAP);
//Sperate the IV and cipher data
byte[] iv = copyOfRange(cipherdata, 0, AESBlockSize * 4);
byte[] input = copyOfRange(cipherdata, AESBlockSize * 4, cipherdata.length);
PBEParametersGenerator generator = new PKCS5S2ParametersGenerator();
generator.init(PBEParametersGenerator.PKCS5PasswordToUTF8Bytes(password.toCharArray()), iv, PBKDF2Iterations);
KeyParameter keyParam = (KeyParameter)generator.generateDerivedParameters(256);
CipherParameters params = new ParametersWithIV(keyParam, iv);
// setup AES cipher in CBC mode with PKCS7 padding
BlockCipherPadding padding = new ISO10126d2Padding();
BufferedBlockCipher cipher = new PaddedBufferedBlockCipher(new CBCBlockCipher(new AESEngine()), padding);
cipher.reset();
cipher.init(false, params);
// create a temporary buffer to decode into (it'll include padding)
byte[] buf = new byte[cipher.getOutputSize(input.length)];
int len = cipher.processBytes(input, 0, input.length, buf, 0);
len += cipher.doFinal(buf, len);
// remove padding
byte[] out = new byte[len];
System.arraycopy(buf, 0, out, 0, len);
// return string representation of decoded bytes
return new String(out, "UTF-8");
}
开发者ID:10xEngineer,项目名称:My-Wallet-Android,代码行数:32,代码来源:MyWallet.java
示例6: encrypt
import org.spongycastle.crypto.PBEParametersGenerator; //导入依赖的package包/类
public static String encrypt(String text, String password, final int PBKDF2Iterations) throws Exception {
if (password == null)
throw new Exception("You must provide an ecryption password");
// Use secure random to generate a 16 byte iv
SecureRandom random = new SecureRandom();
byte iv[] = new byte[AESBlockSize * 4];
random.nextBytes(iv);
byte[] textbytes = text.getBytes("UTF-8");
PBEParametersGenerator generator = new PKCS5S2ParametersGenerator();
generator.init(PBEParametersGenerator.PKCS5PasswordToUTF8Bytes(password.toCharArray()), iv, PBKDF2Iterations);
KeyParameter keyParam = (KeyParameter)generator.generateDerivedParameters(256);
CipherParameters params = new ParametersWithIV(keyParam, iv);
// setup AES cipher in CBC mode with PKCS7 padding
BlockCipherPadding padding = new ISO10126d2Padding();
BufferedBlockCipher cipher = new PaddedBufferedBlockCipher(new CBCBlockCipher(new AESEngine()), padding);
cipher.reset();
cipher.init(true, params);
byte[] outBuf = cipherData(cipher, textbytes);
// Append to IV to the output
byte[] ivAppended = ArrayUtils.addAll(iv, outBuf);
return new String(Base64.encode(ivAppended, Base64.NO_WRAP), "UTF-8");
}
开发者ID:10xEngineer,项目名称:My-Wallet-Android,代码行数:32,代码来源:MyWallet.java
示例7: getAESPasswordKey
import org.spongycastle.crypto.PBEParametersGenerator; //导入依赖的package包/类
/**
* Get password and generate key and iv.
*
* @param password
* The password to use in key generation
* @param salt
* The salt to use in key generation
* @return The CipherParameters containing the created key
* @throws Exception
*/
private CipherParameters getAESPasswordKey(CharSequence password, byte[] salt) throws KeyCrypterException {
try {
PBEParametersGenerator generator = new OpenSSLPBEParametersGenerator();
generator.init(PBEParametersGenerator.PKCS5PasswordToBytes(convertToCharArray(password)), salt, NUMBER_OF_ITERATIONS);
ParametersWithIV key = (ParametersWithIV) generator.generateDerivedParameters(KEY_LENGTH, IV_LENGTH);
return key;
} catch (Exception e) {
throw new KeyCrypterException("Could not generate key from password of length " + password.length()
+ " and salt '" + Utils.bytesToHexString(salt), e);
}
}
开发者ID:pavel4n,项目名称:wowdoge.org,代码行数:24,代码来源:KeyCrypterOpenSSL.java
示例8: getAESPasswordKey
import org.spongycastle.crypto.PBEParametersGenerator; //导入依赖的package包/类
/**
* Get password and generate key and iv.
*
* @param password
* The password to use in key generation
* @param salt
* The salt to use in key generation
* @return The CipherParameters containing the created key
*/
private static CipherParameters getAESPasswordKey(final char[] password, final byte[] salt)
{
final PBEParametersGenerator generator = new OpenSSLPBEParametersGenerator();
generator.init(PBEParametersGenerator.PKCS5PasswordToBytes(password), salt, NUMBER_OF_ITERATIONS);
final ParametersWithIV key = (ParametersWithIV) generator.generateDerivedParameters(KEY_LENGTH, IV_LENGTH);
return key;
}
开发者ID:9cat,项目名称:templecoin-android-wallet,代码行数:19,代码来源:Crypto.java
示例9: getAESPasswordKey
import org.spongycastle.crypto.PBEParametersGenerator; //导入依赖的package包/类
/**
* Get password and generate key and iv.
*
* @param password
* The password to use in key generation
* @param salt
* The salt to use in key generation
* @return The CipherParameters containing the created key
*/
private static CipherParameters getAESPasswordKey(final char[] password, final byte[] salt) {
final PBEParametersGenerator generator = new OpenSSLPBEParametersGenerator();
generator.init(PBEParametersGenerator.PKCS5PasswordToBytes(password), salt, NUMBER_OF_ITERATIONS);
final ParametersWithIV key = (ParametersWithIV) generator.generateDerivedParameters(KEY_LENGTH, IV_LENGTH);
return key;
}
开发者ID:guodroid,项目名称:okwallet,代码行数:18,代码来源:Crypto.java
注:本文中的org.spongycastle.crypto.PBEParametersGenerator类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论